如何将图像列表中的图像调整为相同的大小

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将图像列表中的图像调整为相同的大小相关的知识,希望对你有一定的参考价值。

我想用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

要么

# Resize only the mask to 2000x500
convert inputfile.png 
    ( mask.png -resize 2000x500! ) 
    -compose over -composite 
    outputfile.png

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

答案

使用ImageMagick,您可以使用“-distort 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。

以上是关于如何将图像列表中的图像调整为相同的大小的主要内容,如果未能解决你的问题,请参考以下文章

上传前调整图像大小 - 将画布转换为文件对象

在 PHP 中将图像裁剪为正方形,而不是调整为相同的纵横比

无论图像大小如何,都可以计算固定长度的梯度直方图(HOG)

使 mat-card-image 中的所有图像大小相同但缩放正确

调整图像大小后检测公差颜色

如何使用 VBA 在 Word 中将多个图像裁剪为相同大小,同时使其适合其容器形状