资源描述
图像复原
信息132 李佳奇
一、 试验目
1、 熟悉并掌握MATLAB图像处理工具箱使用;
2、 了解并掌握常见图像恢复和分割技术。
二、 试验内容
空域滤波复原
close all;clear all;clc;
I=imread('d:/zhien.jpg');
I=im2double(I);
I=imnoise(I,'gaussian',0.05);%添加高斯噪声
PSF=fspecial('average',3);
J=imfilter(I,PSF);
K=exp(imfilter(log(I),PSF));
figure;
subplot(131);imshow(I);
subplot(132);imshow(J);
subplot(133);imshow(K);
分析: 空域滤波就是在待处理图像中逐点地移动掩模。在每一点(x,y)处, 滤波器在该点响应经过事先定义关系来计算。对于线性空间滤波, 其响应由滤波器系数与滤波掩模扫过区域对应像素值乘积之和给出
维纳滤波
I=imread('d:/zhien.jpg');
H=fspecial('motion',50,45);
J=imfilter(I,H,'circular','conv');
subplot(221);imshow(J);
title('运动模糊后lena.bmp(角度为45)');
J1=imnoise(J,'gaussian',0,0.01);
subplot(222);
imshow(J1);
title('加噪模糊lena.bmp');%figure;
J2=deconvwnr(J1,H);
subplot(223)
imshow(J2);
title('模糊噪声图像维纳滤波复原');
noise=imnoise(zeros(size(I)),'gaussian',0,0.01);
NSR=sum(noise(:).^2)/sum(im2double(I(:)).^2);
J3=deconvwnr(J1,H,NSR);
subplot(224)
imshow(J3);
title('引入SNR维纳滤波复原');
分析: 维纳滤波是一个有约束复原恢复, 它综合了退化图像和噪声统计特征两个方面进行了复原处理。维纳滤波, 它是使原图像及其恢复图像之间均方差最小复原方法。
是在假象图像信号能够近似看作平稳过程前提下, 根据使恢复图像与原图像f(x,y)均方差最小标准来恢复图像。
约束最小二乘法滤波
I= imread('d:/zhien.jpg');
I1=checkerboard(8);
PSF=fspecial('motion',50,45);
V=0.0001; J=imfilter(I,PSF,'circular','conv');
J1=imnoise(J,'gaussian',0,0.01);
subplot(1,2,1); imshow(J1);
title('模糊加噪图像');
NoisePower=V*prod(size(I));
[G,LAGRA]=deconvreg(J,PSF,NoisePower);
subplot(1,2,2); imshow(G);
title('约束最小二乘滤波复原');
分析:
约束最小二乘方图像复原是一个以平滑测度为准则复原方法。
试验中首先得到运动模糊和高斯噪退化后图像Zn, 然后对图像进行约束最小平方复原, 同时取得最好复原参数γ, 假如将参数γ值调大, 则图像会比较模糊, 但对噪声改善效果较为显著, 假如将参数γ值调小, 则图像会比较清楚, 但背景会出现一定噪声。
盲解卷积复原
I=imread('d:/zhien.jpg');
I=im2double(I);
LEN=20;
THETA=20;
PSF=fspecial('motion',LEN,THETA);
J=imfilter(I,PSF,'circular','conv');%运动模糊
INITPSF=ones(size(PSF));
[K,PSF2]=deconvblind(J,INITPSF,30);%图像复原
figure;
subplot(121);imshow(PSF,[]);
subplot(122);imshow(PSF2,[]);
axis auto;
figure;
subplot(121);imshow(J);%显示退化图像
subplot(122);imshow(K);%显示复原图像
分析通常图像恢复方法均在成像系统点扩展函数PSF已知下进行, 实际上它通常是未知。在PSF未知情况下, 盲解卷积是实现图像恢复有效方法。该算法优点是, 在对失真情况毫无先验知识情况下, 仍能实现对模糊图像恢复操作。恢复图像存在一定“环”, 是由图像边界或灰度改变较大部分产生。
展开阅读全文