主要内容

deconvlucy

使用Lucy-Richardson方法去模糊图像

描述

例子

J= deconvlucy (psf恢复图像通过点扩散函数(PSF)卷积来降级,psf,并可能通过附加噪声。该算法是基于最大可能的结果图像J是原始映像的实例吗根据泊松统计。

为了改善修复效果,deconvlucy万博1manbetx支持几个可选参数,如下所述。使用[]如果没有指定中间参数,则作为占位符。

例子

J= deconvlucy (psfiter指定迭代次数,iter

J= deconvlucy (psfiterdampar通过抑制相对于由阻尼阈值指定的噪声偏离少量的像素的迭代来控制噪声放大dampar.默认情况下,没有阻尼。

J= deconvlucy (psfiterdampar重量指定输入图像中的像素都是在恢复中考虑的。对象中元素的值重量数组决定输入图像中对应位置的像素被考虑的程度。例如,要排除考虑的像素,将其赋值为0重量数组中。您可以根据平场校正量调整分配给每个像素的权重值。

J= deconvlucy (psfiterdampar重量读出指定附加噪声(如背景或前景噪声)和读出相机噪声的方差,读出

J= deconvlucy (psfiterdampar重量读出子样品当在网格上给出PSF时使用子抽样子样品比图像精细几倍。

例子

全部折叠

读取并显示没有模糊或噪声的原始图像。这个示例可选地将图像裁剪为256 * 256的大小,左上角(x,y)坐标为(2,50)。

I = imread(“board.tif”);I = imcrop(I,[2 50 255 255]);imshow (I)标题(原始图像的

图中包含一个轴对象。标题为Original Image的axes对象包含一个Image类型的对象。

创建一个PSF,表示标准偏差为5的高斯模糊和大小为5 × 5的过滤器。

PSF = fspecial(“高斯”5、5);

在图像中模拟模糊。

模糊= imfilter(I,PSF,“对称”“conv”);

添加模拟零均值高斯噪声。

V = 0.002;blurred_noise = imnoise(模糊,“高斯”0 V);imshow (blurred_noisy)标题(“模糊而嘈杂的图像”

图中包含一个轴对象。标题为“模糊和噪声图像”的坐标轴对象包含一个图像类型的对象。

使用deconvlucy恢复模糊和有噪声的图像。指定用于创建模糊的PSF,并将迭代次数减少到5次。

luc1 = deconvlucy(blurred_noise,PSF,5);imshow (luc1)标题(恢复图像的

图中包含一个轴对象。标题为Restored Image的axes对象包含一个Image类型的对象。

创建一个示例图像并模糊它。

I =棋盘(8);PSF = fspecial(“高斯”7、10);V = .0001;模糊噪声= imnoise(imfilter(I,PSF),“高斯”0 V);

创建一个权重数组并调用deconvlucy使用几个可选参数。

WT = 0(大小(I));WT(5:end-4,5:end-4) = 1;J1 = deconvlucy(blurrednoise,PSF);J2 = deconvlucy(blurrednoise,PSF,20,平方根(V));J3 = deconvlucy(blurrednoise,PSF,20,平方根(V),WT);

显示结果。

次要情节(221);imshow (BlurredNoisy);标题(“A =模糊和嘈杂”);次要情节(222);imshow (j - 1);标题(“deconvlucy (PSF)”);次要情节(223);imshow (J2);标题(“deconvlucy (PSF,镍、DP) ');:次要情节(224);imshow (J3);标题(“deconvlucy (PSF,倪,DP, WT)”);

图中包含4个轴对象。标题为A = Blurred and noise的坐标轴对象1包含一个image类型的对象。带有标题deconvlucy(A,PSF)的坐标轴对象2包含一个image类型的对象。带有标题反卷积的坐标轴对象3 (A,PSF,NI,DP)包含一个图像类型的对象。带有标题反卷积的坐标轴对象4 (A,PSF,NI,DP,WT)包含一个图像类型的对象。

输入参数

全部折叠

模糊图像,指定为任意维度的数值数组。还可以将图像指定为单元格数组,以启用中断迭代。有关更多信息,请参见提示

数据类型:||int16|uint8|uint16

PSF,指定为数值数组。

数据类型:||int16|uint8|uint16

迭代次数,指定为正整数。

数据类型:

阻尼的阈值,指定为数值标量。迭代之间的偏差小于阈值的像素会发生衰减。dampar数据类型与

每个像素的权重值,指定为范围为[0,1]的数值数组。重量与输入图像大小相同,.默认情况下,所有元素都在重量拥有价值1,因此在恢复时,所有像素都是同等考虑的。

数据类型:

噪声,指定为数值标量或数值数组。的价值读出对应于附加噪声(如来自前景和背景的噪声)和读出相机噪声的方差。读出数据类型与

子抽样,指定为正标量。

数据类型:

输出参数

全部折叠

去模糊的图像,返回为数值数组或1 × 4单元格数组。J(或J {1}J是否单元格数组)具有相同的数据类型.有关返回的更多信息J作为中断迭代的单元格数组,请参见提示

提示

  • 你可以使用deconvlucy执行从前一次反褶积停止的位置开始的反褶积。要使用此特性,需要传递输入图像作为单元格数组,{我}.当你这样做的时候deconvlucy函数返回输出图像J作为单元格数组,然后可以将其作为输入数组传递给下一个单元格数组deconvlucy调用。输出单元格数组J包含四个元素:

    J {1}包含,原图。

    J {2}包含上次迭代的结果。

    J {3}包含倒数第二个迭代的结果。

    J {4}是由迭代算法生成的数组。

  • 输出图像J算法中采用的离散傅里叶变换可以产生振铃现象。为了减少振铃,请使用I = edgetaper(I,psf)在调用之前deconvlucy

  • deconvlucy将PSF转换为没有标准化。

  • deconvlucy可以在输出图像中返回超出输入图像范围的值。

参考文献

比格斯和安德鲁斯,迭代图像恢复算法的加速,应用光学,Vol. 36, No. 8, 1997。

R.J. Hanisch, R.L. White和R.L. Gilliland,哈勃太空望远镜图像和光谱的反卷积,《图像与光谱的反褶积》,P.A.杨松编,第二版,学术出版社,加州,1997年。

版本历史

R2006a之前介绍