歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> OpenCV HSV 顏色模型(H通道取值 && CV_BGR2HSV_FULL)

OpenCV HSV 顏色模型(H通道取值 && CV_BGR2HSV_FULL)

日期:2017/3/1 9:37:32   编辑:Linux編程

之前知道,利用OpenCV把RGB圖片像HSV顏色空間轉變的時候,

H通道的值范圍為: 0-180

S: 0-255

V:0-255

利用直方圖顯示三個通道的時候,H通道都集中在前半部分,想讓它取值范圍擴大~~~~~~~

後來發現了 CV_BGR2HSV_FULL ,

CV_BGR2HSV 在轉換圖像的時候是將 H / 2 ---> H ,我們知道圖像中色相H的取值范圍為 0-360 ,所以利用opencv轉換之後得到的H的范圍為 0-180

而 CV_BGR2HSV_FULL 實現的映射是 H * 255 / 360 --->H , 所以利用_FULL 這個轉換得到的H通道圖像的范圍為 0-255

這兩種方式都是opencv把[0-360] 的數據壓縮到一個字節可以處理的數據。[ 所以這裡說的圖像的depth = 8, 剛好能表示的最大值是 255]

上面說的圖像的 depth = 8, 如果你的圖像 位深不是 8位,比如 32 位, 那麼你就可以得到 [0, 360] 表示的 H通道圖像了。

in fact, HSV顏色模型規定的各通道取值范圍為:

H : 0-360 S:0-1 V: 0-1

可以利用 CV_BGR2HSV 得到的 H S V 的  S V /255 轉換得到。

對於同一幅圖片:

采用CV_BGR2HSV得到的 h s v 三個通道的 直方圖分布如下:

采用CV_BGR2HSV_FULL得到的 h s v 三個通道的 直方圖分布如下:

--------------------------------------分割線 --------------------------------------

Ubuntu Linux下安裝OpenCV2.4.1所需包 http://www.linuxidc.com/Linux/2012-08/68184.htm

Ubuntu 12.04 安裝 OpenCV2.4.2 http://www.linuxidc.com/Linux/2012-09/70158.htm

CentOS下OpenCV無法讀取視頻文件 http://www.linuxidc.com/Linux/2011-07/39295.htm

Ubuntu 12.04下安裝OpenCV 2.4.5總結 http://www.linuxidc.com/Linux/2013-06/86704.htm

Ubuntu 10.04中安裝OpenCv2.1九步曲 http://www.linuxidc.com/Linux/2010-09/28678.htm

基於QT和OpenCV的人臉識別系統 http://www.linuxidc.com/Linux/2011-11/47806.htm

--------------------------------------分割線 --------------------------------------

OpenCV的詳細介紹:請點這裡
OpenCV的下載地址:請點這裡

Copyright © Linux教程網 All Rights Reserved