基于FPGA的灰度形態(tài)學(xué)濾波器實現(xiàn)
摘 要: 闡述了灰度形態(tài)學(xué)濾波的原理和基本操作,給出了3×3結(jié)構(gòu)元素灰度形態(tài)學(xué)濾波器的硬件結(jié)構(gòu),詳細(xì)描述了該濾波器在Xilinx公司的XC2S400E芯片上實現(xiàn)的過程和仿真的方法,并說明了需要注意的問題。
數(shù)學(xué)形態(tài)學(xué)濾波是數(shù)字圖像處理和計算機視覺研究中的一種新方法,已廣泛應(yīng)用于計算機視覺、圖像處理、視覺檢測、紋理和場景分析等方面。上述這些應(yīng)用都有時間限制,要求實時處理。數(shù)學(xué)形態(tài)學(xué)濾波作為一種非線性濾波技術(shù),其理論基礎(chǔ)是集合論,具有天然的并行結(jié)構(gòu),便于硬件電路實現(xiàn)[1]。但形態(tài)學(xué)濾波的硬件實現(xiàn)是以犧牲硬件資源為代價的。對于一幅較大的灰度圖像,如果采用常規(guī)器件實現(xiàn),硬件結(jié)構(gòu)會相當(dāng)龐大。
隨著微電子技術(shù)的發(fā)展,現(xiàn)場可編程門陣列(Field Program Gates Array,FPGA)器件已經(jīng)朝著高密度、低壓、低功耗的方向發(fā)展。由于FPGA芯片門數(shù)不斷增加,PLL/DLL、Distributed RAM、Block RAM等片內(nèi)資源以及設(shè)計所需的IP庫越來越豐富,所有這些使得基于FPGA的數(shù)學(xué)形態(tài)學(xué)濾波器實現(xiàn)成為可能。本文綜合考慮了數(shù)學(xué)形態(tài)學(xué)濾波器的并行特性和FPGA器件的特點,在Xilinx公司的XC2S400E芯片上實現(xiàn)了灰度圖像的開操作形態(tài)學(xué)濾波器。
1 灰度形態(tài)學(xué)濾波基本知識[2]
數(shù)學(xué)形態(tài)學(xué)是一種數(shù)字圖像處理的新方法,其研究的主要目的在于描述圖像的基本結(jié)構(gòu)和特征,主要內(nèi)容是在積分幾何和隨機集合論的基礎(chǔ)上,設(shè)計一整套變換、概念和算法,以描述圖像的各個象素之間的關(guān)系。它的基本思想是用具有一定形態(tài)的結(jié)構(gòu)元去度量和提取圖像中的對應(yīng)形態(tài)以達(dá)到對圖像分析和識別的目的。形態(tài)學(xué)的應(yīng)用可以簡化圖像數(shù)據(jù),保持它們基本的形狀特性,并除去不相干的結(jié)構(gòu)。
形態(tài)學(xué)的基本運算有4種:膨脹、腐蝕、開和閉?;叶葓D像的腐蝕和膨脹過程可直接從圖像及結(jié)構(gòu)元素的灰度級函數(shù)計算出來。對圖像中的某一點f(x,y),灰度形態(tài)學(xué)腐蝕運算的定義為:
灰度形態(tài)膨脹即以結(jié)構(gòu)元素g(i,j)為模板,搜尋圖像在結(jié)構(gòu)基元大小范圍內(nèi)的灰度和的極大值。腐蝕運算過程則是以結(jié)構(gòu)元素g(i,j)為模板,搜尋圖像在結(jié)構(gòu)基元大小范圍內(nèi)的灰度差的極小值。灰度的形態(tài)膨脹和形態(tài)腐蝕運算的表達(dá)式與圖像處理中的卷積積分非常相似(即以和、差代替連乘,用最小、最大運算代替求總和)。
灰度形態(tài)學(xué)開運算的定義為:
開運算是采用相同的結(jié)構(gòu)元先做腐蝕再做膨脹的迭代運算。閉運算是采用相同的結(jié)構(gòu)元先做膨脹再做腐蝕的迭代運算。開運算和閉運算的基本作用是對圖像進行平滑處理:開運算可以去掉圖像中的一些孤立子域和毛刺,閉運算可以填充一些小洞和將2個鄰近的目標(biāo)連接起來。
評論