欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

cvtcolor函数的作用(cvtcolor函数出现未处理异常)

程序员文章站 2024-03-27 13:13:58
在这篇文章中,我们将看到如何使用 python 中的 opencv 模块检测颜色,进入这个领域的第一步就是安装下面提到的模块。pip install opencv-pythonpip install...

在这篇文章中,我们将看到如何使用 python 中的 opencv 模块检测颜色,进入这个领域的第一步就是安装下面提到的模块。

pip install opencv-python
pip install numpy

然后,导入模块。读取图像并使用 opencv 模块中的 cvtcolor() 函数将bgr图像转换为 hsv (色调、饱和度、值) 图像,

cvtcolor函数的作用(cvtcolor函数出现未处理异常)

现在,选择我们想要检测的颜色,并使用如下所示的hsv颜色贴图获得较低和较高的 hsv 值。在 opencv 中,色调的值从0到180,饱和度的值从0到255。因此,opencv 使用的 hsv 值范围在 (0–180, 0–255, 0–255) 之间。

cvtcolor函数的作用(cvtcolor函数出现未处理异常)

hsv 颜色图

h 根据 x 轴取值,s 根据 y 轴取值,v 始终在 (20-255) 之间的范围内取值。使用 hsv 值,我们需要使用 opencv 模块中的 inrange() 函数找到掩码并将其分配给变量(掩码)。使用 bitwise_and() 函数,我们可以通过将 bgr 图像作为第一个和第二个参数传递来获取我们选择的检测到的彩色图像,第三个参数将作为掩码并将其分配给变量 (detected_img)。

cvtcolor函数的作用(cvtcolor函数出现未处理异常)

detected_img 将是程序的最终输出,并使用 opencv 模块中的 imshow()函数显示。

在我们的例子中,我们将检测输入图像的红色和绿色,下面的代码将只检测红色和绿色。

用作输入的图像:

cvtcolor函数的作用(cvtcolor函数出现未处理异常)

输入图像

整个程序:

cvtcolor函数的作用(cvtcolor函数出现未处理异常)

输出图像: