【红外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. 盘一盘 Thread源码

    线程是操作系统能够进行运算调度的最小单位.它被包含在进程之中,是进程中的实际运作单位.一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务. 继承关系图 线 ...

  2. 数据库基础之Mysql

    数据库的简介 数据库 数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合.数据库中的数据按一定的数学模型组织.描述和存储,具有较小的冗余,较高的数据独立性和易扩展性, ...

  3. Zookeeper面试总结,年后涨薪轻而易举

    此文不是入门教程,是需要一定的zookeeper基础的 zookeeper应用 同意命名服务 在分布式系统中,各个系统都有可能做为服务提供者,可以向外提供服务,这个时候就需要对服务的名字进行统一规划, ...

  4. 记一次linux磁盘清理 - 已经删除的文件占用了大量磁盘空间

    今天开发环境磁盘占满了,导致开发环境上的 nginx .redis 等组件总是报异常. 跳到系统根目录下 cd / 检查磁盘占用情况 df -h 哇,40G硬盘全用完了.看看是哪些文件占了那么多内存. ...

  5. 常见的java异常——java.lang.IllegalStateException: Ambiguous handler methods mapped for HTTP path

    此异常是由于你的controller中有两个名字与内容相同的方法: 出现此异常时去检查你的controller中是否有重复的名字的方法:

  6. Hadoop集群分布式安装

    一 整体介绍 1.1 硬件环境 本文使用三台服务器搭建hadoop集群,使用Centos7.5系统,服务器均有独立ip 1.2 部署的软件 部署服务:namenode(HA),resourcemana ...

  7. [工具] Git版本管理(知识总结)

    对以下文档进行了简要总结,方面复习: [工具] Git版本管理(一)(基本操作) [工具] Git版本管理(二)(分支) [工具] Git版本管理(三)(工作流) [工具] Git版本管理(四)(贡献 ...

  8. 洛谷$P$2235 $Kathy$函数 $[HNOI2002]$ 数位$dp$

    正解:数位$dp$ 解题报告: 传送门$qwq$ $HNOI$的题从02年就这么神了嘛$QAQ$,,, 嗷对了这题如果看出了一个结论就是个数位$dp$板子,,,?但是结论很神我$jio$得挺难看出来的 ...

  9. C#反射与特性(三):反射类型的成员

    目录 1,获取类型的信息 1.1 类型的基类和接口 1.2 获取属性.字段成员 上一篇文章中,介绍如何获取 Type 类型,Type 类型是反射的基础. 本篇文章中,将使用 Type 去获取成员信息, ...

  10. MinGW-W64下载与安装

    安装方案 1 下载安装包,MinGW-w64 - for 32 and 64 bit Windows,然后直接以管理员安装即可,但是这个方案在部分电脑可能不行,会提示 cannot download ...