我正在尝试使用 ImageMagick 去除一堆图像的背景。ImageMagick 网站记录了执行此操作的各种技术。他们还方便地编写了一个 shell 脚本bg_removal.sh,其中包含这些方法的首选组合。
我在脚本中遇到了错误。当你调用脚本时,你会给出几个模糊参数,加上你知道的特定背景颜色。传递明确的背景颜色,例如RGB(37,188,111)
,会产生最终命令的以下片段:
( +clone -sparse-color voronoi 0,0,RGB(37,188,111) )
..它工作正常。但是,如果您不传递 bgcolor,则表达式如下所示:
( +clone -sparse-color voronoi 0,0,%[fx:p{0,0}] )
它失败并显示有关 . 的参数数量错误的消息-sparse-color
。我可以将其更改为不同的功能,并且可以正常工作:
( +clone -sparse-color voronoi 0,0,%[pixel:p{0,0}] )
我对 ImageMagick 知之甚少,不知道该fx
功能在做什么以及是否pixel
可以替代。我认为它正在寻找坐标 0,0 处的颜色来猜测背景颜色,但不完全确定。语法0,0,%[fx:p{0,0}]
是否正确?