本节主要目的是介绍图像复原一些基本概念,如图像退化/复原过程的模型,图像复原的滤波方法,包括非约束复原(逆滤波)、有约束复原(维纳滤波)、非线性约束还原(最大熵),还有几何失真复原,来源于东北大学 魏颖教授的数字图像课程笔记。

图像退化/复原过程的模型

  在图像退化/复原建模之前先得知道什么是图像退化?图像的质量变坏叫做退化。退化的形式有图像模糊、图像有干扰等。为什么图像会退化呢?无论是由光学、光电或电子方法获得的图像都会有不同程度的退化;退化的形式多种多样。如传感器噪声、摄像机未聚焦、物体与摄像设备之间的相对移动、随机大气湍流、光学系统的相差、成像光源或射线的散射等;

  图像复原和图象增强一样,都是为了改善图像视觉效果,以及便于后续处理。与图像增强不同,图像增强方法更偏向主观判断,而图像复原则是根据图象畸变或退化原因,进行模型化处理

  图像恢复处理的关键问题在于建立退化模型。在缺乏足够的先验知识的情况下,可利用已有的知识和经验对模糊或噪声等退化过程进行数学模型的建立及描述,并针对此退化过程的数学模型进行图像复原。

  图像退化过程的先验知识在图像复原技术中起着重要作用。

  • 图像复原:将降质了的图像恢复成原来的图像,针对引起图像退化原因,以及降质过程某先验知识,建立退化模型,再针对降质过程采取相反的方法,恢复图像。

  一般地讲,复原的好坏应有一个规定的客观标准,以能对复原的结果作出某种最佳的估计。

  • 图像复原与增强的区别

    • 图像退化原因决定还原方法;
    • 评价标准不同:
      a)突出感兴趣的那部分-主观评估
      b)利用退化的逆过程恢复原始图像,客观评估: 接近原图像



  在信号处理领域中,常常提及线性移不变系统(或线性空间不变系统),线性移不变系统有许多重要的性质,合理地利用这些性质将有利于我们对问题的处理。

  • 线性移不变系统

  • 时不变系统/非时变系统

      在图像复原处理中,往往用线性和空间不变性的系统模型加以近似;这种近似的优点是使线性系统理论中的许多理论可直接用于解决图像复原问题;图像复原处理特别是数字图像复原处理主要采用的是线性的、空间不变的复原技术。

  • 复原建模



  • 如何求解?


图像复原的滤波法

  • 空间滤波包括:

    • 均值滤波器,有:算术均值滤波器、几何均值滤波器、谐波均值滤波器、逆谐波均值滤波器。
    • 统计滤波器,有:中值滤波器、最大值和最小值滤波器等。
    • 自适应滤波器,有:自适应、局部噪声消除滤波器(需要知道或估计全部噪声的方差)、自适应中值滤波器。

  寻找滤波传递函数,通过频域图像滤波得到复原图像的傅立叶变换,再求反变换,得到复原图像。

非约束复原-逆滤波

  非约束复原是指除了使准则函数L(f^)=∣∣g−Hf^∣∣2L(\hat{f})=||g-H\hat{f}||^{2}L(f^​)=∣∣g−Hf^​∣∣2 最小外, 再没有其他的约束条件。因此只需了解退化系统的传递函数或冲激响应函数, 就能利用如前所述的方法进行复原。但是由于传递函数存在病态问题,复原只能局限在靠近原点的有限区域内进行, 这使得非约束图像复原具有相当大的局限性。



  实验证明,当退化图像的噪声较小,即轻度降质时,采用逆滤波复原的方法可以获得较好的结果。
  通常,H(u,v)H(u,v)H(u,v)在离频率平面原点较远的地方数值较小或为零,因此图象复原在原点周围的有限区域内进行,即将退化图象的傅立叶谱限制在H(u,v)H(u,v)H(u,v)没出现零点而且数值又不是太小的有限范围内。

  • 运动模糊图象的逆滤波复原


  • 其他退化函数的估计

  退化的原因为已知:对退化过程有先验知识,如希望能确定PSF和噪声特性:即确定:h(x,y)h(x,y)h(x,y)与n(x,y)n(x,y)n(x,y),g(x,y)=H⋅f(x,y)+n(x,y)g(x,y)=H ·f(x,y)+n(x,y)g(x,y)=H⋅f(x,y)+n(x,y)。

  根据导致模糊的物理过程(先验知识):



