圖像增強處理有很強的針對性,,沒有統(tǒng)一的評價標準,,從一般的圖片、視頻欣賞角度來說,,濾除噪聲,、擴展對比度、銳化以及色彩增強等處理能顯著提升視覺效果,。
這里設(shè)計一個基于FPGA的實時視頻圖像處理系統(tǒng),,包含增強對比度擴展和色飽和度兩種處理方法,相比于DSP和ASIC方案來說,,F(xiàn)PGA在性能和靈活性方面具有絕對優(yōu)勢,,應(yīng)用FPGA設(shè)計視頻通信系統(tǒng)更普遍。
1 原理和算法
圖像增強處理可以在頻域和空間域進行,,典型的頻域方法如直方圖增強處理,,適合于軟件系統(tǒng)實現(xiàn);而硬件系統(tǒng)更適合于空間域處理,因此本文所述的處理方法都將在空間域進行,。
1. 1 對比度擴展
對比度擴展又稱灰度變換,,其目的是在拓展感興趣的灰度區(qū)間的同時,壓縮不感興趣的灰度區(qū)間,。最簡單有效的方法是線性變換,,滿足以下關(guān)系:
f(x,y)和g(x,,y)分別表示輸入圖像和輸出圖像的灰度值,。經(jīng)過變換,線性拉伸了在a~b內(nèi)的灰度值,,同時對[0,,a]和[b,255]灰度區(qū)間進行抑制,。從顯示設(shè)備的角度來說,,一般民用級別的顯示器都不具備完美表現(xiàn)256灰階的能力,,因此抑制過暗[0,a]和過亮[b,,255]的灰度區(qū)間而增強中間區(qū)域的動態(tài)范圍,,可以避免灰階的浪費。從另一個角度來講,,通常一幅圖像所包含的過暗和過亮的像素點本來就是少數(shù),,有目的有針對性地擴展中間范圍灰度而壓縮兩頭的灰度,可增強圖像質(zhì)量,,得到更好視覺效果,而圖像信息的損失卻很小,。
1.2 色彩增強
色彩增強的目的是在保證顏色不失真的前提下,,有針對性地增加圖像的色彩飽和程度,使其看起來更鮮艷生動,,層次感更強,。
1.2.1 HSI模型簡介
在彩色圖像處理中,RGB,、YCbCr,、CMYK等是常用的色彩模型,其算法和相互間的轉(zhuǎn)換很易用硬件實現(xiàn),,但是它們都不能很好適應(yīng)實際上從人的角度來解釋的顏色,。
研究表明,從人的角度來觀察一個彩色物體時,,一般用色調(diào),、色飽和度和亮度這3個參量來描述該物體。色調(diào)描述純色的屬性,,而飽和度給出一種純色被白光稀釋的程度的度量,。亮度即圖像的明暗程度,是一個主觀的描述量,?;谶@3個參量建立的HSI彩色模型是開發(fā)基于彩色描述的圖像處理方法的理想工具。下面簡單闡述HSI模型的原理,。
圖1所示是一個RGB彩色空間的立方體模型,,邊長歸一化為1,原點處為黑色,,相對的頂點處為白色,。連接黑白兩點得到灰度軸,這根軸上的飽和度為0,,即沒有彩色分量,。在灰度軸上有相同投影點的點具有相同的亮度,,即垂直于灰度軸的平面內(nèi)的點具有相同的亮度值。
在立方體內(nèi)任取一點P,,它與灰度軸確定一個平面,。根據(jù)顏色學(xué)的理論,所有顏色都是由位于那些顏色定義的三角形內(nèi)的3種顏色產(chǎn)生的,,在這個平面內(nèi),,三角形的3個頂點分別是黑色、白色和P的顏色,,而黑色和白色是不能改變色調(diào)的,,所以這個平面內(nèi)的點具有與P點相同的色調(diào),即等色調(diào)面,。直觀地說,,越靠近灰度軸的點,顏色越淡,,所以色飽和度的定義就是該點與灰度軸的距離:距離越遠,,飽和度越強;距離越近,飽和度越弱;距離為0則飽和度也為0,,這時就完全沒有彩色,。
實際上,用垂直于灰度軸的平面內(nèi)的彩色點軌跡來表示HSI空間(等亮度面),。當平面沿灰度軸上下移動時,,由于立方體邊界的切割而構(gòu)成的橫截面所決定的邊界呈三角形或呈六邊形。這里以六邊形為例,,如圖2所示,。
由圖2看出,三原色是按120°分割的,,青,、品紅和黃被稱為二次色,也是按120°分割,,一次色與二次色之間相隔60°,。圖中任給出一點Q,若以紅軸作參考,,則Q向量與紅軸的夾角H決定其色調(diào),,而向量長度S決定其飽和度,整個平面在灰度軸上的位置決定了平面內(nèi)所有點的亮度I,。于是得到由RGB到HSI的轉(zhuǎn)換關(guān)系:
1.2.2 色飽和度增強算法
HSI模型可以方便地對色調(diào)和飽和度進行調(diào)整,,但是其運算比較復(fù)雜,很難用硬件來實現(xiàn)。不過根據(jù)其原理,,可以直接在RGB空間進行色飽和度的調(diào)整,。這里假設(shè)RGB立方體內(nèi)任一點P(r,g,,b),,容易求出其在灰度軸上的投影點P*
,連接P和P*,,這是一條等色調(diào)線,,如圖3所示。
只要在P*P的延長線上找到合適的點(如P1或P2),,就可以對P點的飽和度進行增強,。由于已知P和P*的坐標,可以求得直線P*P方程:
令式(6)的值為t,,可求得直線P*P的參數(shù)方程:
則色飽和度的調(diào)整就可通過調(diào)整t的取值來實現(xiàn),。當t∈(-1,0)時,,得到的點在P*和P之間,,飽和度減弱;當t>O時,,得到的點在P*P之外,,飽和度增強。
2 設(shè)計思路
2.1 對比度擴展
用硬件實現(xiàn)浮點運算效率較低,,這里采用查表的方法,,在YCbCr空間進行灰度變換,如圖4所示,。
2.2 色飽和度增強
色飽和度調(diào)整在RGB空間進行,,設(shè)計為流水線操作,如圖5所示,。
色飽和度增強是有針對性的,,對于不同色飽和度的像素要作不同的處理??梢园岩环鶊D像的色飽和度分為4個等級,,對于色飽和度低的像素進行增強處理,而對于飽和度很高的像素則不進行處理甚至是抑制處理,。圖5所示是進行2級的色飽和度調(diào)整的流水線操作:第1級令t=1,,運算結(jié)果若溢出則轉(zhuǎn)入第2級調(diào)整(t=0.5)。若運算結(jié)果還是溢出,,則輸出保持原輸入值(iR,,iC,iB),。流水線操作使得平均每個像素的飽和度調(diào)整只需1個時鐘周期就能完成,,只是輸入相對輸出有6個時鐘周期的延時,。為了達到更好的效果,可以增加飽和度調(diào)整運算的級數(shù),,后果是需要占用更多的硬件資源以及帶來更長的延時,。
3 系統(tǒng)結(jié)構(gòu)
該實驗平臺為Ahera公司的DE2開發(fā)板。系統(tǒng)結(jié)構(gòu)如圖6所示,。
4 測試結(jié)果
用ModelSim對灰度變換模塊進行仿真的結(jié)果,,如圖7所示。對色飽和度增強模塊進行仿真的結(jié)果,,如圖8所示,。
視頻圖像測試對比效果如圖9和圖10所示。
5 結(jié)論
由實驗結(jié)果可知,,該方法能有效改善圖像畫質(zhì),,提升視覺效果。色飽和度增強處理由于其算法的特點,,用硬件系統(tǒng)很難做到實時處理,。從基本原理出發(fā),找到一種比較簡便的,,在RGB空間就能進行的色飽和度增強處理方法,,在滿足實時性要求的同時,能有效達到色彩增強的目的,。但也是由于視頻圖像處理的實時性要求以及硬件系統(tǒng)實現(xiàn)的特點,,該方法更多地講究效率,某些細節(jié)部分還不夠完善,,比如色彩失真等問題,。進一步研究重點可能就在于如何優(yōu)化硬件配置以及解決算法中浮點運算的問題。