Imagemagick子图像的位置和大小

3

问题描述:

在ImageMagick中,使用compare很容易对比两个图像,它会生成一个与被对比的两个图像大小相同的图像,并显示差异数据。我想使用差异数据从原始图像中裁剪出该部分,同时保持图像尺寸并用alpha填充其余空间

我的解决方案:

我现在正在尝试找到差异的边界框,但没有成功。例如,下面是我用于生成差异图像的脚本,如下所示。现在,我需要找到图像中红色部分的边界框。边界框也在下面的图片中展示。请注意,图片中的数字是任意的,不是我要寻找的实际值。

compare -density 300 -metric AE -fuzz 10% ${image} ${otherImage} -compose src ${OUTPUT_DIR}/diff${i}-${j}.png

enter image description here enter image description here

1个回答

3

您之前提出了一个问题,我今天才发现。由于我认为答案仍然具有参考价值,因此我提出以下建议。

convert的修剪选项会删除与角像素相同颜色的任何边缘。图像的页面或虚拟画布信息将被保留。因此,如果您运行以下命令:

convert -trim edPdf.png - | identify -

它为您提供:

PNG 157x146 512x406+144+32 8-bit PseudoClass 2c 1.08KB 0.000u 0:00.000

你要查找的数值是 (144,228),其中后者是 406-146-32,这是因为你要寻找左下角,而 (+144+32) 给出了左上角。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接