留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

基于暗通道先验的红外图像清晰化及FPGA实现

李娜 邓家先 崔亚妮 陈褒丹

李娜, 邓家先, 崔亚妮, 陈褒丹. 基于暗通道先验的红外图像清晰化及FPGA实现[J]. 红外与激光工程, 2021, 50(3): 20200252. doi: 10.3788/IRLA20200252
引用本文: 李娜, 邓家先, 崔亚妮, 陈褒丹. 基于暗通道先验的红外图像清晰化及FPGA实现[J]. 红外与激光工程, 2021, 50(3): 20200252. doi: 10.3788/IRLA20200252
Li Na, Deng Jiaxian, Cui Yani, Chen Baodan. Infrared image clarifying and FPGA implementation based on dark channel prior[J]. Infrared and Laser Engineering, 2021, 50(3): 20200252. doi: 10.3788/IRLA20200252
Citation: Li Na, Deng Jiaxian, Cui Yani, Chen Baodan. Infrared image clarifying and FPGA implementation based on dark channel prior[J]. Infrared and Laser Engineering, 2021, 50(3): 20200252. doi: 10.3788/IRLA20200252

基于暗通道先验的红外图像清晰化及FPGA实现

doi: 10.3788/IRLA20200252
基金项目: 海南省重点研发计划项目(ZDYF019006);海南省科协青年科技英才学术创新计划项目(QCXM201912);国家自然科学基金(61961160706,0066/2019/AFJ)
详细信息
    作者简介:

    李娜(1996−),女,海南大学信息与通信工程学院硕士研究生。2018年于西南民族大学电气工程及其自动化专业获工学学士学位。主要研究方向为红外图像处理

    邓家先(1964−),男,汉族,湖北钟祥人,海南大学信息与通信工程学院教授。2004年于西安电子科技大学信息与通信工程专业获工学博士学位。主要研究方向为数字图像处理、数据加密、自适应信号处理

    陈褒丹(1962−),男,海南大学信息与通信工程学院副教授。1984年于华南师范大学物理学专业获理学学士学位。主要研究方向为海上通信、网络与通信工程

    通讯作者: 陈褒丹
  • 中图分类号: TP391

