ast R-CNFast R-CNN与R-CNN相同,同样使用VGG16作为网络的backbone,针对R-CNN的速度,内存占用大,准确率低,3个主要问题的更好解决方案。
Fast R-CNN通过引入一些关键的创新,显著提高了训练速度、检测速度以及内存使用效率。
Fast R-CNN与R-CNN相比训练时间快9倍,测试推理时间快213倍,准确率从62%提升至66%(再Pascal voc数据集上)
Fast R-CNN[2],它非常巧妙地解决了R-CNN的几个主要问题。Fast R-CNN的训练和预测过程如图1所示。
图1 Fast R-CNN训练和预测过程示意图
具体训练步骤如下。
1)将整张图片和ROI直接输入到全卷积的CNN中,得到特征层和对应在特征层上的ROI(特征层的ROI信息可用其几何位置加卷积坐标公式推导得出)。
2)与R-CNN类似,为了使不同尺寸的ROI可以统一进行训练,Fast R-CNN将每块候选区域通过池化的方法调整到指定的M*N,此时特征层上将调整后的ROI作为分类器的训练数据。与R-CNN不同的是,这里将分类和回归任务合并到一起进行训练,这样就将整个流程串联起来。Fast R-CNN的池化示意图如图1所示,即先将整张图通过卷积神经网络进行处理,然后在特征层上找到ROI对应的位置并取出,对取出的ROI进行池化(此处的池化方法有很多)。池化后,全部2000个M*N个训练数据通过全连接层并分别经过2个head:softmax分类以及L2回归,最终的损失函数是分类和回归的损失函数的加权和。利用这种方式即可实现端到端的训练。结果如图2所示。
Fast R-CNN极大地提升了目标检测训练和预测的速度。
图2 Fast R-CNN训练结果示意图
领取专属 10元无门槛券
私享最新 技术干货