掃描二維碼
隨時(shí)隨地手機(jī)看文章
2 中值濾波的基本原理及改進(jìn)算法
2.1中值濾波的基本原理
中值濾波是由Tukey發(fā)明的一種非線性信號(hào)處理技術(shù),早期用于一維信號(hào)處理,后來很快被用到二維數(shù)字圖像平滑中,是一種有效抑制圖像噪聲,提高圖像信噪比的非線性濾波技術(shù)。它是一種鄰域運(yùn)算,類似于卷積,但計(jì)算的不是加權(quán)求和,而是把鄰域中的像素按灰度級(jí)進(jìn)行排序,然后選擇該組的中間值作為輸出像素值。與均值濾波器以及其他線性濾波器相比,中值濾波器的突出特點(diǎn)是在很好地濾除脈沖噪聲(Impulsive Noise)和椒鹽噪聲(Salt and Pepper Noise)的同時(shí),還能夠保護(hù)目標(biāo)圖像邊緣輪廓的細(xì)?。用?獎(jiǎng)硎疚??br>
g(x,y)=median{f(x-i,y-i)},(i,j)∈S (1)
式中g(shù)(x,y),f(x,y)為像素灰度值,S為模板窗口。
而中值濾波的具體實(shí)現(xiàn)過程一般為:
(1)選擇一個(gè)(2n+1)×(2n+1)的滑動(dòng)窗口(通常為3*3或者5*5),使其沿圖像數(shù)據(jù)的行或者列方向逐像素滑動(dòng)(通常為從左至右,從上到下逐行移動(dòng))。
(2)每次滑動(dòng)后,對(duì)窗口內(nèi)的像素灰度值進(jìn)行排序,用排序所得的中間值代替窗口中心位置像素的灰度值。
2.2中指濾波的改進(jìn)算法
中值濾波的算法很多,但通常數(shù)據(jù)排序量較大。需要消耗大量時(shí)間,不利于圖像處理的實(shí)時(shí)性。本文采用一種窗口大小為3*3的快速排序算法。大大降低了排序量。
為了便于說明。將3*3窗口內(nèi)的各個(gè)像素分別定義為M11,M12,M13,M21,M22,M23,M31,M32,M33。像素排列如表1。
![]() |
首先分別對(duì)窗口中的每一行計(jì)算最大值、中值、最小值,這樣一共可以得到9個(gè)數(shù)值,分別包括3個(gè)最大值、3個(gè)中值、3個(gè)最小值:
第一行的最大值:Max1=max[M11,M12,M13];
第一行的中值:Med1=med[M11,M12,M13];
第一行的最小值:Min1=min[M11,M12,M13];
依此類推:
Max2=max[M21,M22,M23];Med2=med[M21,M22,M23];Min2=min[M21,M22,M23];
Max3=max[M31,M32,M33];Med3=med[M31,M32,M33];Min3=min[M31,M32,M33];
式中,max表示取最大值,med表示取中值,min表示取最小值。
不難判斷,9個(gè)數(shù)值中。3個(gè)最大值中的最大值和3個(gè)最小值中的最小值一定是9個(gè)像素中的最大值和最小值;3個(gè)中值中的最大值至少大于5個(gè)像素:即本行中的最小值、其他2行的中值及最小值:而3個(gè)中值中的最小值至少小于5個(gè)像素:即本行中的最大值、其他2行的中值及最小值。最后,比較3個(gè)最大值中的最小值Min_of_Max,3個(gè)中值中的中值Med_of_Med,3個(gè)最小值中的最大值Max_of_Min.得到的中間值即為濾波的最后結(jié)果Med_of_nine。具體過程表示如下:
Min_of_Max=min[Max1,Max2,Max3];
Med_of_Med=med[Med1,Med2,Med3];
Max_of_Min=max[Min1,Min2,Min3];
則最后濾波結(jié)果:
Med_of_nine=med[Min_of_Max,Med_of_Med,Max_of_Min];
利用這種排序法的中值濾波運(yùn)算僅需17次比較,與傳統(tǒng)算法相比。比較次數(shù)減少了近2倍,且該算法十分適用于在FPGA上做并行處理,大大提高了濾波的速度。
3中值濾波器硬件電路設(shè)計(jì)
關(guān)鍵要完成2個(gè)模塊的設(shè)計(jì),分別是:
3.1 3*3窗口模塊
用硬件實(shí)現(xiàn)二維中值濾波,很重要的一點(diǎn)是能可靠地存儲(chǔ)實(shí)時(shí)圖像數(shù)據(jù),并且使延時(shí)最短。為了滿足實(shí)時(shí)性的要求,對(duì)圖像進(jìn)行全幀預(yù)處理,但這種全幀預(yù)處理并不是先將整幀圖像數(shù)據(jù)完全保存在存儲(chǔ)器中后再對(duì)全幀圖像數(shù)據(jù)進(jìn)行處理,而是存儲(chǔ)n-1行圖像數(shù)據(jù)后便開始處理,其中n為窗口大小。在本設(shè)計(jì)中,選用3*3窗口的中值濾波器,即n=3。這樣設(shè)計(jì)的好處是,F(xiàn)PGA可以以串行流水方式實(shí)現(xiàn)該模塊,節(jié)省了許多時(shí)間,為實(shí)時(shí)處理創(chuàng)造了有利條件。圖1給出3*3窗口中值濾波硬件框圖。
![]() |
![]() |
4 基于FPGA的處理結(jié)果
整個(gè)電路的設(shè)計(jì)使用Verilog HDL語(yǔ)言編寫,以Altera公司的Stratix II EP2S60器件為硬件平臺(tái),在Quartus II 5.1的軟件開發(fā)環(huán)境下實(shí)現(xiàn)320*256*16 bit灰度圖像的中值濾波。該圖像1場(chǎng)時(shí)間是20ms(其中場(chǎng)消隱時(shí)間約為6.35 ms),像素時(shí)鐘是6 MHz,算法占用資源如表2所示。
![]() |
![]() |
5 結(jié)束語(yǔ)
本設(shè)計(jì)方案采用了一種改進(jìn)的快速中值濾波算法,成功地在Altera公司的高性能Stratix II EP2S60上實(shí)現(xiàn)整個(gè)數(shù)字紅外圖像濾波,在保證實(shí)時(shí)性的同時(shí),使得硬件體積大為縮減,大大降低了成本,具有很強(qiáng)的實(shí)用價(jià)值。如果再結(jié)合其他濾波預(yù)處理方法,則可以進(jìn)一步提高其濾除噪聲的能力,更好地改善圖像質(zhì)量。本設(shè)計(jì)方案只能運(yùn)用于矩陣型3*3模板,對(duì)于其他類型的模板(如5*5模板、十字線型模板),需要重新進(jìn)行系統(tǒng)設(shè)計(jì)。另外。在FPGA設(shè)計(jì)中,一定要嚴(yán)格控制時(shí)序,保證時(shí)鐘有足夠的建立時(shí)間和保持時(shí)間,并保證時(shí)序的嚴(yán)格同步,電路的延時(shí)應(yīng)該盡可能小。
要問機(jī)器人公司哪家強(qiáng),波士頓動(dòng)力絕對(duì)是其中的佼佼者。近來年該公司在機(jī)器人研發(fā)方面獲得的一些成果令人印象深刻,比如其開發(fā)的機(jī)器人會(huì)后空翻,自主爬樓梯等。這不,波士頓動(dòng)力又發(fā)布了其機(jī)器人組團(tuán)跳男團(tuán)舞的新視頻,表演的機(jī)器人包括...
關(guān)鍵字: 機(jī)器人 BSP 工業(yè)機(jī)器人 現(xiàn)代汽車流體動(dòng)壓滑動(dòng)軸承為風(fēng)機(jī)發(fā)展書寫嶄新篇章 軸承滑動(dòng)層增材制造與精加工為工業(yè)級(jí)大規(guī)模生產(chǎn)鋪平道路 軸承設(shè)計(jì)從綜合性系統(tǒng)理念出發(fā) 德國(guó)施韋因富特和漢堡2022年10月17日 /美通社/ -- 舍弗勒推出了采...
關(guān)鍵字: 齒輪箱 滑動(dòng)軸承 風(fēng)力渦輪機(jī) BSP