OpenCV 彩色空間互轉

2021-10-05 09:53:40 字數 2467 閱讀 9765

在rgb色彩空間,影象深度與色彩的對映關係主要有真彩色、偽彩色和調配色。

真彩色是指在組成一幅彩色影象的每個畫素值中,有r,g,b三個基色分量,每個基色分量直接決定顯示裝置的基色強度,這樣產生的彩色稱為真彩色,是真實的原圖彩色。

偽彩色影象的每個畫素值實際上是乙個索引值或**,該**值作為色彩查詢表clut中某一項的入口位址,根據該位址可查詢出包含實際r,g,b的強度值。這種用查詢對映的方法產生的色彩稱為偽彩色。色彩查詢表clut是乙個事先做好的表,表項入口位址也稱為索引號。彩色影象本身的畫素數值和色彩查詢表的索引號有一種變換關係,這種關係可以是系統定義的,也可以是使用者自己定義的變換關係。使用查詢得到的數值顯示的彩色是真的,可又不是影象本身的顏色,因為其沒有完全反映原圖的彩色,所以稱其為偽彩色。

調配色的獲取是通過每個畫素點的r,g,b分量分別作為單獨的索引值進行變換,經相應的色彩查詢表找出各自的基色強度,用變換後的r,g,b強度值產生色彩。

灰度是描述灰度影象內容的最直接的視覺特徵。它指黑白影象中點的顏色深度,範圍一般從0到255,白色為255,黑色為0,故黑白影象也稱灰度影象。灰度影象矩陣元素的取值通常為[0,255],因此其資料型別一般為8位無符號整數,這就是人們通常所說的256級灰度。

著名心理學公式:

gray = rx0.299 +gx0.587 + bx0.114

rgb也就是red,green,blue

hsv也就是hue,saturation,value

hsv轉rgb公式:

hsv轉rgb公式:

轉換顏色空間

import cv2

flags =

[i for

indir

(cv2)

if i startswith(

'color_')]

print

(flags)

物體跟蹤

import cv2

import numpy as np

cap = cv2.videocapture(0)

while(1

):#獲取每一幀

ret,frame = cap.read(

)#轉換到hsv

hsv = cv2.cvtcolor(frame,cv2.color_bgr2hsv)

#設定藍色的閥值

lower_blue = np.array(

[110,50

,50])

upper_blue = np.array(

[130

,255

,255])

#根據閥值構建掩模

mask = cv2.inrange(hsv,lower_blue,upper_blue)

#對原圖和掩模進行位運算

res = cv2.bitwise_and(frame,frame,mask=mask)

#顯示影象

cv2.imshow(

'frame'

,frame)

cv2.imshow(

'mask'

,mask)

cv2.imshow(

'res'

,res)

k = cv2.waitkey(5)

&0xff

if k ==27:

break

#關閉視窗

cv2.destroyallwindows(

)

找到跟蹤物件的hsv值

import cv2 import numpy as np

green=np.uint8([0

,255,0

]) hsv_green=cv2.cvtcolor(green,cv2.color_bgr2hsv)

error:

/builddir/build/build/opencv-

2.4.6

.1/ modules/imgproc/src/color.cpp:

3541

: error:(-

215)

(scn ==3|

| scn ==4)

&&(depth == cv_8u |

| depth == cv_32f)

in function cvtcolor

green=np.uint8([[

[0,255,0

]]]) hsv_green=cv2.cvtcolor(green,cv2.color_bgr2hsv)

print

(hsv_green )[[

[60255255]]

]

OpenCV 彩色空間互轉

影象彩色空間互轉在影象處理中應用非常廣泛,而且很多演算法只對灰度圖有效 另外,相比rgb,其他顏色空間 比如hsv hsi 更具可分離性和可操作性,所以很多影象演算法需要將影象從rgb轉為其他顏色空間,所以影象彩色互轉是十分重要和關鍵的。rgb顏色空間 基於顏色的加法混色原理,從黑色不斷疊加red,...

Task03 彩色空間互轉

影象彩色空間互轉在影象處理中應用非常廣泛,而且很多演算法只對灰度圖有效 另外,相比rgb,其他顏色空間 比如hsv hsi 更具可分離性和可操作性,所以很多影象演算法需要將影象從rgb轉為其他顏色空間,所以影象彩色互轉是十分重要和關鍵的。1.相關顏色空間的原理介紹 2.顏色空間互轉理論的介紹 3.o...

遙感影像彩色空間變換

在影像處理系統中,彩色空間變換時乙個常見的基礎功能,雖然功能不是特別複雜,但是也遇到了一些問題,畢竟第一次做影象處理的工作。在此,先介紹影像的rgb模型和hsi模型之間的轉換。在hsi模型中,h hue 代表色調 純度 顏色 s saturation 代表飽和度 i intensity 代表亮度 r...