点击上方“3D视觉工坊”,选择“星标”
干货第一时间送达
作者:Panzerfahrer
链接:https://zhuanlan.zhihu.com/p/107975261
本文转载自知乎,作者已授权,未经许可请勿二次转载。
虽然论文已经发表一年多了, 截止目前 (2020.04.18) pointpillar 依旧是kitti排行榜上速度最快的"男人", 而且有着不错的AP结果,出自安波福,是为数不多可以应用在自动驾驶领域的模型.
论文链接:https://arxiv.org/pdf/1812.05784.pdf
代码链接:https://github.com/nutonomy/second.pytorch
pytorch->onnx->tensorrt 工具链:https://github.com/SmallMunich/nutonomy_pointpillars
首先说应用深度学习在点云上做object detection的两个思路, 一个是3D卷积, VoxelNet是第一个endtoend的网络, 后来SECOND对此作了改进, 但是仍然3D卷积的瓶颈依旧明显; 另一个是投影到BEV (Bird's Eye View)像图像做二维卷积, 第二种方法虽然时间更快, 但是点云的稀疏性让卷积的不实用,效率很低, 所就用了 Fast Encoder, 简单来说就是对点云密度比较高的地方进行卷积, 速度提升还是很明显的.
2.1 Pillar Feature Network
对于识别Car而言, 识别范围为 前后左右上下[(0, 70.4), (-40, 40), (-3, 1)], 将点云投影到二维栅格中, 每个Pillar (栅格柱子) 的大小为 0.16*0.16, 可以理解为图像里的一个像素, 那么伪图像的尺寸就是 440*500. Pillar中的每个点特征D长度9, D=[x, y, z, r, x_c, y_c, z_c, x_p, y_p], 其中r代表intensity/reflection, [x_c, y_c, z_c] 代表Pillar中所有点的质心坐标, [ x_p, y_p] 代笔质心和Pillar几何中心的偏移.
因为~97% 的Pillar都很稀疏, 所以需要筛选出稠密(dense)的Pillar做卷积, 如上图所示, 选出的 Stacked Pillars的尺度为(D, P, N) 分别代表特长度D=9, Pillar的个数P=2847(假设), 点的数量N=100(假设), 这里用了一个简单的PointNet, 之后接了一个BN和一个ReLU得到尺度为(C, P, N) 的Tensor, 这里特征C的长度为64,然后经过max操作得到尺寸为(C, P)的Tensor, 然后在反投影回伪图像上, 因为反投影的Pillar个数只有2847, 剩下的将被填充为0.
2.2 Backbone& Detection Head
下图是BackBone和RPN的结合, 论文用的是SSD, 但实际用的是RPN.
Loss分为三部分, 定位Loss, 方向Loss 和分类Loss:
这里提一句, Pointpillar 可以识别朝向,也就是会做是否旋转180°的处理。
1. 其实投影到二维的做点云物体识别的网络很多(例如 RT3D:自动驾驶中利用3D点云实时车辆识别), 这篇文章的主要贡献在于 "Fast Encoder", 也就是将点云稠密的Pillar(上文提到2847个)输入给网络, 很多博客都没提到这一点,我觉得这才是这篇论文的精髓所在, 这大大提升了识别速度, 论文写可以达到62Hz.
2. 虽然速度快但是也有缺点,首先网络的输入只是部分"稠密"的Pillar这必将略微降低识别效果; 另外因为网络中训练不同种类时使用的卷积stride和Anchor的尺寸不一样, 导致多分类的效果不理想.
推荐阅读:
吐血整理|3D视觉系统化学习路线
那些精贵的3D视觉系统学习资源总结(附书籍、网址与视频教程)
超全的3D视觉数据集汇总
大盘点|6D姿态估计算法汇总(上)
大盘点|6D姿态估计算法汇总(下)
机器人抓取汇总|涉及目标检测、分割、姿态识别、抓取点检测、路径规划
汇总|3D点云目标检测算法
汇总|3D人脸重建算法
那些年,我们一起刷过的计算机视觉比赛
总结|深度学习实现缺陷检测
深度学习在3-D环境重建中的应用
汇总|医学图像分析领域论文
大盘点|OCR算法汇总
重磅!3DCVer-学术论文写作投稿 交流群已成立
扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会(ICRA/IROS/ROBIO/CVPR/ICCV/ECCV等)、顶刊(IJCV/TPAMI/TIP等)、SCI、EI等写作与投稿事宜。
同时也可申请加入我们的细分方向交流群,目前主要有3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。
▲长按加微信群或投稿
▲长按关注公众号
3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近1000+星球成员为创造更好的AI世界共同进步,知识星球入口:
学习3D视觉核心技术,扫描查看介绍,3天内无条件退款
圈里有高质量教程资料、可答疑解惑、助你高效解决问题