python找色_基于Python查找图像中很常见的颜色

本文介绍如何使用Python通过Numpy、Matplotlib和OpenCV等库找出图像中的主要颜色。从平均值法、最高像素频率法,到K均值聚类,逐步解析寻找图像中最常见颜色的方法,并展示了不同方法的优缺点。最后,通过K均值结合像素比例显示,提供了一种更全面展示图像颜色分布的方式。
摘要由CSDN通过智能技术生成

如果我们能够得知道一幅图像中最多的颜色是什么的话,可以帮助我们解决很多实际问题。例如在农业领域中想确定水果的成熟度,我们可以通过检查水果的颜色是否落在特定范围内,来判断它们是否已经成熟。

2311252549-0.jpg

接下来我们将使用Python和一些常用库(例如Numpy,Matplotlib和OpenCV)来解决这个问题。

01. 准备工作

第一步:添加程序包

我们将在此处加载基本软件包。另外,由于我们要使用Jupyter进行编程,因此小伙伴们不要忘记添加%matplotlib inline命令。

第二步:加载并显示示例图像

我们将并排显示两个图像,因此我们需要做一个辅助函数。接下来我们将加载一些在本教程中将要使用的示例图像,并使用上述功能对其进行显示。

2311254912-1.jpg

02. 常用方法

方法一:平均值

第一种方法是最简单(但无效)的方法-只需找到平均像素值即可。使用numpy的average功能,我们可以轻松获得行和宽度上的平均像素值-axis=(0,1)

img_temp = img.copy()

img_temp[:,:,0], img_temp[:,:,1], img_temp[:,:,2] = np.average(img, axis=(0,1))

img_temp_2 = img_2.copy()

img_temp_2[:,:,0], img_temp_2[:,:,1], img_temp_2[:,:,2] = np.average(img_2, axis=(0,1))

show_img_compar(img, img_temp)

show_img_compar(img_2, img_temp_2)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值