Infrared image clarifying and FPGA implementation based on dark channel prior

  • 摘要: 针对红外图像普遍存在目标与背景对比度低、细节模糊等问题,提出一种改进的基于暗通道先验理论的红外图像清晰化算法,并在FPGA平台加以设计实现。该算法通过对输入图像当前像素和邻域的数据进行非线性滤波得到暗通道图像数据,并利用修正函数对透射率进行优化生成透射率查找表。在此基础上,根据暗通道像素值在查找表中查找透射率,并结合大气光散射模型进行图像清晰化处理,从而减少或消除传统暗通道算法产生的块效应及天空等高亮区域的颜色失真。结果表明,处理后的红外图像细节特征丰富、明亮度适宜。所提算法基于FPGA硬件实现仅占用4%的LUT和8%的I/O资源,工作频率最高达188 MHz,远远高于所使用的红外相机工作频率27 MHz,能够满足实时处理视频图像的需求。
  • 图  1  暗通道对比图

    Figure  1.  Comparison diagram of dark channel

    图  2  透射率修正前

    Figure  2.  Transmission before estimation

    图  3  透射率修正后

    Figure  3.  Transmission after estimation

    图  4  透射率修正后图像数据比较

    Figure  4.  Comparison image after estimate $t(x)$

    图  5  Camera Link数据控制信号的时序示意图

    Figure  5.  Timing diagram of Camera Link control signal

    图  6  数据缓存示意图

    Figure  6.  Data caching diagram

    图  7  图像1数据比较

    Figure  7.  Comparison image1

    图  8  图像2数据比较

    Figure  8.  Comparison image2

    表  1  时钟周期

    Table  1.   Timing summary

    ParameterValue
    Minimum period/ns5.307
    Maximum frequency/MHz 188.43
    下载: 导出CSV

    表  2  硬件实现方案比较

    Table  2.   Comparison of implementation results of the proposed work with the existing works

    Logic utilizationRef.[14]Ref.[15]Proposed hardware algorithm
    Slice LUTs 307 of 28800 (1%) 6119 of 39600 (15%) 2678 of 63400 (4%)
    Block RAMs 16 of 60 (26%) 40% 9 of 135 (6%)
    I/O cells 82 of 480 (17%) * 24 of 285 (8%)
    Slice registers 493 of 28800 (1%) * 2257 of 126800 (1%)
    Time period/ms 0.9057 0.3 0.1185
    下载: 导出CSV

    表  3  红外图像不同算法处理定量评价结果

    Table  3.   Infrared image quantitative evaluation result of different algorithm processing

    Image 1Image 2
    ePSNRePSNR
    Original infrared image022.7104022.6584
    He algorithm with block effect2.103120.87844.799620.3565
    Wan algorithm0.041222.54180.131822.4613
    He algorithm after soft mapping2.044921.01643.865620.4240
    Proposed software algorithm2.620322.39093.366422.6171
    Proposed hardware algorithm1.127222.11992.059222.4859
    下载: 导出CSV
  • [1] Ding Chang, Dong Lili, Xu Wenhai. Enhancement technique for infrared scene with maritime target [J]. Acta Optica Sinica, 2018, 38(6): 122-130. (in Chinese)
    [2] Zhu Qingfeng, Zhang Rui, Zhu Wenqing, et al. SWIR image enhancement based on wavelet transform and pairwise target contrast [J]. Semiconductor Optoelectronics, 2019, 40(5): 688-693.
    [3] Wan Minjie, Gu Guohua, Qian Weixian, et al. Infrared image enhancement using adaptive histogram partition and brightness correction [J]. Remote Sens, 2018, 10, 682: 1-34.
    [4] Cao Haijie, Liu Ning, Xu Ji, et al. Infrared image adaptive inverse histogram enhancement technology [J]. Infrared and Laser Engineering, 2020, 49(04): 0426003. (in Chinese) doi:  10.3788/IRLA202049.0426003
    [5] Chen zheng. Design and implementation of infrared image detail enhancement algorithm based on FPGA [J]. Laser & Infrared, 2018, 48(7): 925-929. (in Chinese)
    [6] Li Yi, Zhang Yunfeng, Geng Aihui, et al. Infrared image enhancement based on atmospheric scattering model and histogram equalization [J]. Optics & Laser Technology, 2016, 83: 99-107.
    [7] He K M, Sun J, Tang X O. Single image haze removal using dark channel prior[C]//Computer Vision and Pattern Recognition, 2009, CVPR 2009. IEEE Conference on. IEEE, 2009: 1956-1963.
    [8] Yang Yan, Wang Zhiwei. Image restoration algorithm based on compensated transmission and adaptive haze concentration coefficient [J]. Journal on Communications, 2020, 41(1): 66-75.
    [9] Chia-Chi Tsai, Cheng-Yen Lin, Jiun-In Guo. Dark channel prior based video dehazing algorithm with sky preservation and its embedded system realization for ADAS applications [J]. Optics Express, 2019, 27(9): 11877-11901. doi:  10.1364/OE.27.011877
    [10] Yuan Xiaoyan, Zhang Zhaofeng, Gu Zhenfei, et al. An infrared image enhancement method based on the atmospheric scattering model [J]. Chinese Journal of Electron Devices, 2019, 42(1): 147-156. (in Chinese)
    [11] Li Yi, Zhang Yunfeng, Zhang Qiang, et al. Infrared image contrast enhancement based on haze remove method [J]. Chinese Journal of Lasers, 2015, 42(1): 0113004. (in Chinese) doi:  10.3788/CJL201542.0113004
    [12] Narasimhan S G, Nayar S K. Vision and the atmosphere [J]. International Journal of Computer Vision, 2002, 48(3): 233-254. doi:  10.1023/A:1016328200723
    [13] Shi Zhenwei, Long Jiao, Tang Wei, et al. Single image dehazing in inhomogeneous atmosphere [J]. Optik, 2014, 125(15): 3868-3875. doi:  10.1016/j.ijleo.2014.01.170
    [14] Memon F, Jameel F, Arif M, et al. Model based FPGA design of histogram equalization [J]. Sindh Univ Res Jour, 2016, 48(2): 435-440.
    [15] Liu Bin, Zhao Jianzhang, Kong Xiangxin, et al. HDR infrared image detail enhancement method based on the FPGA [J]. Acta Metrologica Sinica, 2018, 39(4): 493-497. (in Chinese)
    [16] Hautiere N, Tarel J P, Aubert D, et al. Blind contrast enhancement assessment by gradient ratioing at visible edges [J]. Image Analysis and Stereology Journal, 2008, 27(2): 87-95.
    [17] Li Fangzhou, Zhao Yaohong, Xiang Wei, et al. Infrared image mixed noise removal method based on improved NL-means [J]. Infrared and Laser Engineering, 2019, 48(S1): 169-179. (in Chinese) doi:  10.3788/IRLA201948.S128001
  • [1] 张宝辉, 李中文, 吴杰, 吉莉, 王炜毅, 蔡璐, 时亚辉, 法静怡.  中波1 280×1 024红外成像组件设计(特邀) . 红外与激光工程, 2021, 50(4): 20211023-1-20211023-9. doi: 10.3788/IRLA20211023
    [2] 张永康, 陈萍, 孟祥笙, 田雁.  大视场视频图像采集及SDI显示设计 . 红外与激光工程, 2021, 50(S2): 20200211-1-20200211-7. doi: 10.3788/IRLA20200211
    [3] 刘汝卿, 蒋衍, 李锋, 孟柘, 郭文举, 朱精果.  实时感知型激光雷达多通道数据采集系统设计 . 红外与激光工程, 2021, 50(5): 20200291-1-20200291-7. doi: 10.3788/IRLA20200291
    [4] 郭弘扬, 杜升平, 黄永梅, 付承毓.  液晶空间光调制器过驱动方法的FPGA实现 . 红外与激光工程, 2019, 48(7): 722002-0722002(7). doi: 10.3788/IRLA201948.0722002
    [5] 徐超, 何利民, 王霞, 金伟其.  红外偏振成像系统高速处理模块设计 . 红外与激光工程, 2017, 46(2): 204002-0204002(8). doi: 10.3788/IRLA201746.0204002
    [6] 殷世民, 高丽伟, 梁永波, 朱健铭, 梁晋涛, 陈真诚.  基于FPGA的干涉式红外成像光谱仪实时光谱复原研究 . 红外与激光工程, 2017, 46(7): 720001-0720001(6). doi: 10.3788/IRLA201746.0720001
    [7] 宋颖超, 罗海波, 惠斌, 常铮.  尺度自适应暗通道先验去雾方法 . 红外与激光工程, 2016, 45(9): 928002-0928002(12). doi: 10.3788/IRLA201645.0928002
    [8] 武超群, 李梅, 周璐春.  哈特曼传感器仿真平台设计 . 红外与激光工程, 2015, 44(2): 567-571.
    [9] 张磊, 王岳环, 宋琼.  红外焦平面条带状非均匀性校正硬件实现方法 . 红外与激光工程, 2015, 44(10): 2886-2890.
    [10] 杨磊, 任龙, 刘庆, 王华, 周祚峰, 曹剑中.  基于FPGA 的大视场图像实时拼接技术的研究与实现 . 红外与激光工程, 2015, 44(6): 1929-1935.
    [11] 郝贤鹏, 张然峰, 陶宏江.  基于FPGA的高速图像传输系统设计 . 红外与激光工程, 2015, 44(11): 3483-3487.
    [12] 邓永停, 李洪文, 王建立, 阴玉梅, 吴庆林.  基于DSP和FPGA的望远镜伺服控制系统设计 . 红外与激光工程, 2014, 43(3): 908-914.
    [13] 王华伟, 曹剑中, 马彩文, 张辉, 武登山.  具有自适应校正功能的红外成像系统设计 . 红外与激光工程, 2014, 43(1): 61-66.
    [14] 王耀利, 温廷敦, 王志斌, 张瑞, 黄艳飞, 陈友华.  基于静态固体斜楔干涉的红外探测技术 . 红外与激光工程, 2014, 43(10): 3188-3192.
    [15] 王文华, 张宇, 张柯, 任建岳.  CCD成像系统的模拟自校图形设计 . 红外与激光工程, 2013, 42(7): 1933-1939.
    [16] 赵晓, 张伟, 侯晴宇, 巩晋南.  多尺度匹配的红外变分辨率弱小目标检测 . 红外与激光工程, 2013, 42(11): 2913-2918.
    [17] 母杰, 郑文佳, 李梅, 饶长辉.  基于FPGA和DSP技术的自适应光学系统在线大气湍流参数测量平台 . 红外与激光工程, 2013, 42(3): 703-708.
    [18] 王森, 潘玉寨, 刘一, 杨宝森, 曲士良.  提高雾天激光主动成像图像质量的研究 . 红外与激光工程, 2013, 42(9): 2392-2396.
    [19] 任广辉, 王刚毅, 金炎胜.  利用FPGA的高性能向导滤波器设计 . 红外与激光工程, 2013, 42(2): 537-542.
    [20] 朱瑞飞, 王超, 魏群, 贾宏光, 周文明.  红外探测器非均匀性校正系统研制 . 红外与激光工程, 2013, 42(7): 1669-1673.
  • 加载中
