Python切片工具pillow用法示例


Posted in Python onMarch 30, 2018

本文实例讲述了Python切片工具pillow用法。分享给大家供大家参考,具体如下:

切片:使用切片将源图像分成许多的功能区域

因为要对图片进行切片裁剪,所以用到切片工具必不可少,在ubuntu下有很多的图片处理工具,如 GIMP(Ubuntu的下的Photoshop),shotwell,shotter等等。

但是我想吧一张图片剪裁下来,用那些工具不怎么方便(其实可能是我没有找到而已),于是上网搜索资料,发现各式各类的工具,其中发现了pollow这款工具。

算是Python下的一个模块吧,这个模块很强大,是一个图像处理库,有关pillow的介绍,可参考本站相关文章。

下面开始安装,其实很简单,使用pip进行:

pip install pillow

回车即可  没有pip安装pip,不知道pip的见我的博客:

下面说说怎么剪切,新建Python文件:

# coding=utf-8
from PIL import Image
import os
def mkdir(path):
  # 去除首位空格
  path=path.strip()
  # 去除尾部 \ 符号
  path=path.rstrip("\\")
  # 判断路径是否存在
  # 存在   True
  # 不存在  False
  isExists=os.path.exists(path)
  # 判断结果
  if not isExists:
    # 如果不存在则创建目录
    print path+' 创建成功'
    # 创建目录操作函数
    os.makedirs(path)
    return True
  else:
    # 如果目录存在则不创建,并提示目录已存在
    print path+' 目录已存在'
    return False
cnt = 0
imageName = 'mageStand.png'
pathName = 'mageStand'
img = Image.open(imageName)
ori_w,ori_h = img.size
row = 4
col = 4
for j in range(0, col):
  Y = j*ori_h/col
  Y_end = Y + ori_h/col
  for i in range(0, row):
    X = i*ori_w/row
    X_end = X + ori_w/row
    print X, X_end
    if 8 == cnt:
      pathName+="adv"
      cnt = 0
    mkdir(pathName)
    fileName = '%s/a_%d.png' %(pathName, cnt)
    img.crop((X, Y, X_end, Y_end)).save( fileName )
    cnt+=1

imageName和pathName进行相应的替换即可,OK!完事!

本文参考文献:

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python实现simhash算法实例
Apr 25 Python
python实现逻辑回归的方法示例
May 02 Python
好的Python培训机构应该具备哪些条件
May 23 Python
如何优雅地处理Django中的favicon.ico图标详解
Jul 05 Python
numpy.ndarray 交换多维数组(矩阵)的行/列方法
Aug 02 Python
Python While循环语句实例演示及原理解析
Jan 03 Python
python turtle工具绘制四叶草的实例分享
Feb 14 Python
python3中的logging记录日志实现过程及封装成类的操作
May 12 Python
Python装饰器结合递归原理解析
Jul 02 Python
详解Python中如何将数据存储为json格式的文件
Nov 18 Python
正确的理解和使用Django信号(Signals)
Apr 14 Python
Python中requests做接口测试的方法
May 30 Python
Python实现OpenCV的安装与使用示例
Mar 30 #Python
Ubuntu下使用Python实现游戏制作中的切分图片功能
Mar 30 #Python
Jupyter安装nbextensions,启动提示没有nbextensions库
Apr 23 #Python
python+opencv识别图片中的圆形
Mar 25 #Python
python中的内置函数max()和min()及mas()函数的高级用法
Mar 29 #Python
python学习入门细节知识点
Mar 29 #Python
Python实现加载及解析properties配置文件的方法
Mar 29 #Python
You might like
用PHP实现Ftp用户的在线管理的代码
2007/03/06 PHP
php中替换字符串函数strtr()和str_repalce()的用法与区别
2016/11/25 PHP
php版微信自定义回复功能示例
2016/12/05 PHP
购物车选中得到价格实现示例
2014/01/26 Javascript
JS来动态的修改url实现对url的增删查改
2014/09/05 Javascript
jQuery中的jQuery()方法用法分析
2014/12/27 Javascript
js运动应用实例解析
2015/12/28 Javascript
Js获取图片原始宽高的实现代码
2016/05/17 Javascript
利用BootStrap弹出二级对话框的简单实现方法
2016/09/21 Javascript
探讨跨域请求资源的几种方式(总结)
2016/12/02 Javascript
谈谈JS中常遇到的浏览器兼容问题和解决方法
2016/12/17 Javascript
vue实现列表的添加点击
2016/12/29 Javascript
AngularJS表格添加序号的方法
2017/03/03 Javascript
Node.js设置CORS跨域请求中多域名白名单的方法
2017/03/28 Javascript
ES6新特性之模块Module用法详解
2017/04/01 Javascript
快速搭建React的环境步骤详解
2017/11/06 Javascript
详解create-react-app 2.0版本如何启用装饰器语法
2018/10/23 Javascript
小程序点击图片实现自动播放视频
2020/05/29 Javascript
[01:50:49]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster BO3 第三场 1月24日
2021/03/11 DOTA
python正则表达式中的括号匹配问题
2014/12/14 Python
Python中的choice()方法使用详解
2015/05/15 Python
Python实现SSH远程登陆,并执行命令的方法(分享)
2017/05/08 Python
python+selenium+autoit实现文件上传功能
2017/08/23 Python
基于python select.select模块通信的实例讲解
2017/09/21 Python
Python zip()函数用法实例分析
2018/03/17 Python
详解python opencv、scikit-image和PIL图像处理库比较
2019/12/26 Python
python中的itertools的使用详解
2020/01/13 Python
完美解决keras保存好的model不能成功加载问题
2020/06/11 Python
解决python3.x安装numpy成功但import出错的问题
2020/11/17 Python
python 利用jieba.analyse进行 关键词提取
2020/12/17 Python
单位单身证明范本
2014/01/11 职场文书
党建工作经验交流材料
2014/05/25 职场文书
2014第二批党的群众路线教育实践活动对照检查材料思想汇报
2014/09/18 职场文书
爱心捐书倡议书
2015/04/27 职场文书
js基础语法与maven项目配置教程案例
2021/07/15 Javascript
Springboot中如何自动转JSON输出
2022/06/16 Java/Android