神经网络大多解决图像识别问题:输入一张图像,输出该对象对应的类别。目标检测输入的同样是一张图片,区别在于输出不单单是图像的类别,还有该图像中包含的所有物体以及其位置,本博文先从R-CNN讲起。

传统的目标检测算法先是在图片中以穷举算法选出所有物体可能出现的区域框,然后在区域框中提取特征并且使用图像识别方法分类,从而得到所有分类区域后,通过非极大值抑制(Non-Maximum Suppression,NMS)输出结果。这里插一句,对于所有的Bounding Box其都有一个置信度,非极大值抑制是指去除冗余的Bounding Box,保留所有框中置信度最好的一个。

传统的提取特征(如SIFT、HOG)换成深度卷积网络提取特征,具体算法如下:

                    

目标检测中 w h R 的含义 目标检测rnn_目标检测

AlexNet(首次运用卷积神经网络)。

AlexNet进行微调。

Selective Search(相对于穷举法而言,减少计算量)搜获候选区域,统一使用微调后的AlexNet对候选区域进行特征提取(这里候选框大小不同,需要调整为统一大小再传到AlexNet中),并将提取的特征存储起来。

  4)将存储起来的特征用SVM分类(


创新:1)采用CNN网络提取图像特征,从经验驱动的人造特征范式HOG、SIFT到数据驱动的表示学习范式,提高特征对样本的表示能力;

Selective Search(采取过分割手段,将图像分割成小区域,再通过颜色直方图,梯度直方图相近等规则进行合并,最后生成约2000个建议框的操作)代替穷举算法,减少计算量;

     3)采用大样本下有监督预训练+小样本微调的方式解决小样本难以训练甚至过拟合等问题;

缺点:1)R-CNN计算量非常大;

     2)在训练阶段还需要将提取的特征保存起来,也非常不便。

  下一部分讲解下SPPNet ,为Fast R-CNN做准备工作。