如何通过命令行模糊图片?已知ImageMagick可实现PNG转JPG
ImageMagick 命令行实现图片模糊处理
当然可以!ImageMagick 完全支持通过命令行实现各种图片模糊效果,下面给你整理了几种最常用的模糊类型和对应的命令示例,都是直接能用的:
1. 高斯模糊(最常用的柔化效果)
这是日常处理中最常用的模糊方式,通过 -blur 参数实现,格式为 半径x标准差:
- 如果只指定标准差,半径会由ImageMagick自动计算(推荐这种方式,更省心)
- 标准差数值越大,模糊程度越明显
示例命令:
# 基础高斯模糊,标准差设为5,半径自动适配 convert input.png -blur 0x5 output_gaussian.png # 自定义半径和标准差,比如半径10、标准差3(适合需要更精准控制的场景) convert input.png -blur 10x3 output_gaussian_custom.png
2. 均值模糊(均匀模糊效果)
如果需要让图片呈现均匀的模糊感,可以用 -boxblur 参数,或者通过“缩小再放大”的方式模拟:
方式一:直接用boxblur
# 参数格式为 半径x0(均值模糊的标准差固定为0) convert input.png -boxblur 5x0 output_boxblur.png
方式二:缩放模拟
先把图片缩小到原尺寸的20%,再放大回原尺寸,就能得到类似均值模糊的效果:
convert input.png -scale 20% -resize 500% output_avg_blur.png
3. 运动模糊(模拟移动轨迹)
如果需要模拟物体运动产生的模糊效果,用 -motion-blur 参数,格式为 半径x标准差+角度:
- 角度控制模糊方向:0°为水平,90°为垂直,45°为斜向
- 半径和标准差越大,运动拖影越长
示例命令:
# 水平方向运动模糊,拖影长度10,角度0° convert input.png -motion-blur 10x3+0 output_motion.png # 45°斜向运动模糊,拖影更长 convert input.png -motion-blur 15x5+45 output_motion_45.png
小提示
- 如果你用的是新版ImageMagick(7.x及以上),建议把命令里的
convert换成magick,比如:magick input.png -blur 0x5 output.png - 所有命令都支持直接处理JPG格式,比如把
input.png换成input.jpg就行,输出格式也可以自由指定。
内容的提问来源于stack exchange,提问作者Ulad Kasach
相关产品推荐
相关产品推荐

