破损图像复原

简介

因摄像机与物体相对运动,以及系统误差、畸变、噪声等因素的影响,使图像往往不是真是景物的完善映像,因而图像复原技术就此产生;在图像恢复中,需要建立造成图像质量下降的退化模型,然后运用相反过程来恢复原来图像,并运用一定准则来判定是否得到图像的最佳恢复。图像复原的原理:使用可以精确描述失真的点扩散函数(PSF)对模糊图像进行去卷积计算。图像恢复的方法主要有逆滤波复原、未纳滤波复原、约束的最小二乘方滤波复原。Lucy-Richardson滤波复原及盲去卷积滤波复原。

实验工具介绍-MATLAB

本次实验选取MATLAB作为实验工具,MATLAB是一款数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。

实验步骤

选择如下图1破损图片进行复原:

Ctrl/Command
图1

实验及结论

一、灰度变换增强——用调整图像的灰度增加图像的对比度
灰度变换增强是把图像的对比度从弱变强的过程,所以灰度变换增强也通常被称为对比度增强。它主要利用点运算来修正像素灰度,由输入像素灰度点的值确定相应输出点的灰度值,是一种基于图像变换的操作。

  1. 使用imadjust函数调整灰度

       J=imadjust(I);
       J=imadjust(I,[low_in;high_in],[low_out;high_out]);
       J=imadjust(I,[low_in;high_in],[low_out;high_out],gamma);
    

