999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA的實時視頻增強

2013-02-13 09:57:24吳鐘建陳咸志羅鎮寶羅冠泰
電視技術 2013年19期

楊 光,李 晶,吳鐘建,陳咸志,代 俊,羅鎮寶,曾 軍,羅冠泰

(西南技術物理研究所,四川 成都610041)

責任編輯:時 雯

視頻增強的首要目標是處理視頻中的每場圖像,使其比原始圖像更適合于特定應用,比如目標識別、跟蹤等[1]。在圖像制導應用中,霧霾等惡劣天氣引起圖像質量嚴重退化,形成低對比度的目標圖像,導致目標跟蹤不穩定,致使制導武器偏離目標。圖像實時增強技術作為提高圖像質量的手段,對其研究具有重大的工程價值和現實意義。一般情況下,不同的增強算法的應用領域不盡相同,在圖像光照反差較大場合,Retinex算法可發揮較好的作用,但是戰場環境復雜多變,增強算法不能局限于某種特殊的場合,因此目標跟蹤對增強算法的魯棒性提出更高要求[2]。一些基于物理模型的圖像恢復算法增強效果通常可以滿足跟蹤需求,但是算法的實時性往往不能達標,甚至存在某些場的處理時間高于單場周期的現象,對目標跟蹤性能造成惡劣影響[3]。

基于局部直方圖均衡的對比度增強方法具有自適應好、魯棒性強等特點,廣泛應用于圖像增強領域。Tom等人于1982年提出的自適應直方圖均衡算法[4](Adaptive Histogram Equalization,AHE),根據圖像局部特征計算灰度變換函數,克服了全局直方圖均衡難以適應局部灰度分布的缺陷,對比度增強效果較好,但過高的時間復雜度使其難以應用于實時增強場合;針對AHE算法執行時間較長問題,Zimmerman等人于提出子塊非重疊自適應直方圖均衡算法(Non-Overlapped Sub-Block Adaptive Histogram Equalization,NSAHE),可以有效降低AHE算法的時間復雜度,但各子塊灰度分布不均勻導致產生方塊效應,對目標識別造成很大干擾[5];針對于NSAHE算法的塊效應以及AHE算法的局部可能出現過增強問題,Zuiderveld等人于1994年提出限制對比度自適應圖像增強算法(Contrast Limited Adaptive Histogram Equalization,CLAHE),將圖像劃分為非重疊子塊處理,大大降低了算法時間復雜度,通過對比度限制手段有效避免圖像過度增強,保證圖像局部具有較高的動態范圍[6]。CLAHE算法首先將子塊直方圖中大于截斷門限值的像素重新分散到其他灰度級上,然后計算子塊直方圖查找表,最后通過雙線性插值完成整幅圖像的像素映射、加權處理。CLAHE算法具有計算簡單、易于并行的特點,結合FPGA并行處理優勢,本文利用視頻相鄰兩場直方圖的高度相似性特點,采用直方圖邊計算邊查找的處理方式,簡化CLAHE算法架構,降低邏輯設計復雜度,并在FPGA視頻圖像處理平臺上硬件實現,提高跟蹤系統整體的實時性和穩定性。

1 CLAHE算法原理

CLAHE算法起初僅用于醫學圖像處理,隨后發現該算法可以很大程度提高低對比度圖像的結構層次,也可以配合其他手段廣泛應用于圖像去霧領域。

AHE算法中的過增強問題可通過限制各子塊增強程度來解決,這些子塊的直方圖中通常擁有多個尖峰,即有很多像素存在于單一灰度級上。CLAHE算法設置子塊直方圖單一灰度級擁有像素個數的上限,將超出上限的像素均勻分配到其他灰度級上面,降低直方圖映射函數的斜率,限制對比度增強程度,解決AHE算法的過增強問題[6]。