图(8) / 表(3)
计量
  • 文章访问数:  318
  • HTML全文浏览量:  91
  • PDF下载量:  52
  • 被引次数: 0
出版历程
  • 收稿日期:  2020-11-09
  • 修回日期:  2020-12-11
  • 网络出版日期:  2021-05-12
  • 刊出日期:  2021-03-25

基于暗通道先验的红外图像清晰化及FPGA实现

doi: 10.3788/IRLA20200252
    作者简介:

    李娜(1996−),女,海南大学信息与通信工程学院硕士研究生。2018年于西南民族大学电气工程及其自动化专业获工学学士学位。主要研究方向为红外图像处理

    邓家先(1964−),男,汉族,湖北钟祥人,海南大学信息与通信工程学院教授。2004年于西安电子科技大学信息与通信工程专业获工学博士学位。主要研究方向为数字图像处理、数据加密、自适应信号处理

    陈褒丹(1962−),男,海南大学信息与通信工程学院副教授。1984年于华南师范大学物理学专业获理学学士学位。主要研究方向为海上通信、网络与通信工程

    通讯作者: 陈褒丹
基金项目:  海南省重点研发计划项目(ZDYF019006);海南省科协青年科技英才学术创新计划项目(QCXM201912);国家自然科学基金(61961160706,0066/2019/AFJ)
  • 中图分类号: TP391

