Python怎么批量裁剪图形外围空白区域
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,这篇文章主要介绍了Python怎么批量裁剪图形外围空白区域的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python怎么批量裁剪图形外围空白区域文章都会有所收获,下面我们
千家信息网最后更新 2025年02月02日Python怎么批量裁剪图形外围空白区域
这篇文章主要介绍了Python怎么批量裁剪图形外围空白区域的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python怎么批量裁剪图形外围空白区域文章都会有所收获,下面我们一起来看看吧。
一、基本描述
批量裁剪掉图片的背景区域,一般是白色背景,从而减少背景值的干扰和减少存储空间。
通过检索所有图片的最小裁剪区域坐标值,然后再对图片进行裁剪。文中图都是经过标准化处理的,核心图片内容尺度都一致,所以采用该种办法,如果有很多不同大小的图片,即图片中的内容区域大小形状不一样,则一张一张的检索该图的背景区域,然后进行裁剪。即一张一张的检索裁剪区域并进行裁剪。
二、实现代码
对原文中的代码进行修改,一张一张的检索每张图的裁剪区域坐标,然后裁剪。
代码如下:
from PIL import Imageimport numpy as npimport os imagesDirectory = r"C:\Users\Administrator\Desktop\out" # tiff图片所在文件夹路径 i = 0for imageName in os.listdir(imagesDirectory): imagePath = os.path.join(imagesDirectory, imageName) image = Image.open(imagePath) # 打开tiff图像 ImageArray = np.array(image) row = ImageArray.shape[0] col = ImageArray.shape[1] print(row,col) # 先计算所有图片的裁剪范围,然后再统一裁剪并输出图片 x_left = row x_top = col x_right = 0 x_bottom = 0 # 上下左右范围 """ Image.crop(left, up, right, below) left:与左边界的距离 up:与上边界的距离 right:还是与左边界的距离 below:还是与上边界的距离 简而言之就是,左上右下。 """ i += 1 for r in range(row): for c in range(col): #if ImageArray[row][col][0] < 255 or ImageArray[row][col][0] ==0: if ImageArray[r][c][0] < 255 and ImageArray[r][c][0] !=0: #外框有个黑色边框,增加条件判断 if x_top > r: x_top = r # 获取最小x_top if x_bottom < r: x_bottom = r # 获取最大x_bottom if x_left > c: x_left = c # 获取最小x_left if x_right < c: x_right = c # 获取最大x_right print(x_left, x_top, x_right, x_bottom) # image = Image.open(imagePath) # 打开tiff图像 cropped = image.crop((x_left-5, x_top-5, x_right+5, x_bottom+5)) # (left, upper, right, lower) cropped.save(r"C:\Users\Administrator\Desktop\out_cut_bg\{}.png".format(imageName[:-4], i)) print("imageName completed!")
三、效果
原图显示:
裁剪结果显示:
原文效果:
关于"Python怎么批量裁剪图形外围空白区域"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"Python怎么批量裁剪图形外围空白区域"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。
区域
图片
图形
空白
内容
背景
检索
最小
代码
知识
原文
图像
大小
效果
篇文章
范围
边界
还是
不同
一致
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器raid卡坏了数据还在吗
大学软件开发要报什么专业
数据储存软件开发
瓦洛兰特链接不上服务器
异常行为分析 数据库
沉迷网络安全专业
苏州智壳互联网科技有限公司
零基础做软件开发的书籍
云品汇网络技术
北京奥运会网络安全负责人
未来6g网络技术
数据库的日志不可用
华科网络安全复试
数据库隔离级别查看
wifi服务器哪个最好
可运行传奇3的云服务器
最容易兼职的网络技术
服务器麒麟操作系统安全模式
200g的服务器一年需要多少钱
公司电脑怎么安装服务器登录程序
血吼服务器
软件开发管理的内容
网络安全标准化论坛
网络安全管控器
无法验证服务器身份p108
网络安全自查报告乡镇
数据库删除为空数据
软件开发面向对象设计模式
小型医院服务器
自建服务器域名备案