三维目标检测---RPVNet论文解读

文章目录[隐藏]

更多内容更新于个人博客 twn29004.top
image-20211116125355498

代码链接

RPVNet: A Deep and Efficient Range-Point-Voxel Fusion Network for LiDAR Point Cloud Segmentation (arxiv.org)

论文总结

本文实现了一种大场景下的点云语义分割网络,并在SemanticKITTI数据集上实现了1st的结果。其主要通过一种融合的方法来实现。不同于以往的使用基于点,基于体素和基于深度图(Range Image)的方法.但是这些方法都有一定的缺点。之前融合的方法也仅是融合其中的两类。本文提出了一种融合三类数据的网络。网络的主要结构如下:

image-20211116130031567

网络主要分为三个分支,使用了经典的Encoder和Decoder的结构。三个分支分别是基于体素的,基于点云的和基于深度图的。分别使用对应的网络提取各个分支的特征,然后作者使用了点这个分支来作为中间节点,来融合不同来源的数据。不同特征进行融合的算法如下图所示:

image-20211116132950759

将其他特征映射到基于点的表示的话,可以使用最近邻插值或者三线性插值或者双线性插值的方法。以基于深度图到基于点的表示为例:通过计算该点在深度图上的周围的四个

image-20211116134822778

其中,

F

R

u

F_R(u)

FRu表示下标为

u

u

u的深度图的特征。

ϕ

(

u

,

j

)

\phi(u,j)

ϕ(u,j)表示的是对应的线性权重的计算方法。

δ

(

j

)

\delta(j)

δ(j)表示的是

j

j

j周围的四个邻居。

在讲其他表示的特征投影到点上之后,作者提出了一个GFM(Gated Fusion Module)来对这些点表示的特征进行融合。GFM的结构如图2中的蓝色部分所示,然后就得到了一个基于点的融合后的特征,然后讲融合后的特征在转换到其他表示的形式下。

从点到其他两种表达形式的话,作者使用的是平均的方法。以体素为例子,将属于一个体素的所有点的特征进行平均,然后将平均后的特征作为这个体素的特征。具体做法图下图所示:

image-20211116142742978

image-20211116142730453

image-20211116142351294

消融实验部分

image-20211116144154823

Table4 表示了不同的视角对于实验结果的影响。R表示深度图,P表示点,V表示体素以及不同分辨率的体素。

Table5 展示了不同融合方法的性能差异。其中Addition表示将特征进行相加,Concatnation表示进行拼接,Gated Fusion表示使用了作者设计的网络来进行融合。

Table6 展示了集成模型与本文模型的性能差异

Table7 展示了不同分支对于模型性能的影响。

d

=

a

2

+

b

2

d = \sqrt{a^2 + b^2}

d=a2+b2


d

d

d是欧式距离

print("hello world")
#include<iostream>

using namespace std;

int main() {
	s = "hello, world";
	cout<<s<<endl;
	return 0;
}

namespace std;

int main() {
s = “hello, world”;
cout<<s<<endl;
return 0;
}


版权声明:本文为CSDN博主「twn29004」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_41621517/article/details/121879239

twn29004

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

目标检测的一些基本概念

暑假的时候对目标检测做了些研究,没有发什么博客,现在是整理了一下自己的笔记,主要是在吴恩达视频讲解的目标检测以及一些自己的理解,我之前在网上有找到一个目标检测过程的动图解析,

YoLo系列模型改进汇总

YoLo v1 核心思想:将整张图片作为网络的输入(类似于Faster-RCNN),直接在输出层对BBox的位置和类别进行回归。 实现方法 将一幅图像分成SxS个网格(grid cel