泳池项目想法

‘泳池防溺水目标跟踪系统’含泳池人体目标跟踪、泳情分析、防溺水预警等模块。

(1) 多相机融合目标跟踪系统

‘泳池防溺水目标跟踪系统’是通过多相机系统对泳池中人员进行检测并跟踪。首先需要多相机系统的高精度标定,通过标定可以将多相机坐标映射到以泳池为平面的坐标。多相机系统联合跟踪系统的过程就是:多相机对泳池内的目标进行跟踪,跟踪后得到的跟踪数据是二维图片中的像素坐标,而我们通过对多相机标定后则可以通过坐标映射,将目标的二维像素坐标映射到泳池的三维坐标系中。跟踪系统在跟踪一个目标时会赋予该目标一个ID值,未标定过的多相机系统会将对同一个目标赋予不同的ID值。标定过的多相机系统则会对每个相机内的同一个目标赋予同一个ID值。若标定精度越高,那么多相机在检测并跟踪相同的目标时,系统可以认为该目标为同一个目标,并赋予唯一的ID。

(2) 泳池人体目标跟踪模块

在泳池人体目标跟踪模块中,主要使用了目标检测技术和对检测目标进行数据关联技术。

1.目标检测技术

目前使用的Yolov5目标检测网络,我们在其基础上添加了CenterNet中的DLA-34作为Backbone进行提取特征。Deep Layer Aggregation(DLA)是带多级跳跃连接的图像分类网络,通过更深层次的融合可以更好的聚合不同层的信息。而DLA-34使用了Deformable Convolution即DCN可形变卷积,这样以DLA-34作为多目标跟踪的网络结构能够将以迭代的方式将特征信息融合起来,从而获取更有效的信息。

在目标检测网络中,我们还添加了Semantic Self-Attention(SSA)机制。首先Self-Attention的自注意力机制是处理全局信息,而Semantic Self-Attention将目标检测框作为分割的ground truth,并利用其学习分割的特征,将该特征和检测特征融合(作为检测特征的attention map)然后进行检测。其过程为:以真值的检测框作为分割的mask,在原特征图上通过卷积学习这个mask,并把这个学习得到的特征图作为attention map,融合到原特征图上。

在最后的目标回归框网络中,我们使用的是Anchor-free算法,根据带有类别信息和位置信息的feature map,然后再根据这些feature map,得到最后的bounding box。

目标检测步骤如下:

s1:采集并收集原始图像数据(泳池人员标注数据);

s2:对原始图像进行分类,具体分为训练集、验证集、测试集;并对训练集、验证集、测试集分别进行增强处理得到增强后的训练集、增强后的验证集、增强后的测试集;

s3:搭建基于Yolov5并添加DLA-34网络,Semantic Self-Attention机制和Anchor-free的网络结构;

s4:用训练集和验证集放入搭建好的网络中进行训练和验证,计算Loss;

s5:最后用测试集对训练好的模型进行测试。

2.目标跟踪技术

目标跟踪中所选用的跟踪算法是 DeepSORT,一个基于Tracking-by-Detection策略的多目标跟踪算法。其跟踪过程时:

s1:前提是已经得到目标检测结果,随后跟踪器建立,将当前帧的目标与跟踪目标进行数据关联,需要先建立跟踪器;

s2:对运动模型进行估计:采取卡尔曼滤波作为运动估计模型,根据估计下一帧中目标的位置与检测网络检测到的目标位置进行数据关联;

s3: 数据关联,将当前帧的目标与跟踪目标进行数据关联,一般融合目标的运动信息以及目标的特征信息;数据关联过程如下:

s3.1:目标间距离的度量方法:将特征和运动预测用于计算前后两帧检测中目标的相似度距离分,计算相似度矩阵;其中描述运动关联程度使用了马氏距离作为距离函数:

\[d^{(1)}(i,j) = (d_j - y_i)^T S^{-1} (d_j - y_i)\]

使用 cosine 距离(余弦距离)来度量外观特征之间的距离:

\[d^{(2)}(i,j) = min{1-r_j^Tr_k^{(1)}|r_k^{(1)} \in R_i }\]

最终,相似度矩阵就可以通过运动模型和外观模型的加权得到:

\[c_{i,j}= \lambda^{(1)}(i,j)+(1-\lambda)d^{(2)}(i,j)\]

S3.2:多目标间的匹配方法:将s3.1中的目标间距离设立一定的阈值作为匹配的度量准则,最终同时考虑了目标运动信息的关联以及目标图像特征信息的关联,匹配问题可等效为二分图的最优匹配问题,二分图的最优匹配问题采用匈牙利匹配方法解决。

0%