常用图像去模糊算法分析与对比综述
更新时间:2023-03-11 17:46:01 阅读量: 教育文库 文档下载
- 图像模糊处理算法推荐度:
- 相关推荐
2012-2013学年度第二学期
数字图像处理课程设计
题目: 常用图像去模糊算法分析与对比
院 系: 自动化学院 专 业: 自动化 班 级: 控实1001班 姓 名: 朱延俊 学 号: U201014240 指导教师: 谭山 报告时间: 2013.6.24
由于光学系统的装配、拍摄对焦不准或拍摄时的移动等均会使图像模糊,对诸如红外成像系统等离散成像系统,探测单元的非点元性质是图像模糊的重要原因之一,这些模糊图像一般可以用卷积过程描述。
图像复原的基本问题是去模糊,即依据某种模糊和噪声降质的观测来估计原来的图像。反卷积是使模糊的图像复原的基本方法,如果成像系统的模糊函数已知,则去模糊成为常规的反卷积问题,否则,是盲解卷积问题。一般的,模糊函数是一个低通滤波器,使输入图像的高频成分收到抑制甚至丧失。反卷积是逆过程,需要恢复低频信息并找回丢失的高频成分。噪声的存在将可能使反卷积的结果偏离真实的解,因此需要在图像信号复原和噪声放大之间做出适当的折中。
图像退化/复原可以用图0所示的模型来表示(g = Hf + n):
图0
f(x,y)原图像H(x,y)退化函数(PSF)g(x,y)退化函数n(x,y)附加噪声f’(x,y)复原的图像M(x,y)复原函数 1.盲目解卷积算法(Blind Deconvolution Algorithm)
图像恢复是一种改善图像质量的处理技术, 将降质了的图像恢复成原来的图像。目前, 图像恢复的方法很多, 然而在图像恢复过程中, 最难解决的问题之一是如何获得恢复算法中PSF的恰当估计, 那些不以PSF 知识为基础的图像恢复方法统称为盲去卷积算法。盲去卷积的方法已经受到了人们的极大重视, 对于给定的原图像, 使其退化, 得到退化图像, 再利用盲去卷积的方法使其恢复, 得到视觉质量上更好的图像。
盲解卷积的方法是以最大似然估计(MLE )为基础的,即一种用被随机噪声所干扰的量进行估计的最优化策略。似然函数用g ( x, y )、f ( x, y ) 和h( x, y )来加以表达, 然后问题就变成了寻求最大似然函数。在盲解卷积中, 最优化问题用规定的约束条件并假定收敛时通过迭代来求解, 得到的最大f( x, y )和h (x, y )就是还原的图像和PSF。
【函数】deconvblind
【功能】使用盲解卷积算法对图像进行去模糊
[J,PSF] = DECONVBLIND(I,INITPSF) deconvolves image I using maximum likelihood algorithm, returning both deblurred image J and a restored point-spread function PSF. The resulting PSF is a positive array of the same size as the INITPSF, normalized so its sum adds to 1. The PSF
restoration is affected strongly by the size of its initial guess, INITPSF, and less by its values (an array of ones is a safer guess).
使用盲解卷积对图像I进行去模糊,得到去模糊后的图像J和重建点扩散函数矩阵PSF。参量INITPSF为矩阵,表示重建点扩散函数矩阵的初始值。
[J,PSF] = DECONVBLIND(I,INITPSF,NUMIT)
参量NUMIT为迭代次数,默认值为10。
[J,PSF] = DECONVBLIND(I,INITPSF,NUMIT,DAMPAR)
参量DAMPAR表示输出图像与输入图像的偏离阈值,该函数对于偏离阈值的像素不再进行迭代计算,这抑制了像素上的噪声,又保存了图像的细节。
[J,PSF] = DECONVBLIND(I,INITPSF,NUMIT,DAMPAR,WEIGHT)
参量WEIGHT为矩阵,其元素为图像每个像素的权值,默认值为与输入图像相同维数的单位矩阵。
[J,PSF] = DECONVBLIND(I,INITPSF,NUMIT,DAMPAR,WEIGHT,READOUT)
参量READOUT制定噪声类型,默认值为0。 【编程实现】
I = checkerboard(8);%创建棋盘:为8或者30 PSF = fspecial('gaussian',7,10);%设置滤波器 V = .0001;
BlurredNoisy = imnoise(imfilter(I,PSF),'gaussian',0,V);%添加高斯噪声 %迭代次数为20,输出图像与输入图像的偏离阈值为10*sqrt(V),阈值为zeros(size(I) WT = zeros(size(I)); WT(5:end-4,5:end-4) = 1; INITPSF = ones(size(PSF));
[J P] = deconvblind(BlurredNoisy,INITPSF,20,10*sqrt(V),WT); %对图像去模糊,显示原始图像和PSF图像 subplot(221);imshow(BlurredNoisy); title('Blurred and Noisy'); subplot(222);imshow(PSF,[]); title('True PSF'); %复原图像和PSF图像 subplot(223);imshow(J);
title('Deblurred Image'); subplot(224);imshow(P,[]);
title('Recovered PSF');
得到的图形如图1所示,可以看出同时恢复了图像和点扩张函数,在对失真情况毫无先验知识的情况下,仍能实现对模糊图像的恢复操作。利用MATLAB 实现的图像恢复, 并对恢复图像的失真情况做了改善。在进行图像恢复时,重建PSF,对图像进行重建, 得到恢复的图像。若I = checkerboard(30);则效果如图2所示。
图1
图2
2.L-R算法(Lucy-Richardson Algorithm)
L-R算法假设图像服从Possion分布,采用最大似然估计进行估算,其迭代方程为
f(x,y)n?1?f(x,y)n[(g(x,y))?h(x,y)] nh(x,y)*f(x,y)该算法考虑到了物体的先验信息,无需模糊图像的噪声信息,适用于线性和非线性成像模型,解具有唯一性。在MATLAB中,L-R算法附加了一些改进,可以在多次迭代过于逼近噪声易产生错误信息斑点的情况下,使用参数来控制收敛次数,使每次过程中结果图像和原始图像的每个相应局部的背离程度的灰度值在阈值内。
【函数】deconvlucy
【功能】使用L-R算法对图像进行去模糊处理
J = DECONVLUCY(I,PSF)
deconvolves image I using Lucy-Richardson algorithm, returning deblurred image J. The assumption is that the image I was created by convolving a true image with a point-spread function PSF and possibly by adding noise. J = DECONVLUCY(I,PSF,NUMIT) J = DECONVLUCY(I,PSF,NUMIT,DAMPAR) J = DECONVLUCY(I,PSF,NUMIT,DAMPAR,WEIGHT) J = DECONVLUCY(I,PSF,NUMIT,DAMPAR,WEIGHT,READOUT)
J = DECONVLUCY(I,PSF,NUMIT,DAMPAR,WEIGHT,READOUT,SUBSMPL), where
【编程实现】
I = checkerboard(8);%创建棋盘,8或30 PSF = fspecial('gaussian',7,10);%设置滤波器 V = .0001;
BlurredNoisy = imnoise(imfilter(I,PSF),'gaussian',0,V);%添加高斯噪声 WT = zeros(size(I));%阈值为zeros(size(I)
WT(5:end-4,5:end-4) = 1;%重建点扩散函数矩阵的初始值 J1 = deconvlucy(BlurredNoisy,PSF);
%设置输出图像与输入图像的偏离阈值为sqrt(V)
J2 = deconvlucy(BlurredNoisy,PSF,20,sqrt(V)); %设置阈值为zeros(size(I)
J3 = deconvlucy(BlurredNoisy,PSF,20,sqrt(V),WT);
subplot(221);imshow(BlurredNoisy); title('Blurred and Noisy'); subplot(222);imshow(J1);
title('deconvlucy(A,PSF)'); subplot(223);imshow(J2);
title('deconvlucy(A,PSF,NI,DP)'); subplot(224);imshow(J3);
title('deconvlucy(A,PSF,NI,DP,WT)');
当设置创建棋盘参数为8时,得到图像如图3;参数为30时,图像如图4。从下面的两张图可以看出:增加迭代次数并限制偏离阈值、限制阈值能得到更好的效果。
图3
图4
3.维纳滤波器(Wiener Filter)
维纳滤波算法是由C.W.Helstron于1967年提出的。如果假设f(x,y)和噪声n(x,y)不相关,且n(x,y)有零值,则原维纳滤波器的传递函数为:
M(u,v)?H*(u,v) 2|H(u,v)|?RNS(u,v)式中H*(u,v)为H(u,v)的复共轭,RNS为噪信比。 【函数】
【功能】使用维纳滤波器对图像去模糊
J = DECONVWNR(I,PSF,NSR) deconvolves image I using the Wiener filter algorithm, returning deblurred image J. Image I can be an N-dimensional array. PSF is the point-spread function with which I was convolved. NSR is the noise-to-signal power ratio of the additive noise. NSR can be a scalar or an array of the same size as I. Specifying 0 for the NSR is equivalent to creating an ideal inverse filter.
J = deconvwnr(I,PSF,NCORR,ICORR)deconvolves image I, where NCORR is the autocorrelation function of the noise and ICORR is the autocorrelation function of the original image. NCORR and ICORR can be of any size or dimension, not exceeding the original image. If NCORR or ICORR are N-dimensional arrays, the values correspond to the autocorrelation within each dimension. If NCORR or ICORR are vectors, and PSF is also a vector, the values represent the autocorrelation function in the first imension. If PSF is an array, the 1-D autocorrelation function is extrapolated by symmetry to all non-singleton dimensions of PSF. If NCORR or ICORR is a scalar, this value represents the power of the noise of the image.
【编程实现】
I = checkerboard(8);
subplot(221); imshow(I);
title('Original Image (courtesy of MIT)');
% 模拟运动模糊. LEN = 21; THETA = 11;
PSF = fspecial('motion', LEN, THETA);
blurred = imfilter(I, PSF, 'conv', 'circular');
% 模拟附加噪声. noise_mean = 0; noise_var = 0.0001; blurred_noisy noise_var);
=
imnoise(blurred,
'gaussian',
noise_mean,
subplot(222);
imshow(blurred_noisy)
title('Simulate Blur and Noise')
% 在没有噪声的情况下尝试用维纳滤波器恢复. estimated_nsr = 0;
wnr2 = deconvwnr(blurred_noisy, PSF, estimated_nsr); subplot(223); imshow(wnr2)
title('Restoration of Blurred, Noisy Image Using NSR = 0')
% 用更好的信噪比估计来恢复
estimated_nsr = noise_var / var(I(:));
wnr3 = deconvwnr(blurred_noisy, PSF, estimated_nsr); subplot(224); imshow(wnr3)
title('Restoration of Blurred, Noisy Image Using Estimated NSR');
图5表示参数为8时的结果,图6表示参数为6时的结果。
图5
图6
4.约束最小乘方算法(CLS Algorithm)
若已知且仅知道噪声的先验知识时,采用拉格朗日优化理论,把约束噪声极值问题变化为无约束的极值问题
E(f,g,?)?||g?Hf||2??||Df||2?On2??||Df||2
约束最小二乘方去模糊图像复原滤波器的传递函数为
M(u,v)?H*(u,v)
|H*(u,v)|2??|D(u,v)|2式中?是拉格朗日常数,MATLAB自带函数deconvreg可指定范围(缺省
[1.0?10?9,1.0?109])选取最优的拉氏算子;D为高通滤波平滑算子,可以抑制和消除噪声。
【函数】deconvreg
【功能】使用最小二乘方算法对图像去模糊 【编程实现】
I = checkerboard(8);
PSF = fspecial('gaussian',7,10); V = .01;
BlurredNoisy = imnoise(imfilter(I,PSF),'gaussian',0,V);
NP = V*prod(size(I));% noise power
[J LAGRA] = deconvreg(BlurredNoisy,PSF,NP); subplot(221);imshow(BlurredNoisy);
title('A = Blurred and Noisy'); subplot(222);imshow(J);
title('[J LAGRA] = deconvreg(A,PSF,NP)');
subplot(223);imshow(deconvreg(BlurredNoisy,PSF,[],LAGRA/10)); title('deconvreg(A,PSF,[],0.1*LAGRA)');
subplot(224);imshow(deconvreg(BlurredNoisy,PSF,[],LAGRA*10)); title('deconvreg(A,PSF,[],10*LAGRA)');
图7
图8
可以看出约束最小二乘方算法可以实现最小均方误差复原,并对输出图像采用某些约束,且复原效果好于维纳滤波算法。这是因为该算法的推导假设是随机场是均匀的,以及谱密度已知的前提下。且D (u, v ) = 1 时, 约束最小二乘方算法就等同于维纳滤波算法。
此外,目前超分辨力图像复原领域M PML算法受到了广泛的关注,该算法的复原图像视觉效果相对其他几种算法好;在噪声小的情况下,虽然复原图像与原图像频谱的相关度略有下降,但图像的低频信息能被完全复原,复原图像中震荡条纹很小且具有较强的超分辨力复原能力,对于噪声较大的图像也能取得很好的复原效果。这里不再做详细介绍。
综上所述,各个算法在不同的情况下有不同的优势。
5.参考文献
[1] 孙鹏杰,张文爱.浅析盲去卷积算法及其进展.太原:太原科技.2009:1006-4877 [2] 刘扬阳,金伟其,苏秉华.数字图像去模糊处理算法的对比研究.北京:北京
理工大学学报.2004:1001-0645
[3] 贾花萍. 盲去卷积算法在图像恢复中的应用研究.信息技术.2011:10019-2552
可以看出约束最小二乘方算法可以实现最小均方误差复原,并对输出图像采用某些约束,且复原效果好于维纳滤波算法。这是因为该算法的推导假设是随机场是均匀的,以及谱密度已知的前提下。且D (u, v ) = 1 时, 约束最小二乘方算法就等同于维纳滤波算法。
此外,目前超分辨力图像复原领域M PML算法受到了广泛的关注,该算法的复原图像视觉效果相对其他几种算法好;在噪声小的情况下,虽然复原图像与原图像频谱的相关度略有下降,但图像的低频信息能被完全复原,复原图像中震荡条纹很小且具有较强的超分辨力复原能力,对于噪声较大的图像也能取得很好的复原效果。这里不再做详细介绍。
综上所述,各个算法在不同的情况下有不同的优势。
5.参考文献
[1] 孙鹏杰,张文爱.浅析盲去卷积算法及其进展.太原:太原科技.2009:1006-4877 [2] 刘扬阳,金伟其,苏秉华.数字图像去模糊处理算法的对比研究.北京:北京
理工大学学报.2004:1001-0645
[3] 贾花萍. 盲去卷积算法在图像恢复中的应用研究.信息技术.2011:10019-2552
正在阅读:
常用图像去模糊算法分析与对比综述03-11
计算机通讯网络期末考试题112-09
试论我国财务分析指标体系06-04
传统节日话中秋作文1000字06-26
西部地区高校电子信息工程专业的建设与发展研究总报告(夏定元 桂林电子科技大学)05-15
云南省龙陵县龙江乡镇安镇土地整理项目可行性研究报告 - 图文05-13
CHIC2014闭幕新闻稿03-29
远亲不如近邻作文700字06-24
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 算法
- 综述
- 图像
- 模糊
- 对比
- 常用
- 分析