基于MATLAB的运动模糊图像恢复技术

更新时间:2023-04-26 15:46:02 阅读: 评论:0


2023年4月26日发(作者:面构成)

基于的运动模糊图像恢复技术

MATLAB

王洪珏

(温州医学院,浙江,温州)

摘要:MATLAB是当今流行的科学计算软件,它具有很强的数据处理能力。在其图像处理工 具箱中有

四个图像复原函数, 本文就这些函数的算法原理、 运用和恢复处理效果结合实力效 果作简要对比讨

论。

0 前言

图像复原时图像处理中一个重要的研究课题。 图像在形成、 传输和记录的过程中, 由于 传感

器的噪声、摄像机未对好焦、摄像机与物体相对运动、系统误差、畸变、噪声等因素的 影响, 使图

像往往不是真实景物的完善影像。 这种图像在形成、传输和记录过程中,由于成 像系统、 传输介质

和设备的不完善, 使图像质量下降的过程称为图像的退化。 图像复原就是 通过计算机处理,对质量

下降的图像加以重建或恢复的过程。

图像复原过程一般为:找退化原因建立退化模型反向推演图像复原

TTT

1 算法产生概述

开发算法时, 首先要创建图像退化的线性数学模型, 接着选择准则函数, 并以适当的数 学形

式表达, 然后进行数学推演。 推演过程中通常要进行表达形式 (即空域形式、 频域形式、 矩阵 -

量形式或变换域形式)的相互转换,最后得到图像复原算式。

退化数学模型的空域、频域、矢量 -矩阵表达形式分别是:

g(x,y)=d(x,y)*f(x,y)+n(x,y)

G(u,v)=D(u,v) F(u,v)+N(u,v)

g=HF+n

其中: g(x,y) d(x,y) f(x,y) n(x,y) 分别为观测的退化图像、模糊函数、原图像、

加性噪声,*为卷积运算符,(x=0,1,2,…,M-1), (y=0,1,2,…,N-1 )

2 运动模糊的产生

景物与相机之间的相对运动通常会使相机所成的像存在运动模糊。对于线性移不变模

糊,退化图像u可以写成,u

00

=h*u+n,其中h为模糊核全民k ,*表示卷积,n为加性噪声。

du/dt=0, 文献 [5] 将这种运动模糊过程描述为波动方程:

a u/ a t+Va u/ a x+ Va u/ a y=0

x y

其中,V=dx/dt, V=dy/dtx,y方向上的速度分量并且通过分析该方程的达朗贝尔解

xy

得出结论:

v a u/ a x=u(x)-u(x-L)

0

其中v=

,Vx

22

Vy

,即退化图像沿运动方向的导数等于原始图像和其移位 L后图像的

差,这里L也可以认为是模戒烟的好方法 糊长度。

MATLAB^,可以由fspecial函数创建一个确定类型的 PSF(点扩散函数),然后使

用这个PSF与原始图像进行卷积,从而得到退化(模糊)的图像。

3 维纳滤波图像复原 MATLAB^

MATLABB像处理工具箱提供了维纳滤波图像复原函数 deconvwnr,该函数的语法格

下:

J=deconvwnr ( I,PSF)

J=deconvwnr (l,PSF,NSR)

