使用PIL修剪空白
有没有简单的解决方案可以在PIL中修剪图像上的空白?
ImageMagick可以通过以下方式轻松支持它:
convert test.jpeg -fuzz 7% -trim test_trimmed.jpeg
我找到了PIL的解决方案:
from PIL import Image, ImageChops
def 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具有一些内置功能吗?还是有一些快速的解决方案?
精慕HU
相关分类