在这篇OpenCV Python文章中,我想展示OpenCV中的基本颜色检测示例。 我们用颜色空间或颜色模型来表示计算机上的颜色,该模型基本上将颜色范围描述为数字元组。除了讨论每种颜色之外,我们还将讨论我们使用的最常见的颜色空间。即RGB(红色,绿色,蓝色)和HSV(色调,饱和度,值)。 RGB基本上将颜色描述为三个组成部分的元组。每个分量可以取0到255之间的值,其中元组(0,0,0)表示黑色,而(255,255,255)表示白色。例如,如果要在屏幕上显示纯蓝色像素,则R值将为0,G值将为0,B值将为255。 下面是一些RGB颜色的例子:
| 颜色 | RGB 值 |
|---|---|
| 红色 | 255, 0, 0 |
| 橙色 | 255, 128, 0 |
| 粉色 | 255, 153, 255 |
下面是OpenCV Python颜色检测示例的完整代码
import cv2 import numpy as np img = cv2.imread('www.linuxmi.com.png') hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV) #Red color rangle 169, 100, 100 , 189, 255, 255 lower_range = np.array([110,50,50]) upper_range = np.array([255,255,0]) mask = cv2.inRange(hsv, lower_range, upper_range) cv2.imshow('www.linuxmi.ccom - image', img) cv2.imshow('www.linuxmi.ccom - mask', mask) cv2.waitKey(0) cv2.destroyAllWindows()首先,你需要在你的工作目录中有一个图像,我正在使用这个图像,你可以从下面得到这个图像。
首先我们需要加载图像,然后我们将图像转换为HSV颜色。 img = cv2.imread('www.linuxmi.com.png') hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV) 之后,您需要确定颜色的上限和下限,可以为此建议使用imutils。在上图中,我们将检测三种蓝色。 lower_range = np.array([110,50,50])
upper_range = np.array([255,255,0]) 之后,我们需要创建图像的蒙版。 mask = cv2.inRange(hsv, lower_range, upper_range) 最后我们需要展示图像和蒙版。 cv2.imshow('www.linuxmi.ccom - image', img)
cv2.imshow('www.linuxmi.ccom - mask', mask) 现在运行完整的代码。
审核编辑:汤梓红
-
计算机
+关注
关注
19文章
7764浏览量
92682 -
RGB
+关注
关注
4文章
820浏览量
61522 -
OpenCV
+关注
关注
33文章
651浏览量
44420 -
python
+关注
关注
57文章
4858浏览量
89586
原文标题:Python OpenCV教程:特定颜色的检测
文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
树莓派上使用OpenCV和Python实现实时人脸检测
LabVIEW+Python+openCV
如何使用Python中的OpenCV模块检测颜色
在Python下使用OpenCV的技巧教程与典型应用案例
python图像处理opencv步骤是怎么样的
图像处理的颜色空间及其OpenCV实现
如何使用Python OpenCV进行面部标志检测
Linux Debian与Python、Flask和OpenCV识别面部

Python OpenCV教程:特定颜色的检测
评论