J=deconvwnr (l,PSF,NCORR,ICORR

说明:

J=deconvwnr( I,PSF )用于复原由于 PSF以及可能的加性噪声卷积退化的图像 I,该算

法利用图像和噪声的相关矩阵, 从估计图像与真实图像之间的最小均方误差意义上来说是最

佳的。在没有噪声的情况下,维纳滤波器退化成理想的逆滤波器。

J=deconvwnr( I,PS乌雕 F,NSR)中的NSR是信噪功率比,NSR可以是标量,或者是和图像 I

一样大小尺寸的数组,NSR的默认值为0

J=deconvwnr( I,PSF,NCORR,ICORR中的NCORICORR分别是噪声和原始图像的自相

关函数。NCORfICORR是不超过原始图像的尺寸和维数的任意尺寸和维数。一个 N维的

NCOR ICORR数组对应每一维的自相关,如果 PSF为向量,则向量 NCORICORR代表第

一维的自相关函数;如果PSF为数组,则一维的自相关函数由 PSF所有的非单维对称计算推 得,标

NCORICORR表示噪声或图像的功率。

4 最小二乘方图像复原 MATLAB^

MATLAE图像工具箱子提供了 deconvreg函数,用来完成对模糊图像的约束最小二乘方

复原。deconvreg函数语法格式如下:

J=deco nvreg(l,PSF)

J=deconvreg(I,PSF,NOISEPOWER)

J=deconvreg(I,PSF,NOISEPOWER,LRANGE)

J=deconvreg(I,PSF,NOISEPOWER,LRANGE,REGOP)

[J,LAGRA]=deconvreg(I,PSF,...)

说明:

J=deco nvreg(l,PSF)用于复原由于PSF以及可能的加性噪声退化的图像,在保持图像平 滑的条

件下,该算法在估计图像和实际图像间的最小二乘方误差的意义上来说是最佳的。

J=deconvreg(l,PSF,NOISEPOWER)中的 NOISEPOWE是加性噪声功率,默认值是 0;

J=deconvreg(l,PSF,NOISEPOWER,LRANGE中的向量 LRANGE制定了寻找最佳解的范围,

该算法就是在 LRANGE的范围内找到最佳的拉格朗日乘数。如果 LRANGE是标量,算法假定

-9 9

LAGR圮经给定并等于 LRANGE此时忽略NOISEPOWER值。LRANG默认的范围为[le le ]

-

J=deconvreg(l,PSF,NOISEPOWER,LRANGE,REGOP中的 REGOP是约束自相关的规则化算

子。拉普拉斯算子是保持图像平滑的默认算子。 REGOP勺维数不能超过图像的维数,任意非

单维必须与PSF的非单维相对应。

[J,LAGRA]=deconvreg(I,PSF,...) 输出复原图像 J 以及拉格朗日乘数。

5 Lucy-Richardson 图像复原 MATLAB实现

当已知PSF,但对噪声的信息知道很少或者不知道噪声信息时, 可以用Lucy-Richardson

算法得到效果较好的复原图像。 Lucy-Rich饭店用英语怎么说 ardson 采用迭代法,能够按照泊松噪声统计标准 求出给定

PSF卷积后,最有可能成为输入模糊图像的图像。 MATLAB提供了 deconvlucy函数,

该函数通过加速收敛的迭代算法完成图像的复原。 为了改善图像复原的质量, 光学系统的特 性也可

以作为该函数的输入参数。 deconvlucy 函数的语法格式如下:

J=deconvlucy

(I,PSF )

J=deconvlucy

(I,PSF,NUMIT)

J=deconvlucy

(I,PSF,NUMIT,DAMPAR)

J=deconvlucy

(I,PSF,NUMIT,DAMPAR,WEIGH)T

J=deconvlucy

(I,PSF,NUMIT,DAMPAR,WEIGHT,READO)UT

J=deconvlucy

(I,PSF,NUMIT,DAMPAR,WEIGHT,READOUT,SUBSM)PL

说明:

J=deconvlucy

(I,PSF用于恢复由PSF卷积和可能的加性噪声引起的退化的图像。该算

法基于结果复原图像 J 的极大似然值,它是原始图像在泊松统计标准下的一个实例。

J=deconvlucy (l,PSF,NUMIT )中的NUMIT用于指定deconvlucy 函数迭代的次数, 如果 不指

定,默认值为 10

J=deconvlucy (l,PSF,NUMIT,DAMPAR中的DAMPA用于指定结果图像的偏差阈值,默

认值为0;该参数指定了在收敛过程中,结果图像 J与原始图像I背离的程度。

J=deconvlucy (l,PSF,NUMIT,DAMPAR,WEIGHT 中的 WRIGHT^示每个像素的加权值,

记录了每个像素反映相机记录的质量。

J=deconvlucy (l,PSF,NUMIT,DAMPAR,WEIGHT,READOU冲的 READOU制定了加性噪声 值和

读出相机噪声值,默认值为 0

J=deconvlucy (I,PSF,NUMIT,DAMPAR,WEIGHT,READOUT,SUBSMP中的 SUBSMP描述了

PSF时子采样次数,默认值为 1

6 盲去卷积图像复原 MATLA取现

盲去卷积复原实在不知道 PSF的情况下,利用原始模糊图像,同时顾及PSF和清晰图像 的一种恢复

方法。MATLAB提供了盲去卷积复原函数 deco nvbli nd,该函数的语法格式如下:

[J,PSF]= deconvblind (I,INITPSF )

[J,PSF]= deconvblind

[J,PSF]= deconvblind

[J,PSF]= deconvblind

(I,INITPSF,NUMIT )

(I,INITPSF,NUMIT,DAMPAR)

(I,INITPSF,NUMIT,DAMPAR,WEIGHT)

(I,INITPSF,NUMIT,DAMPAR,WEIGHT,READOU)

T

[J,PSF]= deconvblind

[J,PSF]=deconvblind(...FUN,P1,P2,...,PN)

说明:

[J,PSF]= deconvblind ( I,INITPSF )利用最大似然算法去卷积图像 I ,返回复原图像 J 和复原的

PSR INITPSF表示PSF的估计值;参数NUMIT用于指定迭代的次数, 默认值为10 参数DAMPA

用于指定结果图像的偏差阈值, 默认值为0;参数 WEIGH■制定了在图像复原中,

采用输入图像I的哪些像素。参数READOU用于指定相应的加性噪声值和读出相机的噪声值, 默认

0

[J,PSF]=deconvblind(...FUN,P1,P2,...,PN)

中的FUN是一个描述 PSF附加约束的函

原图像 维纳滤波修复图像 最小二乘方修复图像

Lucy-Richards on 修复图像

盲去卷积修复图像

运动模糊后爱祖国手抄报简单漂亮 图像

附录:

l=lmread( ''

Len=30;

Theta=45;

PSF=fspecial( 'moti on'

en. Theta);

BlurredA=imfilter(I,PSF,

'circular' , 'conv');

Wnrl=deco nvwn r(BlurredA,PSF);

BlurredD=imfilter(l,PSF, 'circ' , 'conv');

INITPSF=o nes(size(PSF));

[K DePSF]=deco nvbli nd(BlurredD,INITPSF,30);

BlurredB=imfilter(I,PSF, 'conv');

V=0.02;

Blurred_l_Noisy=i mno i(BlurredB, 'gaussia n' ,0,V);

NP=V*prod(size(I));

J=deco nvreg(Blurred_l_Noisy,PSF,NP);

BlurredC=imfilter(I,PSF, 'symmetric' , 'conv');

V=0.002;

BlurredNoisy=i mn oi(BlurredC, 'gaussia n' ,0,V);

原图像’);

'运动模糊后图像

)

'维纳滤波修复图像);

subplot(2,3,1);imshow(l);title( subplot(2,3,6);imshow(PSF);title( subplot(2,3,

2);imshow(Wnrl);title(

subplot(2,3,3);i雉鸡 mshow(J);title(

subplot(2,3,4);imshow(Luc);title( 'Lucy-Richardson 修复图像');

最小二乘方修复图像);

Luc=deco nvlucy(BlurredNoisy,PSF,5);

);

subplot(2,3,5);imshow(K);title( 盲去卷积修复图像 ' );

参考文献:

[1] 陈波 . 一种新的运动模糊图像恢复方法 [J]. 深圳 : 深圳大学数学与计算机科学学 ,2008.

[2] 刘刚,王立香董延.MATLAB数字图像处理[M].机械工业出版社,2010.

,

[3] 康实.MATLAB的图像处理工具箱中图像复原函数的比较 [J].广州广东交通职业技术学

,2006.

[4] 徐志影 , 李晋平 .MATLAB 及其在图像处理中的应用 [J]. 徐州 中国矿业大学资源学

,2003.

[5] CAI ing wave equation and restoration of motion blurred images[J]. Acta

Automatica Sinica,2003,29(3)466-471.


本文发布于:2023-04-26 15:46:02,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/515722.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:fspecial
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图