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

?

基于FPGA數(shù)字圖像處理算法研究

2014-10-16 00:53吳明美王妍王晴劉樹昌
科技資訊 2014年2期
關(guān)鍵詞:圖像處理

吳明美++王妍++王晴++劉樹昌

摘 要:由于數(shù)字圖像的廣泛應(yīng)用,人們對于圖像處理的實時性要求也越來越高,僅依靠軟件方法實現(xiàn)的圖像處理已經(jīng)無法滿足要求,因此,F(xiàn)PGA被越來越多的應(yīng)用于圖像處理中。本文對圖像處理的算法進(jìn)行了分析,并利用Matlab軟件進(jìn)行了仿真。并將合適的算法通過Verilog語言進(jìn)行實現(xiàn),再利用quartusII軟件進(jìn)行仿真,最后應(yīng)用于實際的圖像處理系統(tǒng)中。

關(guān)鍵詞:圖像處理 FPGA Matlab

中圖分類號:TP391.41 文獻(xiàn)標(biāo)識碼:A 文章編號:1672-3791(2014)01(b)-0005-02

The Research of FPGA-based Digital Image Processing Algorithms

Wu Mingmei Wang Yan Wang Qing Liu Shuchang

(College of Electrical and Information Engineering,Changchun University of Science and Technology,Changchun Jilin,130022,China)

Abstract:Due to the extensive application of digital image, the requirements of real-time image processing are also getting higher and higher,the image processing which only to rely on software implementation has been unable to meet the requirements, so FPGA is increasingly used in image processing. In this paper, image processing algorithms are analyzed and simulated through Matlab software.And the appropriate algorithm implemented by verilog language, and then use quartusII simulation software, the last applied to the actual image processing system.

Key Words:Image Processing;FPGA;Matlab

在圖像采集和處理過程中,由于存在噪聲及干擾,使得獲取的圖像產(chǎn)生畸變等缺陷。通常采用軟件算法對圖像進(jìn)行濾波、去噪,再進(jìn)行存儲和顯示。由于圖像處理的基本算法已經(jīng)十分成熟,運算復(fù)雜性相對固定,所以在保證精度的條件下對算法進(jìn)行優(yōu)化十分困難。因此,對于實時性要求較高的系統(tǒng),可以利用FPGA技術(shù)實現(xiàn)圖像處理算法,大幅度提高系統(tǒng)處理速度。針對上述問題,本文通過Matlab進(jìn)行算法對比和分析,選擇合適的處理算法,用硬件實現(xiàn)算法的設(shè)計,完成圖像的基本處理,實現(xiàn)了數(shù)字圖像的濾波、去噪。

1 系統(tǒng)總體設(shè)計

基于FPGA的數(shù)字圖像處理系統(tǒng)由數(shù)字CCD相機、A/D轉(zhuǎn)換芯片、數(shù)據(jù)緩存模塊、圖像處理模塊、整體控制模塊、D/A轉(zhuǎn)換芯片和圖像顯示等部分組成,其中數(shù)據(jù)緩存模塊、圖像處理模塊和整體控制模塊在FPGA中實現(xiàn)。(如圖1)

本文設(shè)計方案是以FPGA圖像處理模塊為核心,通過它完成圖像平滑、濾波等基本操作。由CCD相機對目標(biāo)成像,經(jīng)A/D轉(zhuǎn)換芯片將獲得的模擬圖像信號轉(zhuǎn)化為數(shù)字信號,而后送入FPGA中進(jìn)行濾波去噪處理,在FPGA中完成圖像處理工作后,經(jīng)由D/A轉(zhuǎn)換芯片轉(zhuǎn)化為模擬信號為后續(xù)的圖像顯示做準(zhǔn)備。

