快速色彩平衡算法分析
摘 要: 在圖像處理中,為了提高傳統色彩平衡算法的計算速度、降低算法的復雜度,提出了一種全新的快速色彩平衡算法,即過(guò)濾少量極端像素顏色值并按比例提高剩余的非極端像素顏色值的方法。通過(guò)對多幅圖片的處理,相對于傳統的色彩平衡方法,該算法得到了更好的效果、具有更好的性能。
本文引用地址:http://dyxdggzs.com/article/187439.htm在圖像采集的過(guò)程中,由于不同光照下獲取的圖片顏色值差異較大,對圖片的顯示及圖片的分析產(chǎn)生困難。因此,在攝影和圖像處理中,不少學(xué)者提出了通過(guò)色彩平衡來(lái)解決這個(gè)難點(diǎn)。色彩平衡是一種通過(guò)全局調整圖像的RGB顏色信息使得圖片中出現色偏的顏色正?;姆椒?。WANG[4]提出了白平衡算法,即通過(guò)調整R、G、B三個(gè)分量的值使之達到平衡,然后按照這個(gè)調整比例對整幅圖像進(jìn)行調整,達到色彩平衡的效果。LEE Hsien Che[5]提出的算法原理是在CCD或CMOS矩陣表示的原RGB顏色值下將其轉換為更加標準的感性顏色。
本文提出了一種新型的快速色彩平衡算法,首先取一個(gè)最大值Vmax和一個(gè)最小值Vmin,把小于Vmin的值全部改成Vmin,把大于Vmax的值全部改成Vmax。執行過(guò)程中,首先需要優(yōu)化一些極端值,優(yōu)化的極端值數量由輸入的優(yōu)化率s決定;再根據s為整幅圖像分別確定一個(gè)合適的最大值Vmax和最小值Vmin,顏色值在[Vmin,Vmax]范圍外的像素即為極端像素,將極端像素的值改在[Vmin,Vmax]范圍內,最后再根據Vmin、Vmax和s按比例來(lái)提高非極端像素的顏色值。
1 新型色彩平衡算法
本文中算法的理論基礎是在RGB模式中顏色值越高越接近白色,顏色值越低越接近黑色。如果圖像是在黑暗中拍攝的,其像素最高的顏色值一定小于255,則通過(guò)擴大顏色值的范圍,圖像就會(huì )變亮。例如,閃電的主要顏色是R和G,那么通過(guò)色彩平衡就要增強B,這樣會(huì )減少一些微黃色色調,圖像會(huì )更亮一些,不但增加了畫(huà)面的和諧性,而且使圖像看起來(lái)更自然。
算法算法可以理解為有基本運算及規定的運算順序所構成的完整的解題步驟?;蛘呖闯砂凑找笤O計好的有限的確切的計算序列,并且這樣的步驟和序列可以解決一類(lèi)問(wèn)題。
綜上所述,本算法的目的是增加R、G、B三個(gè)顏色通道的顏色值,并使它們的范圍保持在[0,255]。最簡(jiǎn)單的實(shí)現方式就是給每個(gè)通道ax+b的顏色值。其中,a、b是比例因子,需要通過(guò)計算得到,x是初始顏色值,ax+b必須在[0,255]的范圍內。
在實(shí)際圖像中經(jīng)常會(huì )遇到顏色值為0或255的像素。實(shí)際需要優(yōu)化的點(diǎn)或許很多,或許只有一個(gè),不好確定確切的數目,所以必須用優(yōu)化率來(lái)決定究竟要改變多少個(gè)點(diǎn)的值。假設一幅圖像上有N個(gè)像素點(diǎn),優(yōu)化率為s,則需要優(yōu)化N×s個(gè)點(diǎn),并使0N×s255。優(yōu)化率的選取不能太大,因為需要優(yōu)化的點(diǎn)通常只占很少一部分。
2 新型色彩平衡算法實(shí)現過(guò)程
本文介紹了排序和直方圖兩種改進(jìn)的算法來(lái)實(shí)現色彩平衡的過(guò)程,下面闡述兩種算法的實(shí)現和實(shí)用性。
2.1 排序算法
算法流程如下:
?。?)排序
排序是計算機內經(jīng)常進(jìn)行的一種操作,其目的是將一組“無(wú)序”的記錄序列調整為“有序”的記錄序列。分內部排序和外部排序。若整個(gè)排序過(guò)程不需要訪(fǎng)問(wèn)外存便能完成,則稱(chēng)此類(lèi)排序問(wèn)題為內部排序。反之,若參加排序的記錄數量很大,整個(gè)序列的排序過(guò)程不可能在內存中完成,則稱(chēng)此類(lèi)排序問(wèn)題為外部排序。內部排序的過(guò)程是一個(gè)逐步擴大記錄的有序序列長(cháng)度的過(guò)程。
將N個(gè)像素存入矩陣,并將它們按顏色值大小從低到高進(jìn)行排序(排序之前要先將矩陣備份,因為以后還要用到)。
評論