摘要: 针对红外图像普遍存在目标与背景对比度低、细节模糊等问题,提出一种改进的基于暗通道先验理论的红外图像清晰化算法,并在FPGA平台加以设计实现。该算法通过对输入图像当前像素和邻域的数据进行非线性滤波得到暗通道图像数据,并利用修正函数对透射率进行优化生成透射率查找表。在此基础上,根据暗通道像素值在查找表中查找透射率,并结合大气光散射模型进行图像清晰化处理,从而减少或消除传统暗通道算法产生的块效应及天空等高亮区域的颜色失真。结果表明,处理后的红外图像细节特征丰富、明亮度适宜。所提算法基于FPGA硬件实现仅占用4%的LUT和8%的I/O资源,工作频率最高达188 MHz,远远高于所使用的红外相机工作频率27 MHz,能够满足实时处理视频图像的需求。

English Abstract

    • 由于红外探测器普遍具有的非均匀性和外界环境温度的影响,导致红外成像存在对比度低、边缘模糊、细节信息较差等问题。因此,对红外图像进行细节增强、增加目标与背景间的对比度,使其更加适应于人眼视觉是十分必要的。

      传统的红外图像增强算法分为空间域增强和频域增强,频域增强的算法有基于傅里叶变换、小波变换等[1-2],这类算法采用非线性变换函数对系数进行变换,增强图像的细节高频信息,同时抑制噪声的放大,可以取得较好的增强效果,但通常计算量较大,不利于硬件实现。空间域增强的方法由于直接对图像灰度值进行处理,便于硬件语言实现,因此应用广泛。早期的空间域增强算法有空域滤波、直方图均衡化及其改进的算法等[3-4]。Wan等提出的自适应平台直方图均衡化算法为提升图像细节信息留出了一定灰度空间,图像增强效果有一定的改善。参考文献[5]提出了一种双边滤波和平台直方图均衡的红外图像增强算法的FPGA实现方法,丰富了图像细节信息的同时噪声也有所增强。这些方法只是简单的平衡了红外图像的灰度信息,当处理大动态范围的灰度图像时,处理后的图像细节损失较大,造成图像模糊。

      受红外成像原理及外部环境的影响,红外图像相邻像素点灰度值接近,造成细节模糊,与可见光雾图相似。因此,近年来基于大气散射模型的空间域增强算法得到充足的发展,该类算法通过统计图像的先验规律,估计相关参数进行增强,能够得到清晰自然的图像[6]。He等[7]提出的暗通道去雾算法是目前最好的图像去雾方法,但是在处理天空等高亮区域时偏色严重,而且在图像的边缘处容易产生块效应。因此,He采用软抠图方法估计透射率有效改善了块效应,由于所提方法涉及大量的矩阵运算,不利于硬件实现。参考文献[8]提出了一种基于补偿透射率和自适应雾浓度系数的图像复原算法,利用高斯函数修正透射率,有效改善了块效应,但该算法计算复杂度较高,无法满足图像的实时处理需求。Tsai等[9]将天空区域分割,通过时间相关性估计大气光值,避免了天空区域的颜色失真,但在近景区域有一定程度偏色现象。上述基于暗通道先验的改进算法均为对彩色图像处理,当图像中有足够的阴影区域时,暗通道去雾算法也适用于灰度图像。参考文献[10]将红外图像灰度值进行反转操作,视反转所得图像为有雾图像,在此基础上采用四叉树分解技术分别估计子块的透射率,该方法计算复杂度高,容易造成局部过度增强。参考文献[11]提出一种基于暗通道先验模型的红外图像增强方法,采用均值滤波估计透射率的值,并通过调节系数进一步优化透射率,减少了块效应的影响,但是处理后的图像整体偏暗,并且达不到实时处理视频图像的要求。

      文中提出了一种基于改进暗通道并且能够在FPGA上实现视频图像实时处理的红外图像清晰化算法。首先对输入原始图像数据进行非线性滤波得到一种新的暗通道图像,然后修正透射率生成透射率查找表,结合暗通道像素值在查找表中定位获得优化后的精准透射率值以解决图像边缘处产生块效应和天空等高亮区域颜色失真的问题,最后辅助大气光散射模型得到处理后图像。对提出算法进行了硬件系统设计,将软件算法生成的透射率查找表添加至硬件语言中使得硬件算法能够直接获取优化后的透射率值,这就大大降低了硬件算法的计算复杂度,节约了硬件资源。实验结果表明,经硬件系统实时处理后的视频图像对比度高,目标景物的轮廓和细节特征突出。

    • 暗通道先验理论是在大气散射模型的基础上提出的。在计算机视觉领域,用于描述大气光散射的物理模型[12]为:

      $$I(x) = J(x)t(x) + A(1 - t(x))$$ (1)

      式中:$I(x)$为输入有雾图像;$J(x)$为输出无雾图像;$t(x)$为透射率;$A$为全局大气光值,在同一幅图像中$A$通常是一个常量。

      He等提出的暗通道先验理论认为,对于绝大多数无雾图像的非高亮区域,在$\{ r,g,b\} $颜色通道内,至少有一个通道的像素值是趋于0。则有:

      $${J^{dark}}(x) = \mathop {\min }\limits_{y \in \Omega (x)} (\mathop {\min }\limits_{c \in \{ r,g,b\} } {J^c}(y)) \to 0$$ (2)

      式中:${J^{dark}}(x)$为暗通道图像;${J^c}(y)$为无雾图像中某个颜色分量;$\Omega (x)$是以像素点$x$为中心的邻域。

      在公式(1)等号左右两边均取最小值滤波,得到:

      $$\begin{split} & \mathop {\min }\limits_{y \in \Omega (x)} (\mathop {\min }\limits_{c \in \{ r,g,b\} } {I^c}(y) =\\ & \mathop {\min }\limits_{y \in \Omega (x)} (\mathop {\min }\limits_{c \in \{ r,g,b\} } {J^c}(y)t(x)) + A(1 - t(x)) \\ \end{split} $$ (3)

      将公式(2)代入公式(3)得到透射率$t(x)$的计算公式为:

      $$t(x) = 1 - \omega \dfrac{{{I^{dark}}(x)}}{A}$$ (4)

      式中:${I^{dark}}(x) = \mathop {\min }\limits_{y \in \Omega (x)} (\mathop {\min }\limits_{c \in \{ r,g,b\} } {I^c}(y))$$\omega $为自适应常数($0 < $$ \omega \leqslant 1$)。结合公式(1)得到重建后的图像:

      $$J(x) = \frac{{I(x) - A}}{{t(x)}} + A$$ (5)

      由公式(5)可知,透射率$t(x)$的取值是影响重建后图像$J(x)$的关键。

      传统的暗通道去雾算法是基于无雾图像的统计规律计算$t(x)$值,会产生以下2个问题:当图像中出现诸如天空等高亮区域时,由于高亮区域不符合暗通道先验的假设条件,会导致处理后图像在天空区域产生失真[13];当图像数据中出现跳变的区域时,对跳变区域进行最小值滤波,会导致图像部分细节信息缺失,从而形成块效应。

    • 由于暗通道去雾算法常用于有RGB三颜色通道的彩色图像去雾,而红外图像是只有灰度信息的单通道图像,为了能够使用暗通道理论进行红外图像清晰化,对暗通道先验的假设条件进行了修正,将公式(2)改写为:

      $${J^{dark}}(x) = \mathop {\min }\limits_{y \in \Omega (x)} (J(y)) \to 0$$ (6)

      此时对公式(1)等号左右两边最小化得到:

      $$ \mathop {\min }\limits_{y \in \Omega (x)} (I(y)) = \mathop {\min }\limits_{y \in \Omega (x)} (J(y)t(x)) + A(1 - t(x)) $$ (7)

      为了减少或消除暗通道先验理论产生的块效应以及高亮区域的颜色失真,首先将公式(7)修正如下:

      $$f(x) = \mathop {\min }\limits_{y \in \Omega (x)} (J(y)t(x)) + A(1 - t(x))$$ (8)

      式中:$f(x) = \mathop g\limits_{y \in \Omega (x)} (I(y))$,即采用输入的原始红外图像数据和其邻域数据进行非线性滤波,代替暗通道图像数据,避免在图像高亮区域所获的暗通道值过低。在公式(6)和(8)的基础上可以获得透射率$t(x)$的值为:

      $$t(x) = 1 - \omega \frac{{f(x)}}{A}$$ (9)

      为了能够直观的看出所提算法的合理性,将所提算法获取的暗通道图像与He算法相比较,如图1所示。可以看出,He算法由于最小值滤波的影响在图像边缘处丢失了部分细节信息,如图1(b)方框所示。而所提算法在和邻域数据进行非线性滤波后,相比He算法有更加自然的灰度分布和更丰富的特征信息,如图1(c)方框所示。

      图  1  暗通道对比图

      Figure 1.  Comparison diagram of dark channel

    • 由于天空等高亮区域不符合暗通道先验的假设条件,导致在这些区域计算的透射率值偏小,造成了颜色失真。根据公式(5),假设$t(x) = t(x + 1)$,则有:

      $$\begin{split} &J(x + 1) - J(x) = \\ & \dfrac{{I(x + 1) - A}}{{t(x + 1)}} + A - \left( {\dfrac{{I(x) - A}}{{t(x)}} + A} \right) = \\ & \dfrac{{I(x + 1) - I(x)}}{{t(x)}} \\ \end{split} $$ (10)

      由公式(10)可知处理后图像相邻像素值之差相比原始像素差值放大了$1/t(x)$倍,当$I(x)$较大、$t(x)$较小时,图像数据相邻像素点即使相差很小,重建后的灰度值也会被放大。这就导致在图像数据发生跳变的时候,形成块效应,影响图像视觉效果。

      因此采用非线性函数$h(x)$$t(x)$的值进行修正得到修正后的透射率${t_1}(x)$,达到改善块效应的目的:

      $${t_1}(x) = h(x)t(x)$$ (11)

      图2为修正前透射率与灰度级之间的关系,图3为修正后透射率与灰度级之间的关系。可以看出在灰度值较高的范围内,图3$t(x)$值做了约束,使其不再趋于0,而是一个逐渐增大的值,以减少或消除图像高亮区域对透射率的影响。

      图  2  透射率修正前

      Figure 2.  Transmission before estimation

      图  3  透射率修正后

      Figure 3.  Transmission after estimation

      在输入灰度级为0~255范围内,将透射率修正后的值放入16×16的查找表中,一方面可以得到优化后的精准透射率值,另一方面可以将查找表数据添加至硬件语言中,使得硬件算法能够直接获得优化后透射率值,从而降低硬件算法的运算量,更加有利于算法的硬件实现。

    • 在充分考虑硬件资源的配置,取暗通道像素值为原始红外图像数据3*3窗口内滤波数据的平均值,取全局大气光值为当前灰度图像的最大值。改进算法的流程如下:

      步骤1 对输入灰度图像数据取3×3窗口滤波数据的平均值作为暗通道像素值$f(x)$

      步骤2 在输入灰度级为0~255范围内,结合公式(9)和(11)对应灰度级计算出256个修正后${1 / {t(x)}}$的值(存${1 / {t(x)}}$值是为了避免在硬件语言中使用除法器,以提高FPGA的运算速度),由此生成一个16×16的透射率查找表Tx_table。

      步骤3 利用暗通道图像数据的每一个像素值定位找出查找表中相应的透射率值${{\rm{1}} / {t(x)}}$ = Tx_table[f(x)]。

      步骤4$\omega $系数值为0.95,根据公式(5)计算出重建后灰度图像数据输出。

      选取有天空等高亮区域的图像验证所提算法的处理效果,结果如图4所示。在图4(b)中,由于暗通道像素取值过低以及透射率$t(x)$采用定值的影响,He算法容易造成天空区域失真以及在图像边缘处产生块效应。图4(c)是在加入软抠图后,块效应得到改善,天空区域仍偏色严重。所提算法采用输入图像的滤波数据代替暗通道图像数据,并且在灰度级为0~255范围内对透射率值进行修正,解决了天空区域颜色失真的问题,处理后的图像过渡平滑、自然清晰。

      图  4  透射率修正后图像数据比较

      Figure 4.  Comparison image after estimate $t(x)$

    • 红外图像清晰化硬件系统采用国产640×480分辨率的长波非制冷红外相机,以及XILINX公司ARTIX-7系列的FPGA芯片作为核心处理器。红外相机端输出遵循Camera Link协议,输出信号包括8比特图像数据、帧有效、行有效及数据有效信号和时钟信号,配置电平转换芯片DS90CR286将相机输出的这些低压差分信号(LVDS, Low Voltage Differential Signaling)转换为TTL/CMOS信号作为FPGA的输入。FPGA内部运行的时钟与相机的工作时钟保持同步,均为27 MHz。电平转换芯片DS90CR285将FPGA处理后的图像信号转换为LVDS信号作为图像采集卡端的输入,显示设备实时地显示处理后的红外图像。

    • 在XILINX公司ISE14.7平台上,使用VHDL语言描述硬件算法。依据上述理论分析,算法的硬件语言实现采取以下几个步骤进行:

      步骤1 将红外相机端采集的图像数据按照Camera Link协议输入;

      步骤2 对输入数据进行3×3窗口内的平均值滤波,得到暗通道图像数据;

      步骤3 通过暗通道图像的像素值在透射率查找表Tx_table中定位找出优化后的透射率值;

      步骤4 结合大气光散射模型重建红外图像的灰度值,处理过后的红外图像输出仍符合Camera Link协议。

    • 红外图像清晰化硬件系统使用的红外相机输出符合Camera Link协议,因此,硬件实现的时候需设计符合Camera Link时序的输入输出接口。图5为Camera Link数据控制信号的时序示意图。

      图  5  Camera Link数据控制信号的时序示意图

      Figure 5.  Timing diagram of Camera Link control signal

      图中,clock为时钟信号;fram_valid为帧有效信号,用来控制每一帧图像数据的输入输出,帧与帧之间间隔一个时钟;line_valid为行有效信号,用来控制一幅图像中每一行数据的输入输出,行与行之间间隔一个时钟;data_valid为数据有效信号,该信号有效时,开始输入输出红外图像数据,data_valid信号晚line_valid信号一个时钟,只有当fram_valid和line_valid信号均有效时,data_valid信号有效。在硬件实现的过程中,利用状态机的跳转完成对上述控制信号的定义,进而实现对图像数据的实时处理。

    • 采用3×3的窗口计算暗通道图像数据,需要在FPGA内部建立两个FIFO用于缓存两行数据,FIFO输出数据为dout1和dout2,再加上当前行数据datain,形成3×3的矩阵,如图6所示:

      图  6  数据缓存示意图

      Figure 6.  Data caching diagram

      假设当前时钟有效时,3行数据分别为G2、G5和G8,首先计算3行数据的和为sum1,对sum1延时,延时后的信号分别用sum2和sum3表示。将sum1、sum2和sum3相加得到最后的sum值为9位滤波数据的和,除以9之后得到滤波数据的平均值avg即为暗通道像素值。开始输入两行原始图像数据时,为了避免FPGA做更多的延时,可以对datain奇扩展形成3行数据完成求平均值运算,同理在一幅图像数据的结尾对dout2奇扩展计算均值。

      为了节约系统硬件资源,提高FPGA运算速度,将C语言生成的修正后的透射率查找表Tx_table直接添加至硬件语言中。利用之前计算得到的暗通道像素值avg在查找表中定位获取优化后的精准透射率值Tx_table[conv_integer (avg)]。调用一个乘法器IP,其中一个乘数为输入原始红外图像像素和$A$的差值,另一个乘数为Tx_table[conv_integer (avg)]。得到的乘积和$A$求和则计算出重建后红外图像的灰度值。

    • 对算法进行验证时,选取型号为XC7A100T的Xilinx ARTIX-7系列的FPGA芯片。在ISE14.7平台上,采用Synplify工具综合后,最高工作频率为188 MHz (如表1所示),远远超过了红外相机的工作频率27 MHz,因此所设计的红外图像清晰化硬件系统满足实时处理视频图像的需求。从表2可以看出所提算法综合后FPGA的资源占用情况,其中Block RAMs占用率为6%,Slice Registers占用率为1%,LUT占用率为4%,硬件资源利用率较少,这就大大降低了设计成本。

      表 1  时钟周期

      Table 1.  Timing summary

      ParameterValue
      Minimum period/ns5.307
      Maximum frequency/MHz 188.43

      表 2  硬件实现方案比较

      Table 2.  Comparison of implementation results of the proposed work with the existing works

      Logic utilizationRef.[14]Ref.[15]Proposed hardware algorithm
      Slice LUTs 307 of 28800 (1%) 6119 of 39600 (15%) 2678 of 63400 (4%)
      Block RAMs 16 of 60 (26%) 40% 9 of 135 (6%)
      I/O cells 82 of 480 (17%) * 24 of 285 (8%)
      Slice registers 493 of 28800 (1%) * 2257 of 126800 (1%)
      Time period/ms 0.9057 0.3 0.1185

      将所提算法的硬件实现方案在逻辑资源占用、时钟周期等方面与其他方案做了对比分析,如表2所示。参考文献[14]通过对红外图像灰度值乘以一个比例因子达到图像增强的目的,所处理的数据量较少,占用了较少的LUT和寄存器资源。参考文献[15]提出使用导向滤波器进行红外图像增强方案需要计算多幅图像的均值和方差,因此LUT和内存资源消耗过多。所提算法将软件算法生成的透射率查找表添加至硬件语言中,使得硬件系统避免了复杂的求取透射率值的计算,占用了最少的RAM和I/O资源和较少的LUT资源。并且,所提算法在硬件测试时使用了最短的时间,更加适合实时的处理视频图像。

    • 软件算法实验平台为Intel Core(TM) i7-7700, 3.6 GHz CPU, 内存8 GB,软件平台为Dev-C++5.11。软件算法所使用的图片由红外相机拍摄之后经图像采集卡捕获得到。

      为验证所提算法在红外图像清晰化方面的有效性和可行性,将所得结果(包括软、硬件算法结果)与参考文献[3]中的自适应平台直方图均衡化算法、He算法进行对比分析。并从主客观角度对图像质量进行评价。

      图7是一组具有丰富细节信息的近景图像,其中图7(a)为非制冷长波红外相机采集的原始红外图像,可以看出图中目标和背景的差别较小,边缘特征模糊。He算法处理后的图像存在块效应,在加入软抠图后,块效应得到改善,但仍存在图像整体偏暗的情况,分别如图7(b)7(d)所示。Wan算法利用自适应平台直方图均衡化来进行增强,平衡了图像整体的灰度,但是没有突出更多的细节特征。图7(e)7(f)分别为改进算法软、硬件处理后的红外图像,可以看出算法突出了目标景物的细节信息,如近处树叶的纹理特征、远处墙体的轮廓特征都得到增强,图像整体对比度提高。

      图  7  图像1数据比较

      Figure 7.  Comparison image1

      图8是一组包含天空区域图像,可以看出所提算法在天空区域有较好的处理效果,这是因为对暗通道图像数据进行了非线性滤波以及修正透射率后的结果,而且硬件算法处理后的图像效果逼近软件算法。He算法在加入软抠图后,整体处理效果较优,但是在天空区域存在偏暗的情况。Wan算法在处理此类图像时,由于自适应参数选取较简单,导致图像处理效果不明显。

      图  8  图像2数据比较

      Figure 8.  Comparison image2

      为了更加全面的判断图像质量,采用常见的客观评价指标进行验证。可见边对比度能够体现处理前后图像细节的清晰化程度[16],新增的可见边之比可以表示为:

      $$e = \frac{{{n_r} - {n_o}}}{{{n_o}}}$$ (12)

      式中:${n_o}$为处理前图像中可见边的数目;${n_r}$为清晰化后图像中可见边的数目。$e$值越大,表明处理后图像有更多的边缘可见,则图像更清晰。峰值信噪比(Peak Signal to Noise Ratio, PSNR)是衡量图像是否失真的指标,其定义为:

      $${\rm{PSNR}} = 20{\log _{10}}\left(\dfrac{{255}}{{{\rm{MSE}}}}\right)$$ (13)

      式中:MSE为图像的均方误差。一幅图像的PSNR值越高,表明图像的质量越好[17]。调用Matlab2019自带的PSNR函数,并添加一幅加噪图像测试改进算法处理后图像效果。从表3可以看出,所提算法处理后的图像相比其他的算法有更高的PSNR的值,$e$值也不弱于其他算法,并且硬件算法处理后图像的PSNR和$e$的值均接近软件算法。因此,所提算法在丰富图像细节信息方面更具优势。

      表 3  红外图像不同算法处理定量评价结果

      Table 3.  Infrared image quantitative evaluation result of different algorithm processing

      Image 1Image 2
      ePSNRePSNR
      Original infrared image022.7104022.6584
      He algorithm with block effect2.103120.87844.799620.3565
      Wan algorithm0.041222.54180.131822.4613
      He algorithm after soft mapping2.044921.01643.865620.4240
      Proposed software algorithm2.620322.39093.366422.6171
      Proposed hardware algorithm1.127222.11992.059222.4859
    • 文中提出了一种基于改进暗通道先验理论的红外图像清晰化算法,并在FPGA平台进行了设计实现。首先对输入图像当前像素和邻域的数据进行非线性滤波得到暗通道图像数据,然后对透射率进行了修正,生成透射率查找表,通过暗通道像素值在查找表中定位获取优化后的透射率值,有效解决了传统暗通道算法产生的块效应或在天空等高亮区域颜色失真问题。最后辅助大气光散射模型重建红外图像数据输出。处理后的图像边缘特征清晰,整体对比度得到提升。在硬件算法实现时,将软件算法生成的透射率查找表添加至硬件语言中,使得硬件算法能够直接获取优化后的透射率值,有效降低了硬件计算复杂度。同时通过状态机的跳转实现图像数据的有效控制,充分利用FPGA的FIFO资源以及时序的配合完成图像清晰化运算。在硬件测试时,所提算法耗时仅为0.1185 ms,满足实时处理视频图像的需求。

参考文献 (17)

目录

    /

    返回文章
    返回