系統(tǒng)所選CCD相機輸出模式為PAL(Phase Alteration Line)制式,A/D轉(zhuǎn)換芯片型號是SAA7113,SAA7113是飛利浦公司視頻解碼系列芯片的一種,主要作用是把輸入的模擬視頻信號解碼成標(biāo)準(zhǔn)的“VPO”數(shù)字信號。經(jīng)過轉(zhuǎn)換后的數(shù)字信號可以直接通過FPGA芯片進(jìn)行處理,存儲過程采取乒乓存儲操作,乒乓機制就是由兩塊SDRAM組成的接收路徑,一塊進(jìn)行數(shù)據(jù)接收時,圖像處理模塊處理另一塊中的數(shù)據(jù),而不用等待當(dāng)前數(shù)據(jù)接收完后再處理,這樣做能夠提高數(shù)據(jù)吞吐量。處理后的數(shù)字視頻信號送入D/A芯片,D/A芯片型號為ADV7128,這是一款高速、10位視頻數(shù)模轉(zhuǎn)換芯片。經(jīng)過轉(zhuǎn)換后的視頻信號送入顯示模塊進(jìn)行顯示。

2 基本算法分析

根據(jù)噪聲服從的分布進(jìn)行分類,噪聲大致可以分成椒鹽噪聲,高斯噪聲和泊松噪聲3類,針對不同的噪聲類別有不同的圖像濾波方法。常用的濾波方法主要包括均值濾波、中值濾波、維納濾波和自適應(yīng)濾波,如針對高斯噪聲最常用的是均值濾波,針對椒鹽噪聲最常用的是中值濾波,此外,還有其他改進(jìn)濾波法等。

2.1 均值濾波方法

均值濾波方法又稱為鄰域平均法,是線性濾波中最常用的方法,這種方法的基本思想是對待處理的當(dāng)前像素,選擇一個窗口,該窗口為其近鄰的若干像素組成,用窗口中所有像素的均值來代替原像素點灰度值的方法。具體可以表示如下:

(1)

其中,(x,y)為當(dāng)前像素值,u(x,y)為處理后的灰度值,m為模板中包括當(dāng)前像素在內(nèi)的像素個數(shù)。

考慮到數(shù)據(jù)分布的平衡性,濾波窗口可以選取方形、十字形和圓形,實際濾波中,一般選擇3×3或5×5的方形窗口。對于用不同尺寸的濾波器模板進(jìn)行濾波操作的圖像進(jìn)行比較,隨著所使用的濾波器尺寸的增大,消除噪聲的效果得到了增強;但是,圖像的細(xì)節(jié)銳化程度相應(yīng)降低,圖像變得模糊起來。

2.2 中值濾波方法endprint

中值濾波作為一種常用的圖像預(yù)處理方法,能夠有效地去除噪聲,平滑圖像,與均值濾波以及其他線性濾波器相比,它能夠在去噪的同時不模糊圖像的邊緣,較好地保持圖像的清晰度。它是一種鄰域運算,把鄰域中的像素按灰度級進(jìn)行排序,然后選擇該組的中間值作為輸出像素值,中值濾波可定義為:

