P2B: Point-to-Box Network 点云目标跟踪(CVPR 2020)

点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

作者: 不知道叫什么好

https://zhuanlan.zhihu.com/p/146512901

本文仅做学术分享,如有侵权,请联系删除。

点云里面的目标跟踪(Object Tracking),目前还可以算是一个比较新的话题(文章比较少)。本文介绍一篇点云目标跟踪相关的文章:

https://github.com/HaozheQi/P2B

https://arxiv.org/pdf/2005.13888.pdf

文章将3D点云里面的目标跟踪(Object Tracking)问题看作一个目标检测(Object Detection)问题,主要使用了VoteNet里面用到的一些技术来实现目标检测。因此,理解VoteNet,对理解本文有很大的帮助。VoteNet的大概介绍,可以参考:

https://zhuanlan.zhihu.com/p/94355668

1 点云目标跟踪的输入输出

主要有两个输入:

目标模版点云(target template):比如一辆汽车模型的点云,需要在search area中定位到与该模版点云相似的汽车的位置。

搜索区域点云(search area):被搜索的点云。

一个输出:

target template点云在search area点云中的3D box信息。

2. 网络结构

P2B: Point-to-Box Network 点云目标跟踪(CVPR 2020)_第1张图片

如上图所示,整体分为两步。对照VoteNet:

第一步计算出seed point

第二步通过seed point计算出3D box

与VoteNet的主要区别在于:

目标跟踪最后只需要预测出一个包含目标点云的Box、score

目标检测最后要预测出所有物体的Box、每个box的类别、score

下面对两个步骤进行大概介绍。

3. Target-specific feature augmentation

该步主要对template点云和search area点云进行预处理,为search area点云生成一个seed point点集,以便在后续模块中执行voting操作。在上面的网络结构图中:

template点云有 个点,数据的shape为:

search area点云有 个点,数据的shape为:

每步的操作流程如下:

template点云( )使用一个PointNet++进行下采样,得出 个seeds的feature: 。最后将每个seed点的3D坐标拼到feature里面,得到:

Search area点云( )用同一个PointNet++进行下采样,得到 个seeds的feature: 。最后将每个seed点的3D坐标拼到feature里面,得到:

使用cosine距离,计算 个feature和 个feature之间,任意两个点之间的similarity,得出相似性矩阵:

使用相似性矩阵和template点云的seeds点feature,为Search area点云的每个seed点,构建出一个新的feature,得出: 。具体构建过程如下图所示:

P2B: Point-to-Box Network 点云目标跟踪(CVPR 2020)_第2张图片

这步可以认为是将模版点云和待搜索点云融合到一起,得到了一个新的seed点云。seed点云即包含了模版点云的信息,也包含了待搜索点云的信息。

4. 3D target proposal and verification

该步操作以seed点云作为输入,在Search area点云内定位出target template点云的位置box。大概操作步骤如下:

voting:对每个seed,分别使用一个共享的MLP,预测出每个seed所属物体的中心点以及中心点的feature。具体实现时,先预测出seed点与其所属物体中心点之间的3D坐标和feature之间的偏移量,然后再通过偏移量计算出中心点3D坐标和feature。最后测出 个中心点坐标和feature: 。在计算loss时,只对落在目标物体上的点的3D坐标计算loss。

classifying:这步主要通过一个2分类器,预测出每个seed点落在目标物体表面的score(confidence):

将每个seed点的voting结果与score拼接到一起,得到:

Clustering:从 个点中采样出 个点,分别用每个采样点作为中心点,用ball query找到每个点的邻居点,构成 个cluster

对每个cluster,使用一个类似于PointNet的网络(MLP-Maxpool-MLP),预测出K个目标物体中心点坐标、在X-Y平面上的偏移量,以及每个预测结果的score(confidence)。

最后选取score最高的预测值,作为最终的结果。如下图所示,0.96得分最高,则选为最终的结果:

P2B: Point-to-Box Network 点云目标跟踪(CVPR 2020)_第3张图片

5. Loss

共有4个loss组成:

:表示seed点voting出来的其所属物体中心点坐标,与GT的差距。只计算落在目标物体上的点。

:表示计算出来的每个seed点属于目标物体的score,与GT的差距。

:表示每个cluster预测出来的score,与GT的差距。GT的设置:cluster预测出来的box的中心点,距离GT中心点0.6米之内,则设置为1;否则设置为0.

:表示每个cluster预测出来的box,与GT box的差距。只计算 中GT-score为1的box。

对以上4个loss加权求和得出一个总体的loss来训练。

6. 总结

这篇文章主要使用VoteNet中的相关技术来实现目标追踪。另外,文章给出了一种将target点云与search area点云融合的方法,可以学习借鉴。

推荐阅读

  • 专辑|相机标定

  • 专辑|3D点云

  • 专辑|SLAM

  • 专辑|深度学习与自动驾驶

  • 专辑|结构光

  • 专辑|事件相机

  • 专辑|OpenCV学习

  • 专辑|学习资源汇总

  • 专辑|招聘与项目对接

  • 专辑|读书笔记

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近1000+星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

 圈里有高质量教程资料、可答疑解惑、助你高效解决问题

你可能感兴趣的:(P2B: Point-to-Box Network 点云目标跟踪(CVPR 2020))