VoteNet 理论理解(通俗易懂!)

论文名:《Deep Hough Voting for 3D Object Detection in Point Clouds》

论文链接:ICCV 2019 Open Access Repositoryicon-default.png?t=O83Ahttps://openaccess.thecvf.com/content_ICCV_2019/html/Qi_Deep_Hough_Voting_for_3D_Object_Detection_in_Point_Clouds_ICCV_2019_paper.html(论文下载不了私信和我要也可以)

代码地址:https://github.com/facebookresearch/voteneticon-default.png?t=O83Ahttps://github.com/facebookresearch/votenet(代码下载不了私信和我要也可以)

一、论文贡献

目前3d点云检测方法的缺陷:

  1. 将不规则的点体素化到规则的3D网格中,然后使用3D CNN去检测,这种方法没有利用点云数据的稀疏性,使得计算成本很高。
  2. 使用3D场景的2D鸟瞰图,然后采用二维目标检测去定位目标,牺牲掉了物体的几何细节,特别实在室内场景中更加严重。

3d点云检测面临的挑战:

本论文尝试对点云进行目标检测,但却面临一个很大的难题:3D的物体的中心(质心)是远离物体的表面的,而点云中的点都是扫描物体表面得到的,这样点云的内部就是空心的,因此就很难去找到物体中心。

作者提出的方法:

为了应对这一挑战,作者提出了 VoteNet,这是一种基于深度点集网络和霍夫投票协同作用的端到端 3D 对象检测网络。我们的模型通过简单的设计、紧凑的模型尺寸和高效率,在两个大型真实 3D 扫描数据集 ScanNet 和 SUN RGB-D 上实现了最先进的 3D 检测。值得注意的是,VoteNet 通过使用纯粹的几何信息而不依赖彩色图像,优于以前的方法。通过直接处理点云数据,不仅避免了信息的损失,而且由于处理的点云数据的稀疏性,还可以降低计算代价。

论文贡献:

  • 通过端到端可微架构,在深度学习的背景下重新表述霍夫投票,我们将其称为 VoteNet。
  • SUN RGB-D 和ScanNet 上最先进的3D 对象检测性能。
  • 深入分析点云中3D 对象检测投票的重要性。

使用深度 Hough 投票模型进行点云中的 3D 对象检测。给定 3D 场景的点云,我们的 VoteNet 投票给对象中心,然后对投票进行分组和聚合,以预测 3D 边界框和对象的语义类别

二、VoteNet网络结构

VoteNet总体网络结构如下:

  1. 网络结构由原始点云输入,维度为(20000,3),代表输入20000个点云,每个点云都有xyz三个坐标
  2. 作者使用pointnet++骨干网络提取特征,骨干网络的输入为原始点云,维度为(20000,3),pointnet++主要通过4层SA模块和2层FP模块进行特征提取,这里就先不在讲述了,经过骨干网络提取出来1024个点,这些点称为种子点(或兴趣点),种子点坐标维度为(8,1024,3),种子点的特征维度为(8,1024,256),8是batch,1024是种子点的个数,3是xyz坐标,256是特征数
  3. 将提取出来的种子点送到votelayer进行投票,这里种子点特征将通过三层一维卷积和两层BN层,输出一个张量offset,维度为(8,1024,1,259),votelayer输出的是种子点到投票点的位移偏移量offset以及投票点的特征vote_features,所以要的到投票点的坐标需要用种子点的坐标加上得到的偏移量,vote_xyz=seed_xyz+offset,投票点坐标的维度也是(8,1024,3),投票点的特征是将输出特征加上种子点特征得到的vote_features=seed_features+offset,(由于输出的维度和种子点维度不一致,这里还需要将维度进行变换才可以相加)
  4. 得到投票点坐标以及投票点特征后需要对投票点进行聚合,作者使用的是pointnet中的SA模块进行聚合,将1024个投票点聚合成256个点aggregated_points,维度为(8,256,3),其特征为aggregated_features(8,256,128)
  5. 将聚合好的投票点进行候选框预测, 每个聚合后的点会投票产生一个候选结果。根据聚合后的特征,VoteNet通过分类head和回归head产生预测的候选框结果。aggregated_features(256x128)通过两层一维卷积进行更深层特征提取,提取后的特征分别经过一层卷积得到分类预测结果cls_precls_predictions(256x12)和位置回归预测结果reg_predictions(256x67)
  6. 最后一步就是将结果进行解码,预测结果如何与真实标签关联需要一一进行解码。真实标签主要包含目标有无、类别标签和目标回归位置。

三、 VoteNet损失函数

VoteNet的损失函数包含以下内容:

  • box_loss:物体框损失,用于评估物体框的质量和准确度。

  • center_loss:中心点损失,用于保证目标中心点的准确性。

  • header_cls_loss:物体方向(角度)分类损失,用于检测物体的动作。

  • header_reg_loss:物体方向(角度)回归损失,用于精细调整物体的回转。

  • loss:总体损失,通常是上述各个损失的组合。

  • neg_ratio:负样本比例,表示负样本在训练数据中所占的比例。

  • obj_acc:目标检测精度,表示检测到的目标与实际目标的匹配精度。

  • objectness_loss:目标性损失,通常用于评估物体检测的置信度。

  • pos_ratio:正样本比例,表示正样本在训练数据中所占的比例。

  • sem_cls_loss:语义分类损失,用于将物体分割成不同的语义类别。

  • size_cls_loss:尺寸分类损失,用于将货物按照不同的尺寸分类。

  • size_reg_loss:尺寸恢复损失,用于精确调整工件的尺寸。

  • vote_loss:投票损失,通常与点云处理和物体检测中的投票过程相关。

最终损失函数公式为:

其中

这里说一下投票损失,公式为

这个公式中Mpos代表在物体表面的种子总数 ,[Si on object]代表种子点Si是否在物体表面,

这一部分计算的是 真实的坐标偏移量和预测坐标偏移量的差。

四、实验结果

作者分别在SUN RGB-D数据集和ScanNetV2数据集上进行验证,结果如下:

参考链接:

 VoteNet论文速读__点云数据处理 - 知乎论文名称:Deep Hough Voting for 3D Object Detection in Point Clouds 作者信息: 代码开源:https://github.com/ facebookresearch/votenetICCV 2019 Oral 因为看不明白今年的点云论文,跑去看P2B,结果发现P2B…icon-default.png?t=O83Ahttps://zhuanlan.zhihu.com/p/430432445

 【3D目标检测】VoteNet-CSDN博客文章浏览阅读1w次,点赞15次,收藏74次。Deep Hough Voting for 3D Object Detection in Point Clouds一、论文贡献二、模型实现2.1 霍夫投票2.2 VoteNet2.2.1 总体架构2.2.2 Point cloud feature learning2.2.3 Hough voting with deep networks2.2.4 Object Proposal and Clas..._voteneticon-default.png?t=O83Ahttps://blog.csdn.net/weixin_39373480/article/details/103583523?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-2-103583523-blog-127247909.235%5Ev38%5Epc_relevant_yljh&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-2-103583523-blog-127247909.235%5Ev38%5Epc_relevant_yljh&utm_relevant_index=5

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值