初學opencv03--顏色空間

import cv2 as cv
import numpy as np

filename = 'C:/Users/45450/Desktop/lenna.jpg'
img = cv.imread(filename)
gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)

cv.imshow('source image', img)
cv.imshow('gray', gray)
cv.waitKey()

hsv = cv.cvtColor(img, cv.COLOR_BGR2HSV)

cv.imshow('Hue', hsv[:, :, 0])
cv.imshow('Saturation', hsv[:, :, 1])
cv.imshow('Value', hsv[:, :, 2])
cv.waitKey()

cv.imshow('blue', img[:, :, 0])
cv.imshow('Green', img[:, :, 1])
cv.imshow('Red', img[:, :, 2])
cv.waitKey()
cv.destroyAllWindows()

OpenCV中,系統圖像缺省爲BGR格式,顏色三通道順序爲B,G,R 分別對應索引爲0,1,2

 

HSI/HSV顏色空間:

H的取值範圍爲0-180。其中紅色對應0 綠色對應60 藍色對應120 相對於H通道顯示的時候,藍色顯示出來最亮。

其餘兩變量範圍爲0-255。 S爲飽和度分量,看這個顏色是否足夠飽和 越飽和顯示的顏色越亮。

HSV中V指RGB裏最大的值   V=max(r, g, b) 最終顯示出來的是飽和度最大值 (存在疑惑)

HSI中I指平均值  I=(r+g+b)/3

 

BGR三通道顯示時,例如B--Blue 則藍色部分顯示出來的最亮,最亮爲白色。 

原圖像中白色在單通道顯示是也爲白色 ,因爲白色包含BGR。

發佈了4 篇原創文章 · 獲贊 1 · 訪問量 904
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章