有约束复原-维纳滤波

  • 维纳滤波




  • 约束最小平方滤波图像复原

      请参考博文 https://blog.csdn.net/yi_tech_blog/article/details/54605146

几何失真复原

  数字图像在获取过程中,由于成像系统的非线性,成像后的图像与原景物图像相比,会产生比例失调,甚至扭曲,这类图像退化现象称之为几何畸变。


  几何畸变校正要对失真的图像进行精确的几何校正, 通常是先确定一幅图像为基准,然后去校正另一幅图像的几何形状。

  几何畸变校正一般分两步来做:一是图像空间坐标的变换——空间变换;二是重新确定在校正空间各像素点的取值——灰度级插值。

  空间变换:防止图象内容支离破碎(弄断直线)

  灰度插值:目标图象会要求到原图象的非整数点。

  1. 空间几何坐标变换


  2. 灰度级插补

  图像经几何位置校正后,在校正空间中各像点的灰度值等于被校正图像对应点的灰度值。一般校正后的图像某些像素点可能挤压在一起,或者分散开,不会恰好落在坐标点上,因此常采用内插法来求得这些像素点的灰度值。经常使用的方法有如下两种。

  1) 最近邻点法

  最近邻点法是取与像素点相邻的4个点中距离最近的邻点灰度值作为该点的灰度值。如图所示。最近邻点法计算简单,但精度不高,同时校正后的图像亮度有明显的不连续性。

  2) 双线性内插法

我的微信公众号名称:深度学习与先进智能决策
微信公众号ID:MultiAgent1024
公众号介绍:主要研究分享深度学习、机器博弈、强化学习等相关内容!期待您的关注,欢迎一起学习交流进步!

