目标检测

  • 1. 概述
  • 1.1 常用术语
  • 1.2 数据集
  • 1.3 网络组件
  • 1.4.1 Backbone (骨干网络)
  • 1.4.2 Neck
  • 1.4.3 Head
  • 1.5 移动端模型优化难点
  • 1.6 轻量级检测模型发展史
  • 1.7 应用分类及算法
  • 2. 移动端优化方法
  • 2.1 优化方法-BackBone选择
  • 2.2 优化方法-Head优化
  • 2.3 优化方法-减少输入尺寸
  • 2.4 优化方法-召回率提升
  • 2.5 优化方法及效果
  • 2.6 优化方法-丢弃移动端性价比低的方法
  • 2.7 优化方法-后训练量化
  • 2.8 模型压缩
  • 2.9 移动端模型库
  • 3. PP-PicoDet
  • 3.1 算法结构
  • 3.2 优化预测精度和速度
  • 4. 轻量级关键点检测算法
  • 4.1 Top-Down与Bottom-Up对比
  • 4.1.1 Top-Down主流方案
  • 4.1.2 Bottom-Up主流方案![在这里插入图片描述](https://s2.51cto.com/images/blog/202411/29171112_67498530aba9066758.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
  • 4.2 轻量级关键点算法优化
  • 4.2.1 优化思路
  • 4.2.2 算法框架
  • 4.2.3 热力图(Heatmap)处理流程
  • 5. 多目标跟踪(MOT: Multiple Object Tracking)
  • 5.1 简介
  • 5.2 MOT算法
  • 5.2.1 SDE算法 (先目标检测再ReID)
  • 5.2.2 JDE算法(同时进行目标检测和ReID)
  • 5.2.3 MOT算法选型
  • 6. 跨镜跟踪
  • 6.1 跨镜跟踪产业应用难点
  • 6.2 跨镜跟踪算法选型
  • 6.2.1 目标检测算法选型
  • 6.2.2 ReID算法选型
  • 6.2.3 匹配算法
  • 6.2.4 轨迹融合
  • 6.3 跨镜跟踪整体方案


1. 概述

  • PP-PicoDet与 PP-Yolo速度相当,但精度更高。
  • 在线关联(Online association),根据以下信息进行
  • ReID特征间的余弦距离 (基于人的外观< Person Appearance>)
  • 人体框的IoU
  • 通过Kalman Filter预测的运动位置 (基于运动信息< Motion Information>)

1.1 常用术语

  • FPN:Feature Pyramid Network (特征金字塔)
  • DCN :Deformable Convolution (可变形卷积)
  • SPP:Spatial Pyramid Pooling Layer
  • SOT:Single Object Tracking (单目标跟踪)
  • MTT:Multiple Target Tracking (多目标跟踪)
  • SNN:Siamese Neural Network(连体神经网络: 用于评估外观相似度指标)
  • MOT:Multiple Object Tracking (多目标跟踪)
  • 使用卡尔曼滤波算法对多目标的状态进行估计
  • 使用匈牙利算法对多目标进行匹配,实现多目标跟踪。
  • CBN: Cross-iteration Batch Normalization (交叉迭代批量归一化)
  • PAN:Path Aggregation Network(路径聚合网络)
  • SORT:Simple Online and Realtime Tracking (简单在线和实时跟踪)
  • ReID:Person Re-identification (行人重识别)
  • MTMC:Multi-Target Multi-Camera (跨摄像头多目标跟踪)
  • SDE:Separate Detection Embedding (Detection与Embedding分为两个独立的模型,性能高、实时性差)
  • JDE:Joint Detection Embedding(Detection与Embedding通过同一个网络实现,Detection用的是one-stage的方法)
  • Heatmap:热力图,深度学习中常用Heatmap来表示二维坐标点
  • 编码:将二维坐标点转化为热力图的过程叫做编码(神经网络模型的编码模块)。 常用的编码方法采用高斯分布来生成热力图,以高斯分布的中心点坐标来表示点坐标。
  • 解码:将热力图转化为二维坐标点的过程叫解码(神经网络模型的解码模块)。解码过程通常处理的是非理想热力图,将热力图近似服从高斯分布,当前对热力图的解码方法有:标准法,偏移法和微分法。

1.2 数据集

1.3 网络组件

复现 跨相机多目标跟踪_深度学习


复现 跨相机多目标跟踪_深度学习_02

1.4.1 Backbone (骨干网络)

  • 骨干网络负责特征提取,且已在大型数据集(例如ImageNet|COCO等)上完成预训练,拥有预训练参数的卷积神经网络,例如:ResNet-50、Darknet53等
  • Backbone可用以下网络
  • VGG16
  • ResNet-50
  • SpineNet
  • EfficientNet-B0/B7
  • CSPResNeXt50
  • CSPDarknet53

1.4.2 Neck

  • Neck位于Backone和Head之间,用于从不同阶段收集特征图,然后进行融合。
  • 一个Neck由几个自下而上的路径和几个自上而下的路径组成。
  • Neck可用以下网络
  • Additional blocks: SPP, ASPP, RFB SAM
  • Path-aggregation blocks: FPN, PAN, NAS-FPN, Fully-connected FPN, BiFPN, ASFF, SFAM

1.4.3 Head

  • 用于预测目标的种类、位置(bounding boxes)和特征等输出信息
  • 分类:
  • Dense Prediction (one-stage)
  • 基于Anchor:RPN, SSD, YOLO, RetinaNet
  • 无Anchor :CornerNet, CenterNet, MatrixNet, FCOS
  • Sparse Prediction (two-stage)
  • 基于Anchor:Faster R-CNN , R-FCN, Mask RCNN
  • 无Anchor :RepPoints

1.5 移动端模型优化难点

复现 跨相机多目标跟踪_目标检测_03

1.6 轻量级检测模型发展史

复现 跨相机多目标跟踪_移动端_04

1.7 应用分类及算法

复现 跨相机多目标跟踪_深度学习_05

2. 移动端优化方法

复现 跨相机多目标跟踪_目标跟踪_06

2.1 优化方法-BackBone选择

复现 跨相机多目标跟踪_移动端_07

2.2 优化方法-Head优化

复现 跨相机多目标跟踪_复现 跨相机多目标跟踪_08

2.3 优化方法-减少输入尺寸

复现 跨相机多目标跟踪_移动端_09

2.4 优化方法-召回率提升

复现 跨相机多目标跟踪_复现 跨相机多目标跟踪_10

2.5 优化方法及效果

复现 跨相机多目标跟踪_目标检测_11

2.6 优化方法-丢弃移动端性价比低的方法

复现 跨相机多目标跟踪_复现 跨相机多目标跟踪_12

2.7 优化方法-后训练量化

复现 跨相机多目标跟踪_深度学习_13

2.8 模型压缩

复现 跨相机多目标跟踪_移动端_14

复现 跨相机多目标跟踪_深度学习_15


复现 跨相机多目标跟踪_目标检测_16


复现 跨相机多目标跟踪_目标跟踪_17


复现 跨相机多目标跟踪_移动端_18

2.9 移动端模型库

复现 跨相机多目标跟踪_目标检测_19

3. PP-PicoDet

3.1 算法结构

复现 跨相机多目标跟踪_深度学习_20


复现 跨相机多目标跟踪_目标检测_21


复现 跨相机多目标跟踪_目标检测_22


复现 跨相机多目标跟踪_目标检测_23

3.2 优化预测精度和速度

复现 跨相机多目标跟踪_目标跟踪_24

4. 轻量级关键点检测算法

4.1 Top-Down与Bottom-Up对比

复现 跨相机多目标跟踪_目标跟踪_25


复现 跨相机多目标跟踪_移动端_26


复现 跨相机多目标跟踪_复现 跨相机多目标跟踪_27

4.1.1 Top-Down主流方案

复现 跨相机多目标跟踪_目标检测_28


复现 跨相机多目标跟踪_目标检测_29

4.1.2 Bottom-Up主流方案

复现 跨相机多目标跟踪_目标跟踪_30

复现 跨相机多目标跟踪_复现 跨相机多目标跟踪_31

4.2 轻量级关键点算法优化

4.2.1 优化思路

复现 跨相机多目标跟踪_目标跟踪_32

4.2.2 算法框架

复现 跨相机多目标跟踪_深度学习_33

4.2.3 热力图(Heatmap)处理流程

1)获取待处理的目标图像,将它输入至神经网络模型的编码模块进行编码处理,得到预测热力图
2)将第1)步输出的热力图输入至神经网络模型的解码模块,通过积分求取热力图的均值坐标和坐标偏移量
3)根据第2)步输出的均值坐标和坐标偏移量确定关键点在目标图像上的坐标位置

