資源描述:
《數(shù)字圖像處理實驗三:圖像的復原.doc》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、實驗三、圖像的恢復一、實驗類型驗證性實驗二、實驗目的1.掌握退化模型的建立方法。2.掌握圖像恢復的基本原理。三、實驗設備安裝有MATLAB軟件的計算機四、實驗原理一幅退化的圖像可以近似地用方程g=Hf+n表示,其中g(shù)為圖像,H為變形算子,又稱為點擴散函數(shù)(PSF),f為原始的真實圖像,n為附加噪聲,它在圖像捕獲過程中產(chǎn)生并且使圖像質(zhì)量變壞。其中,PSF是一個很重要的因素,它的值直接影響到恢復后圖像的質(zhì)量。I=imread(‘peppers.png’);I=I(60+[1:256],222+[1:256],:);figure;imshow(I);LEN=31;
2、THETA=11;PSF=fspecial(‘motion’,LEN,THETA);Blurred=imfilter(I,PSF,’circular’,’conv’);figure;imshow(Blurred);MATLAB工具箱中有4個圖像恢復函數(shù),如表3-1所示。這4個函數(shù)都以一個PSF和模糊圖像作為主要變量。deconvwnr函數(shù)使用維納濾波對圖像恢復,求取最小二乘解,deconvreg函數(shù)實現(xiàn)約束去卷積,求取有約束的最小二乘解,可以設置對輸出圖像的約束。deconvlucy函數(shù)實現(xiàn)了一個加速衰減的Lucy-Richardson算法。該函數(shù)采用優(yōu)化技
3、術(shù)和泊松統(tǒng)計量進行多次迭代。使用該函數(shù),不需要提供有關(guān)模糊圖像中附加噪聲的信息。deconvblind函數(shù)使用的是盲去卷積算法,它在不知道PSF的情況下進行恢復。調(diào)用deconvblind函數(shù)時,將PSF的初值作為一個變量進行傳遞。該函數(shù)除了返回一個修復后的圖像以外,還返回一個修復后的PSF。下面以維納濾波和約束去卷積為例說明圖像恢復的實驗原理。deconvwnr使用維納濾波對圖像恢復deconvreg對圖像進行約束去卷積deconvlucy用Lucy-Richardson算法實現(xiàn)圖像恢復deconvblind用盲去卷積算法實現(xiàn)圖像恢復1.維納濾波使用dec
4、onvwnr函數(shù)可以利用維納濾波方法恢復圖像。在圖像的頻率特征和附加噪聲已知的情況下,Wiener濾波比較有效。本例演示了維納濾波器的性能,同時也演示了PSF的重要性。得到準確的PSF時,恢復的結(jié)果會比較好。I=imread(‘peppers.png’);I=I(10+[1:256],222+[1:256],:);LEN=31;THETA=11;PSF=fspecial(‘motion’,LEN,THETA);5Blurred=imfilter(I,PSF,’circular’,’conv’);wnrl=deconvwnr(Blurred,PSF);imsh
5、ow(wnrl);2.約束去卷積采用deconvreg函數(shù)可以對圖像進行約束去卷積。當知道附加噪聲的部分信息時,使用約束去卷積實現(xiàn)圖像恢復比較有效。(1)將一幅圖像讀入MATLAB工作空間。本例使用裁剪來減小要恢復的圖像的大小。I=imread('flowers.tif');I=I(10+[1:256],222+[1:256],:);figure;imshow(I);(2)創(chuàng)建PSFPSF=fspecial(‘gaussian’,11,5);(3)模糊化圖像并添加噪聲。Blurred=imfilter(I,PSF,’conv’);V=0.02;Blurred
6、Noisy=imnoise(Blurred,’gaussian’,0,V);figure;imshow(BlurredNoisy);(4)用deconvreg函數(shù)恢復圖像,指定PSF和噪聲冪次NP。NP=V*prod(size(I));[reg1LAGRA]=deconvreg(BlurredNoisy,PSF,NP);figure,imshow(reg1);五、實驗內(nèi)容選擇一幅清晰圖像,對該圖像進行模糊化處理,然后分別采用逆濾波、維納濾波和約束去卷積恢復原來圖像,比較各圖像恢復方法的恢復效果。六、實驗步驟與結(jié)果將一張圖片1、(1)選擇一幅清晰圖像,對該圖像
7、進行模糊化處理I=imread('b.jpg');%將b.jpg圖像讀入matlab環(huán)境I=I(60+[1:256],222+[1:256],:);%使用裁剪來減小要恢復的圖像的大小figure;imshow(I);%控制圖像個數(shù)并顯示圖像LEN=31;%圖像像素THETA=11;%順時針方向?qū)φ捷S度量PSF=fspecial('motion',LEN,THETA);%創(chuàng)建PSF,用fspecial對圖像模糊建模Blurred=imfilter(I,PSF,'circular','conv');%用imfilter創(chuàng)建一個已知PSF的退化圖像figure
8、;imshow(Blurred);%控制圖像個數(shù)并顯