物体检测的三种网络模型
介绍三种网络结构:(1)使用Proposal,包括Faster R-CNN和R-FCN;(2)SSD;(3)Yolo。这三种网络各具特色。
Faster R-CNN
R-CNN,Fast R-CNN和Faster R-CNN一脉相承。
R-CNN处理流程如上图所示:(1)使用一个提取Region Proposal的算法在一张图像上提取约2K个图像块(R-CNN中使用Selective Search算法,具体细节不用关心,演化到Faster R-CNN就用网络提取Proposal了);(2)把所有的Proposal归一化成一个SS的矩形(CNN的输入要求是矩形);(3)训练CNN网络,对每一个Proposal进行分类。可见R-CNN的做法还是很朴素的,它的贡献就是打破物体分类常用的Bag of Words方法,首次使用CNN来做。
R-CNN的一个缺陷是计算量很大:每个图像有约2K个Proposal,每个Proposal作为一个独立的输入提取特征,提取特征又是CNN中计算量密集的步骤,导致该算法很笨重。Fast R-CNN就是解决这个问题。
Fast R-CNN的处理流程如上图所示:(1)使用CNN网络提取底层特征(这些特征是整幅图像上所有的Proposal公用的,节省了R-CNN中的计算量);(2)自己写了一个ROI Pooling层,从数据层得到ROIs,即:每一个Proposal的坐标,映射到Feature Map上的对应位置,把该位置的矩形分成7×7的块,使用max Pooling提取一个维数固定为49的特征向量,送到两个全连接层中;(3)输出网络是两个全连接层,一个做分类,Loss层是SoftMaxWithLoss,一个做回归,Loss层是SmoothL1Loss。网络结构如下图所示。
Fast R-CNN网络的一个缺陷:依赖外部算法提取Proposal,个数太多,仍然占用大量计算量。Faster R-CNN<