當(dāng)前位置:
首頁 >
四、色彩空间
發(fā)布時間:2023/12/1
43
豆豆
一、色彩空間
1、什么是色彩空間?
色彩空間是定義的顏色范圍。
2、常見的色彩空間有哪些?
①RGB
②HSV
在OpenCV中,Hue的值為0~180°,之所以不是360°是因為,8位存不下,故進行歸一化操作,使得Hue取值在0 ~180°,可以通過一個字節(jié)來存儲。
③HIS
Hue:色調(diào)
Intensity:強度
Saturation :飽和度
④YCrCb
主要在早期的人的皮膚檢測方面應(yīng)用
⑤YUV
Android開發(fā)中常用,Linux的色彩空間
3、色彩空間之間的相互轉(zhuǎn)化
import cv2def color_space(image):gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)cv2.imshow("gray",gray)hsv = cv2.cvtColor(image,cv2.COLOR_BGR2HSV)cv2.imshow("hsv",hsv)yuv = cv2.cvtColor(image,cv2.COLOR_BGR2YUV)cv2.imshow("yuv",yuv)ycrcb = cv2.cvtColor(image,cv2.COLOR_BGR2YCrCb)cv2.imshow("ycrcb",ycrcb)src = cv2.imread("G:/Juptyer_workspace/study/opencv/opencv3/cat.png")#BGR cv2.namedWindow("input image",cv2.WINDOW_AUTOSIZE) cv2.imshow("input image",src) t1 = cv2.getTickCount() color_space(src) t2 = cv2.getTickCount() time = (t2-t1)/cv2.getTickFrequency()#顯示當(dāng)前運行時間 print("time:%s ms"%(time*1000))#輸出當(dāng)前運行時間單位為ms cv2.waitKey(0)cv2.destroyAllWindows()運行效果圖如下:
二、對視頻中的目標(biāo)(青色水杯)進行跟蹤
cv2.inRange(hsv,lowerb=lower,upperb=upper):對HSV顏色過濾,lowerb和upperb需要查上面的表進行顏色轉(zhuǎn)換
方法一:目標(biāo)物體白色,其余黑色
效果圖如下:
方法二:目標(biāo)物體顏色保留,其余黑色
效果圖如下:
三、對彩色圖像三顏色通道進行分割顯示并合并顯示
cv2.split(src):對src三顏色通道的彩色圖像進行分割
cv2.merge([b,g,r]):將b,g,r三個單顏色通道圖像進行合并
效果圖如下:
總結(jié)
- 上一篇: 北京现代车多少钱啊?
- 下一篇: 五、像素运算