【导读】这是一篇来自ICCV2019的论文,由港中文的贾佳亚教授实验室完成。虽然名字很接近,但是Fast Point R-CNN不仅跟Fast R-CNN没有任何关系,它跟Point R-CNN也没太大关系,找前景点,做精细回归思想相近。三者唯一的共同点就是它们三个都是two-stage网络,但是网络结构完全不同。
如果要强行归类的话,Fast Point R-CNN应该算是VoxelNet一派的。这一点从网络结构图中可以看出。网络的第一阶段叫做VoxelRPN,类似于VoxelNet/SECOND的网络结构,用来对体素化的点云进行处理,网络由3D卷积层+2D的2D的RPN构成;网络的第二阶段是RefinerNet,将原始点云加入进来,并融入注意力机制,提高检测效果。从这个角度来看,这个网络应该叫Refiner-VoxelNet或许更为贴切(我胡说的)。
- 网络结构
下面仔细看下网络结构,首先是第一阶段的VoxelRPN:网络由四个BLOCK构成,第一个BLOCK由3D卷积核构成,用来对体素进行处理,逐渐把Z维度上降低到1,也就成了2D特征图了。后面三个BLOCK用来对这个2D特征图进行进一步的特征提取和融合。这里笔者根据网络结构计算了每个层的输出特征图的尺寸。
但是,考虑到体素化处理点云会丢失一定的定位信息,影响目标检测精度。因此,网络增加了RefinerNet用来进一步优化结果。
RefinerNet中引入了特征增强和注意力机制,主要由MLP构成。网络以包围框特征和点云坐标作为输入。通过一个独特的fusion module来进行特征的融合增强。先将这两种特征进行拼接并经过两层MLP处理,然后与包围框特征得到的权值进行逐元素相乘,就这样利用注意力机制来增强了网络的定位能力。最后经过MLP后直接计算出包围框8个顶点的坐标。
计算之前先对标签中的包围框进行调整,并且约定了角点的顺序。
- 实验结果
效果比“体素门派”的SECOND和PointPillars稍微好一点,逼近PointRCNN。速度的话,用的GPU不一样,比较的意义不是很大。所以你现在已经跃跃欲试,准备入坑Fast Point R-CNN了吗?
且慢……
“模型在8块NVIDIA P40 GPU上进行训练,batch size设置为16”……
再想想那些在一块1080Ti上就能训练的SECOND、PointPillars、Point R-CNN……
往期相关
欢迎关注公众号:3D点云深度学习
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Fast Point R-CNN | 一个或许跟PointRCNN和Fast RCNN都没啥关系的点云目标检测网络 - Python技术站