一、基本描述
批量裁剪掉图片的背景区域,一般是白色背景,从而减少背景值的干扰和减少存储空间。
原文链接:Python批量裁剪图形外围空白区域
原文是通过检索所有图片的最小裁剪区域坐标值,然后再对图片进行裁剪。原文中的图都是经过标准化处理的,核心图片内容尺度都一致,所以采用该种办法,如果有很多不同大小的图片,即图片中的内容区域大小形状不一样,则一张一张的检索该图的背景区域,然后进行裁剪。即一张一张的检索裁剪区域并进行裁剪。
二、实现代码
对原文中的代码进行修改,一张一张的检索每张图的裁剪区域坐标,然后裁剪。
代码如下:
from PIL import Image
import numpy as np
import os
imagesDirectory = r"C:\Users\Administrator\Desktop\out" # tiff图片所在文件夹路径
i = 0
for 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
# 上下左右范围
"""
I

本文介绍如何使用Python批量裁剪图片的白色背景区域,减少背景干扰和存储空间。通过遍历图片像素,找到最小裁剪边界,然后进行裁剪。适用于具有统一内容尺度的图片。提供的代码示例展示了具体的实现过程。
最低0.47元/天 解锁文章
1044

被折叠的 条评论
为什么被折叠?



