基于光电转台全局运动补偿与YOLOv3网络模型的运动目标检测算法

2022-04-08 04:55马志扬傅慧妮杨忠琳姜雨彤朱梦琪孙伟琛李兴鑫
车辆与动力技术 2022年1期
关键词:全局像素状态

马志扬, 傅慧妮, 赵 博, 杨忠琳, 姜雨彤,朱梦琪, 孙伟琛, 李兴鑫

(中国北方车辆研究所,北京 100072)

目前基于视频图像的运动目标检测方法主要分为包括:帧差法[1, 2]、背景减除法[3-5]、光流法[6-8]、基于深度神经网络的检测方法[9-11].帧差法依据连续帧之间背景区域图像与运动目标的差异性进行判定,通过相邻图像的差分运算,确定运动目标区域,其优点在于计算简单,但是计算容易受噪声干扰;背景减除法通过建立背景模型,采用当前帧图像与背景模型减除获取差异,进而获得动目标区域,且通常采用高斯混合模型及相关优化模型实现背景建模,其优点在于通过预处理与背景建模降低摄像机及外部干扰带来的噪声影响,但是受背景建模影响较大,在光电平台转动或运动时,需要获取连续多帧进行建模,时效性受到较大影响[12];光流法以相邻帧间物体灰度守恒为前提对光流场进行估计[13],利用基于光流阈值约束技术进行目标检测,无需背景先验知识,但是运算量较高并受噪声影响较大;基于深度学习的方法通过对视频时序中目标的学习可以较好解决目标时空信息的关联问题,但是对纹理不清、小尺寸目标、光电运动等场景的处理存在限制,且运算量较大.此外,传统的运动目标检测方法无法上报目标类型信息.以光电载荷平台的运动目标检测为研究目标,针对背景建模时间长、帧间匹配易受图像噪声影响、全局运动估计受限的问题,提出基于光电转台全局运动补偿与YOLOv3网络模型的运动目标检测算法,在无需背景建模的条件下,获取目标类型、像素坐标,实现帧间目标连续性匹配,提出目标运动程度估值计算方法,以此判定目标运动状态,并实现在边缘端推理平台的测试验证.

1 算法原理与设计

本研究算法可以划分为三个部分:首先通过神经网络模型对单帧视频图像中的目标进行检测,获得目标类型、像素坐标位置,然后获取光电平台信息补偿视频全局运动信息并对连续帧图像中的目标进行唯一性匹配与运动估计,最后计算目标运动状态.

1.1 算法框架

在基于陆地场景的视频图像中,目标运动状态可以划分为水平向(X)、垂直向(Y)及混合运动.因此,通过对视频连续帧中目标位置状态的矢量分析,可以获取目标位置、动/静状态、运动速度、运动方向等信息.

该算法整体框架如图1所示.目标检测模块的功能是采用YOLOv3模型获取单帧图像中目标在相应时刻属性,包括每一帧图像目标的类型、目标中心坐标、目标框尺寸等信息.目标匹配模块的功能是以T帧图像作为滑动时间窗口,计算窗口内第1帧到第T帧图像中相邻图像的目标匹配性.在计算过程中,模块通过获取光电系统每一帧对应的外部位置信息,对目标像素坐标进行补偿,去除由于平台转动造成的全局运动.通过获取目标的匹配关系,可以获得T帧图像对应连续时刻的目标像素轨迹.运动状态计算模块的功能是通过对每一个目标的连续T帧轨迹进行平滑,去除抖动或噪声造成的影响,计算该目标在每一帧的轨迹变动量,并与第T+1帧图像中的目标进行比较,最终获得第T+1帧中所有目标的运动状态信息.

图1 算法流程图

1.2 基于YOLOv3的连续帧目标检测

