VID

Posted on Mar 15, 2020

reference paper:

陈志欣. 基于深度学习的视频目标检测算法研究与应用[D].北方工业大学,2019.

视频目标检测(object detection from video)

从2015年开始,ILSVRC新增了VID挑战任务,视频中的目标检测难题:更多的帧图像文件、由于速度快导致运动模糊和光照等问题、物体间的遮挡问题。

数据集预处理

  1. 归一化:将原始像素压缩到[0,1]区间

$$ \text { norm }=\frac{x_{i}-\min (x)}{\max (x)-\min (x)} $$

  1. 去均值化:对每个通道,移除图像的平均亮度,凸显个体差异

$$ x_{r}, x_{g}, x_{b}=\left(x_{r}-R_{m e a n}, x_{g}-G_{m e a n}, x_{b}-B_{m e a n}\right) $$

  1. 标准化:使像素符合标准正态分布,在样本尺度不一致的情况下(如不同相机采集的图片,或者是来源不同的图片)

$$ x^{\prime}=\frac{x-\mu}{\sigma} $$

数据增强:解决样本数量和质量不满足需求的问题

镜像翻转、随机旋转、随机错切、高斯噪声、椒盐噪声、明亮度变化(不加入影响图像本质特性的噪声)

性能指标

mAP、IoU、FPS、NMS

可变形卷积(Deformable Convolution)-> 了解卷积的多种方式

refer to https://arxiv.org/pdf/1703.06211.pdf

对小目标物体的检测

  • 数据增强:用不同尺度的图片进行训练 ×

  • SPP 空间池化金字塔 ×

  • SSD 在不同尺度的特征图上引入区域检测机制 (提高有限) ×

  • FPN网络

自下而上的前馈计算(池化采样),自下而上的特征融合与横向连接(最近邻上采样或双线性插值),横向对应的层特征图各像素点之间直接相加,融合后的特征还要进行3*3卷积以消除upsampling产生的混叠作用。

网络的训练损失函数

这一块真的看的我眼花…

  1. 回归损失

均方误差/平方损失/L2 损失: $$ M S E=\frac{\sum_{i=1}^{n}\left(y_{i}-\hat{y}_{i}\right)^{2}}{n} $$ 平均绝对误差/L1 损失:

$$ M A E=\frac{\sum_{i=1}^{n}\left|y_{i}-\hat{y}_{i}\right|}{n} $$

平均偏差误差(mean bias error):

$$ M B E=\frac{\sum_{i=1}^{n}\left(y_{i}-\hat{y}_{i}\right)}{n} $$

  1. 分类损失

Hinge Loss/多分类 SVM 损失:

$$ S V M L o s s=\sum_{j \neq y_{i}} \max \left(0, s_{j}-s_{y_{i}}+1\right) $$

交叉熵损失/负对数似然:

$$ CrossEntropyLoss = -\left( y_{i} \log \left( \hat{y} _ {i} \right) + \left( 1-y _ {i} \right) \log \left(1- \hat{y}_{i} \right) \right) $$ 剩余词条待补充:multi-task loss、facol loss、GIoU、DIoU

refer to:https://zhuanlan.zhihu.com/p/112057799

YOLOv3中用k-means聚类得到anchor大小和数量设置

VID流程

Image_Feature = N_feat(Image_input) -> Output = N_det(Image_Feature)提取候选框进行分类回归

Deap Feature Flow利用一种基于卷积操作的FlowNet生成前后帧的光流图,再叠加上前一时刻关键帧信息,生成本时刻关键帧最终的特征图。

FGFA将相邻帧在时序上的特征聚合到当前帧的特征中,处理运动模糊、视频散焦、奇特姿势等问题。

稀疏特征传播方式提高检测速度 DFF

每隔n张(n常取10)抽取一个关键帧得到特征图,非关键帧的特征图计算为最近邻关键帧以及其与当前非关键帧之间运动变化矢量的加和。通常用光流矢量定量计算临近两帧之间的信息差值。 -> FlowNet如何实现

密集特征聚合方式提高检测精度 FGFA

需要计算视频每一帧的特征图,对视频的第i个时刻的关键帧,给每个时间帧分配一定权重系数,来对前后i+2r个特征图对应位置的值加权求和。 -> 权重如何分配

关键帧的选择优化

  • 基于特征一致性的关键帧调度策略:

$$ key = is_{-}key \left( B_{k \rightarrow i} \right) $$

$$ i s_{k e y}\left(Q_{k \rightarrow i}\right) = \left [ \frac{1}{N_{p}} \sum_{p} 1 \left ( B_{k \rightarrow i}(p) \leq \tau \right ) \right ] > \gamma $$ 前后两个参数分别设置为0.1 和 0.2

  • FlowNetSimple作为光流计算网络

  • 设计Tubelet结构存放低检测关键帧前后r帧信息,做密特征聚合使用,优化此关键帧的检测精度。