红外图像去噪

对于图像来说,在不同的应用领域会产生不同的图像噪声,但万变不离其中,图像的噪声可分为加性和乘性噪声;或分为空域和时域噪声。就我个人而言,较为喜欢空域和时域的分类方式,因为可以对应着去噪算法的种类;空域、频域、时域、小波域、时-空域等去噪算法,另外还有基于深度学习的去噪算法。
当然在处理图像噪声时,要分析噪声的组成,并知道其实加性噪声还是乘性噪声,有利于算法的选择,以及处理效果的分析。
在处理红外图像时,在工作过程中我遇到了各种红外噪声,有些能较好的解决,而有些就只能优化图像质量,权衡各种参数,以达一个能接受的结果。碰见的噪声有:锅盖效应、冷反射现象、行列噪声、点噪声、坏点噪声、闪烁噪声、蒙纱噪声。
1.锅盖效应:由结构散热和镜头引起的探测器外围与中心区域能量接收不均的现象。并随着机器冷启动到热平衡的过程不断加深的现象(如下图所示)。
锅盖效应1

锅盖效应2
解决图像的锅盖效应,首先要考虑的是结构散热,散热无法·优化的情况下就需要加入去锅盖的算法。对于去锅盖算法,一种实时计算实时补偿,另一种则是采集均匀面图像并计算补偿模版,然后通过模板对图像进行实时的去锅盖补偿。虽然两种类型的算法我都有进行研究,但我目前采用的是后者,即采用模版进行图像补偿。通过这个算法基本解决了锅盖对图像的影响,并可以通过机芯内部的温感模块,实时计算锅盖的补偿系数,实现了冷机到热机整个过程的去锅盖。而关于实时计算并补偿的算法,就我个人看来也基本解决了锅盖对图像的影响,而且这个算法还不用进行数据标定(另外在这里还解决了一个算法波纹问题),但论最终的图像效果而言还是模版校正的效果好一点,所以最终选了它。
关于模版校正,我能提供的算法思路是:将锅盖效应看做加性噪声,并且是一个低频的加性噪声,剩下要做的就是,使用算法去提取这个噪声模版,然后去除它。另外实时校正也是大致的思路,无非就是算法以及流程差异。
图2去除锅盖后:
请添加图片描述
2.冷反射现象:存在于制冷探测器的红外设备中,形成的原因是低温探测器面板的辐射被镜片反射后所形成的像。这个是光学设计所造成的,要想减弱它,需要的是优化光学系统。当然也能通过图像算法消除这一现象,我目前采用的图像算法虽然能消除冷反射的影响,但一旦调焦就会重新出现冷反射现象。因为采用的算法不是根据焦距变化实时对图像进行处理的。我也尝试了采用实时的算法对其进行处理,但由于硬件资源以及其他项目开发等原因没有继续对算法进行优化了。至于冷反射的图像效果可以参考锅盖效应的效果。
3.行列噪声:该噪声在红外领域是非常常见的一种噪声,红外设备必定会搭载行列去噪算法,目前处理该噪声的常用算法皆为:统计->计算权重->去除。基于此,行列去噪算法我优化了三个版本,每个版本都各有各的优点,等有空的时候我在另开一篇仔细介绍一下这三个版本的优缺点(项目时间太久了,得去回顾一下)。
4.点噪声:点噪声表现为泊松噪声、椒盐噪声等,通常的处理方法是加入均值滤波、中值滤波、高斯滤波等基础滤波算法,但由于红外图像其本身的细节就少,使用这些算法会过多的损失图像细节;所以需要使用一些保边效果较好的算法。如双边滤波,侧窗滤波,导向滤波等。再图像处理的过程中整体表现较为均衡的是导向滤波算法了,其他两个一个是速度稍慢,另一个则是在某些场景下会出现果冻效应(看着像油画一样),这个不知道怎么造成的,目前没有时间去找问题和优化。
5.坏点噪声:这个噪声对于红外探测器来说是不可避免的,不管是制冷还是非制冷探测器,去坏点都是必要的步骤。目前的去坏点算法有自动实时去坏点,k值去坏点,手动去坏点等算法。针对不同的探测器可以选择使用其中一种或者几种。
手动去坏点:这个就比较简单了,就是用肉眼看到哪个是坏点,使用鼠标点击它,然后使用A值代替,或者用隔壁的值代替,这就随便你了,手动去坏点一般在出厂矫正时使用的较多,客户正常使用的时候一般不会有人去用的。
k值去坏点:就是根据矫正后的线性关系去除坏点,不符合线性关系就被认为是坏点,使用正常的线性关系替换它。
自动实时去坏点:大家可以参考一下这篇https://www.cnblogs.com/qiqibaby/p/8597057.html。需要注意的是其中的几个问题,单个坏点容易判断和去除,块状的坏点如何识别、去除与替换;如何分辨高对比度边缘(如下图);要进行8~16位数据输入输出时,固定阈值是行不通的,如何使可变阈值可靠;这些问题解决好后,实时去坏点才基本完成。以后可以用这个算法出个ui工具发出来,让它实时输出坏点坐标以及处理后的效果图。
高对比度图
6.闪烁噪声:对于红外机器来说,制冷型与非制冷型的闪烁噪声是有区别的。对于非制冷机器,它的闪烁是无规律的,闪烁的原因经过研究后发现与这几个方面有关,场景变换和坏点的出现会导致图像出现闪,场景变换出现闪烁是能理解的,为什么说坏点的出现也导致了闪烁呢?研究后发现偶尔出现的坏点会影响直方图均衡算法对灰度值的分配,这导致了一部分的随机闪烁。而且行列去噪算法也会导致闪烁闪烁现象的发生。所以导致非制冷闪烁的原因有坏点、直方图均衡算法和行列去噪算法,当然还有处理电路的原因,这方面我就没有研究了。但对上面三个算法进行优化改进后,基本上就能克服闪烁了。
对于制冷型探测器的闪烁而言,我统计了它的闪烁规律,发现了一个有趣的现象,它的闪烁居然是有规律的,而且还是周期性跳动的,就好像呼吸一样,经过12个小周期就会有一个大周期,每个小周期大概有7~12帧的图像。这种闪烁没法彻底的去除,反正我没做到。但也可以使用上面优化的三个算法进行减弱,效果还是可以的。
7.蒙纱噪声:这个噪声在红外探测器中不是很常见,不是每个探测器都会明显到能肉眼看见,我就见过3台机器有这种噪声,所以对这个噪声的去除算法没有多么深入的去研究,但也有相应的算法研究结果,虽然没有去测试算法的鲁棒性,但在测试图像中是有明显效果的。
这个噪声表现为在图像上有一层固定的噪声,不随时间场景而变化,如下图,图像有一层纱纸的感觉。
蒙纱噪声

  • 18
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值