色彩空間模型
正式定義一個色彩空間時通常採用的標準是CIELAB或CIEXYZ色彩空間,他們是為了涵蓋正常人可見範圍所有色彩所設計提出的,因此是最精確的色彩空間,但過於複雜,不適合於日常使用。
色彩模型是描述使用一組值(通常使用三個、四個值或者顏色成分)表示顏色方法的抽象數學模型。例如三原色光模式(RGB) 和印刷四分色模式(CMYK)都是色彩模型。但是一個與絕對色彩空間沒有函數映射關係的色彩模型或多或少地都是與特定應用要求幾乎沒有關係的任意色彩系統。<wiki>
不同色彩空間的比較圖
由原始上傳者為英文Wikipedia的Cpesacreta - 從en.wikipedia轉移到共享資源,由aboalbiss。,CC BY 2.5,https://commons.wikimedia.org/w/index.php?curid=8359333
HSI色彩空間
HSI模型是美國色彩學家孟塞爾(H.A.Munseu)於1915年提出的,它反映了人的視覺系統感知彩色的方式,以色調、飽和度和強度三種基本特徵量來感知顏色。
@色調H(Hue): 與光波的波長有關,它表示人的感官對不同顏色的感受,如紅色、綠色、藍色等,它也可表示一定範圍的顏色,如暖色、冷色等。
@飽和度S(Saturation): 表示顏色的純度,純光譜色是完全飽和的,加入白光會稀釋飽和度。飽和度越大,顏色看起來就會越鮮艷,反之亦然。簡而言之,飽和度就是顏色鮮明與否的指標。
@強度I(Intensity): 對應成像亮度和圖像灰度,是顏色的明亮程度。
由RGB轉換至HSI空間如圖1,可以想像是把立方體的RGB空間在黑與白的兩頭往兩邊拉長,轉至HSI空間後,紅綠藍及青黃品紅就在中間形成環狀分佈,此環形的分佈就是色調H(Hue)。
HSI色彩空間利用一個圓錐空間模型來描述。描述HSI色彩空間的圓錐模型相當複雜,但確能把色調、色飽和度及強度的變化情形表現得很清楚。
圖1: RGB轉HSI空間
總體性看來因為HSI色彩空間中強度(I)是獨立出來的參數,如果目的只是要辨識顏色或者更明確的說是要不同的環境光下辨識一些基本的色相,則我認為HSI色彩空間的參數是可以避免因光源強弱不同而造成顏色辨識不準確的情況。
圖2:HIS色彩空間
由圖2的HSI色彩空間整理出相關顏色的數值表如表1。
顏色 |
R |
G |
B |
H |
S |
I |
紅 |
255 |
0 |
0 |
0 |
1 |
0.333 |
橙 |
255 |
165 |
0 |
40 |
1 |
0.549 |
黃 |
255 |
255 |
0 |
60 |
1 |
0.667 |
綠 |
0 |
128 |
0 |
120 |
1 |
0.167 |
靛 |
0 |
255 |
255 |
180 |
1 |
0.667 |
藍 |
0 |
0 |
255 |
240 |
1 |
0.333 |
紫 |
128 |
0 |
128 |
300 |
1 |
0.335 |
粉紅 |
255 |
192 |
203 |
351 |
0.14 |
0.85 |
黑 |
0 |
0 |
0 |
0 |
0 |
0 |
白 |
255 |
255 |
255 |
0 |
0 |
1 |
表1:HSI色彩空間基本顏色表
將HSI色彩作一基本了解後,下一個進度就是準備進入程式測試階段,目前先假設有一顏色比對的需求,原已知一物體的顏色,在陸續跟其它不同光源下的物體比較顏色是否相同。
HSI色彩空間應用筆記(2):HSI程式實作