国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

快速中值濾波算法的改進(jìn)及其FPGA實(shí)現(xiàn)*

2013-12-07 06:18:20李國(guó)燕侯向丹顧軍華陸益財(cái)范培培
電子技術(shù)應(yīng)用 2013年2期
關(guān)鍵詞:中值排序濾波

李國(guó)燕,侯向丹,顧軍華,陸益財(cái),范培培

(1.河北工業(yè)大學(xué) 電氣工程學(xué)院,天津 300401;2.河北工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與軟件學(xué)院,天津 300401)

圖像是人類(lèi)獲取外界信息的重要途徑,圖像的清晰度直接影響到人們對(duì)其的觀察以及進(jìn)一步的分析研究。圖像的采集、傳輸、存儲(chǔ)等環(huán)節(jié)通常會(huì)導(dǎo)致圖像質(zhì)量的降低。因此,為了改善圖像的質(zhì)量,必須對(duì)圖像進(jìn)行濾波、平滑等預(yù)處理操作。但是,由于實(shí)際處理的數(shù)據(jù)量巨大,預(yù)處理的過(guò)程往往達(dá)不到系統(tǒng)對(duì)實(shí)時(shí)性的要求。近年來(lái),微電子技術(shù)和超大規(guī)模的集成電路制造技術(shù)的發(fā)展,特別是FPGA的發(fā)展,為提高圖像處理系統(tǒng)各種性能提供了新的思路和方法。FPGA在設(shè)計(jì)上實(shí)現(xiàn)了硬件并行和流水線(Pipeline)技術(shù),適于模塊化設(shè)計(jì);同時(shí)其開(kāi)發(fā)周期短,系統(tǒng)易于維護(hù)和擴(kuò)展,能夠大大提高圖像數(shù)據(jù)的處理速度,滿足系統(tǒng)的實(shí)時(shí)性要求[1]。

中值濾波作為一種空域?yàn)V波技術(shù),能有效地去除脈沖噪聲和椒鹽噪聲,同時(shí)還能較好地保留圖像的邊緣信息,在圖像預(yù)處理中應(yīng)用廣泛。雖然中值濾波算法處理的數(shù)據(jù)量大,但其運(yùn)算簡(jiǎn)單,重復(fù)性強(qiáng),存在較大的并行性,可由硬件映射到FPGA架構(gòu)中[2-3]。另外,由于中值濾波算法處理后的圖像存在邊緣模糊的問(wèn)題,因此,本文對(duì)快速中值濾波算法提出了一些改進(jìn),通過(guò)加入閾值比較的環(huán)節(jié),更好地保留了圖像的細(xì)節(jié)信息。最后,基于FPGA硬件平臺(tái)實(shí)現(xiàn)了改進(jìn)的快速中值濾波算法,大大提高了圖像的處理速度。

1 傳統(tǒng)中值濾波算法及改進(jìn)

傳統(tǒng)的中值濾波算法把鄰域中的像素按灰度級(jí)進(jìn)行排序,然后選擇該組的中間值作為該鄰域的輸出值,用公式表示為:

其中,g(x,y)、f(x,y)為像素灰度值,S為模板窗口。對(duì)于一幅M×M的灰度圖像,窗口至少需要滑動(dòng)(M-2)2次,需要進(jìn)行n2(n2-1)(M2-2)/2次比較運(yùn)算。由此可見(jiàn),傳統(tǒng)的中值濾波算法存在運(yùn)算量大的問(wèn)題[4-6]。

