图像复原
一、 实验目的
熟悉几种在实际应用中比较重要的图像复原技术,学会用 MATLAB 复原函数对退化图
像进行复原处理 1。
二、 实验原理
图像在形成、传输和记录的过程中,由于受多种原因的影响,图像的质量会有下降,典
型表现为图像模糊、失真、有噪声等。这一降质的过程称为图像的退化。
而图像复原试图利用退化现象的某种先验知识(即退化模型),把已经退化了得图像加以重
建和复原。其目的就是尽可能地减少或去除在获取图像过程中发生的图像质量的下降(退
化),恢复被退化图像的本来面目。
三、 实验内容:
1、读入一副图像,加入运动模糊和椒盐噪声;
2、用维纳滤波复原函数 deconvwnr 对模糊图像进行复原重建。
四、 实验指导:
%读入、显示原图像
I = im2double(imread('cameraman.tif'));
imshow(I);
title('Original Image (courtesy of MIT)');
%模拟运动模糊
LEN = 21;
THETA = 11;
PSF = fspecial('motion', LEN, THETA);
blurred = imfilter(I, PSF, 'conv', 'circular');
figure, imshow(blurred)
%模拟加性噪声
noise_mean = 0;
noise_var = 0.0001;
blurred_noisy = imnoise(blurred, 'gaussian',noise_mean, noise_var);
figure, imshow(blurred_noisy)
title('Simulate Blur and Noise')
%尝试恢复假设没有噪声
estimated_nsr = 0;
wnr2 = deconvwnr(blurred_noisy, PSF, estimated_nsr);
figure, imshow(wnr2)
title('Restoration of Blurred, Noisy Image Using NSR = 0')
%尝试恢复对噪声对信号功率比进行更好的估计
estimated_nsr = noise_var / var(I(:));
wnr3 = deconvwnr(blurred_noisy, PSF, estimated_nsr);
figure, imshow(wnr3)