CLAHE算法將圖像分為非重疊子塊處理,這種分塊方式會導致子塊邊界區域灰度分布不均勻,在視覺上表現為方塊效應,一般采用低通平滑方法消除方塊效應,CLAHE采用雙線性插值平滑策略,以每個子塊的中心像素作為參考點,處理除參考點意外剩余像素,解決灰度間斷問題,獲得較為平滑的圖像效果。

CLAHE算法是一種典型的局部直方圖均衡算法,步驟如下:

1)圖像分塊。圖像劃分為尺寸相同的非重疊子圖像(子塊),每個子圖像含有M個像素。

2)直方圖計算。子塊直方圖用Hi,j(k)表示,k表示像素灰度級,取值范圍為[0,N-1],N為可能出現的灰度級數,對于8 bit灰度圖像,N等于256;i,j分別表示圖像分塊后子圖像的行數和列數。

3)門限值計算。式(1)用來計算子塊直方圖單個灰度級的截斷門限值

式中:參數smax為最大斜率(累加直方圖的最大斜率),它與對比度增強程度成正比;smax取值為1到4之間的整數;參數α稱為截斷系數,它的取值范圍是[0,100]。當α=0時,β取得最小值M/N;當α=100時,β取得最大值smaxM/N,此時對比度拉伸效果最明顯,超出門限的像素個數存入excess變量中。

4)像素重分配。使用β對每個子塊的直方圖Hi,j(k)進行削減,將削減下來的像素重新分配到子塊直方圖未飽和(即灰度級上像素個數小于截斷門限)的灰度級中,直至將所有被削減的像素分配完畢,并用Fi,j(k)表示Hi,j(k)經重新分配處理后的結果。

5)直方圖均衡。利用Fi,j(k)計算最終的直方圖均衡映射,均衡結果用Ci,j(k)。

6)像素重構。根據Ci,j(k)得到各子塊中心像素的灰度值,以它們為參考點,采用雙線性插值策略計算圖像中其余各點的灰度值,重構示意圖如圖1所示,圖1b是圖1a中第j-1行至第j行、第i-1列至第i列圖像局部的放大,位于1象限的點p為待增強像素,根據p點和參考點位置關系確定權值,加權獲得最終處理結果,見式(2)[7-8]

式中:Pold為增強前的像素;fi,j為子塊直方圖映射;Pnew為增強后的像素。

圖1 CLAHE算法像素重構示意圖

2 CLAHE算法的FPGA實現

2.1 基本思路

在深入理解CLAHE算法原理之后,采用D觸發器陣列存儲直方圖查找表,方便數據讀寫操作,然而經過資源分析后,發現此方案不可行。為此需要一種切實可行的優化設計方案,在滿足圖像實時增強指標的基礎上實現資源優化。本文選擇片上的BRAM(Block RAM)資源替代D觸發器陣列存儲結構的優化方案,雖然此方案對RAM讀寫時序要求較高,但是可以節省更多的邏輯資源。

對于256×256×8 bit的灰度圖像,CLAHE算法子塊大小設置為64×64(共16個子塊),截斷門限為β,下文分析FPGA資源詳細占用。

BRAM資源占用情況為:

統計RAM,根據截斷門限β設置數據寬度,地址寬度等于輸入圖像位數。

查找RAM,數據寬度與地址寬度均等于輸入圖像位數。

