Python怎么批量裁剪图形外围空白区域
发表于:2024-10-25 作者:千家信息网编辑
千家信息网最后更新 2024年10月25日,这篇文章主要介绍了Python怎么批量裁剪图形外围空白区域的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python怎么批量裁剪图形外围空白区域文章都会有所收获,下面我们
千家信息网最后更新 2024年10月25日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安全错误
数据库的锁怎样保障安全
校园日网络安全视频
大学生校园网络安全保护
安阳国贸中心网络技术公司
tbc服务器
ccat软件开发工程师考什么
徐州营销软件开发供应
vba在列表框查找数据库
福州新华互联网科技有限公司
数据库表中的多对多关系描述
西宁网络安全工程师收入
ais中文船名数据库
盲打练习软件开发
视频服务器带宽推荐
墨鱼网络安全机器人
网络安全拟态防御
数据库 学生选题系统
数据库无法还原
ai软件开发工具
东方通如何连接数据库
服务器有多大
管家婆仓库数据库连接失败
开源手游服务器框架
综合搜索软件开发
app数据库demo
资深软件开发公司
服务器怎么虚拟化主机
大并发数据库增删改查
互联网科技创新名称
手机版2b服务器免费版
网络安全隐患的歌词