"""用Pythonp批量裁剪图片"""

 from PIL import Image
import matplotlib.pyplot as plt
import os # 定义待批量裁剪图像的路径地址
IMAGE_INPUT_PATH = 'D:/2_Class'
# 定义裁剪后的图像存放地址
IMAGE_OUTPUT_PATH = 'D:/2_Class[0]'
# 定义裁剪图片左、上、右、下的像素坐标
BOX_LEFT, BOX_UP, BOX_RIGHT, BOX_DOWN = 130, 180, 600, 400 for each_image in os.listdir(IMAGE_INPUT_PATH):
# 每个图像全路径
image_input_fullname = IMAGE_INPUT_PATH + '/' + each_image
# PIL库打开每一张图像
img = Image.open(image_input_fullname)
plt.figure("image_input_fullname")
plt.subplot(1, 2, 1)
plt.imshow(img)
plt.axis('off')
print(img.format, img.size, img.mode)
# 从原始图像返回一个矩形区域,区域是一个4元组定义左上右下像素坐标
box = (BOX_LEFT, BOX_UP, BOX_RIGHT + BOX_LEFT, BOX_DOWN + BOX_UP)
# 进行roi裁剪
roi_area = img.crop(box)
plt.subplot(1, 2, 2) plt.imshow(roi_area)
plt.axis('off')
print(roi_area.format, roi_area.size, roi_area.mode)
plt.show()
# 裁剪后每个图像的路径+名称
image_output_fullname = IMAGE_OUTPUT_PATH + "/" + each_image
# 存储裁剪得到的图像
roi_area.save(image_output_fullname)
print('{0} crop done.'.format(each_image))

Python批量裁剪图片

代码生成效果展示: 2019-07-06 23:34:20

原始图片

裁剪后图片

最新文章

  1. 详解Linux命令行下常用svn命令
  2. NSLog 自定义 屏蔽
  3. faac编码aac
  4. BZOJ1082: [SCOI2005]栅栏 题解
  5. [知识点]Trie树和AC自动机
  6. 关于C# winform中使用pictureBox显示大红叉的原因
  7. Android composite adb interface
  8. 爬虫技术 -- 基础学习(一)HTML规范化(附特殊字符编码表)
  9. 从网页(WEB)登录SAP
  10. [转]MySQL 5.6 全局事务 ID(GTID)实现原理(一)
  11. DNS:因特网的目录服务
  12. java -D參数简化增加多个jar【简化设置classpath】
  13. SVM与LR的比较
  14. HDU 1253 胜利大逃亡(BFS)
  15. Python之MRO及其C3算法
  16. 数据结构随笔-php实现栈
  17. <转>jmeter(十五)函数助手
  18. python运算符基础实例
  19. POJ 2393 Yogurt factory【贪心】
  20. dp 最大正方形

热门文章

  1. C# WinForm 文件上传下载
  2. Android学习-- 基于位置的服务 LBS(基于百度地图Android SDK)--定位SDK
  3. 关于C#你应该知道的2000件事
  4. 微软Insider Dev Tour 活动
  5. 阿里云访问控制(RAM)授权子账户管理磁盘快照
  6. 最简单的IdentityServer实现——Api
  7. WCF的几个注意事项
  8. Win8 Metro(C#)数字图像处理--2.37Wallis图象锐化
  9. Win8Metro(C#)数字图像处理--2.20图像垂直镜像
  10. Win10《芒果TV》商店版更新v3.2.1:优化手机版卡顿,修复推送故障