Imagemagick:将肖像和风景转换为方形图像(带有模糊条纹)

问题描述 投票:0回答:1

要将横向图像转换为边缘模糊的正方形,我使用以下命令:

magick input.jpg -fuzz 15% -trim +repage \( -clone 0 -resize 100x`identify -format "%[fx:w/h*100]" $1`% -blur 0x10 \) +swap -gravity center -compose over -composite squared_landscape.jpg

结果看起来不错: 然而,对参数略有变化的肖像图像尝试相同的方法(交换

h/w
分区以获得长宽比 > 1)不会提供相同的结果:

magick input.jpg -fuzz 15% -trim +repage \( -clone 0 -resize `identify -format "%[fx:h/w*100]" $1`x100% -blur 0x10 \) +swap -gravity center -compose over -composite squared_portrait.jpg

执行返回纵横比

identify -format "%[fx:h/w*100]" input.jpg
且图像为
2000x2525px
的嵌套位会产生
126.25
的纵横比,这应该会再次产生正方形。然而,执行像上面这样嵌套的命令不会产生所需的结果。

最终的想法是使用相同的通用线将纵向和横向图像格式化为所需的平方结果。

image-processing imagemagick image-manipulation
1个回答
0
投票

在 Imagemagick 中尝试此命令。横向或纵向相同。 Unix 语法。

肖像:

magick monet2.jpg \
\( -clone 0 -blur 0x10 \) \
\( -clone 0 -gravity center -crop "%[fx:min(w,h)]x%[fx:min(w,h)]+0+0" +repage \) \
-delete 0 \
-gravity center -compose over -composite monet2_blurcrop.jpg

风景:

magick barn.jpg \
\( -clone 0 -blur 0x10 \) \
\( -clone 0 -gravity center -crop "%[fx:min(w,h)]x%[fx:min(w,h)]+0+0" +repage \) \
-delete 0 \
-gravity center -compose over -composite barn_blurcrop.jpg

© www.soinside.com 2019 - 2024. All rights reserved.