趙 建,趙 凡,曲 鋒
(1.中國科學(xué)院 長春光學(xué)精密機械與物理研究所,吉林 長春 130033;2.中國科學(xué)院大學(xué),北京 100049)
圖像增強[1-2]主要是將圖像轉(zhuǎn)換為更適合人眼觀察或者機器分析、識別的形式,改善圖像的質(zhì)量和視覺效果,以便獲得更清楚、明晰的富含大量有用信息的可使用圖像。圖像增強技術(shù)在軍事、遙感生物、公共安全、醫(yī)學(xué)工程等方面發(fā)揮著重要作用。圖像增強技術(shù)在對于灰度圖像的處理得到了普遍的應(yīng)用,但是隨著近年來彩色圖像的廣泛運用,對彩色圖像的增強技術(shù)[3]有了明顯需求。由于彩色圖像的R、G、B分量相互不獨立,對于彩色圖像直接增強,會造成圖像增強后顏色失真。而HSV空間更能反映人的視覺特性,將彩色圖像轉(zhuǎn)換成HSV空間,在該空間中對圖像進行增強算法的處理,處理后圖像效果明顯優(yōu)于直接對彩色圖像增強。對于灰度圖像的增強,常用的方法有直方圖均衡化,但是運用該方法對于航拍圖像進行增強,容易造成圖像的紋理不清晰,細節(jié)信息也不能夠最大化的顯現(xiàn)。對圖像進行分段拉伸也是一種常見算法,但是分段拉伸算法的關(guān)鍵點在于分段點的選擇,分段點的選擇稍有不慎便影響了整幅圖像的增強效果。而本文中基于插值的分段線性拉伸算法,可以根據(jù)圖像特點進行分段拉伸,對于原始圖像的每一個像素點都可以進行變換,改變灰度的動態(tài)范圍[4-5],同時該插值點的選取,是根據(jù)直方圖統(tǒng)計結(jié)果所選取,充分考慮到圖像的特點。
在圖像增強的硬件實現(xiàn)上,最初是用DSP實現(xiàn),但是DSP在對數(shù)據(jù)接收和處理的過程中存在著延時,很難達到實時性要求。后來發(fā)展為DSP+FPGA這種架構(gòu),這種系統(tǒng)運算速度比較高,具有較強的靈活性和通用性,但是成本也較高,同時DSP和FPGA之間通信也比較復(fù)雜[6]。FPGA在結(jié)構(gòu)上的并行處理優(yōu)勢使得其更適合完成高速的運算能力,同時系統(tǒng)結(jié)構(gòu)性強,具有很大的靈活性?;谝陨媳尘?,該系統(tǒng)采用采用cyclone3系列的EP3C16 FPGA為處理器,將彩色圖像轉(zhuǎn)換為HSV空間,完成圖像的增強后,再將HSV轉(zhuǎn)換成為RGB彩色空間,具有實現(xiàn)簡單、集成度高、功耗低的特點[7-8]。
早期對于彩色圖像的增強是將灰度域圖像增強技術(shù)直接應(yīng)用到彩色圖像R,G,B三個分量上,但是這樣的做法會造成計算量比較大,并且由于R,G,B三個分量是相關(guān)的,也造成了彩色圖像的顏色失真。將彩色圖像轉(zhuǎn)換成HSV空間更能反映人的視覺特性,這也使得HSV空間在彩色圖像的處理中得到廣泛應(yīng)用。在HSV空間采用基于插值的分段拉伸算法對每個像素點進行拉伸變換,最后將經(jīng)過拉伸過的灰度圖像轉(zhuǎn)換為RGB圖像。
在彩色成像設(shè)備和彩色顯示設(shè)備中,RGB色空間是一種簡單常用的色空間,它能使顏色從一個平臺映射到另外一個平臺而不會嚴重丟失顏色信息。RGB是一種相加成像系統(tǒng),由紅、綠、藍三種基色疊加,以產(chǎn)生各種需要的顏色。
HSV彩色空間是一種直觀的顏色模型,H、S、V分別代表色調(diào)、飽和度和亮度。這個顏色空間的模型對應(yīng)于圓柱坐標系中的一個圓錐形子集,圓錐的頂面對應(yīng)于V=1。色彩H由繞V軸的旋轉(zhuǎn)角給定,范圍為0°~360°。在HSV顏色模型中,飽和度S取值0~1,所以圓錐頂面的半徑為1。
RGB空間向HSV空間的轉(zhuǎn)換公式如下:
V=maxR,G,B,
(1)
(2)
(3)
HSV空間向RGB空間的轉(zhuǎn)換公式如下:
(4)
其中:M=V1-S,N=V1-SF,K=V1-S1-F,F=6H-1。
該方法是基于由插值函數(shù)定義的對點的轉(zhuǎn)換,該函數(shù)在定義的區(qū)間是線性的。分段線性拉伸是將圖像灰度區(qū)間分成兩段乃至多段,對圖像中各灰度級進行均勻壓縮或擴展,達到效果更好的灰度范圍。本質(zhì)上就是壓縮出現(xiàn)概率較小的灰度級,將出現(xiàn)概率較大的灰度級向鄰近擴展。線性拉伸算法較為柔和,拉伸范圍合適的情況下,能有效地擴大對比度,明顯提高視覺效果,同時也保留了圖像的大量細節(jié)[9]。
(5)
該函數(shù)為用于灰度級變換時的線性差值函數(shù)。vi為插值點,fi為亮度V經(jīng)過變換后的值。ai為分段拉伸函數(shù)的拉伸系數(shù)。
首先對最優(yōu)窗口的選擇,將亮度小于最低閾值Vmin和大于最大閾值Vmax的灰度級進行壓縮,增大窗口的動態(tài)范圍。閾值確定后,插值點的確定過程如下:在灰度級圖像中的某一范圍D屬于R2內(nèi),D→[0,255],統(tǒng)計出該區(qū)域內(nèi)所有像素的個數(shù)card(Di)。在區(qū)域D中,將每個像素的亮度與該亮度像素的個數(shù)相乘得到l(x,y)。在離散區(qū)域D中l(wèi)(x,y)求和,根據(jù)公式(10)求得插值點vi,即該區(qū)域中能量分布較密集點。插值點的確定,主要是根據(jù)對灰度圖像的灰度值統(tǒng)計得出。
(6)
根據(jù)公式(5),在(vi)i=1,n所對應(yīng)的(fi)i=1,n已知的情況下,可以求得系數(shù)ai,公式如下:
(7)
通過對計算量和圖像增強效果的綜合考慮,在閾值Vmin和Vmax之間取兩個插值點v2,v3,根據(jù)公式(2~6),如圖1所示,在區(qū)域(Vmin,2(Vmax-Vmin)/3)中確定插值點v2的值,v3的值確定與區(qū)域(1(Vmax-Vmin)/3,Vmax)中。至于變換后的最小閾值Vmin所對應(yīng)的f1,本算法中將f1拉伸到Vmin/4處,最大閾值Vmax對應(yīng)變換后的fn,拉伸到Vmax后的四分之三255-Vmax處,其結(jié)果擴展了像素取值的動態(tài)范圍。根據(jù)最小閾值Vmin所對應(yīng) 的f1,最大閾值Vmax對應(yīng)的變換后的fn,f1取值(fn-f1)/3,f2取值2(fn-f1)/3。
圖1 灰度級統(tǒng)計Fig.1 Gray levelstatistics
根據(jù)線性拉伸公式,結(jié)合本算法中所選用的插值點,公式(6)變換為:
f(v)=a1v-vmin+a2v-v2+
a3v-v3+a4v-vmax.
(8)
系統(tǒng)的硬件框圖及工作流程如圖2所示,在相機控制信號的控制下,在幀有效,行有效和數(shù)據(jù)有效的前提下,一個像素時鐘FPGA接收一個有效數(shù)據(jù),經(jīng)由空間轉(zhuǎn)換模塊后,只對V進行采集。將V作為RAM地址,不同地址中的數(shù)值表示該亮度的像素數(shù),進行直方圖統(tǒng)計。由于圖像具有實時性的特點,在連續(xù)兩幀圖像變化不大的假設(shè)下,根據(jù)直方圖統(tǒng)計結(jié)果采用插值的線性拉伸算法對原始圖像數(shù)據(jù)進行處理。最后將HSV空間轉(zhuǎn)換為RGB空間,在VGA控制模塊的控制下,將增強的彩色圖像顯示在VGA上。
相機控制模塊:FPGA內(nèi)部模塊產(chǎn)生相機控制信號,如像素時鐘信號、圖像信號源數(shù)據(jù)、同步信號,由于Cameralink采用LVDS信號傳輸數(shù)據(jù),F(xiàn)PGA發(fā)出的CMOS/TTL控制信號經(jīng)由Cameralink接口器件轉(zhuǎn)換成LVDS信號,接收端配套器件進行解調(diào),將4路LVDS數(shù)據(jù)流轉(zhuǎn)換為24位圖像數(shù)據(jù)和4位同步信號。同時將LVDS信號轉(zhuǎn)換成為FPGA支持的 I/O接口標準信號LVCOMS/LVTTL時鐘輸出。將28位數(shù)據(jù)信號和一位時鐘信號傳送給FPGA完成圖像采集[6,10]。同步信號主要有同步時鐘信號,場同步信號(FVAL),行同步信號(LVAL),數(shù)據(jù)同步信號(DVAL)。在FVAL、LVAL和DVAL有效的狀態(tài)下,每個同步時鐘采集一個有效數(shù)據(jù)。
圖2 系統(tǒng)結(jié)構(gòu)框圖Fig.2 System block diagram
直方圖統(tǒng)計模塊:系統(tǒng)采用雙口RAM作為儲存器來儲存直方圖統(tǒng)計結(jié)果。雙口RAM的地址寬度設(shè)置為8 bit。在第一個時鐘根據(jù)Vdatain的值,讀出RAM1中相應(yīng)地址的值rdata,在第二個時鐘把接收來的灰度值作為直方圖統(tǒng)計的地址, 將讀出的值rdata加1,寫入RAM1,RAM2的該地址中。此后反復(fù)這個過程,完成一幀圖像的直方圖統(tǒng)計。系統(tǒng)中多采用一塊RAM2的原因是只對直方圖雙端口RAM進行單端口寫操作,另一個端口留給最優(yōu)窗口確定進行異步讀操作用,這樣做避免了對直方圖雙端口RAM的讀端口復(fù)用。在直方圖統(tǒng)計結(jié)束后,在場消隱區(qū),對雙口RAM進行清零,為下一幀圖像的統(tǒng)計做準備。由于實時圖像幀頻為30 F/s,因此可采用上一幀的直方圖統(tǒng)計結(jié)果來完成下一幀圖像的處理。
控制時鐘PLL:在一個像素時鐘要完成雙口RAM的讀,并將讀出結(jié)果加1后寫回RAM,所以將直方圖統(tǒng)計的控制時鐘設(shè)為像素時鐘的2倍,即PLL二倍頻。
設(shè)計中使用Quartus Ⅱ中SignalTap Ⅱ邏輯分析儀對圖像處理前的數(shù)據(jù)和處理后數(shù)據(jù)進行了觀察,見圖3。Vdatain是HSV空間未經(jīng)變換的亮度值,Vchange為經(jīng)過灰度拉伸后的亮度值。在消隱區(qū)即FVAL為低時,根據(jù)雙口RAM統(tǒng)計結(jié)果,求得兩個插值點分別為96和123。在幀有效信號為高時,在每個像素時鐘內(nèi),每輸入一個像素,相應(yīng)輸出經(jīng)過變換的值。
該設(shè)計對一副大小為1 024×1 024×24 bit大小的圖像進行了增強處理。圖4為航拍的原始彩色圖像,在搭建的系統(tǒng)上用本算法對彩色圖像處理后的圖像如圖5所示。航拍圖像增強前后所對應(yīng)的直方圖如圖6、7所示。
圖3 灰度變換仿真結(jié)果Fig.3 Simulation result of gray level transformation
圖4 原始圖像圖Fig.4 Original image
圖5 增強后圖像Fig.5 Enhanced image
圖6 原始RGB圖像直方圖Fig.6 Histogram of the original RGB image
圖7 增強后RGB圖像直方圖Fig.7 Histogram of the enhanced RGB image
觀察原始圖像的直方圖,可以發(fā)現(xiàn),灰度值比較集中,反應(yīng)到圖像中就是細節(jié)不明顯,對比度低。同時原始圖像主要的輪廓不明顯。本文方法處理后的圖像,細節(jié)信息豐富,邊緣清晰,視覺效果較好。直方圖比較均勻,灰度動態(tài)范圍寬。該算法可以很大程度上改善圖像的清晰度。
圖8 當(dāng)n=4時的插值函數(shù)圖像Fig.8 Graphic of interpolation function for n=4
圖8中為各個灰度級經(jīng)過拉伸后的圖像,x軸為灰度級vi(0,255),y軸為經(jīng)過變換后的fi,分段拉伸效果的好壞,很大程度上取決于分段區(qū)間。本文中Vmin取值0,Vmax取200,兩個插值點根據(jù)公式(6)求得分別為96和123。
[11]的直方圖均衡算法以及文獻[12]的平臺直方圖均衡化算法,圖9給出了采用3種不同算法增強后的圖像及其對應(yīng)的直方圖。
通過直方圖均衡化后的圖像[11],灰度值較小區(qū)域更暗,不能顯現(xiàn)出陰暗區(qū)域的細節(jié)信息,且灰度值較大區(qū)域更亮,失去原有紋理信息。平臺直方圖均衡化[12]后的圖像較直方圖均衡化圖像相比,圖像效果有了明顯改進。但是該算法增強后灰度值較小處的像素值比較多,也就造成了圖像的整體效果偏暗,不能明顯顯現(xiàn)圖像細節(jié)信息。而本文增強算法將圖像的亮度調(diào)節(jié)得非常均勻,可以較為明顯看出整幅圖像的細節(jié)信息,視覺效果很好。
針對航拍模糊圖像,本文采用灰度平均梯度值來判斷增強算法的效果和有效性?;叶绕骄荻戎凳欠謩e將圖像長度和寬度方向上的相鄰像素灰度值做差后求平方和再求均方根值,它能較好地反映圖像的對比度和紋理變化特征,其值越大表示圖像越清晰,圖像質(zhì)量越好。公式為:
(9)
表1給出了3種算法的性能評價,可以看出,基于插值的線性拉伸算法與直方圖均衡化和平臺直方圖均衡化算法相比,處理速度更快,更能夠滿足實時性需求。增強后的圖像更清晰,輪廓以及細節(jié)信息更明顯。
表1 三種算法性能比較
對于圖像的增強,本文提出了一種基于插值的線性拉伸算法,根據(jù)插值函數(shù)對每個像素點進行灰度變換。其在增強圖像對比度的同時也會很好地保留圖像細節(jié),經(jīng)過該算法增強后圖像的灰度平均梯度值為直方圖均衡化算法的1.95倍。本文方法處理后的圖像,細節(jié)豐富,灰度動態(tài)范圍寬,該算法很大程度上改善圖像了的清晰度和視覺質(zhì)量。對于實時的彩色圖像增強處理具有數(shù)據(jù)量大、傳輸速度快的特點,用FPGA作為整個算法的中央處理器,通過相應(yīng)的圖像處理模塊,完成彩色圖像空間和灰度空間的相互轉(zhuǎn)換以及灰度圖像的實時增強算法,并利用軟件實現(xiàn)直方圖統(tǒng)計和拉伸算法的并行執(zhí)行,與直方圖變換等傳統(tǒng)圖像增強算法相比,該算法計算時間縮短了0.807 ms。該系統(tǒng)具有集成度高、圖像處理速度快和實時性強等特點。結(jié)果表明, 該算法的實現(xiàn)具有實時性,能夠達到預(yù)期目標, 基本可以實現(xiàn)工程應(yīng)用。
參考文獻:
[1] 賈宏光,吳澤鵬.基于廣義線性運算和雙邊濾波的紅外圖像增強[J].光學(xué) 精密工程,2013,12(21):3272-3282.
Jia H G, Wu Z P.Infrared image enhancement based on generalized linear operation and bilateral filter [J].Opt.PrecisionEng.,2013,12(21):3272-3282.(in Chinese)
[2] 韓希珍.結(jié)合偏微分方程增強圖像紋理及對比度[J].光學(xué) 精密工程,2012, 20(6): 1382-1388.
Han X Z. Enhancement of image texture and contrast combined with partial differential equation [J].Opt.PrecisionEng., 2012,20(6) : 1382-1388.(in Chinese)
[3] 劉欽堂. 基于Retinex算法的彩色圖像增強研究[D]. 哈爾濱:哈爾濱工程大學(xué),2012.
Liu X T.Research of the color image enhancement based on Retinex algorithms [D]. Harbin: Harbin Engineering University,2012.(in Chinese)
[4] 武治國, 王延杰. 一種基于直方圖非線性變換的圖像對比度增強方法[J].光子學(xué)報,2010,39(4):755-758.
Wu Z G, Wang Y J. An image enhancement algorithm based on histogram nonlinear transform [J] .ActaPhotonicaSinica, 2010, 39(4) : 755 -758.(in Chinese)
[5] 龐玉林,劉珊珊. 基于硬件實現(xiàn)具有范圍判斷功能的動態(tài)線性拉伸算法[J].科學(xué)技術(shù)與工程,2010,10(16):3878-3882.
Pang Y L,Liu S S. Dynamic linear extension algorithm based on hardware realization [J].ScienceTechnologyandEngineering, 2010,10(16):3878-3882.(in Chinese)
[6] 何浩.基于DSP和FPGA的圖像處理平臺的研究和實現(xiàn)[D]. 南京:南京航空航天大學(xué),2011.
He H.Research and implementation of digital image processing card based on DSP and FPGA[D]. Nanjing :Nanjing University of Aeronautics and Astronautics,2011.(in Chinese)
[7] 于云翔, 張麟瑞. 實時圖像增強算法改進及FPGA實現(xiàn)[J].計算機仿真,2009,26(2):240-242.
Yu Y X, Zhang L R. An improved real- time enhancement algorithm and its realization with FPGA [J].ComputerSimulation, 2009,26(2):240-242.(in Chinese)
[8] 劉春香,郭永飛.星上多通道遙感圖像的實時合成壓縮[J].光學(xué) 精密工程,2013,2(21):445-453.
Liu C X, Guo Y F. Composition and compression of satellite multi-channel remote sensing images [J].Opt.PrecisionEng.,2013,2(21):445-453.(in Chinese)
[9] 牛英宇. 圖像自適應(yīng)分段線性拉伸算法的FPGA設(shè)計[J].現(xiàn)代電子技術(shù),2010,10:78-80.
Niu Y Y. Implementation of adaptive-piecewise linear stretching algorithm based on FPGA [J].ModernElectronicsTechnique,2010,10:78-80.(in Chinese)
[10] 吳家偉,武春風(fēng).紅外圖像實時顯示增強系統(tǒng)設(shè)計[J].光學(xué) 精密工程,2009,17(10):2612-2619.
Wu J W, Wu C F. Design of real time infrared image enhancing system [J].Opt.PrecisionEng.,2009,17(10):2612-2619.(in Chinese)
[11] 胡元剛. 直方圖均衡增強算法在實時圖像處理中的實現(xiàn)[J].液晶與顯示,2009,27(2):907-909.
Hu Y G. Implemention of histogram equalization enhancement algorithms in rea-l time image processing [J].ChineseJournalofLiquidCrystalsandDisplays,2009,27(2):907-909.(in Chinese)
[12] 王炳健,劉上乾.基于平臺直方圖的紅外圖像自適應(yīng)增強算法[J].光子學(xué)報,2005,32(2):299-301.
Wang B J, Liu S Q. Self-adaptive contrast enhancement algorithm for infrared images based on plateau histogram[J].ActaPhotonicaSinica, 2005,32(2):299-301.(in Chinese)