• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于FPGA的直方圖均衡化實(shí)現(xiàn)

      2018-04-26 08:51:20蘇州大學(xué)電子信息學(xué)院李成誠喬東海
      電子世界 2018年7期
      關(guān)鍵詞:對照表灰度級均衡化

      蘇州大學(xué)電子信息學(xué)院 李成誠 喬東海

      1.引言

      灰度直方圖描述了一幅圖像的灰度級統(tǒng)計(jì)信息,是多種空間域處理技術(shù)的基礎(chǔ),主要應(yīng)用于圖像分割、圖像增強(qiáng)及圖像灰度變換等處理過程。在暗圖像中,直方圖的分量集中在灰度級的低端。相反,亮圖像的直方圖分量集中在灰度級的高端。直方圖均衡化即灰度均衡化,在經(jīng)過均衡化處理后的圖像中,像素將占有盡可能多的灰度級并且均勻分布。因此,這樣的圖像將具有較高的對比度和較大的動(dòng)態(tài)范圍。

      本文根據(jù)直方圖均衡化的原理及算法,設(shè)計(jì)了一種基于FPGA+SDRAM+雙口RAM+VGA的直方圖均衡化硬件平臺,通過電腦模擬攝像頭向FPGA傳輸圖像數(shù)據(jù),該平臺實(shí)現(xiàn)了圖像的接收、緩存、直方圖均衡化和圖像顯示的功能。經(jīng)過多次試驗(yàn)測試,該平臺能夠有效增強(qiáng)灰度圖像的對比度,實(shí)現(xiàn)直方圖均衡化。

      2.直方圖均衡化簡述

      灰度直方圖描述了一幅圖像灰度級分布的情況,直方圖均衡化的過程可以概括為四個(gè)步驟:

      ①統(tǒng)計(jì)一幅灰度圖像所有像素點(diǎn)中相同灰度值的個(gè)數(shù),如有一幅分辨率為800*600數(shù)據(jù)位寬為8位的圖像,其灰度范圍為0~255,則需統(tǒng)計(jì)每一個(gè)灰度值在圖像中出現(xiàn)的次數(shù);

      ②計(jì)算每一個(gè)灰度值的概率密度,即計(jì)算每一個(gè)灰度值的個(gè)數(shù)在全部灰度值個(gè)數(shù)中所占的比重;

      ④進(jìn)行灰度均衡轉(zhuǎn)換,即將原有的灰度值映射成新的灰度值,新的灰度值分布稀疏均勻且保持原圖像的灰度排列次序不變。

      經(jīng)過以上四個(gè)步驟即可完成直方圖均衡化,對于步驟二,灰度值的概率密度的表達(dá)式為(1):

      其中,fi為概率密度,xi為灰度值的個(gè)數(shù),A為圖像的面積。

      對于步驟三,累計(jì)概率密度的表達(dá)式為(2):

      對于步驟四,灰度均衡轉(zhuǎn)換的表達(dá)式為(3):

      其中,Di為轉(zhuǎn)換后的灰度值,Dmax為最大灰度值。

      3.直方圖均衡化的FPGA實(shí)現(xiàn)

      3.1 硬件及開發(fā)平臺

      本文使用的測試圖像分辨率為800*600,數(shù)據(jù)位寬為8位,其灰度級為256級。FPGA芯片使用的是Altera的Cyclone IV系列,開發(fā)平臺為Quartus II,并用其自帶的SignalTap II Logic Analyzer進(jìn)行仿真調(diào)試。

      3.2 系統(tǒng)模塊組成

      各模塊組成如圖1直方圖均衡化系統(tǒng)框圖所示。

      圖1 直方圖均衡化系統(tǒng)框圖

      FPGA的時(shí)鐘頻率為50MHz,由于需要通過串口接收圖片數(shù)據(jù)以及通過SDRAM緩存數(shù)據(jù)并通過VGA顯示圖片,每一個(gè)步驟都需要不同的時(shí)鐘頻率,故通過時(shí)鐘鎖相環(huán)生成40MHz和100MHz的時(shí)鐘頻率,分別用于VGA顯示和SDRAM讀寫。不同模塊之間的數(shù)據(jù)傳輸還涉及到數(shù)據(jù)的跨時(shí)鐘域處理,對此創(chuàng)建了兩個(gè)fifo(first input first output)模塊分別為寫fifo(wfifo)和讀fifo(rfifo)。直方圖均衡化的實(shí)現(xiàn)過程涉及對圖片統(tǒng)計(jì)數(shù)據(jù)的讀寫,針對上文中所述的實(shí)現(xiàn)步驟,創(chuàng)建了三個(gè)雙口RAM,分別為統(tǒng)計(jì)同一灰度值個(gè)數(shù)的ram_cnt模塊,數(shù)據(jù)處理模塊ram_process模塊和生成灰度對照表的ram_reference模塊。相應(yīng)的還有串口接收模塊uart_rec,SDRAM讀寫模塊sdram_driver和VGA顯示模塊。

      3.3 系統(tǒng)實(shí)現(xiàn)

      直方圖均衡化數(shù)據(jù)流圖如圖2所示。

      圖2 直方圖均衡化數(shù)據(jù)流圖

      首先通過串口向FPGA發(fā)送圖像數(shù)據(jù),F(xiàn)PGA中串口接收模塊的時(shí)鐘頻率為50MHz,SDRAM讀寫模塊的時(shí)鐘頻率為100MHz,兩個(gè)模塊通過wfifo作為數(shù)據(jù)傳輸?shù)臉蛄?。FPGA每接收一個(gè)像素?cái)?shù)據(jù)就將其寫入wfifo以供SDRAM緩存數(shù)據(jù),同時(shí)每接收一位數(shù)據(jù)便統(tǒng)計(jì)一次灰度值并將其寫入ram_cnt中。

      ram_cnt模塊的數(shù)據(jù)深度為256,數(shù)據(jù)位寬為19(即理論上的最大值480000),可以把ram_cnt的深度當(dāng)做灰度值,每接收一個(gè)數(shù)據(jù)就把相應(yīng)深度里的數(shù)據(jù)自加一,統(tǒng)計(jì)結(jié)束后RAM中相應(yīng)位置里的數(shù)據(jù)便是相應(yīng)灰度值的個(gè)數(shù),通過此方法可以靈活的統(tǒng)計(jì)直方圖。

      如圖3所示,F(xiàn)PGA接收到一個(gè)灰度值為25的像素點(diǎn),讀取ram_cnt的數(shù)據(jù)發(fā)現(xiàn),在此之前灰度值為25的像素點(diǎn)共接收了1754個(gè),故將1755寫入ran_cnt中實(shí)現(xiàn)直方圖統(tǒng)計(jì)。

      圖3 SignalTap II直方圖統(tǒng)計(jì)

      SDRAM寫入來自wfifo中的數(shù)據(jù),等待ram_reference生成灰度對照表后,將寫入的數(shù)據(jù)讀出送到ram_reference中。

      等待FPGA接收完圖像數(shù)據(jù),ram_cnt模塊統(tǒng)計(jì)完所有灰度值后,ram_process模塊開始處理數(shù)據(jù)。由于當(dāng)FPGA計(jì)算除法運(yùn)算時(shí)會消耗大量的硬件資源,且表達(dá)式(3)中除數(shù)為480000,如果直接相除,無疑會消耗更多資源,故我們將表達(dá)式(3)進(jìn)行優(yōu)化以降低硬件資源消耗,提高運(yùn)算效率,改寫后的表達(dá)式見(4):

      故ram_process模塊數(shù)據(jù)深度為256,數(shù)據(jù)位寬為11(即理論最大值480000/235)。將ram_cnt中的數(shù)據(jù)依次讀出,然后除以235,再依次寫入ram_process中。這樣便完成了除法運(yùn)算,且大大降低了運(yùn)算的復(fù)雜程度。ram_process模塊的SignalTap II調(diào)試數(shù)據(jù)如圖4所示。

      圖4 SignalTap II直方圖統(tǒng)計(jì)數(shù)據(jù)處理

      然后將ram_process中的數(shù)據(jù)依次讀出,將其累加,并通過位運(yùn)算提取累加后的數(shù)據(jù)的前8位寫入ram_reference中,這樣便完成了累加和移位運(yùn)算,其SignalTap II調(diào)試數(shù)據(jù)如圖5所示。至此灰度對照表已經(jīng)完成,直方圖均衡化算法均已實(shí)現(xiàn)。

      圖5 SignalTap II生成灰度對照表

      接下來將SDRAM中讀出的數(shù)據(jù)作為ram_reference的讀地址,那么按此地址讀出的數(shù)據(jù)便是原像素點(diǎn)灰度值對應(yīng)的新的灰度值,實(shí)現(xiàn)灰度映射。如圖6所示,SDRAM一次讀出四個(gè)數(shù)據(jù),這四個(gè)數(shù)據(jù)是原圖像四個(gè)像素點(diǎn)的灰度值,將這四個(gè)數(shù)據(jù)拆分放在四個(gè)時(shí)鐘周期,分別為18、21、15、12,兩兩之間的差值為3、6、3。通過查找對照表后,這四個(gè)灰度值對應(yīng)的新的灰度值為99、109、87、74,兩兩之間的差值為10、22、13。對比之間的差值可以發(fā)現(xiàn),原本區(qū)別不大的灰度值差異變大,即前后灰度對比度變大,且灰度值分布由密集變得稀疏,直方圖均衡化由此可見一斑。

      圖6 SignalTap II查找對照表

      最后將該數(shù)據(jù)寫入rfifo中,VGA讀取rfifo中的數(shù)據(jù)便可在屏幕上顯示均衡化后的圖片。

      4.實(shí)驗(yàn)結(jié)果分析

      將原圖通過FPGA顯示在屏幕上,如圖7所示,可以發(fā)現(xiàn)圖片整體偏暗,圖片兩邊和上邊幾乎為黑色且無法分辨,右邊建筑的線條也不明顯。將均衡后的圖像與之對比,如圖8所示,可以清晰的看出圖片左邊粗糙的墻壁,以及圖片右邊的植物,還有圖片上邊的瓦片,亮暗分明。

      圖7 直方圖均衡化前的圖片

      圖8 直方圖均衡化后的圖片

      圖9 圖片處理前后直方圖

      對比前后圖片可以發(fā)現(xiàn),通過FPGA實(shí)現(xiàn)的直方圖均衡化,效果明顯,細(xì)節(jié)突出,圖片更加有層次感,更加清晰。對比前后的直方圖可以發(fā)現(xiàn),原本集中在一塊區(qū)域的灰度級分布在整個(gè)區(qū)間,如圖9所示。

      5.結(jié)論

      本文提出了一種基于FPGA實(shí)現(xiàn)直方圖均衡化的方法,通過優(yōu)化算法的實(shí)現(xiàn)方式,簡化了算法實(shí)現(xiàn)的復(fù)雜度,提高了運(yùn)算效率,節(jié)約了片上資源。實(shí)驗(yàn)結(jié)果表明,該方法高質(zhì)量的實(shí)現(xiàn)了直方圖均衡化,達(dá)到了預(yù)期的目標(biāo)。

      [1]牟新剛,周曉,鄭曉亮.基于FPGA的數(shù)字圖像處理原理及應(yīng)用[M].電子工業(yè)出版社,2017∶167-213.

      [2]Gonzalez R C,Woods R E.?dāng)?shù)字圖像處理[M].電子工業(yè)出版社,2011∶72-88.

      [3]侯大勇,曹峰,王昱煜.基于FPGA的灰度圖像直方圖均衡化實(shí)現(xiàn)[J].電子技術(shù)與軟件工程,2016(14)∶100-101.

      猜你喜歡
      對照表灰度級均衡化
      人眼可感知最多相鄰像素灰度差的全局圖像優(yōu)化方法*
      2019年成考院校招生簡章審核對照表
      基于灰度直方圖的單一圖像噪聲類型識別研究
      ISO?9001:2015與ISO?9001:2008之間的對照表
      中國纖檢(2016年3期)2016-04-07 18:48:48
      制度變遷是資源均衡化的關(guān)鍵
      直方圖均衡化技術(shù)在矢量等值填充圖中的算法及實(shí)現(xiàn)
      基于混沌加密的DCT域灰度級盲水印算法
      基于實(shí)測校正因子的實(shí)時(shí)伽馬校正算法
      本刊常用符號對照表
      本刊常用符號對照表
      莲花县| 独山县| 双江| 师宗县| 仁化县| 蓬溪县| 平泉县| 黑河市| 迭部县| 彝良县| 宜春市| 延边| 水富县| 江源县| 宁陕县| 镇平县| 鱼台县| 遂昌县| 晴隆县| 扶余县| 大埔县| 茶陵县| 临漳县| 响水县| 台安县| 太康县| 元阳县| 玉龙| 凤阳县| 汉川市| 镇康县| 台山市| 岳阳市| 丹巴县| 始兴县| 民乐县| 肇庆市| 东城区| 屏山县| 绥德县| 沙田区|