本發(fā)明屬于計算機圖像處理領(lǐng)域,特別是一種基于視覺體驗的色彩處理方法。
背景技術(shù):
色彩是人的眼睛對于不同頻率的光線的感受,色彩既是客觀的,又是主觀感知的,有認識差異?;蛘哒f,色彩是人的眼睛對于不同頻率、不同強度的光線的感受。
色彩的視覺體驗屬性常見的有色相、色度、亮度等。其定義有多種,內(nèi)涵大致相同。
色相也稱色調(diào),是區(qū)別各種不同色彩的基本特征。任何黑、白、灰以外的顏色都有色相的屬性。
色度也稱色彩飽和度、純度,是色彩的純度,純度越高,表現(xiàn)越鮮明,純度較低,表現(xiàn)則較黯淡。
亮度也稱明度,指色彩中深淺程度、明暗程度。白色亮度最高,黑色亮度最低。純色中,黃色亮度最高、蘭色亮度最低。
色彩的描述方法可以采用各種色彩模型。色彩模型也叫顏色模型、色彩空間、顏色空間,是使用一組數(shù)值描述表示顏色的方法的抽象數(shù)學模型。常見色彩模型有多種,如RGB、HSV、HSL、HSB、HSI、CMYK、YUV、Lab、Ycc、XYZ等。
RGB是最常用的色彩模型。RGB色彩模型以3種端元基色以不同比例混合產(chǎn)生各種顏色。計算機光柵圖形顯示設(shè)備采用此模型。R、G、B取值范圍根據(jù)分辨率不同而不同,一般R、G、B取值范圍為0~255。HSL、HSV、HSB、HSI等色彩模型基本上都以色相、色度、亮度描述色彩。
計算機圖像原始數(shù)據(jù)一般為RGB格式數(shù)據(jù),在進行有關(guān)視覺體驗的圖像處理時,往往需要將RGB數(shù)據(jù)轉(zhuǎn)換為色相、色度、亮度數(shù)據(jù)。但是,HSL、HSV、HSB、HSI等色彩模型都有以下兩個特點,或其中之一,不符合人的視覺體驗。
比如:現(xiàn)有的亮度計算方法,會出現(xiàn)不同的純色的亮度相同的等現(xiàn)象,以及類似現(xiàn)象。在視覺體驗中,不同的純色的亮度是不相同的。如,純蘭色的亮度是低于純黃、純綠的。
再如:現(xiàn)有的色度計算方法,會出現(xiàn)同色相純色與非純色的色度相同的現(xiàn)象,以及類似現(xiàn)象。在視覺體驗中,含有白色成分的色彩,其色度不能等同于純色。比如,極暗的黑紅色RGB(9,0,0)的色度是低于純紅RGB(255,0,0)的。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的是提供一種基于視覺體驗的色彩處理方法,用以解決現(xiàn)有色彩模型的亮度和色度處理與人的視覺體驗差異大的問題。
為實現(xiàn)上述目的,本發(fā)明的方案包括:
一種基于視覺體驗的色彩處理方法,步驟如下:獲取RGB格式的數(shù)字圖像;對RGB格式數(shù)據(jù)進行處理:亮度W=(RL+GM+BN)/D/(L+M+N);色度S=(Max-Min)/D;其中,R、G、B為RGB格式數(shù)據(jù);Max為R、G、B中最大值;Min為R、G、B中最小值;L、M、N為系數(shù);D為R、G、B取值范圍最大值。
進一步的,色相H的計算方式為:如果R最大,則H=0+(G-B)/(Max-Min);如果G最大,則H=2+(B-R)/(Max-Min);如果B最大,則H=4+(R-G)/(Max-Min);然后將H擴大60倍,并且判斷H是否小于零,若小于零則將當前H值加360得到新的H值。
進一步的,對RGB格式數(shù)據(jù)進行處理的過程為:
If R=Max Then H=0+(G-B)/(Max-Min)
If G=Max Then H=2+(B-R)/(Max-Min)
If B=Max Then H=4+(R-G)/(Max-Min)
H=60H
If H<0Then H=H+360
S=(Max-Min)/D
W=(RL+GM+BN)/D/(L+M+N)
從而獲得HSW格式數(shù)據(jù);
對HSW格式數(shù)據(jù)進行處理過程為:
W=W(L+M+N)
H=H/60
IF 0<=H<1
R=(-HMS+MS+NS+W)
G=(HLS+HNS-LS+W)
B=(-HMS-LS+W)
IF 1<=H<2
R=(-HMS-HNS+2MS-MS+2NS+W)
G=(HLS-2LS+LS+NS+W)
B=(HLS-2LS-MS+W)
IF 2<=H<3
R=(-HNS-MS+2NS+W)
G=(-HNS+LS+2NS+NS+W)
B=(HLS+HMS-2LS-2MS-MS+W)IF 3<=H<4
R=(HMS-4MS-NS+W)
G=(-HLS-HNS+4LS+4NS-NS+W)B=(HMS+LS-4MS+MS+W)
IF 4<=H<5
R=(HMS+HNS-4MS-4NS-NS+W)
G=(-HLS+4LS-NS+W)
B=(-HLS+4LS+LS+MS+W)
IF 5<=H<6
R=(HNS+MS-6NS+NS+W)
G=(HNS-LS-6NS+W)
B=(-HLS-HMS+6LS-LS+6MS+W)
R=RD/(L+M+N)
G=GD/(L+M+N)
B=BD/(L+M+N)
從而獲得RGB格式數(shù)據(jù)。
進一步的,所述系數(shù)L、M、N分別取38.4、76.8、12.8。
基于實驗效果可知,本發(fā)明的色彩處理方法明顯提高了色相、色度、亮度參數(shù)與視覺體驗的符合程度,在圖像處理中有較大價值。
附圖說明
圖1為HSW等色相切面圖;
圖2為HSW等色度切面圖;
圖3為HSW等亮度切面圖;
圖4為HSL及HSW亮度轉(zhuǎn)換效果圖;
圖5為圖4樣本圖中亮度大于50%的區(qū)域提取圖;
圖6為HSL及HSW色度轉(zhuǎn)換效果圖;
圖7為HSL及HSW亮度轉(zhuǎn)換圖;
圖8為HSL及HSW色度轉(zhuǎn)換圖。
具體實施方式
下面結(jié)合附圖對本發(fā)明做進一步詳細的說明。
本發(fā)明的給出了一種新的色彩模型,定義為HSW模型,與HSL、HSV、HSB、HSI等色彩模型相似,HSW色彩模型把RGB數(shù)據(jù)做一定的變換,使變換后的數(shù)據(jù)更接近視覺體驗的色相、色度、亮度。
在獲得計算機RGB格式數(shù)據(jù)后,對RGB數(shù)據(jù)進行處理得到HSW模型的函數(shù)如下:
Function RGBtoHSW
If R=Max Then H=0+(G-B)/(Max-Min)
If G=Max Then H=2+(B-R)/(Max-Min)
If B=Max Then H=4+(R-G)/(Max-Min)
H=60H
If H<0Then H=H+360
S=(Max-Min)/D
W=(RL+GM+BN)/D/(L+M+N)
END RGBtoHSW
相應(yīng)的,HSW模型到RGB轉(zhuǎn)換如下:
Function HSWtoRGB
W=W(L+M+N)
H=H/60
IF 0<=H<1
R=(-HMS+MS+NS+W)
G=(HLS+HNS-LS+W)
B=(-HMS-LS+W)
IF 1<=H<2
R=(-HMS-HNS+2MS-MS+2NS+W)
G=(HLS-2LS+LS+NS+W)
B=(HLS-2LS-MS+W)
IF 2<=H<3
R=(-HNS-MS+2NS+W)
G=(-HNS+LS+2NS+NS+W)
B=(HLS+HMS-2LS-2MS-MS+W)
IF 3<=H<4
R=(HMS-4MS-NS+W)
G=(-HLS-HNS+4LS+4NS-NS+W)
B=(HMS+LS-4MS+MS+W)
IF 4<=H<5
R=(HMS+HNS-4MS-4NS-NS+W)
G=(-HLS+4LS-NS+W)
B=(-HLS+4LS+LS+MS+W)
IF 5<=H<6
R=(HNS+MS-6NS+NS+W)
G=(HNS-LS-6NS+W)
B=(-HLS-HMS+6LS-LS+6MS+W)
R=RD/(L+M+N)
G=GD/(L+M+N)
B=BD/(L+M+N)
END HSWtoRGB
其中,R、G、B為RGB格式數(shù)據(jù);H、S、W為HSW色彩描述方法色相H、色度S、亮度W;Max為R、G、B中最大值;Min為R、G、B中最小值;L、M、N為系數(shù)。D為R、G、B取值范圍最大值,一般取255,可根據(jù)實際情況調(diào)整;H、S、W取值范圍為0<=H<360,0<=S<=1,0<=W<=1。
本發(fā)明處理亮度的方式為:W=(RL+GM+BN)/D/(L+M+N),處理色度的方式為S=(Max-Min)/D。
關(guān)于色相H,其處理方式與現(xiàn)有色彩模型相同,不屬于本發(fā)明的改進部分,故不再進行解釋說明。
經(jīng)數(shù)人、數(shù)百張圖片樣本色度、亮度評價實驗,總結(jié)得出L、M、N分別取38.4、76.8、12.8是一種優(yōu)化的選擇方案。具體應(yīng)用時,也可按實際條件實驗調(diào)整。
HSW色彩模型不會出現(xiàn)不同的純色的亮度相同的現(xiàn)象,以及類似現(xiàn)象;也不會出現(xiàn)同色相純色與非純色的色度相同的現(xiàn)象,以及類似現(xiàn)象。從而解決了現(xiàn)有色彩模型存在問題,使得色彩更符合人的視覺體驗。
下面為從各種不同方面給出的實驗驗證上述方案的效果。
圖1為HSW等色相切面圖。圖中6個子圖色相H分別取0、60、120、180、240、300。每個子圖縱軸為亮度W,橫軸為色度S。三角形右側(cè)頂點高低不同,體現(xiàn)純色有不同的亮度,與HSV等色彩模型不同。符合人的視覺體驗,純色中黃色亮度最高、蘭色亮度最低。
圖2為HSW等色度切面圖。圖中6個子圖色度S分別取0.00、0.20、0.40、0.60、0.80、0.96。每個子圖縱軸為亮度W,橫軸為色相H??梢钥吹剑瑳]有在HSV等色彩模型中出現(xiàn)的亮度極暗或極亮仍有很高色度等不合乎視覺體驗的現(xiàn)象。
圖3為HSW等亮度切面圖。圖中6個子圖亮度W分別取0.5、0.20、0.40、0.60、0.80、0.95。圓周為色相H,半徑為色度S??梢钥吹?,沒有在HSV等色彩模型中出現(xiàn)的純色與白色有相同亮度等不合乎視覺體驗的類似現(xiàn)象。
圖4為HSL及HSW亮度轉(zhuǎn)換效果圖。圖中左側(cè)樣本圖為一火山巖巖石薄片偏光顯微鏡照片,后兩圖分別為樣本圖轉(zhuǎn)換的HSL、HSW亮度圖。可以明顯看出,HSW亮度圖能夠更好體現(xiàn)原圖視覺亮度特征。如,標記a、b、c處的亮度層次關(guān)系,在HSL亮度圖中不能表現(xiàn),在HSW亮度圖中則比較清晰。
圖5為圖4樣本圖中亮度大于50%的區(qū)域提取圖。分別以HSL、HSW亮度提取樣本圖中亮度大于50%的區(qū)域,以白色表示??梢悦黠@看出,二者區(qū)別很大。這將對圖像處理的后續(xù)工作產(chǎn)生嚴重影響,這種區(qū)別是不容忽視的。
圖6為HSL及HSW色度轉(zhuǎn)換效果圖。后兩圖分別為樣本圖轉(zhuǎn)換的HSL、HSW色度圖。區(qū)別較亮度更大。哪一種方法的色度圖更合理,并不能直觀的看出來。HSW色彩描述方法更接近視覺體驗感受特性的進一步展示、比較見圖7。
圖7為HSL及HSW亮度轉(zhuǎn)換圖。樣本圖為為一些均勻色塊。每行亮度不同,每列色相不同。后兩圖分別為樣本圖轉(zhuǎn)換的HSL、HSW亮度圖??梢悦黠@看出,HSW亮度圖能夠更好體現(xiàn)原圖視覺亮度特征。如,b列色塊在e列體現(xiàn)為接近相同的亮度,顯然是不合適的;在h列中則有很好的表現(xiàn)。
圖8為HSL及HSW色度轉(zhuǎn)換圖。樣本圖同圖7。后兩圖分別為樣本圖轉(zhuǎn)換的HSL、HSW色度圖。色度也稱色彩飽和度、純度,是色彩的純度,純度越高,表現(xiàn)越鮮明,純度較低,表現(xiàn)則較黯淡。a、b、c列雖然色相相同,但色度是明顯不同的。HSL色彩模型在d、e、f列表現(xiàn)為同一色度,顯然是不合適的;HSW色彩模型在g、i列表現(xiàn)為灰色,h列表現(xiàn)為白色合理的體現(xiàn)了a、c列在色度上與b列的差距。
結(jié)合以上分析和比較可知,HSW色彩描述方法在亮度、色度兩方面,比其它色彩模型更符合人的視覺體驗。