針對(duì)傳統(tǒng)中值濾波算法的一些快速中值濾波算法已經(jīng)被提出[7-10]。參考文獻(xiàn)[7]提出了一種將3×3窗口的像素值先按列降序排序,然后再按行降序排序,最后取對(duì)角線上的元素作為模板中值輸出的快速中值濾波算法,相對(duì)于需要進(jìn)行36次比較運(yùn)算的傳統(tǒng)的中值濾波算法,這種快速中值濾波算法的比較次數(shù)明顯減少,僅為21次。參考文獻(xiàn)[8]提出了采用3×3像素的十字型中值濾波結(jié)構(gòu)模板,對(duì)快速中值濾波算法進(jìn)行改進(jìn),只需對(duì)5個(gè)像素?cái)?shù)據(jù)進(jìn)行排序,從而減少了數(shù)據(jù)比較的次數(shù),該算法的比較次數(shù)為24次。參考文獻(xiàn)[9]提出了一種先取模板各個(gè)水平行的中值,再求出這些水平行中值的中值,以此作為濾波結(jié)果的快速中值濾波算法,該算法在最壞情況下的比較次數(shù)為12次。

同時(shí),為了更好地保留圖像的細(xì)節(jié)信息,參考文獻(xiàn)[10]提出了在傳統(tǒng)的中值濾波算法中加入閾值判定的方法,即設(shè)定一個(gè)閾值TH后,按傳統(tǒng)的算法算出初始的中值,將當(dāng)前中值與模板的中心值的差的絕對(duì)值與閾值進(jìn)行比較,若判定結(jié)果大于閾值,則判定中心點(diǎn)為噪聲點(diǎn),用求的中值代替中心值,否則保留原有的中心值。

2 改進(jìn)的快速中值濾波算法及分析

為了減少圖像濾波后的誤差,提高圖像處理的速度,本文提出了一種改進(jìn)的快速中值濾波算法。采用3×3模板,以快速中值濾波算法為基礎(chǔ)來(lái)尋找中值,通過(guò)閾值約束條件,判斷中值是否為有效數(shù)據(jù)。算法的具體實(shí)現(xiàn)步驟如下:

(1)獲取大小為m×n的原圖像,對(duì)圖像加入5%的椒鹽噪聲;

(2)圖像擴(kuò)展,使其大小為(m+2)(n+2);

(3)將模板在圖像上按行列滑動(dòng),如果未到達(dá)循環(huán)結(jié)束條件,則轉(zhuǎn)到步驟(4);

(4)對(duì)模板中水平行的數(shù)據(jù)進(jìn)行排序,取每一行第2個(gè)位置上的值,然后再對(duì)3行的中值進(jìn)行排序,取其中值;

(5)判斷該中值是否為所需的有效數(shù)據(jù),將所求的中值和中心點(diǎn)值做差,將差值與事先設(shè)定的閾值TH按式(2)進(jìn)行比較;

從比較次數(shù)上分析,新的改進(jìn)算法的比較次數(shù)在最壞的情況下,也明顯少于其他算法的比較次數(shù)。由于比較次數(shù)的減少,圖像處理的效率會(huì)有很大提高。為了取得最佳閾值和在選定的閾值下評(píng)價(jià)圖像處理后的質(zhì)量,采用最小均方誤差(MMSE)指標(biāo)作為判斷的標(biāo)準(zhǔn),計(jì)算公式為:

其中,g(i,j)表示濾波后圖像像素的灰度值;f(i,j)表示原始圖像各點(diǎn)的灰度值。實(shí)驗(yàn)求得閾值TH=20時(shí),本文改進(jìn)算法的MMSE值最小,獲得最佳處理效果。

分別采用基于上述參考文獻(xiàn)的算法以及本文的算法對(duì)圖像進(jìn)行處理。各個(gè)算法MMSE的比較結(jié)果如圖1所示。

圖1 不同算法的MMSE的比較情況

由圖1可以看出本文提出的改進(jìn)算法比其他算法的MMSE值都小,能獲得較好的處理效果。圖2給出了本文改進(jìn)算法對(duì)加入5%椒鹽噪聲的圖像的處理效果。

圖2 本文改進(jìn)算法處理效果圖

結(jié)合圖1和圖2可知,增加閾值判定的算法在細(xì)節(jié)保護(hù)和去噪之間能達(dá)到一個(gè)較好的平衡點(diǎn),本文的改進(jìn)算法處理效果明顯較好。

3 算法的硬件實(shí)現(xiàn)

3.1 總體設(shè)計(jì)方案