数字图像处理(五) 图像复原相关推荐

  1. 第5章 Python 数字图像处理(DIP) - 图像复原与重建1 - 高斯噪声

    本章主要讲图像复原与重建,首先是了解一下各种噪声的特点与模型,还有形成的方法.一些重点的噪声,如高斯噪声,均匀噪声,伽马噪声,指数噪声,还有椒盐噪声等. 本章主要的噪声研究方法主要是加性噪声. 标题 ...

  2. paper 108:系统学习数字图像处理之图像复原与重建

    首先,必须注意这里所限制的处理条件. 关于图像退化/复原模型 退化的图像是由成像系统的退化加上额外的噪声形成的. 1.只考虑噪声引起的退化 噪声模型,包含于空间不相关和相关两种,除了空间周期噪声,这里 ...

  3. 系统学习数字图像处理之图像复原与重建

    首先,必须注意这里所限制的处理条件. 关于图像退化/复原模型 退化的图像是由成像系统的退化加上额外的噪声形成的. 1.只考虑噪声引起的退化 噪声模型,包含于空间不相关和相关两种,除了空间周期噪声,这里 ...

  4. 数字图像处理之图像复原

    一.图像复原与图像增强的区别 图像的增强是一个主观的过程,其目的是改善图片的质量,对感兴趣的部分加以增强,对不感兴趣的部分予以抑制.而图像复原是一个客观的过程,针对质量降低或失真的图像,试图恢复其原始 ...

  5. 第5章 Python 数字图像处理(DIP) - 图像复原与重建17 - 由投影重建图像、雷登变换、投影、反投影、反投影重建

    标题 由投影重建图像 投影和雷登变换 Johann Radon 反投影 滤波反投影重建 由投影重建图像 本由投影重建图像,主要是雷登变换与雷登把变换的应用,所以也没有太多的研究,只为了保持完整性,而添 ...

  6. 第5章 Python 数字图像处理(DIP) - 图像复原与重建16 - 约束最小二乘方滤波、几何均值滤波

    标题 约束最小二乘方滤波 几何均值滤波 约束最小二乘方滤波 F^(u,v)=[H∗(u,v)∣H(u,v)∣2+γ∣P(u,v)∣2]G(u,v)(5.89)\hat{F}(u,v) = \bigg[ ...

  7. 第5章 Python 数字图像处理(DIP) - 图像复原与重建15 - 最小均方误差(维纳)滤波

    标题 最小均方误差(维纳)滤波 最小均方误差(维纳)滤波 目标是求未污染图像fff的一个估计f^\hat{f}f^​,使它们之间的均方误差最小. e2=E{(f−f^)2}(5.80)e^2 = E ...

  8. 第5章 Python 数字图像处理(DIP) - 图像复原与重建14 - 逆滤波

    标题 逆滤波 逆滤波 逆滤波 逆滤波 图像的退化函数已知或者由前面的方法获取退化函数,则可以直接逆滤波 F^(u,v)=G(u,v)H(u,v)(5.78)\hat{F}(u,v) = \frac{G ...

  9. 第5章 Python 数字图像处理(DIP) - 图像复原与重建13 - 空间滤波 - 线性位置不变退化 - 退化函数估计、运动模糊函数

    标题 线性位置不变退化 估计退化函数 采用观察法估计退化函数 采用试验法估计退化函数 采用建模法估计退化函数 运动模糊函数 OpenCV Motion Blur 在这一节中,得到的结果,有些不是很好, ...

  10. 第5章 Python 数字图像处理(DIP) - 图像复原与重建12 - 空间滤波 - 使用频率域滤波降低周期噪声 - 陷波滤波、最优陷波滤波

    标题 使用频率域滤波降低周期噪声 陷波滤波深入介绍 最优陷波滤波 本章陷波滤波器有部分得出的结果不佳,如果有更好的解决方案,请赐教,不胜感激. 使用频率域滤波降低周期噪声 陷波滤波深入介绍 零相移滤波 ...

最新文章

  1. 知识蒸馏原来不是你想的那样子
  2. Java枚举(深刻而不深沉平淡而不平庸)
  3. delegate和event(转载too)
  4. java开发 时间类型的转换
  5. linux 一次执行多条命令
  6. axios介绍---axios工作笔记001
  7. JAVA加载 编译 运行,在Java 7中编译的加载/运行类6
  8. Vivado设计流程(四)设计综合
  9. System.Timers.Timer(定时器)
  10. 和cc2500通信时总是读入0F
  11. java开源引擎easyrule_【Urule介绍】开源可视化规则引擎
  12. 清华EMBA课程系列思考之六 -- 比较文明视野下的中华领导智慧、企业管理与经济解析
  13. Performing Code Analysis...
  14. 计算机网络 中 网络层
  15. canvas实现图片旋转
  16. 几道特别难搞的数据库面试题
  17. u8的汇兑损益的计算公式_C程序计算损益
  18. Hadoop之——计算机网络端口的定义
  19. 经典案例oracle和mysql分别比较
  20. BackTrack3 硬盘安装教程

热门文章

  1. Unity3d动画脚本 Animation Scripting(深入了解游戏引擎中的动画处理原理)
  2. G1手机上的VOIP之旅 - SIP Server + SipDroid
  3. 删除windows目录下的$NTUnintall$文件夹DOS命令
  4. web安全day29:linux日志异地备份
  5. MySQL优化详解(五)——MySQL分库分表
  6. 计算机网络(HCIP、HCIE)系列文章大合集
  7. 2021年软考VRRP虚拟路由冗余技术
  8. 开发Shell脚本解决DOS安全Linux服务器生产案例
  9. Linux下安装配置PHP环境(下)---PHP
  10. javascript 搜索并高亮显示