Imagemagick-检查顶行是否包含任何黑色像素

Imagemagick-检查顶行是否包含任何黑色像素,imagemagick,imagemagick-convert,Imagemagick,Imagemagick Convert,我有一个白色的jpg文件,上面有一些黑色像素 我正在寻找一种方法来检查顶行(y=0)是否包含任何黑色像素。是否有任何方法可以使用Imagemagick/convert,或者第二种方法可以使用任何其他linux命令行工具 我在谷歌上找不到任何类似的话题 谢谢。您可以将顶行裁剪出来,然后按如下方式打印该行中最暗(最小)的像素: magick image.png -crop x1+0+0\! -format "%[min]" info: 如果有纯黑色像素,它将打印0 我假设您的

我有一个白色的jpg文件,上面有一些黑色像素

我正在寻找一种方法来检查顶行(y=0)是否包含任何黑色像素。是否有任何方法可以使用Imagemagick/convert,或者第二种方法可以使用任何其他linux命令行工具

我在谷歌上找不到任何类似的话题


谢谢。

您可以将顶行裁剪出来,然后按如下方式打印该行中最暗(最小)的像素:

magick image.png -crop x1+0+0\! -format "%[min]" info:
如果有纯黑色像素,它将打印0


我假设您的图像是灰度图像,如果不是,您可能希望这样:

magick image.png -crop x1+0+0\! -colorspace gray -format "%[min]" info:

请注意,JPG图像是有损的,因此即使在图像中绘制黑色像素(即0),保存后也可能显示为3或4。因此,您可能还希望添加一个阈值,以强制低于某个值的所有像素为零(即纯黑色),并强制高于该值的所有像素为纯白色:

magick image.jpg -crop x1+0+0\! -colorspace gray -threshold 1% -format "%[min]" info:

嗯,我不确定这些图像是否被称为灰度。它们是通过以下命令生成的:convert-size XxY xc:white-fill-black-draw“text position\u x,position\u y SOMETEXT”$FN。就JPEG而言,它们是灰度级的,但无论如何都可以包含
-颜色空间灰色
。另外,
convert
是旧的v6风格,现在应该使用
magick-size…
。注意:如果您确实必须继续使用v6,则需要将我的命令中的
magick
替换为
convert
。是的,我使用convert而不是magick,因为magick不存在:-。它似乎起作用了。谢谢当然,我也可以对底线使用相同的方法。是的,使用以下方法裁剪底线
convert image.jpg-gravity south-crop x1+0+0\谢谢,这个重力南部更实用。