《论文阅读》Point-GNN: Graph Neural Network for 3D Object Detection in a Point Cloud

留个笔记自用

Point-GNN: Graph Neural Network for 3D Object Detection in a Point Cloud

做什么

3D object detection。3维目标检测
在这里插入图片描述
对于输入的3D点云,像2D一样使用一个bounding box去将相应的物体包围起来,不过这里使用的bounding box也同样变成了3维的

做了什么

在这里插入图片描述
对于点云常见的处理方法有很多,有grid也就是分voxel然后使用CNN的,有Sets也就是邻域然后提取种子点特征的
这里设计了一种为名为Point-GNN的图形神经网络来预测图形中每个顶点所属的对象的类别和形状

怎么做

在这里插入图片描述
整体结构由三个部分组成,第一部分graph construction也就是图形构造部分,第二部分a GNN of T iterations也就是Point-GNN部分,第三部分bounding box merging and scoring也就是包围框合并部分
首先是第一部分图形构造部分
在这里插入图片描述
这部分的输入就是整个结构原始的输入,一个包含了N个点的点云∈R3+k,3是三维坐标值,k是属性也就是特征通道数,然后就可以利用这些构造一个图结构G=(P,E),仍然是构造方法,顶点P就是N个点以3+k的通道数作为点特征,边的构造方法↓
在这里插入图片描述
简单来说就是对每个点的固定半径的邻域内的点都连一条边
这是常见的做法,但因为点云内的点数量可能非常巨大,所以这里采用了voxel也就是体素下采样的做法,具体来说,对每个顶点搜索一个半径为r的邻域,然后使用一个MLP去嵌入邻域内所有特征,使用一个max函数来聚合特征后作为顶点特征的初始化
然后是核心的第二部分,Point-GNN部分
在这里插入图片描述
在这里插入图片描述
这里的输入是上一部分得到的构造好的graph
首先先看看常见的GNN的操作方式,典型的图形神经网络通过沿边缘聚集特征来细化顶点特征,简单来说就是根据边连接邻域的信息来更新每个点的特征信息
在这里插入图片描述
这里的vt+1就是第t+1次迭代的顶点特征值,ρ(.)是一个集合函数,用于聚合每个顶点的边缘特征,gt(.)采用聚合的边要素来更新顶点要素,然后再进行下一轮迭代
而这里设计GNN来细化顶点的状态,以包括关于顶点所属的对象的信息
在这里插入图片描述
这里的s就是顶点特征,ft(.)是边缘特征提取,ht(.)使用上一次迭代的中心顶点状态值计算偏移
总的来说,这里使用的是邻居的相对位置和顶点的上一状态来作为对当前迭代状态更新的依据,导致相对于点云的全局移动的平移不变性
然后就是三个函数的建模方式
在这里插入图片描述
在这里插入图片描述
ht(.)和ft(.)和gt(·)就是构造了一个MLP,而ρ函数则是使用的max激活函数
最后更新完的graph结构再构造几个MLP得到各自节点的对象分类和对象定位
在这里插入图片描述
然后是第三部分,包围框合并部分
在这里插入图片描述
这里也是采用了NMS的方法,但相比于其他的直接根据score来进行NMS,这里设计了另外的计分方法,具体来说,给定一个盒子b,设l,w,h分别是它的长宽高,vl,vw,vh分别是它的方向向量,x是点p的三维坐标,则可以定义一个遮挡因子
在这里插入图片描述
于是乎更改NMS里的评分方式
在这里插入图片描述
简单来说就是将分类得分由IOU和遮挡因子加权组成,IOU是判断包围框的重合性,来抑制重叠的盒子,遮挡因子则是附带了一个方向性,考虑占体积比
在这里插入图片描述
然后就是训练的LOSS,这里设计了二个LOSS,前景背景分类损失Lcls,包围框定位损失Lloc
首先是前背景分类损失,对于每个顶点都在分类分支中会计算一个类别的概率分布在这里插入图片描述
在这里插入图片描述
如果一个顶点在一个对象的边界框内,就将对象类分配给该顶点,如果一个顶点在任何边界框之外,给它分配背景类
于是定义损失
在这里插入图片描述
其中p是预测的概率向量,y是GT的one-hot向量
显而易见这个LOSS是为了使顶点的对象分类准确
然后是包围框定位损失
首先定义
在这里插入图片描述
为需要预测的包围框的属性,xyz代表了包围框中心坐标,lhw代表了包围框的长宽高,θ代表了偏角,然后定义
在这里插入图片描述
这里的xv等带v下标的表示的是顶点v的坐标,lm等带m下标的表示一个常数因子在这里插入图片描述
这里的local分支预测出来的结果与GT设计一个定位损失
在这里插入图片描述
这里的1(·)函数还是判断的意思,而binterest表示判断该点是否在框内
在这里插入图片描述
最后再加上一个正则化,构成最终的LOSS

总结

1.总体来看没有什么特别新奇或者厉害的地方,但这种构建图卷积的方式确实很不错,虽然见多了

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
LiDAR Point-GNN是一种基于图神经网络(GNN)的LiDAR点云检测方法。在传统的LiDAR检测领域,检测方法的范式已经相对成熟。然而,GNN的兴起为毫米波数据的处理提供了新的思路。由于毫米波数据具有明确的空间位置关系和稀疏性,作者提出了一种基于GNN的毫米波雷达检测方法。这种方法首次实现了GNN在雷达数据上的应用,并在nuscenes的雷达检测任务中取得了最先进的结果。如果你对GNN和其在雷达检测中的具体实现感兴趣,你可以参考论文中提供的链接获取更多的详细信息。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [3D目标检测综述](https://blog.csdn.net/xinxiang7/article/details/113656895)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [用于毫米波雷达的GNN:Radar-PointGNN](https://blog.csdn.net/weixin_43253464/article/details/126150439)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值