Imagemagick 如何将imagelist中的图像调整为相同大小

Imagemagick 如何将imagelist中的图像调整为相同大小,imagemagick,Imagemagick,我想用ImageMagick对图像应用遮罩。但是由于图像和遮罩的大小不同,我想拉伸/缩放遮罩以适应图像 通常,输入图像是2000x500px,但可以是1000x500px或其他任何值,掩码是400x200px 因此,如果我知道输入图像始终为2000x500px,我可以: # Resize all images in the list to 2000x500 convert inputfile.png mask.png -resize 2000x500\! \ -compose over

我想用ImageMagick对图像应用遮罩。但是由于图像和遮罩的大小不同,我想拉伸/缩放遮罩以适应图像

通常,输入图像是2000x500px,但可以是1000x500px或其他任何值,掩码是400x200px

因此,如果我知道输入图像始终为2000x500px,我可以:

# Resize all images in the list to 2000x500
convert inputfile.png mask.png -resize 2000x500\! \
    -compose over -composite \
    outputfile.png


但我的问题是我不知道输入文件的大小!那么,如何将遮罩大小调整为与列表中第一幅图像相同的大小?

使用ImageMagick,您可以使用“-扭曲SRT”的缩放功能调整遮罩大小,以匹配输入图像的尺寸。示例命令可能如下所示

convert input.png mask.png \
   -set option:distort:viewport %[fx:u.w]x%[fx:u.h] \
   -distort SRT "0,0 %[fx:u.w/s.w],%[fx:u.h/s.h] 0 0,0" \
   -composite result.png

将视口设置为输入图像的尺寸,然后缩放两个图像以适合该视口。当然,输入图像的大小不会改变,因为它被缩放为1/1。

使用ImageMagick,您可以使用“-扭曲SRT”的缩放功能调整遮罩的大小以匹配输入图像的尺寸。示例命令可能如下所示

convert input.png mask.png \
   -set option:distort:viewport %[fx:u.w]x%[fx:u.h] \
   -distort SRT "0,0 %[fx:u.w/s.w],%[fx:u.h/s.h] 0 0,0" \
   -composite result.png
将视口设置为输入图像的尺寸,然后缩放两个图像以适合该视口。当然,输入图像的大小不会改变,因为它已缩放为1/1