綜上所述,每個統計RAM占用資源為26(23等于512 bit,每個查找RAM占用資源為28(23等于2 kbit,統計RAM和查找RAM共計32個,需要32個M18K(M18K為V5系列FPGA可配置的最小容量BRAM單元)。

乘法器IP核中,權重計算需要4個乘法器、加權累加需要4個乘法器,乘法器IP核通過FPGA片上的DSP48E Slice配置,共需要8個DSP48E Slice,不占用額外的邏輯資源。

DCM(Digital Clock Manager):數字時鐘管理器,提供數據處理時鐘和RAM讀寫時鐘。

本文采用統計存儲模塊和查找存儲模塊(簡稱統計RAM和查找RAM)雙存儲架構,采用直方圖邊統計邊查找的工作模式,即場正程計算統計直方圖同時執行像素增強,場逆程計算查找直方圖同時執行RAM清零處理,形成流水處理方式,確保輸入像素在兩個數據時鐘周期增強后輸出。

2.2 設計方案

如圖2所示,整個系統分為4個模塊:統計RAM、查找RAM、統計計算模塊和雙線性插值模塊。單個像素流水處理時間為兩個時鐘周期,第一個時鐘周期從查找RAM讀取采樣數據,第二時鐘周期利用采樣數據以雙線性插值方式進行像素重構,同時讀取下一個待重構像素的采樣數據。

工作數據流如下:

第n場場正程期間,輸入像素進入統計RAM和查找RAM,分別直方圖統計計算和直方圖查找數據采樣,下一個時鐘根據查找RAM的采樣數據以雙線性插值方式進行像素重構,同時讀取下一個待重構像素的采樣數據,單個像素流水處理時間為兩個時鐘周期;第n場場消隱期間,首先將查找RAM清零,統計計算模塊根據統計存儲模塊生成查找直方圖映射,然后將映射寫到第n+1場的查找RAM,最后將統計RAM清零,等待第n+1場輸入像素來臨。

圖2 系統框圖

1)存儲模塊(統計RAM和查找RAM)

在場正程行有效期間,在RAM讀寫時鐘(數據時鐘二倍頻)上升沿,以輸入像素灰度值作為統計RAM的讀寫地址,讀出統計RAM數據,在下一個時鐘上升沿,如果讀出數據小于第1章所述的截斷門限,將讀出的數據加一重新寫入統計RAM中,如果讀出數據等于截斷門限,統計RAM內容保持不變,將超出的像素個數統計到第二章所述的excess變量中,等待統計計算模塊進行像素重分配處理;與此同時,根據輸入像素灰度值及行列計數(灰度值作為查找RAM度地址、行列計數使能相應的查找RAM進行采樣),從查找RAM中讀出映射灰度值,然后送入雙線性插值模塊處理。

在場消隱期間,首先將查找RAM清零,然后將excess變量中的超出門限的像素均勻分配到其余灰度級上,再進行直方圖正規化處理,將結果寫入查找RAM,最后將統計RAM清零,至此單場圖像處理結束。

2)統計直方圖計算模塊

統計直方圖計算架構如圖3所示,該模塊由像素重分配模塊和直方圖累加模塊構成,模塊內子塊并行處理,互不影響,當所有子塊的像素分配標志位拉高時,直方圖累加模塊開始工作。

圖3 統計直方圖計算模塊框圖

像素重分配模塊:CLAHE算法在像素重分配以1為步長,這種分配方式會延長單場圖像FPGA處理流水時間,為此提出一種新的像素分配策略,將excess變量與灰度級個數(對于8 bit灰度圖像,擁有256個灰度級)作商,得到excess_avr變量,以excess_avr作為分配步長,將excess變量中的像素分配到統計RAM中,通過這樣的思路可提高算法執行的效率,為其他模塊處理提供一定的時間余量。

直方圖累加模塊:先讀取統計RAM中數據進行累加,然后實施直方圖映射正規化操作,避免將較大的數據寫入查找RAM,需要減少查找RAM的數據寬度,防止占用過多的RAM資源(即將查找灰度值映射至[0,2n-1],其中n為圖像位數),最后將正規化映射結果寫入查找RAM。

3)雙線性插值模塊

雙線性插值模塊從查找RAM獲取采樣數據,模塊涉及數據選取、權值計算、插值規則選擇、加權乘累加多個操作,權重、乘累加運算中還涉及多位乘法操作,導致該模塊無法在一個時鐘周期內完成,為此調用乘法器IP核、設計二倍頻(輸入數據時鐘頻率的二倍)狀態機(四個狀態),將處理時間壓縮在一個時鐘以內,狀態機說明如下:狀態0表示讀取采樣像素,同時計算權值,將采樣數據用狀態機時鐘延遲一拍,保證像素灰度值和權值的同步性;狀態1~3表示根據像素點的位置(1角落、2邊界、3內部),選取不同的插值規則加權累加,像素增強后進入下一級處理,狀態機轉換流程如圖4所示。

