131 1300 0010
其他
當(dāng)前位置: 首頁(yè)>> 元件技術(shù)>>其他>>
  • 導(dǎo)航欄目
  • 二極管
  • 整流橋
  • MOS管
  • 其他
  • 采用FPGA實(shí)現(xiàn)圖像平滑處理
    采用FPGA實(shí)現(xiàn)圖像平滑處理
  • 采用FPGA實(shí)現(xiàn)圖像平滑處理
  •   發(fā)布日期: 2019-07-08  瀏覽次數(shù): 1,244

    1系統(tǒng)概述

    如圖所示,這是整個(gè)視頻采集系統(tǒng)的原理框圖。上電初始,FPGA需要通過(guò)IIC接口對(duì)CMOS Sensor進(jìn)行寄存器初始化配置。這些初始化的基本參數(shù),即初始化地址對(duì)應(yīng)的初始化數(shù)據(jù)都存儲(chǔ)在一個(gè)預(yù)先配置好的FPGA片內(nèi)ROM中。在初始化配置完成后,CMOS Sensor就能夠持續(xù)輸出標(biāo)準(zhǔn)RGB的視頻數(shù)據(jù)流,F(xiàn)PGA通過(guò)對(duì)其同步信號(hào),如時(shí)鐘、行頻和場(chǎng)頻進(jìn)行檢測(cè),從而從數(shù)據(jù)總線(xiàn)上實(shí)時(shí)的采集圖像數(shù)據(jù)。MT9V034攝像頭默認(rèn)初始化數(shù)據(jù)就能輸出正常的視頻流,因此FPGA中實(shí)際上未作任何IIC初始化配置。

     

    在FPGA內(nèi)部,采集到的視頻數(shù)據(jù)先通過(guò)一個(gè)FIFO,將原本25MHz頻率下同步的數(shù)據(jù)流轉(zhuǎn)換到50MHz的頻率下。接著將這個(gè)數(shù)據(jù)再送入寫(xiě)DDR3緩存的異步FIFO中,這個(gè)FIFO中的數(shù)據(jù)一旦達(dá)到一定數(shù)量,就會(huì)寫(xiě)入DDR3中。與此同時(shí),讀取DDR3中緩存的圖像數(shù)據(jù),緩存到FIFO中,并最終送往LCD驅(qū)動(dòng)模塊進(jìn)行顯示。LCD驅(qū)動(dòng)模塊不斷的發(fā)出讀圖像數(shù)據(jù)的請(qǐng)求,并驅(qū)動(dòng)液晶顯示器顯示視頻圖像。

    本實(shí)例除了前面提到對(duì)原始圖像做DDR3緩存和顯示,還會(huì)在原始圖像緩存到DDR3之前,另外做圖像的多行緩存和平滑處理運(yùn)算,獲得新的平滑后的圖像流,這個(gè)圖像流也寫(xiě)入到DDR3中。根據(jù)LCD顯示模塊的請(qǐng)求,讀取DDR3中處理后的圖像進(jìn)行顯示。最終在VGA液晶顯示器上,可以看到左側(cè)圖像是原始的圖像,右側(cè)圖像是經(jīng)過(guò)平滑處理后的圖像。

    采用FPGA實(shí)現(xiàn)圖像平滑處理

    2圖像平滑與濾波

           2.1 基本概念

    從統(tǒng)計(jì)學(xué)的觀點(diǎn)來(lái)看,凡是統(tǒng)計(jì)特征不隨時(shí)間變化的噪聲稱(chēng)為平穩(wěn)噪聲,而統(tǒng)計(jì)特征隨

    時(shí)間變化的噪聲稱(chēng)為非平穩(wěn)噪聲。幅值基本相同,但是噪聲出現(xiàn)的位置是隨機(jī)的,稱(chēng)為椒鹽

    噪聲;如果噪聲的幅值是隨機(jī)的,根據(jù)幅值大小的分布,有高斯型和瑞利型兩種,分別稱(chēng)為

    高斯噪聲和瑞利噪聲。

    圖像濾波,即在盡量保留圖像細(xì)節(jié)特征的條件下對(duì)目標(biāo)圖像的噪聲進(jìn)行抑制,是圖像預(yù)

    處理中不可缺少的操作,其處理效果的好壞將直接影響到后續(xù)圖像處理和分析的有效性和可

    靠性。

    消除圖像中的噪聲成分叫作圖像的平滑化或?yàn)V波操作。信號(hào)或圖像的能量大部分集中在

    幅度譜的低頻和中頻段是很常見(jiàn)的,而在較高頻段,感興趣的信息經(jīng)常被噪聲淹沒(méi)。因此一

    個(gè)能降低高頻成分幅度的濾波器就能夠減弱噪聲的影響。

    圖像濾波的目的有兩個(gè),一是抽出對(duì)象的特征作為圖像識(shí)別的特征模式;另一個(gè)是為適應(yīng)圖像處理的要求,消除圖像數(shù)字化時(shí)所混入的噪聲。而對(duì)濾波處理的要求也有兩條,一是不能損壞圖像的輪廓及邊緣等重要信息;二是使圖像清晰視覺(jué)效果好。

    平滑濾波是低頻增強(qiáng)的空間域?yàn)V波技術(shù)。它的目的有兩類(lèi):一類(lèi)是模糊;另一類(lèi)是消除

    噪音??臻g域的平滑濾波一般采用簡(jiǎn)單平均法進(jìn)行,就是求鄰近像元點(diǎn)的平均亮度值。鄰域的大小與平滑的效果直接相關(guān),鄰域越大平滑的效果越好,但鄰域過(guò)大,平滑會(huì)使邊緣信息損失的越大,從而使輸出的圖像變得模糊,因此需合理選擇鄰域的大小。

    關(guān)于濾波器,一種形象的比喻法是:我們可以把濾波器想象成一個(gè)包含加權(quán)系數(shù)的窗口,

    當(dāng)使用這個(gè)濾波器平滑處理圖像時(shí),就把這個(gè)窗口放到圖像之上,透過(guò)這個(gè)窗口來(lái)看我們得

    到的圖像。舉一個(gè)濾波在我們生活中的應(yīng)用:美顏的磨皮功能。如果將我們臉上坑坑洼洼比作是噪聲的話(huà),那么濾波算法就是來(lái)取出這些噪聲,使我們自拍的皮膚看起來(lái)很光滑。

    2.2 濾波算法

    各種不同的濾波算法如下:

    •限幅濾波法(又稱(chēng)程序判斷濾波法)

    • 中位值濾波法

    • 算術(shù)平均濾波法

    • 高斯濾波法

    • 遞推平均濾波法(又稱(chēng)滑動(dòng)平均濾波法)

    • 中位值平均濾波法(又稱(chēng)防脈沖干擾平均濾波法)

    • 限幅平均濾波法

    • 一階滯后濾波法

    • 加權(quán)遞推平均濾波法

    • 消抖濾波法

    • 限幅消抖濾波法

    •卡爾曼濾波(非擴(kuò)展卡爾曼)

    2.3 均值濾波

    均值濾波器是圖像處理中一種常見(jiàn)的濾波器,它主要應(yīng)用于平滑噪聲。它的原理主要是利用某像素點(diǎn)周邊像素的平均值來(lái)達(dá)到平滑噪聲的效果。

    例如,1~8像素是(x,y)點(diǎn)周?chē)徑?個(gè)像素點(diǎn)。最簡(jiǎn)單的均值濾波,即對(duì)(x,y)以及周邊8個(gè)像素點(diǎn)求平均替代原來(lái)的(x,y)點(diǎn)。

    采用FPGA實(shí)現(xiàn)圖像平滑處理

    采用FPGA實(shí)現(xiàn)圖像平滑處理

    這種濾波方式的優(yōu)點(diǎn)很明顯,算法簡(jiǎn)單,計(jì)算速度快。缺點(diǎn)是降低噪聲的同時(shí)使圖像產(chǎn)生模糊,特別是景物的邊緣和細(xì)節(jié)部分。

    2.4 加權(quán)均值濾波器

    由于我們已經(jīng)注意到了中心點(diǎn)和周邊像素點(diǎn)的重要程度不同,因此可以將均值濾波進(jìn)行改進(jìn),獲得圖像平滑濾波效果的同時(shí),也在一定程度上盡量降低圖像邊緣和細(xì)節(jié)的損失。

    采用FPGA實(shí)現(xiàn)圖像平滑處理

    采用FPGA實(shí)現(xiàn)圖像平滑處理

    基于1/16的加權(quán)均值濾波,我們的Matlab代碼如下:

    clear

    clc

    I1=imread('.\lena.jpg');

    I=im2double(I1);

    [m,n,c]=size(I);

    A=zeros(m,n,c);

    %           1   2   1

    %   1/16 *  2   4   2

    %           1   2   1

    %for R

    for i=2:m-1

    for j=2:n-1

    A(i,j,1)=I(i-1,j-1,1)+I(i+1,j-1,1)+I(i-1,j+1,1)+I(i+1,j+1,1)+2*I(i+1,j,1)+2*I(i-1,j,1)+2*I(i,j+1,1)+2*I(i,j-1,1)+4*I(i,j,1);

    end

    end

    %for G

    for i=2:m-1

    for j=2:n-1

    A(i,j,2)=I(i-1,j-1,2)+I(i+1,j-1,2)+I(i-1,j+1,2)+I(i+1,j+1,2)+2*I(i+1,j,2)+2*I(i-1,j,2)+2*I(i,j+1,2)+2*I(i,j-1,2)+4*I(i,j,2);

    end

    end

    %for B

    for i=2:m-1

    for j=2:n-1

    A(i,j,3)=I(i-1,j-1,3)+I(i+1,j-1,3)+I(i-1,j+1,3)+I(i+1,j+1,3)+2*I(i+1,j,3)+2*I(i-1,j,3)+2*I(i,j+1,3)+2*I(i,j-1,3)+4*I(i,j,3);

    end

    end

    B=A/16;

    %output

    imwrite(B,'lena.tif','TIf');

    imshow('.\lena.jpg');TItle('origin image');figure

    imshow('lena.TIf');TItle('image after average filter')

    濾波效果如下。

    采用FPGA實(shí)現(xiàn)圖像平滑處理

    Matlab源碼、Lena.jpg原圖和比對(duì)圖存放在at7_img_ex01\matlab文件夾下。


  • ·上一篇:
    ·下一篇:
  • 其他關(guān)聯(lián)資訊
    深圳市日月辰科技有限公司
    地址:深圳市寶安區(qū)松崗鎮(zhèn)潭頭第二工業(yè)城A區(qū)27棟3樓
    電話(huà):0755-2955 6626
    傳真:0755-2978 1585
    手機(jī):131 1300 0010
    郵箱:hu@szryc.com

    深圳市日月辰科技有限公司 版權(quán)所有:Copyright?2010-2023 www.kqne.cn 電話(huà):13113000010 粵ICP備2021111333號(hào)