Imagemagick:创建具有透明背景的diff图像

Imagemagick:创建具有透明背景的diff图像,imagemagick,Imagemagick,我想从两个图像创建一个diff,它可以应用于第一个图像的顶部,从而产生相同的第二个图像 我试着这样做: convert -composite -compose difference img1.png img2.png img-diff.png 生成的img-diff.png显示黑色背景,其中img1.png等于img2.png 我希望生成具有透明背景的差异,以便通过将其与第一幅图像相结合来创建动画。我认为您需要在输出文件名之前添加-transparent black。您可能想,也可能不想,添加

我想从两个图像创建一个diff,它可以应用于第一个图像的顶部,从而产生相同的第二个图像

我试着这样做:

convert -composite -compose difference img1.png img2.png img-diff.png
生成的
img-diff.png
显示黑色背景,其中
img1.png
等于
img2.png


我希望生成具有透明背景的差异,以便通过将其与第一幅图像相结合来创建动画。

我认为您需要在输出文件名之前添加
-transparent black
。您可能想,也可能不想,添加一个
-fuzz 5%
,使近黑色也变得透明

所以,具体来说,如果你从这两个图像开始

然后运行以下命令:

convert 1.jpg 2.jpg -compose difference -composite -fuzz 5% -transparent black out.png
最终得到的结果是(它显示为白色透明,因为它使用的是无法显示透明度的JPEG)

我认为你(valiant)尝试的问题在于,你需要先设置
-compose
,告诉IM如何合成图像,然后再实际使用
-composite
,而且你缺少了
-透明黑色部分