FPGA硬件化設(shè)計(jì)遵循并行流水機(jī)制,分別采用各自獨(dú)立的處理通道,對(duì)同一段時(shí)間內(nèi)需要處理的所有任務(wù)同時(shí)進(jìn)行處理,處理時(shí)間從多個(gè)任務(wù)所需時(shí)間之和降至最慢任務(wù)所需的時(shí)間。為了便于在FPGA上實(shí)現(xiàn)改進(jìn)的中值濾波算法,本文以3×3像素模板處理512×512像素的灰度圖像為例,進(jìn)行了硬件化的設(shè)計(jì),總體設(shè)計(jì)方案主要包括比較排序模塊的設(shè)計(jì)和控制電路的設(shè)計(jì),如圖3所示。

3.2 三點(diǎn)排序模塊的設(shè)計(jì)

每個(gè)三點(diǎn)排序模塊都用了3個(gè)比較器對(duì)3行數(shù)據(jù)進(jìn)行并行比較排序。在一個(gè)時(shí)鐘周期下,每次比較3個(gè)輸入信號(hào),輸出信號(hào)為每行的中值。當(dāng)時(shí)鐘觸發(fā)下一級(jí)的比較器后,各行輸出的中值信號(hào)作為下一個(gè)排序的輸入信號(hào),最后再加入一個(gè)比較器對(duì)所得中值進(jìn)行判斷。這樣,總處理時(shí)間只是其中關(guān)鍵模塊的處理時(shí)間,處理速度是順序執(zhí)行的兩倍。

圖3 改進(jìn)的中值濾波算法實(shí)現(xiàn)總體圖

圖4 Modelsim時(shí)序仿真圖

3.3 控制電路的設(shè)計(jì)

控制電路控制著整個(gè)系統(tǒng)的運(yùn)行,是硬件設(shè)計(jì)的難點(diǎn)和重點(diǎn)。本設(shè)計(jì)的控制電路分為兩部分:

(1)控制不連續(xù)信號(hào)的輸入和數(shù)據(jù)緩存

由于圖像信號(hào)是按串行的方式輸入到系統(tǒng)中,因此需要通過(guò)控制信號(hào)使系統(tǒng)保持在并行流水的工作模式中??紤]實(shí)際工作中,圖像信號(hào)的輸入可能是不連續(xù)的,故采用FIFO緩存模塊來(lái)保存數(shù)據(jù)。當(dāng)FIFO模塊不為空時(shí),系統(tǒng)將產(chǎn)生局部時(shí)鐘使能信號(hào)來(lái)保證系統(tǒng)計(jì)算的正確性。

(2)控制圖像邊界點(diǎn)的輸出和對(duì)有效信號(hào)的選取

中值濾波算法在處理圖像時(shí),只處理圖像內(nèi)部的像素,而邊界上的像素保持不變,因此需要在FPGA系統(tǒng)中加上對(duì)邊界點(diǎn)的處理并選取有效信號(hào)的輸出,此處理由控制模塊完成。對(duì)于選定的512×512像素的圖像,其4條邊界上有2044個(gè)邊界點(diǎn),系統(tǒng)需要對(duì)這些邊界點(diǎn)進(jìn)行判定,并完成有效數(shù)據(jù)的正確輸出。

4 測(cè)試結(jié)果及分析

實(shí)驗(yàn)采用了Altera的具有高密度低成本Cyclone系列的EP2C70F896C6N芯片,利用DSP-builder11.1實(shí)現(xiàn)算法設(shè)計(jì),并通過(guò)Quartusii11.1對(duì)設(shè)計(jì)進(jìn)行調(diào)試和仿真,同時(shí)利用modelsim10.0c完成時(shí)序仿真。modelsim10.0c的仿真結(jié)果如圖4所示。

由圖4可知,實(shí)驗(yàn)數(shù)據(jù)與預(yù)計(jì)結(jié)果一致。因此,設(shè)計(jì)電路具有良好的穩(wěn)定性。本文給出了硬件實(shí)現(xiàn)不同算法的效果對(duì)比情況,如表1所示。

