摘要
比较R-CNN, SPP-Net, Fast R-CNN 使用”多任务损失” + “一个训练stage”. 多任务损失简化了学习,并提升了检测率.
Fast R-CNN修复了R-CNN和SPP-Net的缺陷. 存在下面的优点:
1. 相比于R-CNN, Fast R-CNN有更高的检测率。
2. 训练是 single stage,多任务loss
3. 在训练的过程中,所有的网络层都可以被更新
4. 不需要磁盘存储(SPP-Net网络需要存储大量的数据到硬盘)
Fast R-CNN训练
考虑一个预训练网络,包含几个卷积层、max pooling层、ROI pooling层和FC层。最后连接两个姊妹层:一个softmax层,输出k+1类的概率,另外一层输出4*k位置坐标。
1. ROI pooling layer
ROI pooling layer 是spatial pyramid pooling的简化版本。ROI pooling层的输入包括N个特征图 和 R个ROI区域。
特征图的尺寸为: H*W*C
ROI表示为(n,r,c,h,w),n表示特征图的序号,r,c是左上角坐标,h,w是ROI的width,height。
对于每个ROI,ROI pooling层使用max pooling产生固定尺寸W’*H’的output bin。
2. 使用预训练网络
作者使用三个预训练网络,在5至13