伴随着小型无人机技术的快速发展,无人机在军用、民用方面都展现了巨大价值,随之而来的针对小型无人机的监管拒止技术也具有十分重大的实际意义。通过光学手段对无人机进行检测跟踪识别是反无人机技术的重要一环,而其中对无人机等低空慢速小型目标的检测技术十分重要,并影响着整体系统的性能。在运动目标检测领域,经典的检测方法包括帧间差法、背景建模和光流法,这些方法在光照变化、镜头抖动、动态干扰下表现不佳。近年来一些基于视觉显著性的方法和一些基于深度学习的方法被提出用以解决此类问题,Hou等[1]于2007年提出了显著性SR算法,在频域上得到图像的显著性并以此检测目标,此类方法在天空背景下效果较好,但在天地混合背景中不能有效检测。基于深度学习的方法往往用于目标分类。在飞行目标检测方向上,王茂森等[2]提出的基于帧差法改进的无人机运动检测研究,利用水平分级的方法很好地提取了目标轮廓信息。张荣刚等[3]提出了改进的Vibe算法,提高Vibe算法的鬼影消除速度,并消除了阴影问题,但在面临光照变化、动态干扰等问题时效果不佳。王晓华等[4]通过视觉显著性对无人机目标进行检测,结合AdaBoost进行学习训练,可以针对较明显无人机目标进行检测,但对于无人机目标极小的情况难以达到良好的效果。
通过研究发现传统算法中帧间差分法可以检测极小的目标,这个特点可以很大程度上提高检测性能,但在实际场景下往往会出现多种动态干扰,如行人、车辆、建筑物边缘、噪声点、飘动的云等,这些干扰为检测带来了很大困难。另外帧间差分难以获取目标的具体轮廓位置,仅能提供目标大致方位,这就为之后的跟踪带来了一定的影响[5]。
针对上述问题,在帧间差分的基础上,本文提出了一种分类排除的思想,将可能存在的干扰信息分为地面干扰与空中干扰2种情况,地面干扰主要指地面背景下一些行人、车辆等动态干扰;空中干扰主要是飘动的云[6]。改进SR算法中排除地面动态干扰是通过局部复杂度分类的方法,其工作原理在于地面干扰所处的地面背景相比于天空背景更加复杂[7],其背景复杂度较高,通过阈值对背景复杂度进行分类可以排除地面动态干扰。经过此步之后,剩下的就是空中干扰与目标。为此本文将原图像分解成LAB三通道图像,并取其B通道数据通过自行设计的滤波器进行滤波获取云与天的边缘位置图,再将其与原SR算法输出进行归一化做差,得到的图像数据中有效地排除了大量云与天的边缘干扰。从而利用改进后的视觉显著性检测器可以排除云等动态干扰,仅保留目标数据。
实验表明本文改进视觉显著性SR算法中的局部复杂度分类模块可以有效地去除地面干扰信息,在存在动态干扰的地空背景、天空背景中表现出良好的检测效果,相比于常规算法具有更好的检测性能,在对比了其他几种视觉显著性算法后证明本文使用的改进视觉显著性SR算法具有更好的检测效果,总体上来说,本文算法相对于对比算法具有更好的检测效果,在处理速度上也可以达到实时的要求,有较强的应用价值和实际意义。
1 关键算法原理 1.1 帧间差分法如果将图像序列中某一帧图像可以分为背景和前景,前景是我们应该检测出的目标和一些可能的干扰因素,背景则是相对于前景来说慢变的一部分,帧差法利用这样的特点区分前景和背景。帧间差法可由式(1)~(2)表示,本算法中帧差法阈值为Th。
$ {{\rm{D}}_{\rm{f}}}\left( {x,y,t} \right) = {I_f}\left( {x,y,t} \right) - {I_f}\left( {x,y,t - 1} \right) $ | (1) |
$ {M_{Df}}\left( {x,y,t} \right) = \left\{ \begin{array}{l} 255,\left| {{\mathit{D}_\mathit{f}}\left( {x,y,t} \right)} \right| \ge {T_h}\\ 0,\;\;\;\left| {{\mathit{D}_\mathit{f}}\left( {x,y,t} \right)} \right| < {T_h} \end{array} \right. $ | (2) |
SR算法是一种利用对数光谱残差求取取图像显著性区域的方法[8]。该算法具有运行速度快效果好的特点。作者提出大量图像的log振幅谱都差不多趋近一条直线,一幅图像的log振幅谱减去平均log振幅谱就是图像中具有显著性部分。该方法的公式如(3)~(7):
$ A\left( f \right) = R\left( {F\left( {I\left[ x \right]} \right)} \right) $ | (3) |
$ P\left( f \right) = S\left( {F\left( {I\left[ x \right]} \right)} \right) $ | (4) |
$ L\left( f \right) = \log \left( {A\left( f \right)} \right) $ | (5) |
$ R\left( f \right) = L\left( f \right) - {h_n}\left( f \right) * L\left( f \right) $ | (6) |
$ S\left( x \right) = g\left( x \right) * {F^{ - 1}}{\left[ {\exp \left( {R\left( f \right) + P\left( f \right)} \right)} \right]^2} $ | (7) |
式中:I(x)为输入图像,对其傅里叶变换,并且求出振幅谱为A(f),P(f)是其相位谱,L(f)是log振幅谱。hn(f)是一个n×n均值滤波的卷积核,用原图像的log振幅谱图像减去经平滑后的log振幅谱图像可以得到频谱残差图,利用R(f)+P(f)求出自然指数exp,最后求取傅里叶逆变换回到时域得到的就是显著性区域。经实验证明:SR算法在一些纯天空背景下或云背景下表现出了良好的适应性,但在存在明显云天边缘的图片中处理效果较差,图 1是SR算法效果图。
Download:
|
|
本文检测算法的目的是在多种复杂背景图像中检测低慢小目标,本文算法首先获取当前帧中的运动信息,再将运动信息输入改进SR算法模块进行处理,去除动态干扰信息,获得最终检测结果。检测算法流程如图 2所示。
Download:
|
|
通过帧间差分离背景与前景,提取前景信息供给后续算法分析,这其中包括了真正的目标、来自地面的干扰信息、来自空中的干扰信息,这些前景信息会通过后续算法进行分类。
2.2 视觉显著性SR算法改进由于原SR算法受到显著性算法的局限性,其检测无人机时仅能针对天空背景目标进行检测,针对复杂的地空混合背景该算法难以工作。另外云天边缘部分往往会被检测出来造成一定的干扰,本文算法的改进流程如图 3所示。
Download:
|
|
局部复杂度分类模块的目的是剔除运动信息中来自地面的动态干扰。经研究发现来自地面的动态干扰所处的背景都相对来说较为复杂,如树叶和枝干相连其背景中必然包含着复杂成分。基于这样的思想,可以将区别目标与干扰物的问题转化为局部复杂度计算的问题。
由于Canny算子具有保留强边缘忽略弱边缘的特性[9],故其在天地混合背景的图像中往往保留大量地面建筑的强边缘而忽略空中的弱边缘,从而更有利于达到分类的目的。故先对输入图像进行Canny算子边缘提取,获取边缘图像。再依次在边缘图像中提取各个运动信息的周边区域作为敏感区域,敏感区域的小为120 pix×120 pix。在敏感区域中统计其中灰度值为255的像素点的数量,本算法通过阈值300对其进行分类,数量小于阈值的被判断为空中目标,反之为干扰。
图 4为边缘图像提取样例与对应原始区域图,第1行为原始图像中运动信息周边区域,第2行为边缘信息提取样例。图中可以明显看出地面干扰对应的边缘图像较为复杂,空中目标的边缘图像较为简单。
Download:
|
|
经过筛选之后,剩余运动目标中除了实际的检测目标外还存在一些飘动的云产生的动态干扰,从图 1中可以看到原SR算法在周围背景具有不明显边缘的情况下,可以达到比较好的效果,但面对一些较为复杂的混合背景情况下,算法出现了一些干扰信息。原SR算法适用于多种自然场景下[10],但本文中经过之前模块的处理已经将复杂的天地混合的场景简化到天空场景的范围内,天空背景往往是由天空和云两种元素构成,在这种情况下背景具有很强的相关性,通过对这类图片的测试发现通过原SR算法处理的结果中存在的干扰部分是天空与云的明显的边缘,若对该类边缘进行抑制则能使得到的结果更好。此部分的步骤如下:
1) 首先要将原图像从RGB空间转换为LAB空间,并提取LAB图像中B通道的图像。在RGB空间中一些亮度信息被掺杂在RGB三个颜色通道中难以区分,而LAB空间中,A、B通道中完全不含亮度信息[11],这就为我们确定背景中的蓝天位置与云位置提供了方便,一般情况下背景中蓝天中包含较高的蓝色信息,从而在B通道中获得一个较高的值,相反若排除亮度因素影响,乌云与白云中几乎不含蓝色信息,其在B通道图像中表现出较低的值。
2) 对获取的B通道图像进行7×7的卷积运算以提取其边缘信息位置,这些位置就是天与云的交接位置,式(8)描述了卷积核的构成,H(x, y)描述了卷积核的构成,其取值为卷积中心所对应B通道图像I(x, y)周边7×7邻域中的值最大的一项为1,最小的一项为-1,其余为零。然后以该核与原图像卷积获取最后图像,最终结果图像D(x, y)中某一像素的值是I(x, y)图像周边邻域中最大值与最小值的差,该差值越大代表此像素越可能属于天与云的边缘区域。
$ {{\rm{H}}_{7 * 7}}\left( {x,y} \right) = \left\{ \begin{array}{l} 1,I\left( {{x_n},{y_m}} \right) = \max \left( {I\left( {{x_n},{y_m}} \right)} \right)n,m \in \left[ {0,7} \right]\\ - 1,I\left( {{x_n},{y_m}} \right) = \min \left( {I\left( {{x_n},{y_m}} \right)} \right)n,m \in \left[ {0,7} \right]\\ 0,\;\;其他 \end{array} \right. $ | (8) |
$ D\left( {x,y} \right) = I\left( {x,y} \right) \otimes {{\rm{H}}_{7 * 7}}\left( {x,y} \right) $ | (9) |
3) 将原始视频图像输入SR算法,获取检测结果图像,并将结果图像S(x, y)与D(x, y)进行归一化做差,归一化方法如式(10)所示:并以此求得的显著性图像作为改进SR算法输出Q(x, y),Q(x, y)代表了去除云天边缘干扰后的显著图像。
$ Q\left( {x,y} \right) = S\left( {x,y} \right) - \frac{{D\left( {x,y} \right) * \max \left( {S\left( {x,y} \right)} \right)}}{{\max \left( {D\left( {x,y} \right)} \right)}},\begin{array}{*{20}{c}} {x = \left[ {0,{\rm{row}}} \right]}\\ {y = \left[ {0,{\rm{col}}} \right]} \end{array} $ | (10) |
图 5第1行为原始图像,第2行为将B通道值提取出来产生的灰度图,第3行是经过式(9)~(10)处理的云天干扰图D(x, y),第4行是改进SR算法的输出。
Download:
|
|
图 6中图片是背景分析过程中的一些图片,其中图 6(a)是建筑物的边缘;图 6(b)是电塔局部;图 6(c)是树枝图像;图 6(d)是地面场景的运动行人;图 6(e)~(h)是无人机不同场景下成像。
Download:
|
|
表 1为图 6中各图片局部复杂度计算结果,根据表 1可以看出,本文提出的局部复杂度分类方法在多数情况下可以有效地区分天空与地面目标,仅在天空中云干扰较大的情况下出现了误判的情况,该算法可以实现分离天空与地面的目标的功能。
本文选取了6种视觉显著性算法与本文算法作对比,分别是SR[1]、AC[12]、LC[13]、FT[14]、SIM[15]、CA[16],比较时考虑多种背景情况进行分析比较,具体内容如图 7~14所示。
Download:
|
|
Download:
|
|
Download:
|
|
Download:
|
|
Download:
|
|
Download:
|
|
Download:
|
|
Download:
|
|
从图 7、9中可以比较看出,当背景为纯天空背景时,大部分算法都能对目标进行有效的检测,本文算法可以不受天空中云的影响,其余算法都存在一定的干扰。图 8、10所示含云背景下,LC算法、CA算法不能很好工作,SR算法与本文方案都能处理这种环境。
从图 11、12中的效果来看,当背景信息的对比极其明显且存在很多明显的边缘信息时,仅有SR算法与本文算法能给出较好的效果,但SR算法结果中包含了大量的背景干扰信息,此类信息对检测性能会产生不利影响,而本文算法几乎不受此类干扰影响,虽然得到的目标强度不高,但很好地抑制了干扰。
从图 13、14中可以看出,当复杂背景中无目标时SR算法依然得到了高亮的目标显著区域,而本文算法图像中抑制了大部分干扰,同样情况下含目标时本文算法可以抑制类似的相似干扰区域。定性的分析,本文算法的检测效果要好于其他对比算法。
从算法用时上分析可见表 2,测试输入为大小为256 pix×256 pix的图片,各算法处理百次并取时间均值,并对各个算法的时间进行分析,测试机采用i5-6300 CPU,2.3 GHz主频的计算机,SIM算法与CA算法采用MATLAB实现。其余各个算法都采用VS2010+OpenCv2.4.9的方式进行实现。
从时间的角度来看,本文算法的速度相比于LC算法、FT算法、SIM算法、SR算法存在一定劣势,但综合时间与效果考虑,本文算法在此方向上优于现有方法。
3.3 总体检测性能分析为了验证本文的总体检测性能,本文针对不同环境下的视频进行测试,测试视频选取6 000 f进行测试。主要的测试指标包括误检率、漏检率、正确率、运行速度这4个方面。分别对视频中每一帧的目标情况计算,当有且仅有目标被检测出来则为正确,若目标未被检测出来则为漏检,若还有其他干扰被检测出来则为误检。在比较时选取了目前比较常用的背景差算法Vibe算法、与常规的帧间差分法,结果如表 3所示。
表 4为天空背景目标检测情况表,从表 4中可以看出本文算法整体检测准确率最高,相比常规方法有明显优势,但本文算法增加了时间复杂度,在对漏检要求不高的系统中更好工作。
1) 经实验发现,本文中改进视觉显著性SR算法在针对空中目标进行检测时比传统检测算法准确率更高,并拥有实时计算的能力;
2) 本文改进SR算法中的局部复杂度分类模块可以有效地分类地面动态干扰与空中目标;
3) 本文改进SR算法进行检测时获得的显著性图,相比于其他显著性算法干扰因素更少,检测效果更加准确,更适合在天空背景下工作。
[1] | HOU Xiaodi, ZHANG Liqing. Saliency detection: a spectral residual approach[C]//2007 IEEE Conference on Computer Vision and Pattern Recognition. Minneapolis, USA, 2007: 1-8. https://www.researchgate.net/publication/221364530_Saliency_Detection_A_Spectral_Residual_Approach (0) |
[2] | 王茂森, 陈龙, 戴劲松. 基于帧差法改进的无人机运动检测研究[J]. 机械制造与自动化, 2016, 45(3): 165-168. DOI:10.3969/j.issn.1671-5276.2016.03.050 (0) |
[3] | 张荣刚, 顾强. 基于ViBe的动态目标检测算法优化[J]. 机械与电子, 2017, 35(4): 21-26. DOI:10.3969/j.issn.1001-2257.2017.04.005 (0) |
[4] | 王晓华, 张聪, 李聪, 等. 基于仿生视觉注意机制的无人机目标检测[J]. 航空科学技术, 2015, 26(11): 78-82. DOI:10.3969/j.issn.1007-5453.2015.11.012 (0) |
[5] | ZITNICK C L, PARIKH D. The role of image understanding in contour detection[C]//2012 IEEE Conference on Computer Vision and Pattern Recognition. Providence, USA, 2012: 622-629. https://www.researchgate.net/publication/242070610_The_Role_of_Image_Understanding_in_Contour_Detection (0) |
[6] | 林波.基于DSP的多运动目标检测与跟踪技术研究[D].南京: 南京理工大学, 2014. (0) |
[7] | KE Hongchang, SUN Hongbin, GAO Lei, et al. A video image compression method based on visually salient features[J]. Journal of digital information management, 2014, 12(5): 333-339. (0) |
[8] | 丁鹏, 张叶, 贾平, 等. 基于视觉显著性的海面舰船检测技术[J]. 电子学报, 2018, 46(1): 127-134. DOI:10.3969/j.issn.0372-2112.2018.01.018 (0) |
[9] | 蒋兆军, 成孝刚, 彭雅琴, 等. 基于深度学习的无人机识别算法研究[J]. 电子技术应用, 2017, 43(7): 84-87. (0) |
[10] | CHANG Cheng, ANSARI R. Kernel particle filter for visual tracking[J]. IEEE signal processing letters, 2005, 12(3): 242-245. (0) |
[11] | KIM Y H, KIM A, JEONG H Y. RGB color model based the fire detection algorithm in video sequences on wireless sensor network[J]. International journal of distributed sensor networks, 2014, 10(4): 923609. DOI:10.1155/2014/923609 (0) |
[12] | ACHANTA R, HEMAMI S, ESTRADA F, et al. Frequency-tuned salient region detection[C]//2009 IEEE Conference on Computer Vision and Pattern Recognition. Miami, USA, 2009: 1597-1604. https://www.researchgate.net/publication/286980217_Frequency-tuned_salient_region_detection (0) |
[13] | GOFERMAN S, ZELNIK-MANOR L, TAL A. Context-aware saliency detection[C]//2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. San Francisco, USA, 2010: 2376-2383. (0) |
[14] | ACHANTA R, ESTRADA F, WILS P, et al. Salient region detection and segmentation[C]//International Conference on Computer Vision Systems. Santorini, Greece, 2008: 66-75. (0) |
[15] | ZHAI Yun, SHAH M. Visual attention detection in video sequences using spatiotemporal cues[C]//Proceedings of the 14th ACM International Conference on Multimedia. Santa Barbara, USA, 2006: 815-824. http://www.oalib.com/references/16878908 (0) |
[16] | MURRAY N, VANRELL M, OTAZU X, et al. Saliency estimation using a non-parametric low-level vision model[C]//Proceedings of the 2011 IEEE Conference on Computer Vision and Pattern Recognition. Colorado Springs, USA, 2011: 433-440. (0) |