基于FPGA的红外弱小目标检测算法
2020-07-01张延苏吴滢跃
张延苏,吴滢跃
基于FPGA的红外弱小目标检测算法
张延苏1,2,吴滢跃1,3
(1. 中国科学院上海技术物理研究所,上海 200083;2. 中国科学院大学,北京 100049;3. 中国科学院红外探测与成像技术重点实验室,上海 200083)
传统的红外弱小目标检测算法一般采用DSP(digital signal processing)处理器实现,算法复杂且实时性差,本文提出了一种基于FPGA(field programmable gate array)的自适应阈值的FAST(features from accelerated segment test)算法对红外弱小目标进行检测,利用FPGA并行处理的特点,采用流水线设计实现了算法的硬件加速。改进的自适应阈值方法可以根据不同的环境生成合适的阈值,避免了由于阈值选择不当造成的红外弱小目标的丢失或冗余。最后采用4组不同的实测红外图像进行实验,结果表明:该算法能实时地检测出红外图像中的弱小目标,并且能够取得较高的检测率和较低的虚警率,满足实时性和有效性的要求。
弱小目标检测;FPGA;FAST;自适应阈值
0 引言
远距离目标在红外探测器的视场中经常以弱小目标形态出现,与背景灰度差异很小,含有少量的像素[1-2]。实时、准确地检测出红外弱小目标具有较大难度,目前的红外弱小目标检测算法多是在DSP处理器中顺序执行[3-5],且算法复杂、需要利用多帧图像才可以得出红外小目标检测结果[6-8],难以满足实时性要求。
FPGA是可编程硅芯片,内含丰富资源,同一时刻可以进行多个算法处理[9-10],这些特点使其很适合用来做实时性图像处理。FAST目标点检测算法结构简单,具有较高的运行速度和较准确的检测结果[11],但是检测结果依赖于阈值的取值[12-13],适应性较差。因此本文设计了一种基于FPGA的自适应FAST红外弱小目标检测算法,通过实验验证,该算法运算量小、检测率高、实时性和适应性好。
1 自适应FAST检测算法原理
FAST检测算法的思想为[14-16]:以一个中心像素点为圆心,半径为3的圆周上为邻域像素点,若中心像素点与圆周上足够多的像素点的像素差值大于设定阈值,那该中心像素点更可能是亮点,具体如图1所示。
图1 FAST目标点检测
基于该FAST检测算法思想,本文提出了自适应阈值的FAST弱小目标检测算法,一帧红外图像的任意一个像素点为中心时,生成一个合适的动态阈值对该中心像素点进行FAST目标检测。改进后的算法步骤如下:
第1步:首先求出图1中16个圆周像素点中的最小像素值min,然后将中心点像素值0与16个圆周上的像素值分别减去min,如公式(1)所示,构成新的FAST邻域像素值0¢~16¢。该步的处理降低了像素值位数,为后续计算减少了运算量,节省了FPGA资源。
P¢=P-min(0≤≤16) (1)
第2步:求该中心点下的自适应阈值。首先分别求出1¢~16¢中的最大像素值¢max、像素均值¢mean,再求出中心点像素值0¢与该均值的差P¢,然后给P¢一个权重,权重为¢max与0¢之比,最后该权重与P¢相乘即为该中心点的自适应阈值,具体如公式(2)、(3)所示:
第3步:分别计算中心点像素值0¢与邻域像素值1¢~16¢的差,若它们的差值有连续16个大于自适应阈值,则判定为候选目标点,否则直接排除掉,具体如公式(4)所示:
第4步:进行非极大值抑制。若图1内中心点的3×3邻域内有一个或多个候选目标点时,则选取该3×3邻域中像素值最大的点作为最终检测目标点。更改中心像素点重复步骤1~4完成一帧图像的弱小目标检测。
2 系统设计实现
2.1 硬件环境
红外相机采集的视频图像帧频为100Hz,分辨率为640×512,由Camera Link总线输入,经过DS90CR288转换为TTL标准的图像,然后FPGA对图像进行采集,采集到的图像分两路操作:第1路直接在FPGA控制下按图2中的时序输出640×512大小的TTL标准的图像信号,经过DS90CR287转换为Camera Link标准的图像数据后输出,第2路采用自适应FAST算法进行小目标检测,将检测为小目标的位置信息存储到RAM中,作为一帧图像的第513行输出,即最后以640×513大小输出,输出时序如图3所示。整个FPGA内的数据流架构如图4所示。
图2 第1路输出时序图
图3 第2路输出时序图
2.2 自适应FAST算法的FPGA实现
硬件实现方法分5个模块:7×7窗口产生模块、预处理模块、自适应阈值模块、FAST检测与目标判定模块、非极大值抑制模块。具体实现电路如图5所示,在输入使能信号per_en上升沿时计数器计数生成当前输入像素点的、坐标。最终输出目标点的位置信息_out、_out和使能信号post_en。使能信号post_en连接RAM的写使能,当post_en有效时,将目标的坐标信息_out,_out写入RAM。下面对预处理模块、自适应阈值模块、FAST检测与目标判定模块进行详细介绍。
2.2.1 预处理模块
该模块首先求出输入的16个FAST邻域像素值中的最大值、最小值。然后比较输入的中心点像素值与最大值关系,若中心点像素值大于邻域像素值中的最大值,则中心点可能是目标点,sel置为1,输出的中心点像素值及FAST邻域像素值分别是各自减去邻域像素中最小值后的结果;否则中心点不是目标点,sel置为0,输出的中心点像素值及FAST邻域像素值均为1,具体如图6所示,其中最大值和最小值的计算采用4级流水线,消耗4个时钟周期。
2.2.2 自适应阈值模块
该模块根据公式(2)、(3)产生自适应阈值,具体如图7所示。求均值时先采用4级流水线求出16个FAST邻域像素点的和,然后将求出的和右移4位得到均值。
图4 系统硬件结构框图
Fig.4 System hardware structure diagram
图5 自适应FAST算法实现电路图
图6 预处理模块实现电路图
图7 自适应阈值模块实现电路图
2.2.3 FAST检测与目标判定模块
该模块按照公式(4)进行目标检测与判定,如图8所示,通过16组并行的硬件同时进行比较,最后根据16位比较值判断是否为目标点,若比较值的16位均为1,则判定为目标点,post_en置1;否则判定为非目标点,post_en置0。
图8 FAST检测与目标判定模块实现电路图
3 结果分析
3.1 算法有效性检验
为了验证算法有效性,输入4组分辨率为640×512像素,采集帧数为100帧的红外视频图像进行实验,第1组是海、天、地复杂背景下的双目标红外序列图像(共200个目标),第2组是海、天、地复杂背景下的双目标红外序列图像(共200个目标),第3组是薄云背景下的单目标红外序列图像(共100个目标),第4组是厚云背景下的单目标红外序列图像(共100个目标)。图9表示的是随机从4组图像序列中各抽取一帧图像的弱小目标检测结果。
采用检测率和虚警率对本文的弱小目标检测算法性能进行评价,检测率和虚警率定义如下:
FR=a/b(5)
FAR=f/(f+b) (6)
式中:a表示算法中检测出的真实弱小目标个数;b表示图像中实际的真实弱小目标个数;f表示算法中检测出的虚假弱小目标个数。
分别计算每组中每一帧图像的检测率和虚警率,然后取100帧的平均值。实验结果如表1所示,从表1可看出,本文设计的算法在较低虚警率下可以满足100%的检测率。
3.2 算法实时性判断
在FPGA(型号为xc6slx100t-3fgg484)和DSP(型号为TMS320C6455)上分别采用本文的算法处理分辨率为640×512的图像。若采用FPGA处理,系统时钟为100MHz,从一帧图像输入开始到算法检测完该帧图像结束的总时间为3276.97ms,其中图像的输入时间为3276.80ms,处理延时时间为0.17ms。若采用DSP处理,主频为1GHz,从一帧图像输入开始到检测完该帧图像结束的总时间约为7224.03ms,其中图像输入时间为3276.80ms,处理延时为3947.23ms。可知,FPGA在总时间性能上约为DSP的2.20倍,在处理延时时间性能上约为23219倍。具体如表2所示。
表1 算法检测结果
表2 算法实时性说明
4 结论
结合工程实际的需要,本文设计了一种基于FPGA的自适应FAST红外弱小目标检测算法,充分利用FPGA并行处理的优势,提高了算法的运算速度,满足实时性要求。同时采用自适应阈值的方法进行红外弱小目标检测,根据不同的FAST邻域生成合适的动态阈值,适应性好,满足系统有效性与可靠性的要求。
[1] 汪国有, 陈振学, 李乔亮. 复杂背景下红外弱小目标检测的算法研究综述[J]. 红外技术, 2006, 28(5): 287-292.
WANG Gouyou, CHEN Zhenxue, LI Qiaoliang. A review of infrared Weak and Small Targets Detection under Complicated Background[J]., 2006, 28(5): 287-292.
[2] 刘杰, 安博文. 海面红外小目标检测算法研究[J]. 红外技术, 2015, 37(1): 16-19.
LIU Jie, AN Bowen. Research on the detection algorithm for infrared small target on the sea[J]., 2015, 37(1): 16-19.
[3] 李胜勇, 姜涛, 朱强华. 红外序列图像中小目标实时检测系统设计与实现[J]. 红外技术, 2010, 32(8): 471-474.
LI Shengyong, JIANG Tao, ZHU Qianghua. Design and implement a real-time system for small target detection in infrared image sequence[J]., 2010, 32(8): 471-474.
[4] 牟新刚, 张桂林, 丁全心, 等. 基于DSP+FPGA的红外多目标检测系统设计[J]. 红外与激光工程, 2007, 36(S2): 173-176.
MOU Xingang, ZHANG Guilin, DING Quanxin, et al. Design of infrared multi-target detection system based on DSP+FPGA[J]., 2007, 36(S2): 173-176.
[5] 康令州, 陈福深, 黄自力, 等. 基于DSP+FPGA的红外图像小目标检测系统设计[J]. 电子设计工程, 2010, 18(12): 117-119.
KANG Lingzhou, CHEN Fushen, HUANG Zili, et al. Design of small target detection system in infrared image based on DSP and FPGA[J]., 2010, 18(12): 117-119.
[6] 徐文晴, 王敏. 基于自适应形态学滤波的红外小目标检测算法[J].激光与红外, 2017(1): 108-113.
XU Wenqing, WANG Min. Infrared small target detection algorithm based on adaptive morphology filter[J]., 2017(1): 108-113.
[7] 张祥越, 丁庆海, 罗海波, 等. 基于改进LCM的红外小目标检测算法[J]. 红外与激光工程, 2017, 46(7): 270-276.
ZHANG Xiangyue, DING Qinghai, LUO Haibo, et al. Infrared dim target detection algorithm based on improved LCM[J]., 2017, 46(7): 270-276.
[8] BAI X, ZHOU F. Analysis of new top-hat transformation and the application for infrared dim small target detection[J]., 2010, 43(6): 2145-2156.
[9] 刘源, 李庆, 梁艳菊. 基于FPGA的红外目标自动检测系统[J]. 红外技术, 2019, 41(6): 521-526.
LIU Yuan, LI Qing, LIANG Yanju. Implementation of infrared target detection system based on FPGA[J]., 2019, 41(6): 521-526.
[10] 杨鲁新, 董文博. 高帧频视觉实时目标检测系统[J]. 电子技术应用, 2019, 45(4): 116-119,124.
YANG Luxin, DONG Wenbo. High-frame-rate visual real-time target detection system[J]., 2019, 45(4): 116-119,124.
[11] Rosten E, Drummond T. Machine learning for high-speed corner detection[C]//, 2006: 430-443.
[12] 刘亮, 王平, 孙亮. 基于区域灰度变化的自适应FAST角点检测算法[J]. 微电子学与计算机, 2017, 34(3): 20-24.
LIU Liang, WANG Ping, SUN Liang. Adaptive FAST corner detection algorithm based on regional grayscale change[J]., 2017, 34(3): 20-24.
[13] 程彪, 黄鲁. 自适应阈值FAST特征点检测算法的FPGA实现[J]. 信息技术与网络安全, 2018, 37(10): 86-90.
CHEN Biao, HUANG Lu. Hardware implementation of adaptive threshold FAST feature point detection algorithm based on FPGA[J]., 2018, 37(10): 86-90.
[14] Rosten E, Porter R, Drummond T. Faster and better: a machine learning approach to corner detection[J].., 2008, 32(1): 105-119.
[15] Rublee E, Rabaud V, Konolige K, et al. ORB: An efficient alternative to SIFT or SURF[C]//2011, 2011: 2548-2555.
[16] 吴金津, 王鹏程, 龙永新, 等. 基于FAST角点检测的图像配准算法[J]. 湖南工业大学学报, 2014, 28(4): 71-75.
WU Jinjin, WANG Pengcheng, LONG Yongxin, et al. Image registration algorithm based on fast corner detection[J]., 2014, 28(4): 71-75.
Detection Algorithm of Infrared Dim Small Target Based on FPGA
ZHANG Yansu1,2,WU Yingyue1,3
(1.,200083,;2.,100049,;3.,,200083,)
The traditional infrared dim and small target detection algorithm is generally implemented by digital signal processing, which is complex and has poor real-time performance. In this study, a features from accelerated segment test (FAST) adaptive-threshold algorithm based on a field programmable gate array (FPGA) is proposed to detect infrared dim and small targets. Based on the characteristics of FPGA parallel processing, the hardware acceleration of the algorithm was realized by a pipeline design. The improved adaptive threshold method can generate appropriate thresholds according to different environments and avoid the loss or redundancy of dim and small infrared targets that is caused by improper threshold selection. Finally, two different groups of infrared images were used for an experiment.The results show that the algorithm can detect dim and small targets in an infrared image in real time and can achieve a high detection rate and low false alarm rate, thereby meeting the requirements of real-time performance and effectiveness.
dim and small target detection, FPGA, FAST, adaptive threshold
TP391.41
A
1001-8891(2020)06-0566-07
2019-12-17;
2020-04-25.
张延苏(1993-),女,河北人,硕士研究生,主要方向:图像处理和目标检测。E-mail:issuyanzhang@163.com。
吴滢跃(1980-),男,浙江人,博士(副研究员),主要方向:信号处理、红外成像、目标检测、伺服控制、光电对抗。E-mail:wyyhit@163.com。