(现代)工具用于将图像文件裁剪为自动确定的边界框?

时间:2014-04-16 13:01:00

标签: imagemagick crop netpbm

我需要从渲染管道不生成(可靠)边界框的图中裁剪空白(边距等)。边缘是可靠的白色,因此自动检测原则上是微不足道的,但是我设法找到的唯一现有工具是20世纪90年代早期的古老的pnmcrop(http://netpbm.sourceforge.net/doc/pnmcrop.html),它使用了模糊的netpbm图像格式({{ 3}})。

netpbm工具包括PNG格式转换器,因此这个三元组可以工作:

pngtopnm original.png >original.ppm
pnmcrop original.ppm >cropped.ppm
pnmtopng cropped.ppm >cropped.png

但它有点笨重(并且使用图表,中间PPM文件可以膨胀超过100倍:original.png是165kB,original.ppm是224MB)。

当然,有一种方法可以哄骗像imagemagick这样的现代工具来寻找和裁剪边界吗?

编辑:netpbm工具支持stdin。所以作为没有临时文件的更好的单行:

pngtopnm <original.png | pnmcrop | pnmtopng >cropped.png

使用适当的工具替换(jpgtopnm,giftopnm等 - 从所有71种可能性中选择!)它仍然有点笨拙。

1 个答案:

答案 0 :(得分:0)

感谢上面的@emcconville,使用imagemagick更加整洁和快捷:

convert original.png -trim cropped.png