颜色空间转换,我们经常用到的也就两种: BGR2Gray 和 BGR2HSV:

cv2.cvtColor(image,flag)函数进行转换,flag代表转换方式
mask = cv2.inRange(hsv, lower, upper)函数:
函数很简单,参数有三个
第一个参数:hsv指的是原图
第二个参数:lower指的是图像中低于这个lower的值,图像值变为0
第三个参数:upper指的是图像中高于这个upper的值,图像值变为0
而在lower_red~upper_red之间的值变成255
怎样找到要跟踪对象的HSV值:

import cv2
import numpy as np
green=np.uint8([[[0,255,0]]])
hsv_green=cv2.cvtColor(green,cv2.COLOR_BGR2HSV)
print(hsv_green)
打印结果如下:

现在你可以分别用 [H-100, 100, 100] 和 [H+100, 255, 255] 做上下阈值。除了这个方法之外,你可以使用任何其他图像编辑软件(例如 GIMP)或者在线转换软件找到相应的 HSV 值,但是最后别忘了调节 HSV 的范围。

博客介绍了常用的颜色空间转换,如BGR2Gray和BGR2HSV,可通过cv2.cvtColor()函数实现。还讲解了cv2.inRange()函数的使用及参数含义。此外,说明了找到要跟踪对象HSV值的方法,如设定上下阈值,也可借助图像编辑或在线转换软件。

被折叠的 条评论
为什么被折叠?



