摘 要: 針對白平衡算法中普遍存在的校正不足及算法復(fù)雜度過高等問題,結(jié)合灰度世界算法和完美反射算法的優(yōu)點(diǎn),提出了一種基于高斯分解的自動白平衡算法。該算法通過對圖像灰度分布的高斯分解,得到圖像的高斯分布模型,并以此計(jì)算增益曲線。實(shí)驗(yàn)結(jié)果表明,該算法能有效校正圖像的偏色問題,適用于多種不同場景。
關(guān)鍵詞: 白平衡;高斯分布;灰度世界算法;完美反射算法
顏色是圖像的重要特征之一,也是圖像處理與分析的重要依據(jù)。從物理意義上說,物體之所以呈現(xiàn)出某種特定的顏色,是因?yàn)楣饩€照射物體時(shí),物體所反射的光在人類視覺系統(tǒng)中呈現(xiàn)出這種特定的顏色。也就是說,物體被人眼觀測到的顏色不僅僅是由其反射特性所決定的,同時(shí)也取決于射向物體的光線顏色。
人類的視覺系統(tǒng)具有顏色恒常性,能夠在一定程度上消除光照條件等因素對顏色的影響,正確地感知物體的顏色。但成像設(shè)備卻不具有這種“調(diào)節(jié)”功能,其采集的圖像往往與物體表面的真實(shí)顏色之間存在一定程度的誤差,即偏色。這種偏色的現(xiàn)象是由外部光源的不同色溫決定的,偏色的程度與外部光源的色溫變化有直接關(guān)系。在不同外部光源的照射下,物體所呈現(xiàn)的顏色是不同的。其中,白色物體變化最為明顯,在室內(nèi)鎢絲燈光這樣低色溫的照射下,白色物體看起來會帶有橘黃色的色調(diào),而在這樣的光照條件下拍攝出來的景物就會偏黃;但如果是在蔚藍(lán)天空這樣高色溫的照射下,則會帶有藍(lán)色色調(diào)。
自動白平衡的目的就是盡可能地減少外部光源所造成的色彩差異影響,在不同的色溫條件下均能還原出被攝目標(biāo)本來的色彩,使得拍攝出的圖片盡量符合人類視覺的習(xí)慣。經(jīng)典的自動白平衡算法主要有灰度世界算法[1]GW(Gray World)、完美反射算法[2]PF(Perfect Reflector)、模糊神經(jīng)網(wǎng)絡(luò)算法[3]FNN(Fuzzy Neural Network)、基于邊緣的白平衡算法[4]以及基于上述幾種算法的改進(jìn)算法[5-7]等?;疑澜缢惴ɑ赩on-Kries系數(shù)理論的灰色世界假設(shè),但是當(dāng)圖像的色彩并不豐富時(shí),灰度世界算法得到的數(shù)值往往是不真實(shí)的。完美反射法的理論基礎(chǔ)是,搜尋圖像中最亮的區(qū)域作為白色區(qū)域,并將此區(qū)域視為標(biāo)準(zhǔn)白色,對圖像進(jìn)行偏色校正;但當(dāng)所拍攝物體最亮部分并非白色時(shí),此方法往往失效。而較新的模糊神經(jīng)網(wǎng)絡(luò)算法存在著邏輯單元消耗多、功耗高等難題;基于邊緣的白平衡算法對大多數(shù)圖像都能很好地進(jìn)行自動白平衡,但是當(dāng)圖像出現(xiàn)大范圍有色紋理時(shí),由于該顏色紋理邊緣占主導(dǎo)地位,導(dǎo)致白平衡失效。
針對以上算法的種種不足,結(jié)合灰度世界算法和白點(diǎn)檢測算法的優(yōu)點(diǎn),本文提出了一種基于高斯分布的自動白平衡算法。該算法通過對圖像灰度直方圖的高斯分解,自適應(yīng)獲取白點(diǎn)檢測條件,從而得到較準(zhǔn)確的增益曲線,提高了算法的適應(yīng)性。實(shí)驗(yàn)結(jié)果表明,該算法能有效校正圖像的偏色問題,適用于多種不同場景。
對于色彩豐富的圖像,灰色世界法的校正效果比較明顯;但對顏色單調(diào)的圖像,其算法效果很差,有時(shí)會出現(xiàn)過度校正。
1.2 完美反射算法
完美反射法又稱鏡面法,其基本理論為,假設(shè)圖像中存在一個(gè)鏡面,那么圖像中鏡面的亮度是最大的,且該鏡面可以反射光源色彩,而其本身又不帶有任何色彩。因此,該方法通過尋找圖像的鏡面并將這個(gè)高亮度的物體或區(qū)域視為標(biāo)準(zhǔn)白色,計(jì)算所有參考白點(diǎn)的平均色差,以此對圖像進(jìn)行偏色校正。
完美反射法的優(yōu)點(diǎn)是計(jì)算非常簡便,當(dāng)圖像中存在高亮度區(qū)域時(shí)還原效果很好。但是白點(diǎn)的檢測往往缺乏通用性,當(dāng)圖像中不存在鏡面或者圖像亮度較低時(shí)表現(xiàn)不佳。
?。?)確定高亮區(qū)域。在高亮區(qū)域的選擇上,不同的方法提供了不同的依據(jù)。本文提出了一種基于RGB色彩空間的約束條件,即:在RGB色彩空間中定義一個(gè)三維結(jié)構(gòu),將落在這個(gè)區(qū)域內(nèi)的像素認(rèn)為是高亮區(qū)域,而區(qū)域外的像素被認(rèn)為是非高亮區(qū)域。在進(jìn)行色差計(jì)算時(shí),只需計(jì)算高亮區(qū)域像素的平均色差以取代整個(gè)圖像的色差,從而提高色溫估計(jì)的準(zhǔn)確度。本文提出的約束條件可以表述為:
3 實(shí)驗(yàn)及結(jié)果
為檢驗(yàn)算法的有效性,本文對多幅實(shí)際自然場景圖像進(jìn)行了實(shí)驗(yàn),并將實(shí)驗(yàn)結(jié)果與采用灰度世界算法和完美反射算法的結(jié)果進(jìn)行了對比。
限于篇幅,這里只選取了兩組白平衡的結(jié)果進(jìn)行比較,如圖2和圖3所示。圖2(a)是一幅低色溫下的自然場景圖像,有明顯的偏紅現(xiàn)象;圖2(b)是采用本文算法的校正結(jié)果,圖像的色彩、亮度都很均勻,非常接近人眼的視覺效果;圖2(c)是采用灰度世界算法的校正結(jié)果,圖像偏藍(lán),有較嚴(yán)重的過度校正情況出現(xiàn);圖2(d)是采用完美反射算法的校正結(jié)果,效果稍好于灰度世界算法,但仍有過度校正現(xiàn)象。圖3(a)是一幅高色溫下的自然場景圖像,有明顯的偏藍(lán)現(xiàn)象;圖3(b)是采用本文算法的校正結(jié)果,天空和綠地的色彩很純正,符合人眼的視覺效果;圖3(c)是采用灰度世界算法的校正結(jié)果,圖像有些偏藍(lán),顯示出算法的白平衡校正不足;圖3(d)是采用完美反射算法的校正結(jié)果,效果稍好于灰度世界算法,基本符合人眼的視覺效果。從多幅實(shí)際自然場景圖像的實(shí)驗(yàn)結(jié)果來看,本算法改進(jìn)了自動白平衡的效果,在不同色溫條件下都能很好地進(jìn)行白平衡處理,顯示了該算法的廣泛適用性。
針對白平衡算法中普遍存在的校正不足及算法復(fù)雜度過高等問題,結(jié)合灰度世界算法和完美反射算法的優(yōu)點(diǎn),提出了一種基于高斯分解的自動白平衡算法。該算法通過對圖像灰度分布的高斯分解,得到圖像的高斯分布模型,并以此參數(shù)計(jì)算增益曲線。實(shí)驗(yàn)結(jié)果表明,該算法能有效校正圖像的偏色問題,適用于多種不同場景。
參考文獻(xiàn)
[1] BARNARD K. Practical color constancy[D]. Bumaby Canada: School of Computing Science, Simon Fraser University, 1999.
[2] GASPARINI F, SCHETTINI R. Color balancing of digital photos using simple image statistics[J]. Pattern Recognition,2004, 37(6):1201-1217.
[3] Cheng Y C, Chen W H, Chen Y Q. Automatic white balance for digital still camera [J]. IEEE Transaction on Consumer Electronics, 1995,41(3): 460-466.
[4] Lin Jinlong. An automatic white balance method based on edge detection[C]. IEEE Tenth International Symposium on Consumer Electronics, St. Petersburg, 2006: 1-4.
[5] 嚴(yán)世珺.數(shù)字圖像白平衡處理算法研究與改進(jìn)[D].上海:上海交通大學(xué),2007.
[6] 趙全友,潘保昌.改進(jìn)的LoG邊緣自動白平衡算法[J].計(jì)算機(jī)應(yīng)用研究,2009,26(2):775-778.
[7] 金黃斌,秦興,郭斌林.基于灰度世界和白點(diǎn)檢測的自動白平衡算法[J].電子器件,2011,34(2):226-231.