基于引导滤波和分块自适应阈值的单帧红外弱小目标检测
2023-06-16杨德振黄静颖喻松林冯进军李江勇刘彤
杨德振,黄静颖,喻松林,冯进军,李江勇,刘彤
(1 华北光电技术研究所,北京 100015)
(2 北京真空电子技术研究所,北京 100015)
0 引言
红外探测技术不仅可以全天时探测识别目标,同时能有效捕获电磁隐身目标和低空飞行目标,弥补雷达盲区,在探测领域具有特殊优势。伴随红外成像技术的迅速发展,红外探测技术广泛应用于远程侦察告警系统中[1]。
通常随着探测距离的增加,远程侦察告警系统检测的目标尺寸和信杂比也进一步降低,因此红外弱小目标检测逐渐成为当前红外目标检测领域的研究重点,单帧红外弱小目标检测大致可以分成三类:第一类是基于空域或变换域滤波的方式(例如形态学滤波[2]、最大均值、中值滤波[4]、高通滤波[5]等),这类方法的思路是抑制背景噪声干扰,同时增强弱小目标;第二类方法基于人类视觉系统,常见的有局部对比度[6](Local Contrast Method,LCM)、局部梯度分布[7](Local Maximum Gradient ,LCG)、局部显著性映射[8](Local Saliency Map,LSM),这类方法的核心是突出目标与背景的局部特征差异;第三类为基于图像数据结构的方法,如多尺度窗口红外块图像(Multiscale windows-Infrared Patch Image,MW-IPI)、稳健主成分分析[9](Robust Principal Component Analysis,RPCA),这类算法利用红外图像中背景非局部自相似性和目标稀疏性,将弱小目标检测问题转化为低秩矩阵和稀疏矩阵的恢复问题,实现目标检测。前两类的算法的计算复杂度低,易于硬件实现,然而在复杂背景下难以区分目标信号和图像边缘,容易产生边缘虚警;最后一类算法比较耗时,在当前的信号处理硬件算力下难以满足实际工程应用的实时性需求。本文对多种复杂场景下的红外弱小目标进行高检出率、低虚警率、高场景适应性、高实时性的检测,提出了一种结合引导滤波和九宫格滤波进行目标增强,通过不同复杂度的区域进行分块自适应阈值分割的单帧红外弱小目标检测算法。
1 复杂背景下的远程目标特性分析
远程侦察告警系统的红外目标特征有着典型的目标成像特征,是红外探测技术研究的难点,因此有必要切实地对其展开分析。一方面,为了实现尽早告警的目的,通常需要远距离大视场的成像;另一方面,由于成像距离远,目标尺寸通常只有若干像素,不具备形状、纹理等易于分辨的特性。此外远距离大视场会进一步地增加背景复杂度,目标容易淹没在背景中,信杂比极低。图1 为不同场景下远程红外告警系统的目标与背景灰度分布(其中黑色框区域为目标所在的区域),显而易见目标在不同场景下均弱于其他背景杂波,且无显著目标特征,很难在有效检出目标的同时避免虚警[2]。因此,复杂场景中的红外弱小目标低虚警检测具有很强的挑战性。
图1 不同背景的目标特性Fig.1 Target characteristics for different backgrounds
结合单帧红外弱小目标检测算法的发展和工程应用背景,针对现有算法难以区分目标信号和图像边缘,容易产生边缘虚警的问题,本文提出基于引导滤波和分块自适应阈值的红外弱小目标检测方法。算法从区域内目标灰度分布和区域间灰度差异性两个方面进行算法设计,首先采用保边性能良好的引导滤波[11]预测图像的背景,然后用原始图像减去预测的背景图像得到潜在目标图像,初步抑制图像背景。为进一步降低虚警,利用目标具有的局部灰度最大特性,借鉴软阈值非极大值抑制[12]思想,提出九宫格滤波,计算每个像素位置属于目标的概率,通过将目标概率与背景抑制结果加权进一步抑制不满足目标特性的潜在目标,同时增强潜在目标之间的信号。最后,采用分块计算阈值策略对自适应阈值分割[13]进行改进,设计了一种根据不同场景自动计算自适应阈值分割中依靠人工经验设置参数的映射方式,提升算法在复杂场景下的检测能力。
2 目标检测系统
基于引导滤波和分块自适应阈值的目标检测系统主要由三个算法单元组成:一是基于引导滤波的背景抑制;二是基于九宫格滤波的目标概率计算和加权;三是分块自适应阈值分割。所设计的算法总体流程如图2。
图2 算法总体流程Fig.2 The overall algorithm flow
2.1 基于引导滤波的背景抑制
在红外弱小目标的成像建模[14]中,通常将红外图像fO(x,y)划分为三部分,分别为背景分量fB(x,y),目标分量fT(x,y)和随机噪声分量fN(x,y),具体表示为
式中,(x,y)表示像素点的位置坐标。从上述模型可以看出,红外弱小目标检测通常可以分成两个步骤:1)通过估计噪声fN(x,y)、预测背景fB(x,y)、求解模型(式(2))得到图像中的疑似目标,这一步骤又被称为背景抑制;2)通过目标筛选得到检测的最终结果。
迄今为止很多算法可以通过背景抑制完成目标检测,这些算法将背景和目标分别当作低频和高频信号进行区分,在预测背景的过程中将边缘高频信息同时滤除,导致模型求解过程中残留着许多边缘杂波,容易造成虚警(如图3)。其中Max-Median 和Top-Hat 都是采用5×5 模板。针对上述问题,在背景估计的过程中,引入了保边性能更好的引导滤波。
图3 背景抑制结果Fig.3 Background suppression results
与其他滤波算法不同的是,引导滤波[11]在进行滤波时需要额外的一幅参考图像,滤波的过程中要求输出结果与参考图像的梯度信息保持一致。因此,当参考图像与输入图像具有相同的边缘梯度信息,该滤波操作具有良好的保边性能,能有效地区分目标和边缘。引导滤波的具体定义为
式中,qi是输出像素的值,Ii是参考图像,i和k分别是像素索引,a和b是当窗口中心位于k时该线性函数的系数。该滤波器的代价函数可表示为
式中,ε为正则化系数,pi为待滤波图像像素值。
通过最小二乘法求解,即
式中,uk和σ2k为参考图像Ii在窗口wk中的均值和方差,|w|为窗口wk中的参数数量,系数ε用于调节引导滤波器保边程度,符号“⋅”表示点乘操作,“”表示变量在窗口wk中的均值。
将待滤波图像作为引导图像,即I=p,带入式(5)和式(6)后,系数ak的计算表达式为
2.2 九宫格滤波目标概率计算和加权
从图4 中可以直观地看出图像中目标、边缘和背景等干扰的区域灰度特性,目标区域满足灰度值局部最大的特性。为了最大限度降低目标检测的虚警率,提出了九宫格滤波用于计算每个像素位置属于目标的概率,通过将此概率与引导滤波背景抑制的结果进行加权融合,对潜在目标做了进一步的筛选。九宫格滤波利用目标区域的平均灰度值和其8 邻域的灰度平均值关系,计算目标权重。该操作定义为
图4 图像中不同区域灰度值对应的热图(区域2 为目标所在区域)Fig.4 Heat maps corresponding to grayscale values for different areas in the image (zone 2 is the target region)
式中,vi表示第i个目标区域的灰度均值,N8(i)表示目标区域i的八邻域集合,wi表示目标i的概率值。计算具体步骤为:1)计算候目标区域内(图5 中区域0)灰度平均值;2)分别计算区域8 个邻域(图5 中1~8)对应的灰度平均值,并取其中的最大值;3)根据式(8)分别计算各个目标的概率。最后,按照式(9)归一化权重。
图5 目标区域及其8 邻域示意(区域0 表示目标区域,区域1~8 表示目标周围的8 邻域)Fig.5 Schematic of background suppression results(zone 0 represents the target area and zones 1~8 represents its 8 neighborhoods)
2.3 分块自适应阈值分割
在复杂场景下,一幅图像同时包含不同的场景,其中的干扰往往也不相同。例如,与纯空区域相比,卷云区域干扰更强。全局阈值分割(如OTSU 和最大熵)算法计算全局图像的阈值,难以适应图像中不同区域的变化,容易导致目标漏检和虚警(如图6,采用高的全局阈值容易出现漏检,低的全局阈值会导致较多的虚警)。为了在保持较低虚警的前提下提高目标的检测率,本文提出一种分块自适应阈值分割的方式,首先将整幅图像划分成N×N个图像块,然后分别计算各个图像块的自适应阈值,最后分别对各个图像块进行阈值分割。
图6 不同区域背景抑制结果及其三维特性Fig.6 Background suppression results of different regions and their 3-dimensional characteristics
本文的分块自适应阈值分割是基于快速自适应阈值分割[10]进行改进。在快速自适应阈值分割中,阈值T是由图像灰度值的均值u和标准差σ 决定,图像中灰度大于T的被标记为目标,具体可表示为
式中,参数k用于控制算法的检测率和虚警率。在不同的场景下,为了获得更好的检测效果,需要精细地调整k的取值。为了使本文提出的阈值计算方式更好地适应一幅图像中不同区域中包含的不同场景,对k值的计算进行了改进。
复杂场景中干扰较多,需要较高阈值才能剔除干扰。在简单场景中,则反之,由于图像的场景复杂度和灰度值的标准差呈正相关,该模块借鉴Sigmoid 函数设计了灰度值标准差到参数k的映射曲线,具体表示为
式中,w表示基准参数,m用于调整映射曲线的平移,图7 为不同参数m与k值的映射曲线。
图7 不同参数m 对k 值映射曲线的影响Fig.7 The influence of different parameters m on the value k mapping curve
3 实验结果与分析
3.1 实验设置
将本文方法与Top-Hat、LCM、Max-Median 三种方法进行对比,在五种不同场景公开的红外弱小目标图像和3 段带标注的红外视频数据[17]验证本文方法的性能。其中Top-Hat、LCM、Max-Median 三种方法的滤波窗口皆为5×5。本文方法中,引导滤波中平滑系数ε=0.001,窗口wk为3×3,候选框的大小设为3×3,滤波的感受野与对比方法保持一致。阈值分割时,三种对比方法均采用快速自适应阈值分割[2],其中参数k=3。本文分块自适应阈值分割中分块数N=4, 基准权重w=3,m=2。
3.2 评价指标
采用信噪比(SNR)、背景抑制因子(BSF)[15]两个背景抑制评价参量指标,进一步对比验证算法抑制背景杂波的有效性。SNR 用于衡量信号和背景噪声的比值, BSF 用于衡量算法处理后的图像比原始图像的背景减少的程度,分别定义为
式中,ut和ub分别表示目标和背景区域的平均亮度,σb表示背景区域像素的标准差;σin,σout分别代表原图和背景抑制图像的背景方差。本文采用的前景是目标周围11×11 大小为的目标区域,背景区域是目标周围31×31 大小除去前景的区域,其中SNR 和BSF 的值越高,表示性能越好。
通过统计不同算法检测结果与标注框的位置关系,得到不同算法检测的召回率[16],具体计算表达式为
式中,R表示召回率,TP 和FP 分别表示正确和错误检测的目标数,正确检测目标数定义为检测结果位于10×10 的标注框内(含)目标总数。
3.3 实验结果
3.3.1 消融性实验
设置了两组对比实验,分别验证基于软阈值非极大值抑制的候选框筛选和不同分块数量对检测性能的影响,实验结果如图8 所示。
图8 消融性实验结果Fig.8 Ablation experiment results
从图8 可以直观地看出,非极大值抑制候选框筛选的步骤能够有效地剔除山地的反光,同时提升目标的信号。
选取3 段不同场景的公开视频数据[18](如图9,分别为纯空、地面和建筑),分别计算不同分块条件下算法检测的召回率。从表1 可以看出(最佳结果用加粗标出,次佳结果用下划线标出),对于简单的场景(data1),分块自适应阈值计算对检测的召回率没有提升,对于复杂的场景(data9),分块数量的增加能够有效提升算法检测的召回率。综合来说,分块自适应阈值策略能够有效地提升算法的检测性能。
表1 消融性实验检测召回率对比结果Table 1 Ablation experiments test recall comparison results
图9 不同测试视频图像示例Fig.9 Example of different test video figure
3.3.2 与其他算法对比实验
为了验证本文提出算法背景抑制的性能,从公开的红外弱小目标数据集中选取了五种典型的场景(受云层干扰的天空、山地、强噪声、远距离纯空、海面、建筑)与三种典型的算法Top-Hat、Max-Median(简称Max-Med)、LCM 进行对比。表2 中展示了各方法在图10 中五种不同场景SNR 和BSF 两个客观指标的对比结果,表中性能最好的数据加粗显示,性能次佳的数据用下划线显示。从实验结果及其性能指标中可以看出,在这五种场景中本文方法对目标信噪比的提升效果明显,背景抑制因子提升最大,具有优异的背景抑制性能,同时能够有效地增强目标信号。
表2 各方法SNR 和BSF 指标结果对比Table 2 Comparison of SNR and BSF index results of each method
图10 五种典型的场景测试图Fig.10 Five typical scenario test figure
图11 为Top-Hat、Max-Med 和本文方法的处理结果,偶数行分别是奇数行的灰度图归一化后的三维特性图。可以看出,对于山地场景,Top-Hat、Max-Med 处理结果中均存在着大量反光点,这类反光点受大气传输特性影响存在图像序列帧之间的不规则偏移,阈值分割之后经过实时性要求较高的多帧关联处理也无法有效剔除,容易导致虚警,而本文方法能够有效地剔除地面反光背景的干扰;对于噪声干扰强、目标距离远的场景,本文方法的抗噪声能力明显优于其他两种对比方法,同时有效保留目标信号。对于受云层干扰的天空场景,Top-Hat 算法受到背景的边缘干扰最大,背景抑制结果中残留着明显的边缘杂波;Max-Med 算法对背景边缘和角点较为敏感;本文算法背景抑制效果最好,能够有效的抑制边缘杂波,抗噪声的干扰能力强。综合背景抑制结果的三维特性图来看,本文方法边缘抑制和抗噪声干扰能力较强,对不同场景都具有较高的鲁棒性。
图11 各方法在五种典型的场景视觉结果对比Fig.11 Comparison of visual results of each method in five typical scenarios
选取3 段不同背景复杂度的场景公开视频数据[17](如图9),通过计算不同算法检测的召回率,验证本文算法的目标检测能力,实验结果如表3。实验结果表明本文方法对不同场景检测的召回率最高,对不同场景的检测稳定性优于其他方法。其中Max-Med 算法对大目标的检测性能最差,而LCM 算法对这两种场景的性能最差。
表3 各方法在不同视频数据检测召回率对比Table 3 Comparison of recall rates of various methods in different video data detection
3.3.3 算法硬件实现效果
为了验证实际应用中该算法的实时性和算法适应性,将本文算法在基于FPGA+DSP 的信号处理架构硬件进行了实现,单帧处理主要实现硬件为Virtex-7 系列的FPGA,其最终的弱小目标检测效果如图12。可以看出在不同复杂度的场景下,单帧红外目标检测采用了基于引导滤波和分块自适应阈值的方法均能有效检测目标,且具备可靠的抑制虚警的能力。在实时性方面,在分辨率为320×256 红外图像下的处理速度达到75 帧/s。
图12 本文方法在不同复杂度场景下的硬件实现效果Fig.12 The hardware implementation effect of the proposed method in different complexity scenarios
4 结论
本文提出基于分块自适应阈值和引导滤波的单帧红外弱小目标检测方法。首先采用保边、去噪性能更好的引导滤波对图像估计图像背景,与原始图像做残差得到初步背景抑制结果;其次采用九宫格滤波计算目标局部区域的概率,通过加权的方式进一步抑制背景,增强信号;最后通过分块阈值自适应计算分割阈值,通过阈值分割完成目标检测。实验结果表明,所提方法在背景抑制客观指标和主观视觉效果上均优于其他单帧红外弱小目标检测方法,能有效增强目标信号,提升目标检测的召回率,并且对不同场景具有较好的鲁棒性能。在不同视频序列数据下的实验结果进一步表明本方法对红外弱小目标具有更好的检测能力,同时不会提升检测的虚警。后续将通过多帧目标的运动轨迹关联,进一步抑制虚警。同时,联合基于模型驱动传统算法和数据驱动的深度学习算法进行双边网路融合提取红外弱小目标,最终达到实时检测、实用化、工程化的目的。