刘宝林,范有臣,秦明宇,谢鹏飞,郭惠超,张来线
(航天工程大学,北京 101416)
高于热力学零度的物体都会辐射红外线,红外辐射穿透云、雾、烟尘的能力强,红外探测成像是被动接收红外辐射成像,具有良好的抗干扰能力和隐蔽性,能够探测到几公里到几十公里远的目标。红外成像系统视场大,远距离目标成像呈现点状,目标成像大小介于3×3和9×9个像素[1],所占的像素数少,成像面积占整幅图像比例很小,信杂比低[2-3],检测难度大。由于散射的影响,目标边缘信息微弱,缺少固定的形状和纹理信息,不利于特征的提取。红外小目标检测算法分为基于单帧检测和基于多帧检测的算法[4]。单步目标检测算法中较典型的是YOLO方法[5-7],该方法由物体中心的格子来完成目标预测,提取目标特征、候选框边界回归及分类都在同一个网络中实现的,检测速度可达到100 FPS以上,解决了实时检测的任务要求。
复杂背景中包含多个与真实小目标相像的点,目标的检测难度大,在训练数据集有限的条件下,利用已有的小目标训练权重进行检测,容易漏掉真实的小目标。为了将可能的小目标都检测出来,本文在使用YOLOv5检测时,用低检测网络对复杂背景图像进行检测,检测结果中除了真实小目标外,包括多个虚假目标,不易提取目标的轨迹。文将LK和HS两种光流算法进行了对比,用单样本K-S检验得到分布拟合度,构建Q-Q图来计算平台真实运动量,结合YOLOv5校正检测目标校正目标轨迹,实现了目标轨迹的提取。
实验室拍摄的旋翼无人机天空背景红外视频,提取其中图片1651张,图像背景均匀,大小为567×273,其中图像如图1所示,图1(a)中红外小目标的灰度值较高,与背景的灰度值对比明显,图1(b)中灰度值比图1(a)明显,不容易观察出来。
选择地/空背景下红外图像弱小飞机目标检测数据图片[8]文件夹data5、data8共3396张,图像大小为256×256,其中典型图像如图2所示,图2(a)中红外小目标的灰度高于局部背景区域,图2(b)中红外小目标灰度值与局部背景区域灰度接近,不易与背景区分,同样存在着与小目标灰度和形状接近的小区域。
实验是在安装Window10的服务器上完成,服务器的CPU:Intel(R)Xeon(R)Silver 4116 CPU @2.1 GHz 2.1GHz(2处理器),内存32GB,显卡NVIDIA GeForce RTX-3090 32 GB,cuda11.1.0_456.43_win10,cudnn-11.1-windows-x64-v8.0.4.30,Aanconda3-2020.02-Windows-x86_64版本搭建Pytorch1.7,python 3.7.6,pycharm-community-2020.1.3×64。
图2 单目标复杂背景数据集图像
将单目标的简单和复杂背景图像使用labelImg软件标注,共得到标注图像5047张,对应标注xml文档5047个,区分训练图4015张,验证图1032张。用YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x四种模型训练数据50次、100次、200次、300次、400次、500次和600次,如图3所示。
随着训练次数的增加,四种模型的训练准确率随着次数的增加,总体上是在逐渐提高,YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x训练600次的准确率分别为0.9608、0.9485、0.9605、0.977,在准确率上,震荡程度最大的是YOLOv5s,收敛最快的是YOLOv5x。单一模型损失率的随训练次数增加损失率总体呈现波动降低趋势,训练600次的最终损失率在0.01581、0.01478、0.0145、0.01408,数值相近,全部低于0.02,训练收敛效果较好。
光流是图像中亮度保持不变,即运动前后对应像素亮度值相同,而不随时间而变化可表示为:
I(x+dx,y+dy,t+dt)=I(x,y,t)
(1)
其中,I(x,y,t)是图像中各点的像素值;(x,y)表示空间中的位置;t是时间变量;dt是图像连续帧的间隔时间;(dx,dv)表示在t时刻空间中的(x,y)点的位置变化量,在相邻两帧图像中的点(x,y)有位移(dx,dy),单位时间上的位置变化量就是速度矢量。
用泰勒级数实施一阶展开为:
(2)
Ixu+Iyv+It=0
(3)
对选择地/空背景下红外图像弱小飞机目标检测数据中的连续两帧图像进行实验,图像大小为256×256,如图4所示。图4中两幅图像的光照条件没有变化,同一区域的灰度值也比较一致。从两幅图像中地物对比可以看出,图4(b)帧明显比图4(a)帧靠右,判断平台向右侧运动。
图4 连续两帧图像
选取HS和LK计算结果50×150的部分放大,显示的结果如图5所示。
从选取部分放大后可以看出,HS算法光流图中光流值错误的多,且各个方向都有无法看出总体规律。而LK算法光流值总体向右,与平台实际移动方向较为一致。用LK法对这种场景计算运动量比较合适。
平台真实运动量需要通过取光流值的有效部分得到,首先用HS、LK算法计算光流分量,然后通过单样本K-S检验计算分布拟合度,构建Q-Q图得到上下界数值,最后取上下界间的均值取整得到校正值。
光流法对光线较为敏感,得到的光流场中存在一些极端值,为了通过光流场解算出平台移动情况,用不同光流算法得到的光流场对真实情况进行预测,因此引入tLocation-Scale分布函数对极端值进行滤除。
1)tLocation-Scale分布基于t分布[10],其概率密度函数为:
(4)
其中,μ为位置参数;σ为尺度参数;ν为自由度。Γ(x)为伽马函数,相较于t分布,由于引入了位置参数和尺度参数,tLocation-Scale分布具有更好的自适应性。
2) 拟合优度检验,单样本K-S检验可用于检验观测到的数据是否符合某已知的理论分布。Matlab中使用kstest函数实现K-S检验功能,返回参数[h,p,ksstat,cv],其中,h表示检验决策,p值反映原假设成立的可能性,ksstat为统计量的值,cv为接受域与拒绝域的边界值。使用LK算法得出的光流场的竖直分量数据测试tLocation-Scale分布的拟合程度,对比正态分布的拟合结果数值,得到的拟合曲线如图6所示,参数计算结果如表1所示。
图6 t Location-Scale拟合曲线与正态分布拟合曲线
表1 K-S检验结果
从表1中可以看出,tLocation-Scale分布的ksstat值远小于正态分布,且p值大正态分布,说明tlocation-Scale分布有着更好的拟合度。
3) Q-Q图可用于评估两组数据是否来自同一分布,假设大部分数据数据均可用且符合tLocation-Scale分布,用Quantile-Quantile图(Q-Q图)对不可用部分数据进行筛选。
Q-Q图的横坐标为理想分布的分位数,纵坐标为样本分位数。因此要构建Q-Q图,首先要确定分位数。
若有一容量为n的样本x1,x2,x3,…,xn,其p分位数xp的计算公式为:
(5)
可使用random函数在理想分布模型中随机抽取样本得到近似的理想分布样本分位数。结合qqplot函数进行Q-Q图的构建,如图7、图8所示。
由Q-Q图的特性可知,分布于直线附近的点与理想tLocation-Scale分布较为符合,可认为该点对应数据为可用数据。得到HS和LK算法上下界,计算上下界均值,得到实际速度如表2所示。
表2 HS、LK算法的水平和竖直分量上下界
LK法得出的水平分量的有效取值范围为[4.4392,14.111],LK法得出的竖直分量的有效取值范围为[-0.37501,0.44059],HS法得出的水平分量的有效取值范围为[-1.6717,4.6349],HS法得出的竖直分量的有效取值范围为[-3.5068,3.4087]。对比HS和LK两种算法运动分量结果,可以得出LK算法水平分量9.54,竖直分量-0.03,水平分量四舍五入为10,竖直分量四舍五入为0,速度分量结果与观察到的实际运动相符,选用LK算法计算这种场景下的运动。
通常红外图像背景较为复杂,存在类似小目标的虚假目标许多干扰点。使用训练权重对红外图像中的小目标检测结果中包括真实的小目标和虚假目标,光流法可计算得到帧与帧之间的横向和纵向运动量,从而补偿平台运动的影响,将多帧图像中检测点表示在一幅图像中,真实的目标轨迹是一条曲线,而虚假目标点相对背景的位置没有发生变化,通过光流补偿计算后的位置通常聚集在一小区域,能够区分真实目标和虚假目标,从而检测出真实的目标。检测流程如图9所示。
图9 单目标复杂运动背景检测流程
实验中,权重采用YOLOv5s训练200次的best权重,为了把所有可能的小目标都提取出来,需要设置较低的置信度,将置信度设置为0.001,检测地空背景图像数据集data18中的500帧单个无人机目标树林运动背景的红外图像,第1、19、39、55帧的检测结果如图10所示。
其中,图10(a)图像中的目标是真实目标,从图10(b)、(c)、(d)图像中可以看出,该目标从向树林左下方运动,目标与背景位置有明显的相对运动,平台随运动目标整体向左下移动,背景向左下运动,检测到的假目标的坐标值发生变化。地面辐射强,图像上的灰度值较高,形状与红外小目标类似,被检测为小目标。图10(b)中检测到1个目标,图10(c)检测到1个目标,这些检测到的固定目标的中心坐标随着平台移动,发生变化了,但相对背景位置没有发生变化。
选取其中第1到55的连续55帧图像,用LK方法求相邻帧图像的横向和纵向光流变化量,从第2帧到第n帧的光流量变化量取整后的累加值,就是平台运动补偿量,如式(6)所示:
(6)
其中,u,v分别是通过LK法计算相邻帧图像得到光流的水平和垂直方向的取整结果;Un,Vn分别是第1帧图像到第n帧图像间平台水平和垂直方向运动量。从第1帧到第100帧图像预测点的横纵坐标xn,yn分别与平台运动补偿量求和,得到图像的中各点的真实位置,如式(7)所示:
(7)
将校正前的坐标点和校正后的坐标点在第1帧图像的xy坐标图上画出,结果如图11所示。
55帧图像中12个目标的点数如表3所示。
其中,图11(a)是光流法校正前的图像,目标1、2、3、5、6、7、8、9、11、12对应的坐标比较集中,目标1、3、4、6、7、9、12坐标点数是4个以内,是虚假的目标,目标8、10、11的点数分别是7个、9个、7个,目标4和目标10坐标变化较大,是位置发生变化的点,点的轨迹呈与平台运动方向一致变化的曲线,可判断为虚假的目标。图11(b)是经过光流法校正后的图像,目标1的坐标轨迹是向左下方运动的曲线,符合运动目标的运动方向,其他目标经校正后的坐标都较集中,在第1帧图像中的检测目标附近,是背景中的虚假目标。
表3 检测目标出现次数
文中采用基于YOLOv5的深度学习方法对红外弱小目标提取,并对轨迹进行校正,较好的实现了目标轨迹的复原。结合拍摄到的简单背景和公开的复杂背景的数据集在网络中训练,而后对红外小目标检测,检测准确率在90 %以上,损失率在2 %以下,结果比较理想。给出了提出轨迹的流程,对比了两种光流算法,得到适于推算场景变化量的算法,进行分布拟合,构建Q-Q图得到平台真实运动量,通过光流与YOLOv5相结合的方式校正了目标的运动轨迹,克服了提出轨迹不正确的问题。
红外弱小目标检测的研究始终是一个热点问题。目标所处的背景千变万化,除了林地和天空背景外,还有云层、海洋、城市和乡村等多种多样的背景,如何从这些复杂的背景中检测到真实的目标有着很大的难度,需要不断加以学习研究。除了背景多变外,红外目标自身有着不同的形状,有的规则的方形,也有的形状是弧形等多种,实现正确的检测是今后研究工作中需要努力的。