注:I为输入图像,J是返回调整后的图像,该函数把在[low_in;high_in]的像素值调整到[low_out;high_out],对于3中的gamma,当gamma为1时,为线性变换;当gamma大于1时,此映射偏重更低数值(灰暗)输出;当gamma小于1时,此映射偏重更高数值(明亮)输出。

  • a) 设置J=imadjust(I,[],[0.4 0.6]); 调整图像的灰度到0.4-0.6范围内;效果图如下图2所示:
    Alt
    图2
  • b) 设置J=imadjust(I,[],[0.2 0.6]); 调整图像的灰度到0.2-0.6范围内;效果图如下图3所示:
    Alt图3
  • c) 设置J=imadjust(I,[],[0.4 0.8]); 调整图像的灰度到0.4-0.8范围内;效果图如下图4所示:
    Alt
    图4
  • d) 结论:调整图像的灰度到0.4-0.6范围内时效果最好,能获得较好的灰度图像。
  1. 直方图均衡化

             J_histeq=histeq(I); 使用histeq函数对图像进行增强
             J_adapthisteq=adapthisteq(I); 使用adaptjisteq函数对图像进行增强,即自适应直方图均衡化
    

    使用各函数效果对比图如下图5所示:
    Alt
    图5

    结论:观察效果图可知,使用直方图均衡化能更清楚得看到破损图像的轮廓。

  2. 空域滤波增强
    使用空域模板滤波进行的图像处理被称为图像的空域滤波增强,模板本身被称为空域滤波器。空域滤波增强的机理就是在待处理的图像中逐点移动模板,滤波器在改点的响应通过事先定义的滤波器系数与滤波模板扫过区域的相应像素值的关系来计算。空域滤波器分为平滑滤波器、中值滤波器、自适应除噪滤波器和锐化滤波器,但在实验过程中锐化滤波器并不能达到本实验的图像复原效果,故不采用。

  • (1)平滑滤波器滤波
    平滑滤波器也称均值滤波器,它是用领域的均值代替像素值,减小了图像灰度的尖锐变化,

             J=filter2(fspecial('average',x),I)/255; %    x值可变,x不同值对应不同模板,默认值为3
    
    • 3*3滤波模板:

            J=filter2(fspecial('average',x),I)/255;
      

      效果图如下图6所示:
      Alt图6

    • 5*5滤波模板:

      J=filter2(fspecial('average',5),I)/255;
      

      效果图如下图7所示:
      Alt图7

    • 各个滤波模板间的比较如下图8所示:
      Alt图8

    • 结论:由以上效果图可知,5*5滤波模板效果最好

  • (2)中值滤波器
    中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术,其基本原理是把数字图像或数字序列中一点的值用该点的一个领域中各点值的中值代替,让周围的像素值接近真实值,从而消除孤立的噪声点。

            J=medfilt2(I);   %默认值时为3*3模板
            J=medfilt3(I,[m,n]);  % m*n 模板
    
    • 3*3滤波模板

         J=medfilt2(I);
      

      效果图如下图9所示:
      Alt图9

    • 5*5滤波模板

          J=medfilt3(I,[5,5]);
      

      效果图如下图10所示:
      Alt图10

    • 各个滤波模板的比较效果图如下图11所示:

    Alt图11

    • 结论:由以上图可以看出,随着模板的增大,噪声会越来越弱,但是图像会逐渐不清晰,而在5*5时效果是最好的。
  • (3)自适应滤波器
    自适应滤波是指根据环境的改变,使用自适应算法来改变滤波器的参数和结构,使用wiener2函数用于对图像进行自适应除噪滤波,其可以估计每个像素的局部均值与方差。
    J=wiener2(I,[M,N],noise);%使用M×N大小领域局部图像均值与偏差,采用像素式自适应滤波器对图像I进行滤波。

    • 各个滤波模板对比结果如下图12所示:
      Alt图12
  1. 频域滤波增强-低通滤波器
    图像的频域增强是利用图像变换方法将原来的图像空间中的图像以某种形式转换到其他空间中,然后利用该空间的特有性质再进行图像处理,最后转换回原来的图像空间中,从而得到处理后的图像。频域滤波器中又分为低通滤波器和高通滤波器,二者之间的作用相反,又由于噪声主要集中在高频部分,所以本实验中采用低通滤波器才能达到一定的实验效果,故不考虑高通滤波器。低通滤波滤波除去了高频成分,而低频信息基本无损失地通过。
  • (1)理想低通滤波器
    设傅里叶平面上理想低通滤波器离开原点的截止频率为,则理想低通滤波器的传递函数为:
    H ( u , v ) { 1 , D ( u , v ) ≤ D 0 0 , D ( u , v ) > D 0 H(u,v) \left\{ \begin{aligned} 1 ,D(u,v)≤D_0 \\ \\ 0 ,D(u,v)>D_0 \end{aligned} \right. H(u,v)1,D(u,v)D00,D(u,v)D0

    式中, D ( u , v ) = ( u 2 + v 2 ) ( 1 / 2 ) D(u,v)=(u^2+v^2 )^(1^/2^) D(u,v)=(u2+v2)(1/2)表示点(u,v)到原点的距离,D0表示截止频率点到原点的距离。

    主要代码:

     I=imread('F:\inner课程作业\图像与视频处理\图片1.png');
     [f1,f2]=freqspace(size(I),'meshgrid');  %生成频率阵序列矩阵
     Hd=ones(size(I));
     r=sqrt(f1.^2+f2.^2);
     Hd(r>D_0)=0;        %构造滤波器, D_0可变
     Y=fft2(double(I));
     Y=fftshift(Y);
     Ya=Y.*Hd;                           %滤波
     Ya=ifftshift(Ya);
     Ia0X=ifft2(Ya);
    

    不同D0值时对应效果图如下图13所示:
    Alt图13
    结论:由上图可知,当r为0.1时效果最好

  • (2) 巴特沃斯低通滤波器
    n阶巴特沃斯滤波器的传递函数:
    H ( u , v ) = 1 / ( 1 + [ D ( u , v ) / D 0 ] 2 n ) H(u,v)=1/(1+[D(u,v)/D_0 ]^2n ) H(u,v)=1/(1+[D(u,v)/D0]2n)
    其特性时连续衰减,不像理想滤波器陡峭变化。
    主要代码:

     I=imread('F:\inner课程作业\图像与视频处理\图片1.png');
     [f1,f2]=freqspace(size(I),'meshgrid');
     D=0.4;            %截止频率
     n=x;              %    x可变
     Hd=ones(size(I));
     r=sqrt(f1.^2+f2.^2);
     for i=1:size(I,1)
        for j=1:size(I,2)
          t=r(i,j)/(D*D);
          Hd(i,j)=1/(t^n+1);      %构造滤波函数
        end
     end
    B=fft2(double(I));
    B=fftshift(B);
    Ba=B.*Hd;
    Ba=ifftshift(Ba);
    Ia1=ifft2(Ba);
    

    不同n值时对应效果图如下图14所示:
    Alt图14
    结论:由上图可以看出,n为10时效果最好。

  • (3) 指数低通滤波器
    指数低通滤波器的转移函数为

    H ( u , v ) = e x p − [ D ( u , v ) / D 0 ] n H(u,v)=exp^{-[D(u,v)/D_0 ]^n} H(u,v)=exp[D(u,v)/D0]n
    主要代码:

    I=imread('F:\inner课程作业\图像与视频处理\图片1.png');
    [f1,f2]=freqspace(size(I),'meshgrid');
    D=X/size(I,1);                         %  D为X,其中X可变
    Hd=ones(size(I));
    r=f1.^2+f2.^2;
    for i=1:size(I,1)
       	for j=1:size(I,2)
     			    t=r(i,j)/(D*D);
      				Hd(i,j)=exp(-t);
       	end
    end
    E=fft2(double(I));
    E=fftshift(E);
    Ea=E.*Hd;
    Ea=ifftshift(Ea);
    IaX=ifft2(Ea);          %   X 可变
    

    不同X值时对应效果图如下图15、16所示:
    Alt图15

    Alt图16

    结论:当x 为100时效果最好
    emmm第一次使用CSDN啦啦啦啦啦以后继续努力!!!!!!

  • 5
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Retouch Pilot v3.10.2是一款非常完美的相片修复工具,能够快速的将一系列老旧照片来进行修复,是一款非常实用的旧照片翻新修复工具,通过它可以对一些损坏的照片进行修复,可以修复旧片中的污点刮痕等细小的瑕疵,除此之外还可以将它当做水印去除工具来使用,可以完美地清除图片中的LOGO水印等,即使在复杂的背景下也可以完成。可真是老照片的救星啊! 以前我们修复破旧的老照片都是使用PS,对技术要求比较高,怎么办呢?后来出现了一款专门修复老照片的工具Retouch Pilot,使用简单。 在胶片摄影时代(俗称“传统摄影”时代),修复一张严重破损的旧照片,步骤非常复杂:首先把旧照片翻拍放大成低反差照片,之后用铅笔、毛笔和刀片进行修 整,之后再翻拍放大出照片;在新翻拍的照片上修整,再根据照片破损的程度和修复的效果决定翻拍和修整的次数,直到修好、翻拍放大出成品照片为止。 如今,有了电子计算机这个高效的工具,图像可以转为数字文件进行后期数字化处理,旧照片的修复就变得容易和简单了。不过,这是单纯从技术方面,或者说是修整工具方面来说的。如果不懂得修像的原理和方法,用再高级的电子计算机也是不行的,旧照片的修复都不会变得容易和简单。 使用方法可以看软件界面提供的DEMO。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值