# 目标检测
## 基本概念
计算机视觉中关于图像识别有四大类任务:
1. 分类-Classification:解决“是什么?”的问题,即给定一张图片或一段视频判断里面包含什么类别的目标。
2. 定位-Location:解决“在哪里?”的问题,即定位出这个目标的的位置。
3. 检测-Detection:解决“是什么?在哪里?”的问题,即定位出这个目标的的位置并且知道目标物是什么。
4. 分割-Segmentation:分为实例的分割(Instance-level)和场景分割(Scene-level),解决“每一个像素属于哪个目标物或场景”的问题。
![pic](https://img.zeekling.cn/images/2020/04/25/63e746f0962e6215b5ed6a2587fe5af0.png)
## 目标检测算法分类
![pic](https://img.zeekling.cn/images/2020/04/25/edfbb1a6466964df97d6bea080496c67.png)
### Two stage目标检测算法
先进行区域生成(region proposal,RP)(一个有可能包含待检物体的预选框),再通过卷积神经网络进行样本分类。
任务:特征提取—>生成RP—>分类/定位回归。
常见的two stage目标检测算法有:R-CNN、SPP-Net、Fast R-CNN、Faster R-CNN和R-FCN等。
#### R-CNN
> **标题**:《Rich feature hierarchies for accurate object detection and semantic segmentation》
> **时间**:2014
> **出版源**:CVPR 2014
主要链接:
1. **arXiv**:[http://arxiv.org/abs/1311.2524 ](http://arxiv.org/abs/1311.2524)
2. **github(caffe)**:[https://github.com/rbgirshick/rcnn ](https://github.com/rbgirshick/rcnn)
### 2.One stage目标检测算法
不用RP,直接在网络中提取特征来预测物体分类和位置。
任务:特征提取—>分类/定位回归。
常见的one stage目标检测算法有:OverFeat、YOLOv1、YOLOv2、YOLOv3、SSD和RetinaNet等。