改变颜色空间
目标
- 在本篇文章中,你将学习如何将图像从一个色彩空间转换到另一个,像BGR↔灰色,BGR↔HSV等。
- 将创建一个应用程序,以提取视频中的彩色对象。
- 你将学习以下功能:cv.cvtColor,cv.inRange等。
改变颜色空间
OpenCV中有超过150种颜色空间转换方法。但是我们将研究只有两个最广泛使用的,BGR↔GRAY和BGR↔HSV。
对于颜色转换,我们使用cv函数。cvtColor(input_image, flag),其中flag决定转换的类型。
对于BGR→GRAY转换,我们使用标志cv.COLOR_BGR2GRAY。类似地,对于BGR→HSV,我们使用标志cv.COLOR_BGR2HSV。要获取其他标记,只需在Python终端中运行以下命令:
>>> import cv2 as cv
>>> flags = [i for i in dir(cv) if i.startswith('COLOR_')]
>>> print( flags )
**注意:**HSV的色相范围为[0,179],饱和度范围为[0,255],值范围为[0,255]。不同的软件使用不同的规模。因此,如果你要将OpenCV值和它们比较,你需要将这些范围标准化。

本文介绍了如何使用OpenCV在Python中进行颜色空间转换,特别是BGR到GRAY和BGR到HSV。通过创建应用程序,演示了如何提取视频中的特定颜色对象,例如蓝色,并展示了对象追踪的过程。在HSV空间中定义蓝色范围后,可以有效地追踪蓝色对象,但可能存在的噪声问题有待解决。此外,还提供了寻找HSV值的方法,包括使用cv.cvtColor()函数直接转换BGR颜色以获取其HSV值。
最低0.47元/天 解锁文章
871

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



