数字图像处理实验九维纳滤波
生活随笔
收集整理的這篇文章主要介紹了
数字图像处理实验九维纳滤波
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、運動模糊圖像
2、逆濾波結果
3、計算噪信比K值濾波結果
4、調節噪信比K參數,顯示不同的維納濾波結果
clear; clc; close all;f = checkerboard(8); %調用棋盤板圖像%%將圖像的數據格式轉換為double型 f=im2double(f); %將灰度圖像由uint8轉為double%%建立退化模型 PSF = fspecial('motion',27,55); %對圖像進行27個像素點,55度角的模糊建模 gb = imfilter(f,PSF,'circular'); %將圖像與退化模型疊加 %%添加噪聲 noise = imnoise(zeros(size(f)),'gaussian',0,0.0001);%高斯噪聲。均值為0,方差0.002 g = gb + noise; %添加噪聲的退化圖像%%當K=0時,相當于直接逆濾波 fr1 = deconvwnr(g,PSF); %%逆濾波 {維納濾波(退化圖像,點擴散函數(退化模型),噪信比為0)}%%通過比率進行維納濾波 Sn = abs(fft2(noise)).^2; %噪聲功率譜 nA = sum(Sn(:))/numel(noise); %噪聲平均功率 Sf = abs(fft2(f)).^2; %圖像功率譜 fA = sum(Sf(:))/numel(f); %圖像平均功率 K = sum(noise(:).^2)/sum(f(:).^2); %計算常數比率K fr2 = deconvwnr(g,PSF,K); %使用常數比率的維納濾波復原%%通過將自相關函數進行維納濾波 NCORR = fftshift(real(ifft2(Sn))); %噪聲自相關函數 ICORR = fftshift(real(ifft2(Sf))); %原圖像自相關函數 fr3 = deconvwnr(g,PSF,NCORR,ICORR); %使用自相關函數的濾波結果%%形成一個3×3得窗口 subplot(2,3,1);imshow(f);title('原圖像'); subplot(2,3,2);imshow(gb);title('運動模糊圖像'); subplot(2,3,3);imshow(noise,[ ]);title('高斯噪聲圖像'); subplot(2,3,4);imshow(fr1);title('逆濾波結果(有噪聲)'); subplot(2,3,5);imshow(fr2);title('計算噪信比K值濾波結果'); subplot(2,3,6);imshow(fr3);title('使用自相關函數的維納濾波結果');?
總結
以上是生活随笔為你收集整理的数字图像处理实验九维纳滤波的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一、信号处理 ——3.维纳滤波(含mat
- 下一篇: ps怎么做出针式打印机打印效果字体?