圖4 雙線性插值模塊狀態機轉換圖

3 系統運行結果性能分析

本文選用Intel Core4 Xeon CPU E5507,主頻為2.27 GHz,內存為2.99 Gbyte的計算機,采用MATLAB 2007a、MOLDELSIM SE 6.5e和Xilinx開發軟件ISE12.4,所選圖像為256×256×8 bit灰度圖像,FPGA平臺輸入視頻為256×256×8 bit掛飛視頻,幀頻為50 f/s(幀/秒)。算法參數如下:CLAHE算法子塊大小為64×64,截斷門限設置為63。

硬件平臺采用的FPGA芯片是Xilinx公司Virtex-5系列XC5VSX50T,其總邏輯單元Total logic slice為8 160個,Total Block RAM為4 752 kbit,可配置成264個MK18,132個MK36。

3.1 MOLDELSIM仿真結果及分析

首先利用MATLAB軟件將需要增強的圖像寫入文本文檔,然后在仿真Testbench中利用readmem系統函數將圖像讀到輸入像素緩存變量dat_mem中,再將像素按照數據時鐘和行場時序送給增強模塊,處理完成的像素返回給Testbench,在輸出使能信號out_en處在高電平時,利用fdisplay系統函數將增強后的像素寫入文本文檔,最后在MATLAB軟件上讀入圖像數據,觀察增強效果。

如圖5所示為圖像第238行的實驗波形,數據時鐘是20 MHz的clk信號,第238行第一個像素灰度值datin為65,65作為讀地址從查找RAM讀出數據hist_acc_dato,再將hist_acc_dato送入雙線性插值模塊處理得到最后的增強結果dato等于39,整個圖像增強過程流水時間為兩個數據時鐘周期,即100 ns,完全保證了圖像增強的實時性。

圖5 CLAHE算法MODELSIM仿真圖(截圖)

如圖6所示,圖6a和圖6d分別以霧天都市和開發區圖像作為測試圖像,對比圖6b和圖6c、圖6e和圖6f以及表1中增強前后圖像客觀質量的評價數據,CLAHE算法MATLAB的串行實現和MODELSIM的并行實現獲得了相同的增強效果,經過CLAHE增強算法處理,有效增強原圖像的對比度和紋理,增強后的圖像層次分明,顯示了較好的增強效果,為跟蹤器提供了較為清晰的圖像。

3.2 FPGA平臺視頻增強結果

在Xilinx的XC5VSX50T FPGA平臺上,采用霧天采集的實時航拍視頻驗證CLAHE算法增強的實時性和可靠性。對比圖7中的增強效果,增強前圖像近處畫面模糊不清,圖像遠處畫面缺乏層次,丟失很多細節,通過CLAHE算法增強處理后,圖像細節得到凸顯,整體畫面非常清晰,具有真實自然的視覺效果,保證圖像增強實時性的基礎上獲得良好的增強效果。

圖6 CLAHE算法增強效果

表1 增強前后圖像質量客觀評價對比

圖7 CLAHE算法FPGA實現增強效果圖

4 結束語

本文以邏輯資源和BRAM資源較少的FPGA作為硬件平臺,以CLAHE算法為基礎實現視頻實時增強。結果表明,該方案對于對霧天不同退化程度的低照度實時視頻,能有效增強其對比度和局部細節,在亮度、對比度和細節方面都能取得較好的視覺效果。

基于局部直方圖均衡的圖像增強FPGA實現方案具有自適應好、魯棒性強等優點,因此該方法具有一定的通用性。利用視頻相鄰兩場的直方圖高度相似性特點,將CLAHE算法成功移植到FPGA硬件平臺,整場圖像增強處理流水時間僅為100 ns(兩個數據時鐘),為后續處理提供了充足的時間,提高了整個跟蹤系統的實時性和穩定性。