g(x,y))=median{f(x-i,y-j}(i,j)∈W (2)

中值濾波與均值濾波的不同之處在于,均值濾波器的輸出是由平均值決定的,而中值濾波器的輸出像素是由鄰域圖像的中間值決定的,所以中值濾波對極限像素值遠(yuǎn)不如平均值那么敏感,從而可以消除孤立的噪聲點,又可以讓圖像產(chǎn)生較少的模糊。

通過以下對比圖,可以看到,中值濾波不像均值濾波器那樣是圖像的邊界模糊,它在衰減噪聲的同時,使圖像的細(xì)節(jié)清楚。(如圖2)

2.3 直方圖均衡化

直方圖均衡化是常用的灰度數(shù)字圖像增強方法。該方法在處理時只需要將當(dāng)前的灰度分布重新均衡地分布于整個灰度區(qū)間即可,其通用性較好,對任意圖像均可獲得不錯的處理效果。

在某些應(yīng)用中,可能只需要對圖像的某個部分進(jìn)行均衡化,為此,可以用對比度自適應(yīng)函數(shù)實現(xiàn)自適應(yīng)直方圖均衡化。(如圖3)

3 中值濾波算法的FPGA實現(xiàn)

由上章可以看出,模板中值濾波器具有較好的濾波效果,因此,接下來我們主要來介紹一下3×3模板中值濾波器的實現(xiàn)方法。

3.1 3×3模板的實現(xiàn)

由上述各種算法的對比我們可以看出利用3×3模板實現(xiàn)的圖像濾波、邊緣檢測和圖像銳化的效果較好。本文首先介紹一下3×3模板的實現(xiàn)方法。本設(shè)計中,其主要由幾個模塊組成,分別是data_gen,wr_ctr_mdf,line_buffer和rd_ctr_mdf模塊。

其具體過程是輸入的數(shù)據(jù)先進(jìn)入到data_gen模塊中,該模塊用來將數(shù)據(jù)轉(zhuǎn)換為3行3列的形式,并形成extra_vde信號,該信號控制下一級wr_ctr_mdf模塊,當(dāng)超過該行所需要的數(shù)據(jù)時,該模塊產(chǎn)生寫控制信號,將輸入的數(shù)據(jù)送入line_buffer中緩存,然后當(dāng)line_buffer內(nèi)存入的數(shù)據(jù)為兩行兩列時,讀控制模塊能產(chǎn)生讀控制信號,從line_buffer內(nèi)將數(shù)據(jù)讀出,這時3行3列的數(shù)據(jù)同時輸出,產(chǎn)生3×3模塊,送入到下級進(jìn)行處理。

3.2 中值濾波器的實現(xiàn)

中值濾波器能夠有效地去除噪聲,平滑圖像,與均值濾波以及其他線性濾波器相比,它能夠在去噪的同時不模糊圖像的邊緣,較好地保持圖像的清晰度。通過FPGA可以實現(xiàn)中值濾波模塊,它是對3×3方形窗生成的9個像素值輸出數(shù)據(jù)進(jìn)行中值濾波處理的模塊。正常情況下,經(jīng)過兩兩對比挑選出中值要經(jīng)過30次的比較,也就是對3×3窗生成模塊的9個數(shù)據(jù)輸出要經(jīng)過9個時鐘周期的延遲才能得到中值濾波處理后的中值輸出。因此為了提高處理速度,減少資源浪費,提出了一種快速中值濾波算法,只需進(jìn)行19次比較就能求得中值,大大加快了處理的速度??焖僦兄禐V波算法流程圖如圖4所示。

具體過程為:先通過A1、A2、A3篩選出各自單元輸入的三個數(shù)據(jù)的最大值、中值和最小值,然后將其各自輸入到B1、B2、B3中,再輸出中值到C內(nèi),經(jīng)過比較,挑選出中值,這就是輸入9個數(shù)據(jù)的中值,這樣只需進(jìn)行19次比較就可的到中值。

4 結(jié)論

本文重點討論了圖像處理中常用的幾種算法,并利用Matlab對各種算法進(jìn)行了仿真,通過仿真前后圖像的對比,可以看出基于模板的中值濾波的處理效果較好,因此利用FPGA設(shè)計了基于3×3窗口的中值濾波算法。(如圖5)

由上圖可以看出,圖像質(zhì)量有了明顯的提升,因此,3×3中值濾波算法對濾除噪聲具有較好的效果。

參考文獻(xiàn)

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

[2] 吳艷.基于FPGA的數(shù)字圖像處理基本算法研究與實現(xiàn)[D].哈爾濱工業(yè)大學(xué),2008:34-43.

[3] 趙海麗,劉艷霞,陳智強,等.數(shù)字視頻圖像傳輸中基于FPGA的圖像去噪方法[J].吉林大學(xué)學(xué)報:信息科學(xué)版,2011(10):2-3.

[4] 王彬.MATLAB數(shù)字信號處理[M].北京:機械工業(yè)出版社,2010:53-125

[5] 夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計教程[M].北京:北京航空航天大學(xué)出版社,2008:20-120.

[6] 高展宏,王強.多媒體處理FPGA實現(xiàn)[M].北京:電子工業(yè)出版社,2010:180-228.endprint

中值濾波作為一種常用的圖像預(yù)處理方法,能夠有效地去除噪聲,平滑圖像,與均值濾波以及其他線性濾波器相比,它能夠在去噪的同時不模糊圖像的邊緣,較好地保持圖像的清晰度。它是一種鄰域運算,把鄰域中的像素按灰度級進(jìn)行排序,然后選擇該組的中間值作為輸出像素值,中值濾波可定義為:

g(x,y))=median{f(x-i,y-j}(i,j)∈W (2)

中值濾波與均值濾波的不同之處在于,均值濾波器的輸出是由平均值決定的,而中值濾波器的輸出像素是由鄰域圖像的中間值決定的,所以中值濾波對極限像素值遠(yuǎn)不如平均值那么敏感,從而可以消除孤立的噪聲點,又可以讓圖像產(chǎn)生較少的模糊。

通過以下對比圖,可以看到,中值濾波不像均值濾波器那樣是圖像的邊界模糊,它在衰減噪聲的同時,使圖像的細(xì)節(jié)清楚。(如圖2)

2.3 直方圖均衡化

直方圖均衡化是常用的灰度數(shù)字圖像增強方法。該方法在處理時只需要將當(dāng)前的灰度分布重新均衡地分布于整個灰度區(qū)間即可,其通用性較好,對任意圖像均可獲得不錯的處理效果。

在某些應(yīng)用中,可能只需要對圖像的某個部分進(jìn)行均衡化,為此,可以用對比度自適應(yīng)函數(shù)實現(xiàn)自適應(yīng)直方圖均衡化。(如圖3)

3 中值濾波算法的FPGA實現(xiàn)

由上章可以看出,模板中值濾波器具有較好的濾波效果,因此,接下來我們主要來介紹一下3×3模板中值濾波器的實現(xiàn)方法。

3.1 3×3模板的實現(xiàn)

由上述各種算法的對比我們可以看出利用3×3模板實現(xiàn)的圖像濾波、邊緣檢測和圖像銳化的效果較好。本文首先介紹一下3×3模板的實現(xiàn)方法。本設(shè)計中,其主要由幾個模塊組成,分別是data_gen,wr_ctr_mdf,line_buffer和rd_ctr_mdf模塊。

其具體過程是輸入的數(shù)據(jù)先進(jìn)入到data_gen模塊中,該模塊用來將數(shù)據(jù)轉(zhuǎn)換為3行3列的形式,并形成extra_vde信號,該信號控制下一級wr_ctr_mdf模塊,當(dāng)超過該行所需要的數(shù)據(jù)時,該模塊產(chǎn)生寫控制信號,將輸入的數(shù)據(jù)送入line_buffer中緩存,然后當(dāng)line_buffer內(nèi)存入的數(shù)據(jù)為兩行兩列時,讀控制模塊能產(chǎn)生讀控制信號,從line_buffer內(nèi)將數(shù)據(jù)讀出,這時3行3列的數(shù)據(jù)同時輸出,產(chǎn)生3×3模塊,送入到下級進(jìn)行處理。

3.2 中值濾波器的實現(xiàn)

中值濾波器能夠有效地去除噪聲,平滑圖像,與均值濾波以及其他線性濾波器相比,它能夠在去噪的同時不模糊圖像的邊緣,較好地保持圖像的清晰度。通過FPGA可以實現(xiàn)中值濾波模塊,它是對3×3方形窗生成的9個像素值輸出數(shù)據(jù)進(jìn)行中值濾波處理的模塊。正常情況下,經(jīng)過兩兩對比挑選出中值要經(jīng)過30次的比較,也就是對3×3窗生成模塊的9個數(shù)據(jù)輸出要經(jīng)過9個時鐘周期的延遲才能得到中值濾波處理后的中值輸出。因此為了提高處理速度,減少資源浪費,提出了一種快速中值濾波算法,只需進(jìn)行19次比較就能求得中值,大大加快了處理的速度。快速中值濾波算法流程圖如圖4所示。

具體過程為:先通過A1、A2、A3篩選出各自單元輸入的三個數(shù)據(jù)的最大值、中值和最小值,然后將其各自輸入到B1、B2、B3中,再輸出中值到C內(nèi),經(jīng)過比較,挑選出中值,這就是輸入9個數(shù)據(jù)的中值,這樣只需進(jìn)行19次比較就可的到中值。

4 結(jié)論

本文重點討論了圖像處理中常用的幾種算法,并利用Matlab對各種算法進(jìn)行了仿真,通過仿真前后圖像的對比,可以看出基于模板的中值濾波的處理效果較好,因此利用FPGA設(shè)計了基于3×3窗口的中值濾波算法。(如圖5)

由上圖可以看出,圖像質(zhì)量有了明顯的提升,因此,3×3中值濾波算法對濾除噪聲具有較好的效果。

參考文獻(xiàn)

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

[2] 吳艷.基于FPGA的數(shù)字圖像處理基本算法研究與實現(xiàn)[D].哈爾濱工業(yè)大學(xué),2008:34-43.

[3] 趙海麗,劉艷霞,陳智強,等.數(shù)字視頻圖像傳輸中基于FPGA的圖像去噪方法[J].吉林大學(xué)學(xué)報:信息科學(xué)版,2011(10):2-3.

[4] 王彬.MATLAB數(shù)字信號處理[M].北京:機械工業(yè)出版社,2010:53-125

[5] 夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計教程[M].北京:北京航空航天大學(xué)出版社,2008:20-120.

[6] 高展宏,王強.多媒體處理FPGA實現(xiàn)[M].北京:電子工業(yè)出版社,2010:180-228.endprint

中值濾波作為一種常用的圖像預(yù)處理方法,能夠有效地去除噪聲,平滑圖像,與均值濾波以及其他線性濾波器相比,它能夠在去噪的同時不模糊圖像的邊緣,較好地保持圖像的清晰度。它是一種鄰域運算,把鄰域中的像素按灰度級進(jìn)行排序,然后選擇該組的中間值作為輸出像素值,中值濾波可定義為:

g(x,y))=median{f(x-i,y-j}(i,j)∈W (2)

中值濾波與均值濾波的不同之處在于,均值濾波器的輸出是由平均值決定的,而中值濾波器的輸出像素是由鄰域圖像的中間值決定的,所以中值濾波對極限像素值遠(yuǎn)不如平均值那么敏感,從而可以消除孤立的噪聲點,又可以讓圖像產(chǎn)生較少的模糊。

通過以下對比圖,可以看到,中值濾波不像均值濾波器那樣是圖像的邊界模糊,它在衰減噪聲的同時,使圖像的細(xì)節(jié)清楚。(如圖2)

2.3 直方圖均衡化

直方圖均衡化是常用的灰度數(shù)字圖像增強方法。該方法在處理時只需要將當(dāng)前的灰度分布重新均衡地分布于整個灰度區(qū)間即可,其通用性較好,對任意圖像均可獲得不錯的處理效果。

在某些應(yīng)用中,可能只需要對圖像的某個部分進(jìn)行均衡化,為此,可以用對比度自適應(yīng)函數(shù)實現(xiàn)自適應(yīng)直方圖均衡化。(如圖3)

3 中值濾波算法的FPGA實現(xiàn)

由上章可以看出,模板中值濾波器具有較好的濾波效果,因此,接下來我們主要來介紹一下3×3模板中值濾波器的實現(xiàn)方法。

3.1 3×3模板的實現(xiàn)

由上述各種算法的對比我們可以看出利用3×3模板實現(xiàn)的圖像濾波、邊緣檢測和圖像銳化的效果較好。本文首先介紹一下3×3模板的實現(xiàn)方法。本設(shè)計中,其主要由幾個模塊組成,分別是data_gen,wr_ctr_mdf,line_buffer和rd_ctr_mdf模塊。

其具體過程是輸入的數(shù)據(jù)先進(jìn)入到data_gen模塊中,該模塊用來將數(shù)據(jù)轉(zhuǎn)換為3行3列的形式,并形成extra_vde信號,該信號控制下一級wr_ctr_mdf模塊,當(dāng)超過該行所需要的數(shù)據(jù)時,該模塊產(chǎn)生寫控制信號,將輸入的數(shù)據(jù)送入line_buffer中緩存,然后當(dāng)line_buffer內(nèi)存入的數(shù)據(jù)為兩行兩列時,讀控制模塊能產(chǎn)生讀控制信號,從line_buffer內(nèi)將數(shù)據(jù)讀出,這時3行3列的數(shù)據(jù)同時輸出,產(chǎn)生3×3模塊,送入到下級進(jìn)行處理。

3.2 中值濾波器的實現(xiàn)

中值濾波器能夠有效地去除噪聲,平滑圖像,與均值濾波以及其他線性濾波器相比,它能夠在去噪的同時不模糊圖像的邊緣,較好地保持圖像的清晰度。通過FPGA可以實現(xiàn)中值濾波模塊,它是對3×3方形窗生成的9個像素值輸出數(shù)據(jù)進(jìn)行中值濾波處理的模塊。正常情況下,經(jīng)過兩兩對比挑選出中值要經(jīng)過30次的比較,也就是對3×3窗生成模塊的9個數(shù)據(jù)輸出要經(jīng)過9個時鐘周期的延遲才能得到中值濾波處理后的中值輸出。因此為了提高處理速度,減少資源浪費,提出了一種快速中值濾波算法,只需進(jìn)行19次比較就能求得中值,大大加快了處理的速度??焖僦兄禐V波算法流程圖如圖4所示。

具體過程為:先通過A1、A2、A3篩選出各自單元輸入的三個數(shù)據(jù)的最大值、中值和最小值,然后將其各自輸入到B1、B2、B3中,再輸出中值到C內(nèi),經(jīng)過比較,挑選出中值,這就是輸入9個數(shù)據(jù)的中值,這樣只需進(jìn)行19次比較就可的到中值。

4 結(jié)論

本文重點討論了圖像處理中常用的幾種算法,并利用Matlab對各種算法進(jìn)行了仿真,通過仿真前后圖像的對比,可以看出基于模板的中值濾波的處理效果較好,因此利用FPGA設(shè)計了基于3×3窗口的中值濾波算法。(如圖5)

由上圖可以看出,圖像質(zhì)量有了明顯的提升,因此,3×3中值濾波算法對濾除噪聲具有較好的效果。

參考文獻(xiàn)

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

[2] 吳艷.基于FPGA的數(shù)字圖像處理基本算法研究與實現(xiàn)[D].哈爾濱工業(yè)大學(xué),2008:34-43.

[3] 趙海麗,劉艷霞,陳智強,等.數(shù)字視頻圖像傳輸中基于FPGA的圖像去噪方法[J].吉林大學(xué)學(xué)報:信息科學(xué)版,2011(10):2-3.

[4] 王彬.MATLAB數(shù)字信號處理[M].北京:機械工業(yè)出版社,2010:53-125

[5] 夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計教程[M].北京:北京航空航天大學(xué)出版社,2008:20-120.

[6] 高展宏,王強.多媒體處理FPGA實現(xiàn)[M].北京:電子工業(yè)出版社,2010:180-228.endprint

猜你喜歡
圖像處理
視覺系統(tǒng)在發(fā)動機涂膠的應(yīng)用
“課程思政”視域下職業(yè)學(xué)?!秷D像處理》課程教學(xué)改革實踐
構(gòu)建《Photoshop圖像處理》課程思政實踐教學(xué)路徑的探索
基于圖像處理與卷積神經(jīng)網(wǎng)絡(luò)的零件識別
基于新一代信息技術(shù)的Photoshop圖像處理課程開發(fā)與建設(shè)
改则县| 武汉市| 石首市| 崇义县| 泰来县| 浑源县| 和硕县| 民县| 措美县| 调兵山市| 师宗县| 奎屯市| 南汇区| 灌云县| 广德县| 罗山县| 长寿区| 昌宁县| 英山县| 普宁市| 台山市| 巴东县| 郓城县| 光泽县| 扎兰屯市| 天水市| 加查县| 永顺县| 丰县| 拉萨市| 无棣县| 巧家县| 连江县| 岚皋县| 宜丰县| 自贡市| 庆城县| 申扎县| 民权县| 阿勒泰市| 历史|