TridentNet 目标检测中尺度变化新思路
arXiv: https://arxiv.org/abs/1901.01892
github: https://github.com/TuSimple/simpledet/tree/master/models/tridentnet
在COCO dataset上, TridentNet(ResNet-101 backbone)实现了mAP=48.4的壮举。成为单模型中的state-of-the-art。
文章两个亮点:
- 通过不同dilated-rate的dilated convolution来获取不同感受野的特征,并保证尺度不变。
- 参数共享(weight sharing between convs for uniform representation。)除扩张卷积外其余卷积均共享,使用同一套参数。
解决多尺度的问题
图像金字塔(Image Pyramid)在解决目标多尺度问题中起着重要作用。但是在卷积神经网络特征提取过程中,Image Pyramid将会带来大量计算。为解决这一问题,并结合神经网络提取特征的特点,特征金字塔(Feature Pyramid)被提出,特征金字塔网络(FPN)也被大量应用。为了弥补低级特征中缺乏语义的缺点,FPN通过自上而下的路径和横向连接将高级特征中的语义信息融入到低级特征中。 然而,不同尺度的物体的表征能力仍然不同,因为它们的特征是在FPN中的不同层上提取的。 这使得特征金字塔成为图像金字塔不太令人满意的替代品。
dilated conv代替特征金字塔
- tridentnet使用ResNet-50 and ResNet-101 作为backbone
- dilation rate分别为1 ,2,3 三种dilated conv作用在resnet的conv4阶段。
- 通过不同的扩张率实现不同感受野下同等大小特征图的获取。之后通过RPN和Fast R-CNN的检测头。最后做NMS来获得最终预测结果。
操作如图figure.2
一些参数的分析对比试验
作者对不同扩张率与被检测目标大小的关系做了对比试验。小的扩张率在小目标上检测能力较好,大的扩张率对大目标检测能力较强。
对于COCO数据集,small(小目标) (less than 32×32), medium(中目标) (from32×32 to 96×96) and large (大目标)(greater than 96×96)。
作者对分支数量也做了实验。3个分支有着较好的预测能力。
不同conv阶段应用扩张卷积的提升效果。相对于conv2和conv3,conv4效果较好,意味着较高的语义特征在表达能力方面还是相当重要的。
最终效果(COCO数据集)
TridentNet*相较于TridentNet应用如下技巧:(multi-scale training and testing), Soft-NMS, deformable
convolutions,large-batch BN。
For multi-scale training/testing, the shorter side of images are set as [600,800, 1000, 1200].
在inference阶段,可以使用three-branch去做预测,TridentNet and TridentNet*的结果是(42.7/48.4)。
也可以只使用中间分支去预测,结果为42.2/47.6。精度下降并不会很明显。
整个过程省去了特征金字塔的构建过程,并对空洞卷积(空洞卷积和感受野的关系)做了更为深入的研究的。参数共享则是让计算量没有较大增长。