【红外DDE算法】数字细节增强算法的缘由与效果(我对FLIR文档详解)

1. 为什么红外系统中图像大多是14bit(甚至更高)?
一个红外系统的性能经常以其探测的范围来区别,以及其对最小等效温差指标。首先是探测的范围,就是常说的动态范围,意思是探测器能够检测到温度红外信号的范围。然后是最小等效温差,意思是探测器能够检测到的最小温度差。
这就好比一把尺子,有两个重要指标。第一,就是尺子的量程,意思是它能丈量多少长度范围的物体;第二,就是尺子的最小刻度,就是它能够分辨多少精度的长度。
在自然界中,红外信号不同于可见光,动态范围比较宽,而且物体信号的差异比较小。所以我们需要高bit的ADC(模数转换器)去采集红外信号。常用的ADC位宽有:12bit 、14bit 、16bit。
2. 相机的14bit数据怎么显示?
许多模拟和数字视频接口都要求是8位,而且人类只能识别图像中约128级灰阶(7位)。要想将显示14位数据,就得将动态范围有效地限制到256级灰阶。因此,需要一种从14bit到8 bit的对应关系或者方法。一般常用的就是“滑位显示”,比如Camera link采集卡上显示采集到的超过8位 的灰度图像。
但是在红外图像中,不能采取该办法。“滑位显示”方法显示高8位的数据,那么低位的数据就被舍弃,这样的显示必然会丢失细节。
所以这种高动态范围的红外图像显示并不是那么简单,既然相机“看到”了,并不一定可准确不失真的显示,让人眼也“看见”。
3. DDE算法的提出
为了解决这14bit至8bit显示的问题,既要能够保障图像的整体信息,又能够保障图像的细节既可能被保留。FLIR 提出了一种算法,帮助用户解决在高动态范围场景中克服低对比度目标检测的难题。FLIR称之为 数字图像细节增强(DDE)。FLIR在《Technical Note --DDE 》对其描述如此:“DDE是一种改进的非线性图像处理算法,可以保留高动态范围图像中的细节。图像细节得到增强,从而与原始图像的总动态范围相匹配,这样即使在极端的温度动态范围的场景中,操作员也能够看清细节。”
4. FLIR的理论示例
使用一个理论上的五个温度目标(ΔT≈200mK)的图像,分别对比采用“线性映射”,“HE直方图均衡”,DDE算法进行处理。在这三张图,五组“栅状目标”隐藏其中,每一个目标较其所在的背景的温度高出大约200mK的温度值。

图1 采用AGC(线性映射)算法 (看不到目标)

图2 采用HE(直方图均衡)算法 (只能看到一个目标)

图3 采用DDE算法 (所有目标都能看到)
采用FLIR的DDE算法(如图3),5个目标都能被同时看到。而且呢,这五个目标的对比度相同,和特定动态范围中有多少像素无关。这就使得DDE在不管场景如何变化下,都是有效且可预测的。
传统的AGC算法消除了极端值,然后将动态范围线性映射到8bit域。然而,这对高动态范围视频几乎没有帮助。HE直方图均衡化,增加了主要灰度分布的温度/辐照度范围的对比度。如果目标不在那个主要灰度分布动态范围内吗? DDE为细节分配了可用对比度的预定义部分。低对比度物体的检测概率在图像上是恒定的。
5. 我的 DDE实例
图4-图8展示的一个相当高动态范围场景的图片序列。图4 是采用标准的AGC(线性映射)算法,该算法将截止(省略)一些极端像素,这样就使得位于直方图的绝大部分灰度形成更大对比度。

图4 采用标准的AGC(线性映射)算法
在图5-图7中,使用ImageJ软件是人为的调整以便拉伸部分灰度范围,以更好的显示目标。

图5 图像的低灰度信号范围
在图5中,使用ImageJ软件拉伸图像中灰度值较低的像素值,可以发现:经过拉伸,可以看到如箭头所示的指示牌信息以及树木草丛细节。这些潜在的信息在图4中观察不到。

图6 图像的中间灰度信号范围
在图6中,使用ImageJ软件拉伸图像中灰度值处于中间的像素值,可以发现:经过拉伸,可以看到楼宇清晰的边缘信息。楼宇突出的边缘部分和楼宇的其他外墙是有显著的温度差异得到了很好的表现。在图4中,这些差异的显示是微弱的,原始图像中的这些细节差异已然被损失。

图7 图像的高灰度信号范围
在图7中,使用ImageJ软件拉伸图像中灰度值较高的像素值,可以发现:经过拉伸,可以看到楼宇右侧外墙的边缘信息,以及广告牌上的文字信息。而在图4中,这些信号差异没有那么明显。

图8 采用DDE算法,可以同时观察到所有目标。
最后,图8显示了使用Luster的DDE算法。 可以同时观察到所有目标。 在图像中可以看到非常少的伪影(artifacts)。
6. 不同厂家的图像增强算法
针对高动态范围的红外图像的压缩显示,不同的厂家有自己的算法命名,比如:Leonardo称其算法为GLACE(local contrast enhancement ),局部对比度增强算法;Xenics称其算法XIE( Xenics image enhancement ),Xenics图像增强。究其本质都是为了将大动态范围红外图像中低对比度目标显示出来。

