Image 如何按主色或背景色对图像进行排序
我有8000张图片,基本上需要删除任何有白色背景的照片。我希望能找到一种方法,可以根据主色调(希望是白色)或背景色,比如说左上角的像素,对所有这些图像进行排序Image 如何按主色或背景色对图像进行排序,image,image-processing,imagemagick,imagemagick-convert,Image,Image Processing,Imagemagick,Imagemagick Convert,我有8000张图片,基本上需要删除任何有白色背景的照片。我希望能找到一种方法,可以根据主色调(希望是白色)或背景色,比如说左上角的像素,对所有这些图像进行排序 这可以通过imagemagick实现吗?根据我在一分钟的网络研究(实际上是你的工作)中发现的,这是可能的 减少加速所需的颜色数量(如果需要) 然后创建一个直方图以获得颜色频率 然后根据最主要颜色的频率对输出进行排序 更多信息可在此处找到: 根据我在一分钟的网络调查中发现的情况(实际上是你的工作),这是可能的 减少加速所需的颜色数量(
这可以通过imagemagick实现吗?根据我在一分钟的网络研究(实际上是你的工作)中发现的,这是可能的 减少加速所需的颜色数量(如果需要) 然后创建一个直方图以获得颜色频率 然后根据最主要颜色的频率对输出进行排序 更多信息可在此处找到:
根据我在一分钟的网络调查中发现的情况(实际上是你的工作),这是可能的 减少加速所需的颜色数量(如果需要) 然后创建一个直方图以获得颜色频率 然后根据最主要颜色的频率对输出进行排序 更多信息可在此处找到:
您可以计算平均像素值、排序和管道到其他实用程序
for f in *.jpg
do
identify -format '%[mean] %f\n' "$f"
done | sort -r | cut -d ' ' -f 2
将计算平均像素值(数字随着接近白色而增加)。例如标识格式“%[mean]%f\n'$f”
14524.3 output0.jpg 64246.8 output1.jpg 34612.2 output2.jpg
- 管道至
反向排序排序-r
64246.8 output1.jpg 34612.2 output2.jpg 14524.3 output0.jpg
- 管道至
以降低计算平均值切割-d'-f2
output1.jpg output2.jpg output0.jpg
for f in *.jpg
do
identify -format '%[mean] %f\n' "$f"
done | sort -r | cut -d ' ' -f 2
将计算平均像素值(数字随着接近白色而增加)。例如标识格式“%[mean]%f\n'$f”
14524.3 output0.jpg 64246.8 output1.jpg 34612.2 output2.jpg
- 管道至
反向排序排序-r
64246.8 output1.jpg 34612.2 output2.jpg 14524.3 output0.jpg
- 管道至
以降低计算平均值切割-d'-f2
output1.jpg output2.jpg output0.jpg
convert image -fuzz XX% -fill white -opaque white -fill black +opaque white -scale 1x1 -format "%[fx:100*mean]\n" info:
结果将是图像中白色的百分比
其中XX百分比是你想白色的接近白色的百分比公差。如果您只想要纯白色,则使用0%。如果您想包括近白色,则增加XX%
PS抱歉@emcconville,我们一定是在同一时间发布的。基本上是相同的解决方案,但您的排序更彻底。您可以使用ImageMagick计算图像中白色像素的百分比
convert image -fuzz XX% -fill white -opaque white -fill black +opaque white -scale 1x1 -format "%[fx:100*mean]\n" info:
结果将是图像中白色的百分比
其中XX百分比是你想白色的接近白色的百分比公差。如果您只想要纯白色,则使用0%。如果您想包括近白色,则增加XX%
PS抱歉@emcconville,我们一定是在同一时间发布的。基本上是相同的解决方案,但您的排序更彻底。技术上讲,白色和黑色是没有颜色的。技术上讲,白色和黑色是没有颜色的。顺便说一句,这是一个比我建议的“计算平均值”更好的解决方案,因为它可以用于非白色背景。模糊和颜色值都可以根据需要进行调整。这是比我提出的“计算平均值”更好的解决方案,因为它可以用于非白色背景。模糊和颜色值都可以根据需要进行调整。