YOLOv3网络模型属于one-stage目标检测神经网络模型,由Joseph Redmon、Ali Farhadi提出[14],在原来YOLOv1、YOLOv2模型的基础上,建立更大的骨干网络DarkNet-53,实现多尺度预测与跨尺度特征融合,通过引入FPN(Feature Pyramid Networks)结构能够从上采样层的特征和早期特征映射的细粒度信息进行融合,进而解决小尺寸目标的检测问题.在传统运动目标检测中,小尺寸目标在背景建模过程中存在分割难、易于噪声混淆的问题,但是通过YOLOv3可以很好规避传统背景建模带来的问题.YOLOv3网络的输入是单帧图像,输出结果是图像中目标的类型、坐标信息、置信度.相比于其他神经网络模型,YOLOv3与SSD、RetinalNet等网络精度相当,而且速度提高3倍.从精度、计算量、运算速度而言,采用YOLOv3网络模型可以很好解决目标属性与定位的检测问题.算法运行过程中无需建模或对连续帧图像进行预处理.

在YOLOv3单帧检测的基础上,选取匹配观察窗口,即对连续T帧的视频图像进行检测,并记录对应帧号的目标检测结果,如图2所示.

据此,可以得到连续T帧图像的目标信息列表,如公式(1),(2)所示:

I1={Det1,1,Det1,2,Det1,3,…,Det1,i,…,Det1,n},I2={Det2,1,Det2,2,Det2,3,…,Det2,i,…,Det2,n},……Im={Detm,1,Detm,2,Detm,3,…,Detm,i,…,Detm,n},……IT={DetT,1,DetT,2,DetT,3,…,DetT,i,…,DetT,n}.

(1)

Detm,i={Classm,i,CXm,i,CYm,i,Widthm,i,Heightm,i},

(2)

式中:m表示连续图像帧序号,且1

1.3 基于光电转台全局运动补偿的目标匹配

通过YOLOv3与观察窗口中连续帧图像的计算,基于视频流帧序的目标检测信息可以很好地表征相应目标的像素轨迹,可以用于解决目标信息连续性与一致性问题.但是,通过图像识别获取的目标轨迹信息不仅包含目标自身运动引起的像素位移,同时包括由于光电转台转动导致的全局运动信息.因此,计算连续视频帧之间的全局运动信息是进行目标匹配与计算目标运动状态的前提.在本研究中,通过光电转台位置传感器获取光电观察视场的全局运动状态,具体表示如公式(3)所示.

CamXY1={CamX1,CamY1},CamXY2={CamX2,CamY2},……CamXYm={CamXm,CamYm},……CamXYT={CamXT,CamYT},

(3)

式中:CamXYm表示光电摄像头在第m帧时的水平(X)、垂直(Y)像素坐标.

光电观察视场的全局运动变化可以具体表示为上述像素坐标的差值,如式(4)所示.

MoveCamXY2,1={CamX2-CamX1,CamY2-CamY1},……MoveCamXYm,m-1={CamXm-CamXm-1,CamYm-CamYm-1},……MoveCamXYT,T-1={CamXT-CamXT-1,CamYT-CamYT-1}.

(4)

经过光电相机视场角与图像像素分辨率的关系,可以计算得到在第m帧时刻由于光电转台运动导致的图像全局运动像素坐标变化,如式(5)所示.

PixelCamXm,m-1=(CamXm-CamXm-1)/CamX_angle·CamX_res,PixelCamYm,m-1=(CamYm-CamYm-1)/CamY_angle·CamY_res,

(5)

式中:CamX_angle表示水平向视场角;CamX_res水平向像素分辨率;CamY_angle表示垂直向视场角;CamY_res垂直向像素分辨率.

从每一帧目标检测结果中剔除全局运动带来的影响,可以得到由于自身运动状态导致的像素坐标信息变化.以第m帧第i个目标检测结果为例,目标检测结果进行更新,如式(6)所示.

(6)

依据去除全局运动的每一帧目标信息,计算相邻帧号图像的每一个目标的匹配关系,并确定帧间每一个目标的连续性.视频帧之间的目标匹配机制采用目标属性与IoU(Intersection over Union交并比)计算匹配方法.目标属性的匹配,是指相比较的两个目标必须具有相同的类型.IoU计算机制,是指相比较的两个目标框计算交并比.当交并比大于某一个阈值时,判定为同一目标;当存在某个目标框与多个目标框比较时,优先判定IoU最大值的目标为同一目标.如图3所示.

