首页 > 技术文章 > python实现色彩空间转换

april0315 2020-09-21 19:50 原文

目录:

(一)调用转换函数实现图像色彩空间转换------ cv2.cvtColor函数

(二)色彩空间转换,利用inrange函数过滤视频中的颜色,实现跟踪某一颜色

 

 

 正文:

(一)调用转换函数实现图像色彩空间转换------ cv2.cvtColor函数

 cvtColor(src,code,dst=None,dstCn=None),作用:将一幅图像从一个色彩空间转换到另一个色彩,空间参数:code,转换的色彩空间。

BGR---》GRAY,BGR---》HSV,BGR---》YUV,BGR--》YCrCb
 1 # 色彩空间转换
 2 def color_space_demo(img):
 3     gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
 4     cv2.imshow("gray", gray)
 5     hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
 6     cv2.imshow("hsv", hsv)
 7     yuv = cv2.cvtColor(img, cv2.COLOR_BGR2YUV)
 8     cv2.imshow("yuv", yuv)
 9     ycrcb = cv2.cvtColor(img, cv2.COLOR_BGR2YCrCb)
10     cv2.imshow("ycrcb", ycrcb)

HSV色彩空间说明: H:0-180  S: 0-255 V: 0-255

(二)色彩空间转换,利用inrange函数过滤视频中的颜色,实现跟踪某一颜色

         利用cv2.inRange函数设阈值,这里注意用的颜色空间是hsv。HSV:HSV颜色空间是孟塞尔彩色空间的简化形式,是一种基于感知的颜色模型。它将彩色信号分为3种属性:色调(Hue,H),饱和度(Saturation,S),亮度(Value,V)。色调表示从一个物体反射过来的或透过物体的光波长,也就是说,色调是由颜色的名称来辨别的,如红、黄、蓝;亮度是颜色的明暗程度;饱和度是颜色的深浅,如深红、浅红。

      HSV颜色空间反映了人观察色彩的方式,具有两个显著的特点:

  • 亮度分量与图像的彩色信息无关
  • “色调”和“饱和度”分量与人感受颜色的方式是紧密相连的

可以根据右表来确定lower_hsv, upper_hsv的取值。

 1 # -*- coding=GBK -*-
 2 import cv2 as cv
 3 import numpy as np
 4  
 5  
 6 def nextrace_object_demo():
 7     capture = cv.VideoCapture("G:/1.mp4")#导入视频
 8     while True:
 9         ret, frame = capture.read()
10         if ret == False:
11             break
12         hsv = cv.cvtColor(frame, cv.COLOR_BGR2HSV)#转换色彩空间为hsv
13         #设置白色的范围,跟踪视频中的白色
14         lower_hsv = np.array([0, 0, 221])#设置过滤的颜色的低值
15         upper_hsv = np.array([180, 30, 255])#设置过滤的颜色的高值
16         mask = cv.inRange(hsv, lower_hsv, upper_hsv)#调节图像颜色信息(H)、饱和度(S)、亮度(V)区间,选择白色区域
17         cv.imshow("video", frame)
18         cv.imshow("mask", mask)
19         if cv.waitKey(50) & 0xFF == ord('q'):
20             break
21  
22 nextrace_object_demo()
23 cv.waitKey(0)
24 cv.destroyAllWindows()、

参考:
https://blog.csdn.net/u011321546/article/details/79533669
https://blog.csdn.net/Vici__/article/details/100714822#12%E3%80%81%E5%BD%A9%E8%89%B2%E7%A9%BA%E9%97%B4%E8%BD%AC%E6%8D%A2

推荐阅读