5. 多目标跟踪(MOT: Multiple Object Tracking)

5.1 简介

复现 跨相机多目标跟踪_目标检测_34


复现 跨相机多目标跟踪_目标检测_35


复现 跨相机多目标跟踪_移动端_36


复现 跨相机多目标跟踪_目标检测_37

5.2 MOT算法

复现 跨相机多目标跟踪_移动端_38

5.2.1 SDE算法 (先目标检测再ReID)

复现 跨相机多目标跟踪_移动端_39


复现 跨相机多目标跟踪_深度学习_40


复现 跨相机多目标跟踪_复现 跨相机多目标跟踪_41


复现 跨相机多目标跟踪_移动端_42

5.2.2 JDE算法(同时进行目标检测和ReID)

复现 跨相机多目标跟踪_移动端_43


复现 跨相机多目标跟踪_复现 跨相机多目标跟踪_44


复现 跨相机多目标跟踪_目标跟踪_45


复现 跨相机多目标跟踪_复现 跨相机多目标跟踪_46


复现 跨相机多目标跟踪_目标跟踪_47

5.2.3 MOT算法选型

复现 跨相机多目标跟踪_目标检测_48

6. 跨镜跟踪

  • 跨镜跟踪:是对同一场景下的不同摄像头拍摄的视频进行多目标跟踪。

6.1 跨镜跟踪产业应用难点

复现 跨相机多目标跟踪_移动端_49

6.2 跨镜跟踪算法选型

复现 跨相机多目标跟踪_目标跟踪_50


复现 跨相机多目标跟踪_深度学习_51

6.2.1 目标检测算法选型

复现 跨相机多目标跟踪_移动端_52

6.2.2 ReID算法选型

复现 跨相机多目标跟踪_复现 跨相机多目标跟踪_53


复现 跨相机多目标跟踪_移动端_54


复现 跨相机多目标跟踪_复现 跨相机多目标跟踪_55

6.2.3 匹配算法

复现 跨相机多目标跟踪_深度学习_56

6.2.4 轨迹融合

复现 跨相机多目标跟踪_深度学习_57


复现 跨相机多目标跟踪_移动端_58

6.3 跨镜跟踪整体方案

复现 跨相机多目标跟踪_深度学习_59