图3 IoU计算示意图

IoUm,m-1|i,k=交集像素总数/并集像素总数.

(7)

如图4所示,以第m帧中第i个目标为例,以第m,i目标表示.假设第m-1帧存在n个目标,匹配过程如下:

图4 目标匹配计算流程

1)第m,i目标与第m-1帧的目标集比较目标类型.当目标类型一致时,计算目标框交并比IoU.如果不存在相同的目标类型,上溯第m-2帧进行比较.

2)当IoU大于设定阈值时,判定为“具有连续性”.

3)遍历第m-1帧的剩余目标进行比较,计算IoU最高的目标框,并以此目标作为与第m,i目标匹配度最高的目标,判定为“具有一致性”.

1.4 目标运动状态估算

本研究中,目标运动状态估算包括目标水平向、垂直向像素速度(像素/帧),同时包括目标运动程度估值,并依次计算目标是否为运动目标.

获得目标的光电轨迹后,依据其每一帧对应时刻像素变化量可以估算出目标的运动像素速度,从而获得静/动状态的判定.假设第T,i目标在观察窗口内的匹配目标均为每一帧中的第k个目标.据此可以计算出帧间变化量,如公式(8)所示.

(8)

式中:VXT,i表示目标在T帧内的水平向像素速度(像素/帧);VYT,i表示目标在T帧内的垂直向像素速度(像素/帧).

由于目标在不同视场角、不同距离、不同姿态下,运动变化量不唯一,通过帧间变化量无法直接体现目标运动的程度,考虑采取计算目标像素变化量相对于目标本身幅度的比率进行判定.定义该比率值为目标运动程度估值,如公式(9)所示.

(9)

式中:RXT,i表示目标在水平向的运动程度估值;RYT,i表示目标垂直运动程度估值.

当RXT,i、RYT,i高于设定的阈值(ThXi,ThYi)时,可以判定目标为“运动目标”.此外,该策略可以依据目标类型、目标物理高度、目标物理宽度、目标最低需检测物理运动速度等方式设置判定阈值,提高对目标运动状态的稳定性.具体计算方式如公式(10)所示.

ThXi=VXobject/Widthobject,ThYi=VYobject/Heightobject,

(10)

式中:ThXi,表示水平向运动程度判定阈值;ThYi,表示垂直向运动程度判定阈值;VXobject是最低需检测目标的水平向物理运动速度,单位m/s;VYobject是最低需检测目标的垂直向物理运动速度,单位m/s;Widthobject是目标宽度,单位m;Heightobject是目标高度,单位m.目标宽度与高度依据可识别的目标类型数据库进行设定,例如汽车宽度与高度.

当系统接收最新帧的图像数据时(假设最新一帧为第T+1帧),通过目标检测模块获取该帧的所有目标信息.以前T帧数据为基准进行匹配,可以获得第T+1帧中相应的目标的运动状态.当第T+1帧中没有识别到前T帧中的目标时,可以通过运动估计的方式,实现对漏检目标的短时估计,提高目标检测率.

2 算法验证

以coco、voc等公开数据集为训练集,采用现实场景中的车辆视频为测试用例.本研究通过英伟达TX2、NX边缘端推理平台实现算法布置与验证.

2.1 目标检测

部分测试输入视频与输出视频结果如图5所示.经过处理后,原始视频中目标车辆可以稳定地被检测,实线框为目标识别框,字母为目标类型.视频分辨率为1280×960,视场角为3°×2.25°;视频帧率为25 fps;单帧图像检测耗时为32 ms.以图5为例,连续4帧图像中,目标识别结果为:目标类型“ORV(越野车)”、“目标识别框像素坐标位置(如图中矩形框)”,试验数据如表1所示.

图5 视频序列连续4帧的检测结果

表1 目标检测结果信息

2.2 目标匹配

依据基于光电转台传感器反馈的位置信息实现对图像全局运动像素位置变化的补偿,对连续帧的视频进行测试.考虑单帧图像检测的耗时,选取10帧作为窗口观察期.依然以图5中检测结果为例,选取连续4帧窗口,计算帧间目标识别框IoU数值如表2所示,并依次判定帧间目标是否为连续的同一目标,进而可以获得目标匹配一致性关系如图6所示.