【红外DDE算法】数字细节增强算法的缘由与效果(我对FLIR文档详解)的更多相关文章

  1. 数字麦克风PDM转PCM与STM32 I2S接口应用----重要文档列表

    数字麦克风PDM脉冲到PCM信号需要一个二次采样,ST 提过了PDM2PCM的软件包,可以完成上面的工作.软件包源码没有开源,使用手册也简洁的让人抓狂,我觉得可能是因为ST更高级的MCU直接带了硬解码 ...

  2. Taurus.MVC 2.3 开源发布:增强属性Require验证功能,自带WebAPI文档生成功能

    背景: 上周,把 Taurus.MVC 在 Linux (CentOS7) 上部署任务完成后. 也不知怎么的,忽然就想给框架集成一下WebAPI文档功能,所以就动手了. 以为一天能搞完,结果,好几天过 ...

  3. 【红外DDE算法】聊聊红外图像增强算法的历史进程(第一回)

    宽动态红外图像增强算法综述回顾过去带你回顾宽动态红外图像增强算法的历史进程,历来学者的一步步革命(新的算法框架提出),一步步改革(改进优化),从简单粗暴到细致全面.正所谓是:改革没有完成时,只有进行时 ...

  4. 图像增强之DDE---基于红外图像的数字图像细节增强DDE

    (1)DDE应用背景 (2)DDE算法简介 (3)DDE 实现 (4)DDE 总结和不足 ----------author:pkf -----------------time:2-9 -------- ...

  5. 基于Matlab的MMSE的语音增强算法的研究

    本课题隶属于学校的创新性课题研究项目.2012年就已经做完了,今天一并拿来发表.   目录: --基于谱减法的语音信号增强算法..................................... ...

  6. ABBYY FineReader 15 中保存和导出PDF文档的小细节

    运用ABBYY FineReader OCR文字识别软件,用户能将各种格式的PDF文档保存为新的PDF文档.PDF/A格式文档,以及Microsoft Word.Excel.PPT等格式.在保存与导出 ...

  7. 深入探究JVM之垃圾回收算法实现细节

    @ 目录 前言 垃圾回收算法实现细节 根节点枚举 安全点 安全区域 记忆集和卡表 写屏障 并发的可达性分析 低延迟GC Shenandoah ZGC 总结 前言 本篇紧接上文,主要讲解垃圾回收算法的实 ...

  8. 夜晚场景图像ISP增强算法

    夜晚场景图像ISP增强算法 输入输出接口 Input: (1)图像视频分辨率(整型int) (2)图像视频格式(RGB,YUV,MP4等) (3)摄像头标定参数(中心位置(x,y)和5个畸变 系数(2 ...

  9. 机器学习之Adaboost (自适应增强)算法

    注:本篇博文是根据其他优秀博文编写的,我只是对其改变了知识的排序,另外代码是<机器学习实战>中的.转载请标明出处及参考资料. 1 Adaboost 算法实现过程 1.1 什么是 Adabo ...

随机推荐

  1. H3C 端口隔离配置举例

  2. RabbitMQ-Exchange交换器

    交换器分类 RabbitMQ的Exchange(交换器)分为四类: direct(默认) headers fanout topic 其中headers交换器允许你匹配AMQP消息的header而非路由 ...

  3. 正则&转义字符&特殊字符

    正则 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑. 由于正则表达式主要应用对 ...

  4. Js中没有方法的重载

    <script type="text/javascript"> //方法名相同,后面的方法覆盖了前面的方法.后面的方法需要一个name,但没给传值,所以是undefin ...

  5. 2018.10.26 浪在ACM 集训队第二次测试赛

    2018.10.26 浪在ACM 集训队第二次测试赛 整理人:苗学林 A海港 参考博客:[1]:李继朋https://www.cnblogs.com/violet-acmer/p/9859006.ht ...

  6. ASP.NET WebForm Ajax请求Handler的经验

    ajax代码 $.ajax({ type: "GET", url: "/AjaxHandler/GetPluginCode.ashx", data: " ...

  7. hibernate配置文件模板

    hibernate.cfg.xml 配置文件模版: <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-config ...

  8. 什么是 DQN

    粉红色:不会. 黄色:重点. 1.为什么要使用神经网络 我们使用表格来存储每一个状态 state, 和在这个 state 每个行为 action 所拥有的 Q 值. 而当今问题是在太复杂, 状态可以多 ...

  9. FPM简介(定制rpm包)

    FPM简介 fpm是生成rpm包的工具.rpm包的制作,采用fpm工具完成,FPM非常易用,此命令可以把rpm包的安装.卸载做得更加优雅,在安装前可以做一些准备工作,安装后可以做一些收尾工作,在卸载前 ...

  10. JavaScript 构造树形结构的一种高效算法

    引言 我们经常会碰到树形数据结构,比如组织层级.省市县或者动植物分类等等数据.下面是一个树形结构的例子: 在实际应用中,比较常见的做法是将这些信息存储为下面的结构,特别是当存在1对多的父/子节点关系时 ...