dch*_*ang 7 python colors detection
我有大约3000张图像和13种不同的颜色(这些图像的大部分背景为白色).如果图像的主色是13种不同颜色中的一种,我希望它们相关联.
我见过类似的问题,例如使用python的图像颜色检测,要求使用平均颜色算法.我几乎使用Python图像库和直方图复制了这些代码,并使其工作 - 但我发现它对于确定主要颜色并不太可靠.
有任何想法吗?或图书馆可以解决这个问题?
提前致谢!
:编辑:谢谢你们 - 你们几乎都说了同样的事情,创建"桶"并用图像的每个最近像素增加桶数.我似乎得到了很多图像返回"白色"或"米色",这也是大多数这些图像的背景.有办法解决或忽略背景吗?
再次感谢.
jte*_*ace 10
您可以使用getcolors函数获取图像中所有颜色的列表.它返回表单中的元组列表:
(N, COLOR)
Run Code Online (Sandbox Code Playgroud)
其中N是COLOR图像中颜色出现的次数.要获得最大颜色,可以将列表传递给max函数:
>>> from PIL import Image
>>> im = Image.open("test.jpg")
>>> max(im.getcolors(im.size[0]*im.size[1]))
(183, (255, 79, 79))
Run Code Online (Sandbox Code Playgroud)
请注意,我传递im.size[0]*im.size[1]给getcolors函数,因为这是最大值maxcolors(有关详细信息,请参阅文档).
| 归档时间: |
|
| 查看次数: |
4549 次 |
| 最近记录: |