表2 帧间目标IoU计算与一致性计算结果

图6 视频序列连续4帧的检测结果

图6中车辆目标被覆盖区域表示前后帧重叠区域,其中重叠越多,对应的IoU越大,也说明目标运动程度越低.观察第4帧图像可以看到,此时车辆发生明显加速,相应的运动程度越高,IoU降低.

2.3 目标运动状态估算

通过获取帧间目标的一致性,可以获取目标在不同时刻的轨迹信息.以图6中越野车目标与光电转台速度为例,以英伟达TX2平台算法处理速度作为帧间时间差(140 ms).据此可以得到越野车目标在去除光电转台全局运动后的水平向、垂直向像素速度(VX,VY),并计算得到目标在水平向、垂直向的运动程度估值(RX,RY).进一步以运动车辆目标最低需检测物理运动速度为10 km/h为条件,可以得到水平向、垂直向运动程度判定阈值(ThXi,ThYi).上述结果如表3所示.通过对运动程度估值的判定,最终上报目标的运动状态为“运动”,如图7中所示,且以箭头指示方向为主运动方向.

表3 目标运动程度估值与运动状态判定结果

图7 目标运动状态检测结果

2.4 多目标场景下运动目标检测测试

依据算法原理中目标匹配的分析,当同一视场存在多个目标时,连续帧图像中各目标的识别框IoU匹配关系最密切的为上一帧图像中对应的同一个目标.因此在多目标场景中,算法依然可以同时对图像中的目标运动状态进行判定.以多目标视频图像为测试对象,试验结果如图8所示,在同一视场中,行驶的越野车和卡车均可分别判定属于“运动目标”,且运动方向如箭头所示,即该算法能够实现对多目标场景的有效处理.

图8 多目标运动状态检测结果

2.5 算法运行速度

以典型的边缘端机器学习平台为测试硬件,选取TX2、NX作为测试平台分别进行测试.试验结果如表4所示.可以看出,该算法在边缘端平台具备实时处理能力.但是,需要注意的是,在TX2平台上,目标匹配的计算间隔为140 ms.因此,当目标横向运动速度(角速度)较高,且在初始阶段无法对目标框进行速度估计时,例如目标框在140 ms内的横向像素位移大于目标框X方向像素数时,连续帧间的目标框无法进行匹配,此时算法无法有效判定目标的运动状态.基于此,在边缘端布置算法时,应当充分考虑侦察目标的可能运动情况与边缘端机器学习平台的计算能力,进而在保证时效性的情况下确定算法对相应场景下的运动目标能够检测到.

表4 边缘端平台算法运行速度

3 结 论

针对传统动目标检测算法背景建模慢、图像噪声影响大等问题,以光电转台位置信息、目标识别、帧间目标匹配、运动状态估计为切入点,提出基于光电转台全局运动补偿与YOLOv3网络模型的运动目标检测算法,以车辆视频图像为测试对象,结果表明:1)采用基于连续帧的YOLOv3目标检测模型,无需背景建模,能够获取连续帧中目标的识别类型、像素坐标,提高了目标的检测稳定性与帧间匹配的关联程度,降低了由于图像噪声导致的干扰影响;2)引入光电转台位置信息剔除全局运动影响;3)采用IoU匹配机制,解决连续帧中多目标的连续性匹配问题,并获得每一个目标的像素坐标轨迹;4)提出目标运动程度估值计算方法,获得目标运动状态信息,并通过目标类型自动调整判定阈值,提高了运动状态判断的稳定性;5)可以在边缘端平台较好处理运动目标检测问题,保证目标运动状态信息实时上报.

猜你喜欢
全局像素状态
基于改进空间通道信息的全局烟雾注意网络
像素前线之“幻影”2000
“像素”仙人掌
状态联想
落子山东,意在全局
生命的另一种状态
记忆型非经典扩散方程在中的全局吸引子
高超声速飞行器全局有限时间姿态控制方法
高像素不是全部
坚持是成功前的状态