使用PIL修剪空白有没有简单的解决方案可以在PIL中修剪图像上的空白?ImageMagick可以通过以下方式轻松支持它:convert test.jpeg -fuzz 7% -trim test_trimmed.jpeg我找到了PIL的解决方案:from PIL import Image, ImageChopsdef trim(im, border): bg = Image.new(im.mode, im.size, border) diff = ImageChops.difference(im, bg) bbox = diff.getbbox() if bbox: return im.crop(bbox)但是此解决方案有缺点:我需要定义border颜色,对我来说这并不重要,我的图像有白色背景最不利的是,此PIL解决方案不支持ImageMagick的-fuzz密钥。要添加一些模糊裁剪。因为我可以有一些jpeg压缩伪像和不需要的巨大阴影。可能PIL具有一些内置功能吗?还是有一些快速的解决方案?
3 回答

精慕HU
TA贡献1845条经验 获得超8个赞
在ufp.image模块上使用修整功能。
import ufp.image
import PIL
im = PIL.Image.open('test.jpg', 'r')
trimed = ufp.image.trim(im, fuzz=13.3)
添加回答
举报
0/150
提交
取消