上面的模型中,PSF是一个很重要的因素,它的值直接影响到复原后图像的质量。由于许多种退化都可以用线性的位移不变模型来近似,这样可以把线性系统种的许多数学工具如线性代数用于求解图像复原问题,从而得到简捷的公式和快速的运算方法。
3、图像复原的原理
图像的复原就是要尽可能恢复退化图像的本来面目,它是沿图像降质的逆向过程进行[8]。典型的图像复原是根据图像退化的先验知识建立一个退化模型,以此模型为基础,采用各种逆退化处理方法进行恢复,使图像质量得到改善。可见,图像复原主要取决于对图像退化过程的先验知识所掌握的精确程度。
图像复原的一般过程:分析退化原因——建立退化模型——反映推演——恢复图像。所以图像恢复一般要分两步:首先通过系统辨识方法求解h ,然后采用相应算法由模糊图像g(x,y)和点扩展函数h(x,y)来恢复。
(二) matlab在图像复原中应用[4]
1、MATLAB图像恢复函数的介绍
MATLAB7.0 的图像处理工具箱提供了4 个图像恢复函数,用于实现图像的恢复操作,按照其复杂程度列举如下:
·deconvwnr 函数:使用维纳滤波恢复;
·deconvreg函数:使用波约束最小二乘滤波恢复;
·deconvlucy函数:使用Lucy- Richardson 恢复;
除了以上3个恢复函数外,还可以使用MATLAB自定义的恢复函数。[5]
2 、维纳滤波恢复的MATLAB实现
维纳滤波恢复函数deconvwnr 的调用格式:
J=deconvwnr(I,PSF,NCORR,ICORR)其中,I 表示输入图像,PSF 表示点扩散函数,NSR (默认值为0)、NCORR 和ICORR 都是可选参数,分别表示信噪比、噪声的自相关函数、原始图像的自相关函数.输出参数J 表示恢复后的图像。从恢复的图像来看,效果还是可以的,因为这里采用了真实PSF 函数来恢复,但是实际生活当中大多数情况下PSF 是不知道的,所以要按照具体情况具体分析。然后再恢复图像。
3、约束最小二乘滤波恢复的MATLAB实现
约束最小二乘滤波恢复函数deconvreg的调用格式:
J=deconvreg(I,PSF,NP,LRANGE,REGOP) 其中,I 表示输入图像,PSF 表示点扩散函数,NP、LRANGE(输入)和REGOP是可选参数,分别表示图像的噪声强度、拉氏算子的搜索范围和约束算子,同时,该函数也可以在指定的范围内搜索最优的拉氏算子。利用振铃抑制恢复图像是3种中恢复效果最好的,其他几种方法也可以恢复但是比较模糊,效果不是很明显。