[1]GONZALES R,WOODS R.Digital image processing[M].2nd ed.Beijing:Publishing House of Electronic Industry,2007:59-84.

[2]李建彬,韓軍,邱君華.基于Retinex的舊視頻序列增強算法[J].電視技術,2011,35(5):21-24.

[3]TAN R.Visibility in bad weather from a single image[C]//Proc.IEEE Conference on Computer Vision and Pattern Recognition.Washington,DC:IEEE Computer Society,2008:2347-2354.

[4]TOM V,WOLFE G.Adaptive histogram equalization and its applications[C]//Proc.SPIE Application on Digital Image Processing IV.San Diego:SPIE Press,1982:204-209.

[5]ZIMMERMAN J,PIZER S.An evaluation of the effectiveness of adaptive histogram equalization for contrast enhancement[J].IEEE Trans.Medical Imaging,1988,7(4):304-312.

[6]ZUIDERVELD K.Contrast limited adaptive histogram equalization.graphics gems IV(Eds.)[M].MA:Academic Press,1994.

[7]周衛星,廖歡.基于高頻強調濾波和CLAHE的霧天圖像增強算法[J].電視技術,2010,34(7):38-40.

[8]KOKUFUTA K,MARUYAMA T.Real-time processing of contrast limited adaptive histogram equalization on FPGA[C]//Proc.International Conference on Field Programmable and Applications.Milano:IEEE Press,2010:155-158.

主站蜘蛛池模板: 国产精品yjizz视频网一二区| 中文字幕亚洲第一| 国产成人区在线观看视频| 国产va在线观看免费| 成人午夜久久| 91久久国产综合精品女同我| 视频二区亚洲精品| 国产成人乱无码视频| 毛片卡一卡二| 乱人伦中文视频在线观看免费| 青草娱乐极品免费视频| 国产精品分类视频分类一区| 婷婷激情亚洲| 亚洲中文无码av永久伊人| 五月天综合婷婷| 激情综合图区| 91成人试看福利体验区| 亚洲综合片| 男人天堂伊人网| 日本在线免费网站| 国产不卡国语在线| 久久伊人久久亚洲综合| 欧美乱妇高清无乱码免费| 亚洲国产成人无码AV在线影院L| 久久精品午夜视频| 色综合五月婷婷| AV无码一区二区三区四区| 欧美在线伊人| 久久香蕉国产线看观| av在线手机播放| 国产成人一区免费观看| 夜夜操狠狠操| 久久人搡人人玩人妻精品一| 无码区日韩专区免费系列 | 欧美在线免费| 久久成人18免费| 日韩欧美中文在线| 一级爆乳无码av| 97综合久久| 97av视频在线观看| 成人福利视频网| 一级片一区| 欧美一级在线看| 午夜视频免费试看| 在线看片免费人成视久网下载| 亚洲一区二区三区国产精华液| 精品无码人妻一区二区| 亚洲色婷婷一区二区| 国产精品妖精视频| 九九九精品成人免费视频7| 小说 亚洲 无码 精品| 中文字幕第4页| 日本午夜精品一本在线观看| 五月激情婷婷综合| 国产精品久久久久久久久久久久| 久久免费精品琪琪| 中文字幕在线欧美| 国产亚洲精品资源在线26u| 欧美日本在线观看| 天天综合天天综合| 亚洲人成在线精品| 日本免费一级视频| 亚洲欧洲日产国码无码av喷潮| 美女国产在线| 日本在线视频免费| AV不卡无码免费一区二区三区| 欧美成人日韩| 亚洲欧美在线综合一区二区三区 | 日本国产精品一区久久久| 人人艹人人爽| 亚洲中文字幕手机在线第一页| 国产人人射| 中文字幕 91| 国产va在线观看| 午夜国产在线观看| 亚洲三级视频在线观看| 日韩精品一区二区三区中文无码| 亚洲国产成人精品青青草原| 欧美一区二区精品久久久| 日本黄网在线观看| 99视频精品全国免费品| 538精品在线观看|