<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于圖像增強(qiáng)的去霧快速算法的FPGA實(shí)現(xiàn)

          基于圖像增強(qiáng)的去霧快速算法的FPGA實(shí)現(xiàn)

          作者: 時間:2016-10-16 來源:網(wǎng)絡(luò) 收藏

          摘要:基于方法,本文提出了一種使用亮度映射的圖像去霧快速算法。此算法通過調(diào)整室外多霧場景圖像的對比度,提高了霧中物體的辨識度。算法的復(fù)雜度低、處理延遲小,實(shí)時性高,利于FPGA的實(shí)現(xiàn)。實(shí)現(xiàn)時不需外存儲器,延時為ns級,并提供了強(qiáng)度調(diào)節(jié)接口,以適應(yīng)較廣的應(yīng)用環(huán)境。

          本文引用地址:http://www.ex-cimer.com/article/201610/308282.htm

          0 引言

          目前關(guān)于霧景圖像的處理技術(shù)已有許多研究結(jié)果,但大多數(shù)去霧算法要么是基于多幅圖像或融合其他信息進(jìn)行去霧,這大大限制了算法的使用范圍。而基于單幅圖像的去霧算法,如廣泛使用的暗通道方法,大部分還是應(yīng)用于PC環(huán)境,處理方法復(fù)雜,處理速度慢,需要多次遍歷圖像。以暗通道方法為例,文中使用3.0GHz的奔4處理器對600×400分辨率霧景圖像進(jìn)行處理時亦需要10~20秒,難以在嵌入式環(huán)境下進(jìn)行實(shí)時處理。

          但是以上的去霧算法的處理目標(biāo)是為了完全去除圖像中的霧氣效果以提高肉眼的觀感,而在如軍事、監(jiān)控等實(shí)時應(yīng)用中往往無需全部去除霧氣來提高觀感,而僅僅是為了提高感興趣區(qū)域的辨識度,以發(fā)現(xiàn)隱藏在霧景中的目標(biāo)物。所以,如何提高原始圖像中受霧氣影響較嚴(yán)重區(qū)域的物體辨識度成為在這些應(yīng)用場景下進(jìn)行處理的關(guān)鍵點(diǎn)。

          本文所采用的快速算法的處理目標(biāo)就是利用霧景圖像的亮度分布特點(diǎn),通過采用基于的方法來提高原始圖像中被霧氣影響的遠(yuǎn)景物體的辨識度。算法復(fù)雜度低,優(yōu)化后的FPGA實(shí)現(xiàn)可以做到ns級的延時。

          1 算法介紹

          室外多霧環(huán)境由于空氣中的霧氣改變了大氣散射條件,使得采集到的物體圖像發(fā)生了對比度退化。廣泛使用的霧景圖像數(shù)學(xué)模型如式(1)所示。

          I(x)=J(x)t(x)+A[1-t(x)] 式(1)

          式(1)中:I是觀察到的霧景退化圖像,J是無霧時的景物圖像,A是大氣光照,t是透射率。所以要進(jìn)行完全的去霧就是要通過I和某些先驗條件反算出J、t、A。

          本文算法主要關(guān)注大氣光照參數(shù)A對圖像所產(chǎn)生的影響,令t=0,可得I=A,可見A指代當(dāng)場景中沒有物體時所觀察到的大氣光照圖像。而由于物體的視覺信息都是由大氣光照下由物體反射得到,在反射中物體會吸收部分光線,造成亮度損失。所以A通常為整幅霧景圖像的亮度最高值,所以有如下示意圖來進(jìn)一步表述退化作用的原理。

          a.jpg

          由式(1)結(jié)合圖1易見,霧景圖像實(shí)際可看成由原始無霧圖像上按比例半透明地疊加上一層高亮白色圖像得到的結(jié)果,而其疊加比例參數(shù)決定于透射率t,透射率越高,霧氣對于成像的影響越小,得到的圖像越接近真實(shí)。而在室外場景中,霧氣濃度分布均勻情況下,物體距離相機(jī)越遠(yuǎn),透射率越低,即采集到的物體圖像的退化程度越高。而由于A通常為整幅圖像的亮度最高值,所以霧景中物體的亮度也會隨著退化程度的提高而變高。

          所以,由理論模型我們可以得到以下結(jié)論:在通常的霧景圖像中,物體距離相機(jī)越遠(yuǎn),圖像的退化程度越高,其亮度也隨之變高。即霧景圖像的亮度和退化程度具有一定程度的正相關(guān)性。

          基于以上的分析,我們可以通過增強(qiáng)高亮度區(qū)域圖像的對比度來提高霧景圖像中退化較嚴(yán)重區(qū)域物體的辨識度。我們使用式(2)來進(jìn)行亮度的映射以實(shí)現(xiàn)對高亮度區(qū)域的對比度增強(qiáng)。式(2)所對應(yīng)的亮度映射曲線如圖2對比度曲線應(yīng)具有隨亮度提升平滑需要使用如式(2)所示的函數(shù)進(jìn)行對比度調(diào)節(jié)得到的亮度映射曲線如圖2所示。

          b.jpg

          式(2)中參數(shù)p為增強(qiáng)強(qiáng)度,取值范圍[0,1)。當(dāng)p=0時Yout=Yin即沒有增強(qiáng)。

          c.jpg

          圖2中的p=0時的平直線為標(biāo)準(zhǔn)對比度曲線,可以看出當(dāng)亮度較低時算法的曲線斜率小,隨著亮度變高,斜率逐步變大。并且斜率變化連續(xù),曲線平滑,以降低由對比度調(diào)節(jié)所帶來的圖像失真。同時,隨著p增大,曲線的曲度變得劇烈。

          2 FPGA實(shí)現(xiàn)

          基于FPGA的硬件處理,需要將原[0,1)的浮點(diǎn)數(shù)對應(yīng)到[0,255]的定點(diǎn)整數(shù)域進(jìn)行處理。所以此算法對FPGA來說只需建立并維護(hù)一個8bit 256的亮度映射表即可,適合在FPGA中實(shí)現(xiàn)。

          2.1 硬件結(jié)構(gòu)

          由FPGA為核心搭建的硬件平臺框圖如圖3所示。模擬標(biāo)清PAL視頻經(jīng)過AD芯片轉(zhuǎn)換為數(shù)字視頻輸入到FPGA中,在FPGA內(nèi)對視頻進(jìn)行去霧處理,處理完的數(shù)字視頻輸出到DA芯片中再轉(zhuǎn)換成PAL輸出給顯示器顯示。

          d.jpg

          數(shù)字化后的PAL信號符合BT.656標(biāo)準(zhǔn),為內(nèi)嵌同步碼的YUV數(shù)字視頻,其中Y分量為亮度分量,F(xiàn)PGA即針對此分量進(jìn)行去霧處理。

          BT656視頻格式以及Y分量的提取方法如圖4所示。

          根據(jù)BT.656碼流中的內(nèi)嵌同步頭對數(shù)據(jù)定位,再對定位后的流數(shù)據(jù)進(jìn)行計數(shù),計數(shù)中如圖4所示的第偶數(shù)個數(shù)據(jù)為Y分量,將其提取出使用本算法進(jìn)行處理。

          e.jpg

          2.2 算法優(yōu)化

          由于真實(shí)場景中采集的圖像往往亮度無法達(dá)到飽和,如果直接運(yùn)用式(2),大量像素都映射到低亮度部分曲線,反而壓低了整個對比度所以不會得到太好的效果。所以原公式中需要加入最大亮度Ymax參數(shù),將(Ymax,255)作為曲線的收斂點(diǎn),同時將式(2)的計算處理成定點(diǎn)整數(shù)域計算以利于硬件實(shí)現(xiàn),最后得到優(yōu)化后的公式:

          f.jpg

          式(3)中的Yin,P,Ymax,Yout有效位數(shù)均為8bit,取值范圍為[0,255),即變量的歸一化值變?yōu)?55。其中,Ymax為一幀圖像像素中的最大亮度。當(dāng)Ymax=210時,式(3)所得到的亮度曲線如圖5所示。

          g.jpg

          由圖5可見,優(yōu)化后的亮度映射曲線與圖2基本一致,但收斂點(diǎn)變?yōu)?Ymax,255),從而提高亮度變換的有效性。

          由于要統(tǒng)計圖像中的亮度最大值,所以需要遍歷一遍圖像,這樣會增加40ms(一幀PAL圖像的傳輸時間)延時。實(shí)際處理時可以利用視頻幀間差異較小這一特點(diǎn),取上一幀的Ymax作為當(dāng)前幀處理的參數(shù)。由于Ymax是上一幀的最大值,所以算法處理時可能出現(xiàn)當(dāng)前幀的Yin大于Ymax從而其映射得到的Yout值可能溢出(大于255)。因此,建立和更新映射表時需要將計算結(jié)果大于255的值進(jìn)行鉗位,使其等于255,由以上方法得到FPGA邏輯原理框圖如圖6所示。

          h.jpg

          圖6中的Y分量提取模塊將輸入視頻流中的Y分量提取出來分支到兩路處理,一路進(jìn)行最大值搜索,當(dāng)一幀結(jié)束時得到Y(jié)max輸出給亮度映射表生成模塊生成新一幀的亮度映射表;分支的另一路查詢當(dāng)前亮度映射表,得到增強(qiáng)后的Yout,最后和UV分量再次復(fù)合成標(biāo)清視頻流輸出到AD芯片進(jìn)行PAL編碼。

          2.3 去霧效果和性能

          針對幾張霧景樣圖的處理效果如圖7所示。

          h.jpg

          處理的效果由圖7可以看出,霧氣彌漫的圖像上部區(qū)域在增強(qiáng)處理后對比度有所提升,原圖區(qū)域中的物體模糊一團(tuán),隨著增強(qiáng)強(qiáng)度的提升其紋理特征基本可識別。

          但此種提升效果是以降低圖像整體亮度為代價的,當(dāng)參數(shù)升高時,整體亮度逐漸下降。所以在不同的光照條件下,選取不同的P值可以得到更好的感官效果。

          在處理的性能方面,由于在映射表的建立和更新中使用上一幀圖像的Ymax,對當(dāng)前幀處理時,表已在上一幀圖像結(jié)束后的消隱時間中更新完畢。所以,當(dāng)Yin輸入時直接進(jìn)行查表得出增強(qiáng)后的Yout,延時僅為一個時鐘周期,本文所完成的設(shè)計中使用27MHz時鐘作為系統(tǒng)時鐘,即延時約為37ns。

          算法使用Xilinx公司低端系列Spartan3的XC3S400AN實(shí)現(xiàn),僅占用402Slices,3個乘法器以及54Kbit塊ram,最高可以運(yùn)行到142MHz,并且不需任何片外存儲資源,所實(shí)現(xiàn)系統(tǒng)的成本低,功耗小,實(shí)時性高。

          3 小結(jié)

          針對室外多霧環(huán)境下,霧中景物亮度高,但對比度低的特點(diǎn),本文提出了一種使用亮度映射的算法?;诖怂惴梢钥焖俳⒘炼扔成浔?,對輸入圖像的亮度使用查表法處理即可完成圖像多霧區(qū)域的對比度增強(qiáng),可以有效提高多霧場景中物體的辨識度。在FPGA中實(shí)現(xiàn)的邏輯電路復(fù)雜度低,實(shí)時性強(qiáng),資源占用少。



          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();