由表1可知,對(duì)于一幅512×512像素的圖像,本文改進(jìn)的基于FPGA的快速中值濾波算法在硬件上能達(dá)到的最高工作頻率為 231.21 MHz,處理時(shí)間約為 1.13 ms,比軟件實(shí)現(xiàn)該算法的速度快11倍;與傳統(tǒng)的中值濾波算法和參考文獻(xiàn)[7]算法的硬件結(jié)構(gòu)相比,本文改進(jìn)算法耗費(fèi)的邏輯單元和寄存器較少,占用硬件資源更少,從而達(dá)到較高的工作頻率,以滿足圖像實(shí)時(shí)處理的要求。

表1 不同算法實(shí)現(xiàn)的硬件加速比與硬件資源使用量

本文通過(guò)對(duì)快速中值濾波算法的改進(jìn),能夠減少算法排序量,更好地保護(hù)圖像的細(xì)節(jié)信息。改進(jìn)的算法具有較高的內(nèi)在并行性,易于在FPGA上實(shí)現(xiàn)。硬件實(shí)現(xiàn)的算法對(duì)圖像的處理能達(dá)到較高的工作頻率,且占用資源較少,適合圖像的實(shí)時(shí)處理。

[1]BOAS M L.Mathematical methods in the physical sciences(3rd ed)[M].John Wiley&Sons,2006.

[2]黃艷軍.基于 FPGA的數(shù)字圖像預(yù)處理算法研究[D].南京:南京理工大學(xué),2009.

[3]VINCENT O R,FOLORUNSO O.A descriptive algorithm for sobel image edge detection[C].Proceedings of Informing Science&IT Education Conference(InSITE),2009.

[4]ZEMCIK P,Hardware acceleration of graphics and imaging algorithms using FPGAs[D].Brno University of Technology:SCCG,2002.

[5]BATES G L,NOOSHABADI S.FPGA implementation of a median filter[C].Speech and Image Technologies for Computing and Telecommunications,Proceedings of IEEE,1997.

[6]萬(wàn)海軍.實(shí)時(shí)圖像處理算法研究及FPGA實(shí)現(xiàn)[D].陜西:西北農(nóng)林科技大學(xué),2008.

[7]付昱強(qiáng).基于FPGA的圖像處理的算法的研究與硬件設(shè)計(jì)[D].南昌:南昌大學(xué),2006.

[8]朱捷,朱小娟,賀明.基于 FPGA的實(shí)時(shí)圖像中值濾波設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2007,15(6):798-800.

[9]王萍,白光遠(yuǎn),唐曉燕.基于 FPGA的圖像中值濾波算法的優(yōu)化及實(shí)現(xiàn)[J].電子與電腦,2009(10):94-96.

[10]李飛飛,劉偉寧,王艷華.改進(jìn)的中值濾波算法及其 FPGA快速實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2009,35(14):175-177.

猜你喜歡
中值排序濾波
排序不等式
恐怖排序
節(jié)日排序
刻舟求劍
兒童繪本(2018年5期)2018-04-12 16:45:32
Lagrange中值定理的巧妙應(yīng)用
微分中值定理教法研討
后中值波電流脈沖MIG焊工藝
RTS平滑濾波在事后姿態(tài)確定中的應(yīng)用
基于線性正則變換的 LMS 自適應(yīng)濾波
基于隨機(jī)加權(quán)估計(jì)的Sage自適應(yīng)濾波及其在導(dǎo)航中的應(yīng)用
蓬莱市| 沽源县| 鱼台县| 新邵县| 克东县| 潜山县| 墨江| 玉环县| 文成县| 中超| 丽江市| 光泽县| 喀什市| 固镇县| 黄大仙区| 射洪县| 略阳县| 古交市| 聊城市| 贵州省| 宜宾市| 华宁县| 四川省| 乐业县| 孟津县| 双鸭山市| 松阳县| 长治县| 都安| 玛沁县| 孟津县| 沁源县| 通许县| 贡山| 龙南县| 顺平县| 池州市| 太康县| 蓬安县| 仁怀市| 德令哈市|