我想从图像中提取一种单一的颜色(例如#a87830),将其他所有颜色都变成白色。输入可能有些嘈杂,所以相邻的相似颜色的像素也可以被包括在内。理想情况下,所有非白色像素最终都会被转换成黑色(即输出是1位深度的图像)。
我可能需要批量处理此操作,因此希望像ImageMagick命令行这样的东西,或者我可以使用PHP ImageMagick扩展编写的代码。(我确信ImageMagick一定能够做到这一点,只要正确的参数就可以了,这就是为什么我标记了它,但只要它在Linux上运行,我也可以接受其他软件。)
背景:我正在尝试对ContourTrace程序进行第一次预处理阶段,这在这张图片中很好地展示了出来。
我可能需要批量处理此操作,因此希望像ImageMagick命令行这样的东西,或者我可以使用PHP ImageMagick扩展编写的代码。(我确信ImageMagick一定能够做到这一点,只要正确的参数就可以了,这就是为什么我标记了它,但只要它在Linux上运行,我也可以接受其他软件。)
背景:我正在尝试对ContourTrace程序进行第一次预处理阶段,这在这张图片中很好地展示了出来。
a87830
值为基准。10% 的阈值意味着将所有 RGB 值小于 25,25,25(即 255 的 10%)的像素设置为黑色,所有大于该值的像素设置为白色。因此,输出图像将是纯黑白色。 - Mark Setchell+opaque "#a87830"
,然后在-threshold
之后使用-negate
效果很好。1% 和 5% 的模糊度看起来一样好,但是10%的话会包含其他地图特征。(目前只在一张地图图像上进行了测试:可能这张图比典型情况下更清晰...) - Darren Cook