目标检测算法发展
几个概念
RPN(RegionProposal Network)区域生成网络
Region proposals又称Regions of interest(RIO)就是找目标区域,找到的目标区域又叫bounding box。
Anchors
区域RCNN
R-CNN
实际上是将图框出各部分,然后再去提取特征,再通过SVM分类判断,每个类都采用一个SVM模型,而后各类再回归,计算量特别大且繁琐
- 每张图片2000多个区域都要进行卷积计算
SPP-Net
改进R-CNN:(实际上是将卷积提到了区域框划分的前面)
- 不再是采用各个框图算出后再去放到CNN提取特征,而是直接将整个图放进去。
- 引入空间金字塔池化:为不同尺寸的区域在Conv5输出上提取特征、映射到尺寸固定的全连接层。
问题 - 特征离线训练,耗内存
- 复杂多阶段,时间仍然太长
- SPP层之前的所有卷积层参数不能fine tune
FastR-CNN
改进:
- 更快
- 实现了更高的mAP(平均准确率)
- 实现了端对端的(end-to-end)的单阶段训练-多任务损失函数
- 所有层的函数都可以fine-tune
- 不需要离线储存特征文件
FasterR-CNN
取代离线Selecttive Search模块-解决性能瓶颈
进一步共享卷积层计算
基于Attention注意机制-引导Fast R-CNN关注区域
Region proposals量少质优-高precision、高recall
R-FCN
适应全卷积化CNN结构,提出全卷积化设计
- 共享ResNet的所有卷积层
- 引入变换敏感性
-
- 1 位置敏感分值图
-
- 2 位置敏感池化
YOLO系列
YOLO将物体检测任务当做一个regeression问题来处理,通过YOLO,每张图像只需要“看一眼”就能得出图中都有哪些物体和这些物体的位置。
YOLOv1
网络又24个卷积层与2个全连接层构成,网络入口为448*448,图片进入网络先经过resize,网络的输出结果为一个张量。
优点
- 速度快
- 假阳性率低
- 能够学到更加抽象的物体特征
不足 - 检测精度低
- 容易产生定位错误
- 对小物体的检测效果不好,尤其是密集的小物体
YOLOv2
基础模型采用Darknet-19 - 使用较多的3*3卷积核,在每一次池化操作后把通道数翻倍
- 网络使用了全局平均池化
- 采用BN稳定模型训练
YOLOv3 - 使用一个53层,7个卷积得到第一个特征图谱,在这个特征图谱上进行第一次预测。
- 然后从后向前获得倒数第三个卷积层的输出,进行一次卷积一次*2上采样,将上采样特征与第43个卷积特征连接,经过7个卷积得到第二个特征图谱,在这个特征图谱上做第二次预测
- 然后从后向前获得倒数第3个卷积层的输出,进行一次卷积
疑惑
- 什么是Fine tune
- 什么是