
# CPGNet：用于实时激光雷达语义分割的级联点-网格融合网络

李晓燕 $^{*}$，张刚 $^{*}$，潘宏宇 $^{\times}$，王振华 $^{\times}$

摘要—激光雷达语义分割对先进的自动驾驶至关重要，它要求算法具备高精度、高速度且易于在移动平台上部署。以往基于点云或稀疏体素的方法由于采用耗时的邻居搜索或稀疏3D卷积操作，远无法满足实时应用的需求。近期基于2D投影的方法（包括距离视图和多视图融合）虽然能实现实时运行，但由于2D投影过程中存在信息丢失问题，其精度较低。此外，为提升性能，以往的方法通常采用测试时增强（TTA）技术，这进一步拖慢了推理过程。为实现更好的速度-精度平衡，我们提出了级联点-网格融合网络（CPGNet），主要通过以下两项技术来确保其有效性与高效性：1）新颖的点-网格（PG）融合模块主要在2D投影网格上提取语义特征以提升效率，同时在3D点上汇总2D与3D特征以将信息丢失降至最低；2）所提出的变换一致性损失缩小了单次模型推理与TTA之间的差距。在SemanticKITTI和nuScenes基准测试上的实验表明，无需集成模型或TTA的CPGNet，其性能可与最先进的RPVNet相媲美，而运行速度却快4.7倍。

## I. 引言

激光探测与测距（LiDAR）传感器广泛应用于自动驾驶和机器人领域。它们采集的3D点云数据提供了关于周围场景的丰富信息。激光雷达语义分割会为这些3D点云赋予语义标签，如汽车、行人、自行车、道路、建筑物等，因此直接关系到驾驶的精度与安全性。近年来，人们提出了各种用于处理激光雷达3D点云的深度学习模型，但这些方法无法同时保证精度与速度，尤其是在移动平台（如汽车和机器人）上。

以往针对激光雷达3D点云的方法可分为三类：基于点云的方法、基于稀疏体素的方法和基于2D投影的方法。

基于点云的方法包括PointNet [^1]、PointNet++ [^2]、PointCNN [^3]、RandLA-Net [^4]等。它们直接应用于原始的无序3D点云，不会造成任何信息丢失。然而，这些方法通常采用耗时的操作，即用于均匀下采样的 farthest point sampling（FPS），以及用于局部邻居搜索的k-nearest neighbor（kNN）或ball query。

![Image](images/4aa0e374984861f53ba0c23ff4453c0e048555c57ea77762b6ae11fd9b3c2220.jpg)

<div style="text-align: center;">Fig. 1. Accuracy (mIoU) vs. runtime on the SemanticKITTI validation set. For fair comparison, all methods are trained based on the official code and evaluated without ensemble models or TTA. The experiments are conducted with PyTorch FP32 on NVIDIA RTX 2080Ti GPU.</div>

由于激光雷达3D点云极为稀疏，基于稀疏体素的方法会将3D点量化为体素，随后仅在这些稀疏体素上执行3D卷积操作。尽管这类方法会因量化而产生不可避免的信息丢失，但它们仍能取得最先进的性能。不过，这类方法计算开销较大，无法实时运行。

基于2D投影的方法将成熟的2D CNN应用于由3D点云投影得到的2D网格特征图。受在2D图像语义分割领域占据主导地位的全卷积网络（FCN）[^5]及其变体[^6]、[^7]、[^8]、[^9]、[^10]的启发，这些基于2D投影的方法通常考虑鸟瞰视图[^11]或距离视图[^12]，能够轻松设计并部署到一些高效的深度学习推理框架中（例如TensorRT [^13]）。它们处理一次激光雷达扫描的时间可缩短至约15毫秒。然而，由于严重的2D投影信息丢失，这类方法的精度较低。即便后续的RangeNet++[^14]尝试采用kNN作为后处理手段，MPF[^15]也结合了鸟瞰视图与距离视图，它们的表现依然欠佳。

为此，我们提出了用于实时精准激光雷达语义分割的CPGNet。CPGNet中提出的PG融合模块首先会在鸟瞰视图和距离视图的2D网格上投影并提取语义特征，随后将这些特征传输并融合到3D点上。可以看出，PG融合模块结合了基于点的方法所具备的完整信息优势以及

---

速度较快的基于2D投影的方法。CPGNet通过反复应用PG融合模块来进一步提升点的特征。此外，受测试时增强（TTA）的启发，我们提出了变换一致性损失，以确保原始点云与增强后的点云结果保持一致。最后，我们将CPGNet与开源方法进行了对比，如图1所示；CPGNet在SemanticKITTI[^16]验证集上取得了65.9的最佳mIoU值，且在NVIDIA RTX 2080Ti GPU上使用PyTorch FP32运行时仅需43毫秒。我们的贡献可列举如下：

- 我们提出了一种精准、快速且易于部署的激光雷达语义分割模型CPGNet。它在一个级联框架中融合了点特征、鸟瞰视图特征和距离视图特征。

- 我们受测试时增强（TTA）的启发提出了变换一致性损失，仅通过单次推理就能实现更高的性能。

- 所提出的CPGNet在SemanticKITTI和nuScenes基准测试中实现了最佳的速度-精度平衡。

### II. 相关工作

与具有密集网格结构的2D图像不同，点云是无序、稀疏且非结构化的，这使得深度学习操作（如卷积）难以直接应用。以往的方法试图通过三种途径来解决这一问题。

### A. 基于点的方法

基于点的方法直接对原始点进行操作。PointNet [^1] 对每个点应用共享的多层感知机（MLP），并通过对所有点进行最大池化来获取用于后续分割任务的点级特征。然而，由于缺乏局部上下文提取能力，PointNet在复杂场景下的表现较差。后续的研究 [^2]、[^3] 提出了球查询和 $\chi$-Conv 来模拟二维卷积，在室内场景上取得了优异的效果。不过，由于计算和内存开销较大，它们无法应用于激光雷达点云数据。为了加速网络推理，RandLA-Net [^4] 采用了随机采样和局部特征聚合技术，但由于随机采样的缘故，其精度较低。KPConv [^17] 提出了一种新颖的基于空间核的点卷积方法来提取局部结构，而 KPRNet [^18] 则将 KPConv 与 ResNext [^19] 相结合，从而实现了基于点的方法中的最佳效果。尽管基于点的方法可以直接作用于原始点且不会丢失信息，但由于其局部结构提取效率较低，在自动驾驶领域的研究相对较少。

### B. 基于稀疏体素的方法

基于稀疏体素的方法将三维点量化为稀疏体素，随后仅对这些非空体素执行三维卷积操作，以此降低计算和内存开销。Minkowski CNN [^20] 是首个高效的稀疏体素框架，其在精度和速度方面均超越了所有基于点的方法。可能的原因是稀疏体素具有结构化特性，更便于进行卷积运算。SPVNAS [^21] 将神经架构搜索（NAS）技术引入到 [^20] 中，从而在更低的计算成本下取得了更好的效果。近期，又出现了多种基于稀疏体素方法的变体 [^22]、[^23]、[^24]。Cylinder3D [^22] 在圆柱坐标系中对三维点进行量化，证明了其高效性。AF2S3Net [^23] 提出了注意力特征融合模块（AF2M）和自适应特征选择模块（AFSM），能够同时高效提取局部和全局结构。RPVNet [^24] 则在单一框架内融合了距离视图、点和稀疏体素特征以减轻量化误差，在 SemanticKITTI 和 nuScenes 基准测试中取得了最佳成绩。尽管这些方法在激光雷达语义分割基准测试中占据主导地位，但它们在部署方面存在困难，无法在移动平台上实现实时运行。

### C. 基于二维投影的方法

近年来，基于2D投影的方法因其速度快且易于部署而受到更多关注。这些方法利用2D FCN将3D点投影到2D网格上，主要包括范围视图和多视图融合。范围视图将3D点投影到2D球形网格上，且有诸多变体。RangeNet++ [^14] 提出了一种用于后处理的加速kNN算法，该算法在后续基于范围的方法中属于不可或缺的模块。SqueezeSegV3 [^25] 证明了空间自适应卷积的优越性。SalsaNext [^26] 设计了基于SalsaNet [^27] 的新型编码器-解码器网络，并采用了可直接优化平均交并比（mIoU）指标的Lovász-Softmax损失函数 [^28]。最近，Lite-HDSeg [^29] 提出了谐波密集卷积，在基于范围的方法中取得了最佳效果。由于单视图或2D网格不可避免地会存在2D投影信息丢失的问题，后续的多视图融合技术会将3D点投影到两种或更多不同类型的2D网格上。MPF [^15] 和AMVNet [^30] 均结合了鸟瞰图和范围视图。与本文提出的方法不同，它们是在每个视图上独立进行语义分割，再通过后期融合模块合并两个视图的分割结果。

### III. 所提出的方法

为了实现准确且快速的激光雷达语义分割，不仅需要高效地提取语义特征，还要保留完整的点云信息。因此，我们提出了CPGNet，它通过Point-Grid（PG）融合块逐步提取点特征。如图2所示，PG融合块包含四个步骤：1）点转网格（P2G）操作将输入的点特征分别投影到鸟瞰图和范围视图特征图上；2）在2D特征图上应用2D FCN以高效提取语义特征；3）网格转点（G2P）操作将2D网格特征传递回3D点；4）点融合模块将来自3D点、鸟瞰图和范围视图分支的特征进行融合，以确保保留完整的点云信息。由此可见，CPGNet结合了基于点和基于2D投影的方法的优势。

---

![Image](images/d4ea71754c2f08b4ddd03679ef59872c582dbb45179f92811d3796ef9b1718f7.jpg)

<div style="text-align: center;">Fig. 2. The Point-Grid (PG) fusion block. It takes the point features from the last PG fusion block as input and undergoes the point, bird's-eye view and range view branches, respectively. The output point features are acquired by fusing features from the three branches.</div>

除P2G和G2P外，CPGNet的各组件可直接部署在TensorRT上。P2G和G2P操作可通过高效的CUDA代码实现。CPGNet中的每个PG融合块具有相同的网络架构，但参数不共享。具体细节将在下文小节中阐述。

### A. 点转网格

点转网格（P2G）操作旨在将3D点特征转换为2D网格特征图。如图3a所示，它首先将 $k^{th}$ 3D点 $\boldsymbol{p}_{k}^{3D} = (x_{k}, y_{k}, z_{k})$ 投影到2D网格上以获取对应的2D坐标 $\boldsymbol{p}_{k}^{2D} = (u_{k}, v_{k})$。集合 $\mathcal{R}_{h,w}$ 包含了落在同一2D网格中的点的索引 $(h, w)$，即 $\mathcal{R}_{h,w} = \{k \mid \lfloor u_{k} \rfloor = h; \lfloor v_{k} \rfloor = w\}$。随后通过最大池化操作收集 $\mathcal{F}_{k}^{3D}$ 中点的特征 $\mathcal{R}_{h,w}$，从而形成对应的2D网格特征 $\mathcal{G}_{h,w}^{2D}$。公式如下：

 $$ \begin{array}{r}{\mathcal{G}_{h,w,c}^{2D}=\underset{k\in\mathcal{R}_{h,w}}{\mathrm{m a x}}\mathcal{F}_{k,c}^{3D}.}\end{array} $$

一个2D网格中可能会包含多个点。为避免并行冲突，在处理同一个2D网格时，会利用CUDA的atomicMax函数。

所提出的方法同时采用了鸟瞰视图和范围视图。鸟瞰视图省略了z维度，而范围视图则忽略了r维度。因此，这两种视图能够互补，从而减轻二维投影带来的信息损失。实际上，这两种视图采用了类似的P2G操作，只是在二维投影方式上有所不同。对于鸟瞰视图而言，它将三维点投影到$x-y$平面上，该平面通过预设宽度为$x_{\text{min}}, y_{\text{min}}, x_{\text{max}}, y_{\text{max}}$、高度为$W_{bev}$的矩形二维网格($H_{bev}$)进行离散化，具体如以下公式所示。

 $$ \begin{pmatrix}u_{k}\\ \\ v_{k}\end{pmatrix}=\begin{pmatrix}\frac{x_{k}-x_{min}}{x_{max}-x_{min}}\times W_{bev}\\ \\ \frac{y_{k}-y_{min}}{y_{max}-y_{min}}\times H_{bev}\end{pmatrix}. $$

![Image](images/caec1dad09f5d47a2aedfe3f59f8198e9f8d936e50dbf2ed927afa600bbaff80.jpg)

<div style="text-align: center;">(a) Point to Grid</div>

<div style="text-align: center;">(b) Grid to Point</div>

对于范围视图，三维点通过应用特定变换从三维笛卡尔空间$\boldsymbol{p}_{k}^{3D} = (x_{k}, y_{k}, z_{k})$映射到球面空间$\boldsymbol{p}_{k}^{sph} = (r_{k}, \theta_{k}, \phi_{k})$。

<div style="text-align: center;">Fig. 3. The diagram of Point to Grid (a) and Grid to Point (b) operations.</div>

 $$ \begin{pmatrix}r_{k}\\\theta_{k}\\\phi_{k}\end{pmatrix}=\begin{pmatrix}\sqrt{x_{k}^{2}+y_{k}^{2}+z_{k}^{2}}\\\arcsin\left(\frac{z_{k}}{\sqrt{x_{k}^{2}+y_{k}^{2}+z_{k}^{2}}}\right)\\\arctan\left(y_{k},x_{k}\right)\end{pmatrix}, $$

其中，$r_{k}$、$\theta_{k}$、$\phi_{k}$分别表示距离、天顶角和方位角。随后，通过离散化$W_{rv}$和$H_{rv}$（忽略$\theta_{k}$），便可得到预设宽度为$\phi_{k}$、高度为$r_{k}$的范围视图网格。

 $$ \left(\begin{matrix}{u_{k}}\\ {v_{k}}\\ \end{matrix}\right)=\left(\begin{matrix}{\frac{1}{2}[1-\phi_{k}\pi^{-1}]W_{r v}}\\ {[1-(\theta_{k}+f_{u p})f^{-1}]H_{r v}}\\ \end{matrix}\right), $$

其中，$f = f_{up} + f_{down}$代表激光雷达的垂直视场角。

### B. 二维FCN

具有编码器和解码器架构的二维FCN分别应用于鸟瞰视图和范围视图的特征图上，以提取语义特征。它们占据了CPGNet超过90%的计算开销。因此，

---

编码器网络采用仅有9层的ResNet [^31]作为轻量级骨干网络，其最大通道数为128。为了在下采样过程中保留更多信息，我们提出了双下采样模块，该模块可并行使用二维卷积和二维最大池化来进行下采样，如图4a所示。实验表明，双下采样模块的性能更优，且延迟可忽略不计。

以往的解码器架构[^10]、[^26]通常采用特征金字塔融合方式来融合高层和底层特征图。高层特征图包含更多语义信息，而底层特征图则能呈现更多细节。在语义分割任务中，某些部分（如道路、建筑物）需要高层语义特征，而另一些部分（如行人、物体边界）则需要细致的特征。我们并未采用简单的特征图拼接方式，而是提出了注意力特征金字塔融合方法，能够自动从不同层级选取特征，如图4b所示。

### C. 网格到点

与点到网格（P2G）操作相反，网格到点（G2P）操作会根据对应的二维坐标$\boldsymbol{p}_k^{2D} = (u_k, v_k)$将特征从二维网格传递到三维点。如图3b所示，该操作会在四个相邻网格内应用双线性插值。具体公式如下：

 $$ \mathcal{F}_{k,c}^{3D}=\sum_{i=0}^{1}\sum_{j=0}^{1}w_{i,j,k}\mathcal{G}_{\lfloor u_{k}\rfloor+i,\lfloor v_{k}\rfloor+j,c}^{2D}, $$

其中，$w_{i,j,k} = (1 - |u_k - (\lfloor u_k \rfloor + i))|(1 - |v_k - (\lfloor v_k \rfloor + j))|$表示双线性插值权重。需要注意的是，超出二维网格范围的相邻网格被视为全零。可以看出，每个点和每个特征通道都是独立计算的，这种方式非常适合CUDA并行计算。

### D. 点融合

Point Fusion模块负责融合点云、鸟瞰图和距离视图的特征。为了提升效率，它仅采用特征拼接以及两层MLP。与MPF [^15]和AMVNet [^30]不同，Point Fusion不在后处理阶段发挥作用，而是作为中间融合模块，是所提出的端到端CPGNet的重要组成部分。这种端到端框架具有两大优势：1）无需复杂的后处理，便于部署；2）能够缩小训练阶段与评估阶段之间的差距。实验部分证明了它的优越性。

尽管从2D网格范围投影出的点在某些视图中会被视为全零特征，但它仍能传递来自其他视图的信息。例如，超出鸟瞰图范围但处于距离视图范围内的点，会携带距离视图的有意义特征。实验中，我们分析了两个视图上的点分布，发现几乎所有点都至少落在一个视图的范围内。

![Image](images/1c806d5499a715e67cad4932629bb33ca086291d2797fcd43ec09aac04d33aab.jpg)

<div style="text-align: center;">(a) dual down-sampling block</div>

![Image](images/652232aac07490c04028a1f9e31a0210931467639ff44b67eb0eca15217a4571.jpg)

<div style="text-align: center;">(b) attention feature pyramid fusion</div>

<div style="text-align: center;">Fig. 4. (a) dual down-sampling block. (b) attention feature pyramid fusion. Note that c, h and w denotes channels, height and width of the 2D feature map, respectively.</div>

### E. 损失函数

通过对PG融合模块的输出特征应用全连接（FC）层，即可得到分割预测结果。LiDAR语义分割数据集（如SemanticKITTI、nuScenes）存在类别极度不平衡的问题。例如，道路、人行道和建筑物的占比比行人和摩托车手高出数百倍。为此，我们采用加权交叉熵（WCE）损失来人为强调稀有类别。WCE损失的公式如下：

 $$ \begin{aligned}\alpha_{c}=&\frac{1}{F_{c}+\epsilon}\\\mathcal{L}_{wce}=&-\sum_{c=1}^{C}\alpha_{c}y_{c}\log(\hat{y}_{c}),\end{aligned} $$

其中$y_c$表示真实标签，$\hat{y}_c$为预测概率，$F_c$代表类别频率，$\alpha_c$则是$c^{th}$类的权重。C为数据集的类别数。实验中将$\epsilon$设为0.001。我们还采用了Lovász-Softmax损失[^28]作为第二个损失项$\mathcal{L}_{ls}$，该损失可以优化平均交并比（mIoU）指标。正如[^27]、[^29]所示，它确实能提升分割任务的mIoU指标。更多细节可参见[^28]。

以往的方法[^21]、[^22]采用测试时增强（TTA）来提升性能，这需要多次进行模型推理。为了兼顾效果与效率，我们提出了变换一致性损失$\mathcal{L}_{tc}$，用以减小原始点与增强点之间的差异。其公式如下：

 $$ \mathcal{L}_{t c}=\sum_{c=1}^{C}\big|\hat{y}_{c}^{r a w}-\hat{y}_{c}^{a u g}\big|, $$

其中$\hat{y}_{c}^{raw}$、$\hat{y}_{c}^{aug}$分别为原始点和增强点的预测概率。

---

总损失$\mathcal{L}_{total}$是这三个损失项之和，定义如下：

 $$ \mathcal{L}_{t o t a l}=\mathcal{L}_{w c e}+2\mathcal{L}_{l s}+\mathcal{L}_{t c}. $$

### IV. 实验结果

我们在SemanticKITTI [^16]和nuScenes [^32]基准测试中评估了所提出的CPGNet的性能。

SemanticKITTI数据集包含来自德国某城市的22个序列共43,552次360° LiDAR扫描。该数据集使用配备64束垂直激光束的Velodyne HDL-64E旋转式LiDAR采集数据，每次LiDAR扫描约包含13万个点。训练集（19,130次扫描）包含除序列08外的00至10序列，序列08（4,071次扫描）用于验证。其余序列（11至21序列，共20,351次扫描）仅提供LiDAR点云数据，用于在线排行榜测试。该数据集标注了28个类别，但单扫描LiDAR语义分割任务采用包含19个类别的高层标签集。

nuScenes。这是一个新发布的用于激光雷达语义分割的数据集，包含从波士顿和新加坡不同地区采集的1,000个场景。每个场景时长为20秒，由配备32个垂直激光束的Velodyne HDL-32E旋转式激光雷达采集。该数据集分为28,130个训练样本、6,019个验证样本和6,008个测试样本。它标注了32个类别，在合并部分相似类别并剔除稀有类别后，官方评估仅使用其中的16个类别。

评估指标。我们采用最常用的指标——平均交并比（mIoU）来评估所提出的CPGNet及其竞争对手模型。其公式可表示为

 $$ m I o U=\frac{1}{C}\sum_{c=1}^{C}\frac{T P_{c}}{T P_{c}+F P_{c}+F N_{c}}, $$

其中$TP_{c}$、$FP_{c}$、$FN_{c}$分别对应$c^{th}$类别的真正例、假正例和假负例。C表示类别总数。

### A. 实验设置

网络设置。如图2所示，CPGNet中的每个PG融合模块具有相似的网络架构，但参数不同。实验中我们采用了两个级联的PG融合模块。这两个模块的输入点特征通道数分别为7和64。第一个模块的输入7个通道分别对应x、y、z、强度、r、$\Delta x$和$\Delta y$，其中$\Delta x$和$\Delta y$表示到对应鸟瞰图网格中心的偏移量。每个模块的第一层MLP输出64个特征通道，随后的P2G操作会将其转换为鸟瞰图和距离视图的特征图。这两种视图均采用类似的二维FCN网络，包含三个下采样阶段和三个上采样阶段，但距离视图不会沿高度维度进行下采样。二维FCN中每个阶段的特征通道数分别为64、32、64、128、128、96、64和64。因此，点云融合模块的输入为来自三个分支的$64 \times 3$个特征通道。这两个PG融合模块的输出通道数分别为64和96。

<div style="text-align: center;">TABLE I</div>

<div style="text-align: center;">THE PROPORTIONS OF POINTS IN THE 2D GRID RANGE ON SEMANTICKITTI.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>BEV</td><td style='text-align: center; word-wrap: break-word;'>RV</td><td style='text-align: center; word-wrap: break-word;'>BEV and RV</td><td style='text-align: center; word-wrap: break-word;'>BEV or RV</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>98.76%</td><td style='text-align: center; word-wrap: break-word;'>98.60%</td><td style='text-align: center; word-wrap: break-word;'>97.36%</td><td style='text-align: center; word-wrap: break-word;'>99.99%</td></tr></table>

对于SemanticKITTI数据集，鸟瞰图分支接受的二维特征图形状为$(W_{bev} = 600, H_{bev} = 600)$，范围为$(x_{min} = -50, y_{min} = -50, x_{max} = 50, y_{max} = 50)$；距离视图分支的输入形状则设为$(W_{rv} = 2048, H_{rv} = 64)$。nuScenes数据集采用相同的配置，仅$H_{rv} = 32$有所不同。基于这些超参数，我们发现如表I所示，SemanticKITTI数据集中99.99%的点至少属于其中一个视图。

训练细节。所有实验均在NVIDIA RTX 2080Ti GPU上使用PyTorch FP32框架进行。我们的CPGNet从头开始训练48个周期，批量大小为16，在8块GPU上耗时约24小时。优化器采用随机梯度下降（SGD），权重衰减为0.001，动量为0.9，初始学习率为0.02，每10个周期学习率会衰减为原来的0.1。此外，数据增强策略包括绕z轴的随机旋转、从[0.95, 1.05]范围内采样的随机全局缩放、沿x轴和y轴的随机翻转、随机高斯噪声$\mathcal{N}(0,0.02)$以及实例级CutMix [^24]。

### B. 实验结果

如表二所示，我们在SemanticKITTI测试集上将所提出的CPGNet与现有最先进方法进行比较。这些方法从上到下分为基于点的方法、基于2D投影的方法和基于稀疏体素的方法。我们发现，CPGNet的性能优于所有基于点和基于2D投影的方法，且在除摩托车手之外的大多数类别中，其性能可与排名第一的RPVNet [^24]相媲美。这一类别的训练样本较少，且容易与自行车和摩托车混淆，这一问题可通过激光雷达与图像融合来解决。在卡车和交通标志类别上，CPGNet的性能大幅超越RPVNet。

此外，CPGNet的运行速度远快于包括SPVCNN [^21]、Cylinder3D [^22]、DRINet [^33]以及RPVNet [^24]在内的顶尖方法。需要注意的是，为了与RPVNet进行公平比较，我们也在NVIDIA Tesla V100 GPU上测试了CPGNet的速度（标记为*）。

我们报告了nuScenes验证集上的结果。如表三所示，CPGNet的性能仍优于基于2D投影的方法，且与排名第一的RPVNet性能相当。

### C. 消融研究

为了探究所提出组件的有效性，我们在相同的实验设置下，对SemanticKITTI验证集进行了消融研究。

首先，我们对点-网格（PG）融合模块进行消融分析。如表四所示，基线（第一行）是复现的MPF [^15]，它采用了我们的2D

---

<div style="text-align: center;">TABLE II</div>

<div style="text-align: center;">CLASS-WISE AND MEAN IoU OF THE PROPOSED CPGNET AND THE COMPETITORS ON SEMANTICKITTI SINGLE SCAN LEADERBOARD. NOTE THAT SPEED MEASUREMENTS ARE TAKEN ON A SINGLE NVIDIA RTX 2080Ti GPU, WHILE * MEANS THAT IT USES NVIDIA TESLA V100 GPU.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Methods</td><td style='text-align: center; word-wrap: break-word;'>mIoU</td><td style='text-align: center; word-wrap: break-word;'>speed (ms)</td><td style='text-align: center; word-wrap: break-word;'>Car</td><td style='text-align: center; word-wrap: break-word;'>Bicycle</td><td style='text-align: center; word-wrap: break-word;'>Motorcycle</td><td style='text-align: center; word-wrap: break-word;'>Truck</td><td style='text-align: center; word-wrap: break-word;'>Other-vehicle</td><td style='text-align: center; word-wrap: break-word;'>Person</td><td style='text-align: center; word-wrap: break-word;'>Bicyclist</td><td style='text-align: center; word-wrap: break-word;'>Motorcyclist</td><td style='text-align: center; word-wrap: break-word;'>Road</td><td style='text-align: center; word-wrap: break-word;'>Parking</td><td style='text-align: center; word-wrap: break-word;'>Sidewalk</td><td style='text-align: center; word-wrap: break-word;'>Other-ground</td><td style='text-align: center; word-wrap: break-word;'>Building</td><td style='text-align: center; word-wrap: break-word;'>Fence</td><td style='text-align: center; word-wrap: break-word;'>Vegetation</td><td style='text-align: center; word-wrap: break-word;'>Trunk</td><td style='text-align: center; word-wrap: break-word;'>Terrain</td><td style='text-align: center; word-wrap: break-word;'>Pole</td><td style='text-align: center; word-wrap: break-word;'>Traffic-sign</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PointNet [^1]</td><td style='text-align: center; word-wrap: break-word;'>14.6</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>46.3</td><td style='text-align: center; word-wrap: break-word;'>1.3</td><td style='text-align: center; word-wrap: break-word;'>0.3</td><td style='text-align: center; word-wrap: break-word;'>0.1</td><td style='text-align: center; word-wrap: break-word;'>0.8</td><td style='text-align: center; word-wrap: break-word;'>0.2</td><td style='text-align: center; word-wrap: break-word;'>0.2</td><td style='text-align: center; word-wrap: break-word;'>0.0</td><td style='text-align: center; word-wrap: break-word;'>61.6</td><td style='text-align: center; word-wrap: break-word;'>15.8</td><td style='text-align: center; word-wrap: break-word;'>35.7</td><td style='text-align: center; word-wrap: break-word;'>1.4</td><td style='text-align: center; word-wrap: break-word;'>41.4</td><td style='text-align: center; word-wrap: break-word;'>12.9</td><td style='text-align: center; word-wrap: break-word;'>31.0</td><td style='text-align: center; word-wrap: break-word;'>4.6</td><td style='text-align: center; word-wrap: break-word;'>17.6</td><td style='text-align: center; word-wrap: break-word;'>2.4</td><td style='text-align: center; word-wrap: break-word;'>3.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PointNet++ [^2]</td><td style='text-align: center; word-wrap: break-word;'>20.1</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>53.7</td><td style='text-align: center; word-wrap: break-word;'>1.9</td><td style='text-align: center; word-wrap: break-word;'>0.2</td><td style='text-align: center; word-wrap: break-word;'>0.9</td><td style='text-align: center; word-wrap: break-word;'>0.2</td><td style='text-align: center; word-wrap: break-word;'>0.9</td><td style='text-align: center; word-wrap: break-word;'>1.0</td><td style='text-align: center; word-wrap: break-word;'>0.0</td><td style='text-align: center; word-wrap: break-word;'>72.0</td><td style='text-align: center; word-wrap: break-word;'>18.7</td><td style='text-align: center; word-wrap: break-word;'>41.8</td><td style='text-align: center; word-wrap: break-word;'>5.6</td><td style='text-align: center; word-wrap: break-word;'>62.3</td><td style='text-align: center; word-wrap: break-word;'>16.9</td><td style='text-align: center; word-wrap: break-word;'>46.5</td><td style='text-align: center; word-wrap: break-word;'>13.8</td><td style='text-align: center; word-wrap: break-word;'>30.0</td><td style='text-align: center; word-wrap: break-word;'>6.0</td><td style='text-align: center; word-wrap: break-word;'>8.9</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RandLA-Net [^4]</td><td style='text-align: center; word-wrap: break-word;'>53.9</td><td style='text-align: center; word-wrap: break-word;'>521.8</td><td style='text-align: center; word-wrap: break-word;'>94.2</td><td style='text-align: center; word-wrap: break-word;'>26.0</td><td style='text-align: center; word-wrap: break-word;'>25.8</td><td style='text-align: center; word-wrap: break-word;'>40.1</td><td style='text-align: center; word-wrap: break-word;'>38.9</td><td style='text-align: center; word-wrap: break-word;'>49.2</td><td style='text-align: center; word-wrap: break-word;'>48.2</td><td style='text-align: center; word-wrap: break-word;'>7.2</td><td style='text-align: center; word-wrap: break-word;'>90.7</td><td style='text-align: center; word-wrap: break-word;'>60.3</td><td style='text-align: center; word-wrap: break-word;'>73.7</td><td style='text-align: center; word-wrap: break-word;'>20.4</td><td style='text-align: center; word-wrap: break-word;'>86.9</td><td style='text-align: center; word-wrap: break-word;'>56.3</td><td style='text-align: center; word-wrap: break-word;'>81.4</td><td style='text-align: center; word-wrap: break-word;'>61.3</td><td style='text-align: center; word-wrap: break-word;'>66.8</td><td style='text-align: center; word-wrap: break-word;'>49.2</td><td style='text-align: center; word-wrap: break-word;'>47.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>KPConv [^17]</td><td style='text-align: center; word-wrap: break-word;'>58.8</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>96.0</td><td style='text-align: center; word-wrap: break-word;'>30.2</td><td style='text-align: center; word-wrap: break-word;'>42.5</td><td style='text-align: center; word-wrap: break-word;'>33.4</td><td style='text-align: center; word-wrap: break-word;'>44.3</td><td style='text-align: center; word-wrap: break-word;'>61.5</td><td style='text-align: center; word-wrap: break-word;'>61.6</td><td style='text-align: center; word-wrap: break-word;'>11.8</td><td style='text-align: center; word-wrap: break-word;'>88.8</td><td style='text-align: center; word-wrap: break-word;'>61.3</td><td style='text-align: center; word-wrap: break-word;'>72.7</td><td style='text-align: center; word-wrap: break-word;'>31.6</td><td style='text-align: center; word-wrap: break-word;'>90.5</td><td style='text-align: center; word-wrap: break-word;'>64.2</td><td style='text-align: center; word-wrap: break-word;'>84.8</td><td style='text-align: center; word-wrap: break-word;'>69.2</td><td style='text-align: center; word-wrap: break-word;'>69.1</td><td style='text-align: center; word-wrap: break-word;'>56.4</td><td style='text-align: center; word-wrap: break-word;'>47.4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RangeNet++ [^14]</td><td style='text-align: center; word-wrap: break-word;'>52.2</td><td style='text-align: center; word-wrap: break-word;'>82.3</td><td style='text-align: center; word-wrap: break-word;'>91.4</td><td style='text-align: center; word-wrap: break-word;'>25.7</td><td style='text-align: center; word-wrap: break-word;'>34.4</td><td style='text-align: center; word-wrap: break-word;'>25.7</td><td style='text-align: center; word-wrap: break-word;'>23.0</td><td style='text-align: center; word-wrap: break-word;'>38.3</td><td style='text-align: center; word-wrap: break-word;'>38.8</td><td style='text-align: center; word-wrap: break-word;'>4.8</td><td style='text-align: center; word-wrap: break-word;'>91.8</td><td style='text-align: center; word-wrap: break-word;'>65.0</td><td style='text-align: center; word-wrap: break-word;'>75.2</td><td style='text-align: center; word-wrap: break-word;'>27.8</td><td style='text-align: center; word-wrap: break-word;'>87.4</td><td style='text-align: center; word-wrap: break-word;'>58.6</td><td style='text-align: center; word-wrap: break-word;'>80.5</td><td style='text-align: center; word-wrap: break-word;'>55.1</td><td style='text-align: center; word-wrap: break-word;'>64.6</td><td style='text-align: center; word-wrap: break-word;'>47.9</td><td style='text-align: center; word-wrap: break-word;'>55.9</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>SqueezeSegv3 [^25]</td><td style='text-align: center; word-wrap: break-word;'>55.9</td><td style='text-align: center; word-wrap: break-word;'>124.3</td><td style='text-align: center; word-wrap: break-word;'>92.5</td><td style='text-align: center; word-wrap: break-word;'>38.7</td><td style='text-align: center; word-wrap: break-word;'>36.5</td><td style='text-align: center; word-wrap: break-word;'>29.6</td><td style='text-align: center; word-wrap: break-word;'>33.0</td><td style='text-align: center; word-wrap: break-word;'>45.6</td><td style='text-align: center; word-wrap: break-word;'>46.2</td><td style='text-align: center; word-wrap: break-word;'>20.1</td><td style='text-align: center; word-wrap: break-word;'>91.7</td><td style='text-align: center; word-wrap: break-word;'>63.4</td><td style='text-align: center; word-wrap: break-word;'>74.8</td><td style='text-align: center; word-wrap: break-word;'>26.4</td><td style='text-align: center; word-wrap: break-word;'>89.0</td><td style='text-align: center; word-wrap: break-word;'>59.4</td><td style='text-align: center; word-wrap: break-word;'>82.0</td><td style='text-align: center; word-wrap: break-word;'>58.7</td><td style='text-align: center; word-wrap: break-word;'>65.4</td><td style='text-align: center; word-wrap: break-word;'>49.6</td><td style='text-align: center; word-wrap: break-word;'>58.9</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>SalsaNext [^26]</td><td style='text-align: center; word-wrap: break-word;'>59.5</td><td style='text-align: center; word-wrap: break-word;'>40.7</td><td style='text-align: center; word-wrap: break-word;'>91.9</td><td style='text-align: center; word-wrap: break-word;'>48.3</td><td style='text-align: center; word-wrap: break-word;'>38.6</td><td style='text-align: center; word-wrap: break-word;'>38.9</td><td style='text-align: center; word-wrap: break-word;'>31.9</td><td style='text-align: center; word-wrap: break-word;'>60.2</td><td style='text-align: center; word-wrap: break-word;'>59.0</td><td style='text-align: center; word-wrap: break-word;'>19.4</td><td style='text-align: center; word-wrap: break-word;'>91.7</td><td style='text-align: center; word-wrap: break-word;'>63.7</td><td style='text-align: center; word-wrap: break-word;'>75.8</td><td style='text-align: center; word-wrap: break-word;'>29.1</td><td style='text-align: center; word-wrap: break-word;'>90.2</td><td style='text-align: center; word-wrap: break-word;'>64.2</td><td style='text-align: center; word-wrap: break-word;'>81.8</td><td style='text-align: center; word-wrap: break-word;'>63.6</td><td style='text-align: center; word-wrap: break-word;'>66.5</td><td style='text-align: center; word-wrap: break-word;'>54.3</td><td style='text-align: center; word-wrap: break-word;'>62.1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Lite-HDSeg [^29]</td><td style='text-align: center; word-wrap: break-word;'>63.8</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>92.3</td><td style='text-align: center; word-wrap: break-word;'>40.0</td><td style='text-align: center; word-wrap: break-word;'>55.4</td><td style='text-align: center; word-wrap: break-word;'>37.7</td><td style='text-align: center; word-wrap: break-word;'>39.6</td><td style='text-align: center; word-wrap: break-word;'>59.2</td><td style='text-align: center; word-wrap: break-word;'>71.6</td><td style='text-align: center; word-wrap: break-word;'>54.1</td><td style='text-align: center; word-wrap: break-word;'>93.0</td><td style='text-align: center; word-wrap: break-word;'>68.2</td><td style='text-align: center; word-wrap: break-word;'>78.3</td><td style='text-align: center; word-wrap: break-word;'>29.3</td><td style='text-align: center; word-wrap: break-word;'>91.5</td><td style='text-align: center; word-wrap: break-word;'>65.0</td><td style='text-align: center; word-wrap: break-word;'>78.2</td><td style='text-align: center; word-wrap: break-word;'>65.8</td><td style='text-align: center; word-wrap: break-word;'>65.1</td><td style='text-align: center; word-wrap: break-word;'>59.5</td><td style='text-align: center; word-wrap: break-word;'>67.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MPF [^15]</td><td style='text-align: center; word-wrap: break-word;'>55.5</td><td style='text-align: center; word-wrap: break-word;'>31</td><td style='text-align: center; word-wrap: break-word;'>93.4</td><td style='text-align: center; word-wrap: break-word;'>30.2</td><td style='text-align: center; word-wrap: break-word;'>38.3</td><td style='text-align: center; word-wrap: break-word;'>26.1</td><td style='text-align: center; word-wrap: break-word;'>28.5</td><td style='text-align: center; word-wrap: break-word;'>48.1</td><td style='text-align: center; word-wrap: break-word;'>46.1</td><td style='text-align: center; word-wrap: break-word;'>18.1</td><td style='text-align: center; word-wrap: break-word;'>90.6</td><td style='text-align: center; word-wrap: break-word;'>62.3</td><td style='text-align: center; word-wrap: break-word;'>74.5</td><td style='text-align: center; word-wrap: break-word;'>30.6</td><td style='text-align: center; word-wrap: break-word;'>88.5</td><td style='text-align: center; word-wrap: break-word;'>59.7</td><td style='text-align: center; word-wrap: break-word;'>83.5</td><td style='text-align: center; word-wrap: break-word;'>59.7</td><td style='text-align: center; word-wrap: break-word;'>69.2</td><td style='text-align: center; word-wrap: break-word;'>49.7</td><td style='text-align: center; word-wrap: break-word;'>58.1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>AMVNet [^30]</td><td style='text-align: center; word-wrap: break-word;'>65.3</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>96.2</td><td style='text-align: center; word-wrap: break-word;'>59.9</td><td style='text-align: center; word-wrap: break-word;'>54.2</td><td style='text-align: center; word-wrap: break-word;'>48.8</td><td style='text-align: center; word-wrap: break-word;'>45.7</td><td style='text-align: center; word-wrap: break-word;'>71.0</td><td style='text-align: center; word-wrap: break-word;'>65.7</td><td style='text-align: center; word-wrap: break-word;'>11.0</td><td style='text-align: center; word-wrap: break-word;'>90.1</td><td style='text-align: center; word-wrap: break-word;'>71.0</td><td style='text-align: center; word-wrap: break-word;'>75.8</td><td style='text-align: center; word-wrap: break-word;'>32.4</td><td style='text-align: center; word-wrap: break-word;'>92.4</td><td style='text-align: center; word-wrap: break-word;'>69.1</td><td style='text-align: center; word-wrap: break-word;'>85.6</td><td style='text-align: center; word-wrap: break-word;'>71.7</td><td style='text-align: center; word-wrap: break-word;'>69.6</td><td style='text-align: center; word-wrap: break-word;'>62.7</td><td style='text-align: center; word-wrap: break-word;'>67.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>SPVCNN [^21]</td><td style='text-align: center; word-wrap: break-word;'>63.8</td><td style='text-align: center; word-wrap: break-word;'>187</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>SPVNAS [^21]</td><td style='text-align: center; word-wrap: break-word;'>67.0</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>97.2</td><td style='text-align: center; word-wrap: break-word;'>50.6</td><td style='text-align: center; word-wrap: break-word;'>50.4</td><td style='text-align: center; word-wrap: break-word;'>56.6</td><td style='text-align: center; word-wrap: break-word;'>58.0</td><td style='text-align: center; word-wrap: break-word;'>67.4</td><td style='text-align: center; word-wrap: break-word;'>67.1</td><td style='text-align: center; word-wrap: break-word;'>50.3</td><td style='text-align: center; word-wrap: break-word;'>90.2</td><td style='text-align: center; word-wrap: break-word;'>67.6</td><td style='text-align: center; word-wrap: break-word;'>75.4</td><td style='text-align: center; word-wrap: break-word;'>21.8</td><td style='text-align: center; word-wrap: break-word;'>91.6</td><td style='text-align: center; word-wrap: break-word;'>66.9</td><td style='text-align: center; word-wrap: break-word;'>86.1</td><td style='text-align: center; word-wrap: break-word;'>73.4</td><td style='text-align: center; word-wrap: break-word;'>71.0</td><td style='text-align: center; word-wrap: break-word;'>64.3</td><td style='text-align: center; word-wrap: break-word;'>67.3</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Cylinder3D [^22]</td><td style='text-align: center; word-wrap: break-word;'>67.8</td><td style='text-align: center; word-wrap: break-word;'>178</td><td style='text-align: center; word-wrap: break-word;'>97.1</td><td style='text-align: center; word-wrap: break-word;'>67.6</td><td style='text-align: center; word-wrap: break-word;'>64.0</td><td style='text-align: center; word-wrap: break-word;'>59.0</td><td style='text-align: center; word-wrap: break-word;'>58.6</td><td style='text-align: center; word-wrap: break-word;'>73.9</td><td style='text-align: center; word-wrap: break-word;'>67.9</td><td style='text-align: center; word-wrap: break-word;'>36.0</td><td style='text-align: center; word-wrap: break-word;'>91.4</td><td style='text-align: center; word-wrap: break-word;'>65.1</td><td style='text-align: center; word-wrap: break-word;'>75.5</td><td style='text-align: center; word-wrap: break-word;'>32.3</td><td style='text-align: center; word-wrap: break-word;'>91.0</td><td style='text-align: center; word-wrap: break-word;'>66.5</td><td style='text-align: center; word-wrap: break-word;'>85.4</td><td style='text-align: center; word-wrap: break-word;'>71.8</td><td style='text-align: center; word-wrap: break-word;'>68.5</td><td style='text-align: center; word-wrap: break-word;'>62.6</td><td style='text-align: center; word-wrap: break-word;'>65.6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DRINet [^33]</td><td style='text-align: center; word-wrap: break-word;'>67.5</td><td style='text-align: center; word-wrap: break-word;'>62</td><td style='text-align: center; word-wrap: break-word;'>96.9</td><td style='text-align: center; word-wrap: break-word;'>57.0</td><td style='text-align: center; word-wrap: break-word;'>56.0</td><td style='text-align: center; word-wrap: break-word;'>43.3</td><td style='text-align: center; word-wrap: break-word;'>54.5</td><td style='text-align: center; word-wrap: break-word;'>69.4</td><td style='text-align: center; word-wrap: break-word;'>75.1</td><td style='text-align: center; word-wrap: break-word;'>58.9</td><td style='text-align: center; word-wrap: break-word;'>90.7</td><td style='text-align: center; word-wrap: break-word;'>65.0</td><td style='text-align: center; word-wrap: break-word;'>75.2</td><td style='text-align: center; word-wrap: break-word;'>26.2</td><td style='text-align: center; word-wrap: break-word;'>91.5</td><td style='text-align: center; word-wrap: break-word;'>67.3</td><td style='text-align: center; word-wrap: break-word;'>85.2</td><td style='text-align: center; word-wrap: break-word;'>72.6</td><td style='text-align: center; word-wrap: break-word;'>68.8</td><td style='text-align: center; word-wrap: break-word;'>63.5</td><td style='text-align: center; word-wrap: break-word;'>66.0</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>AF2S3Net [^23]</td><td style='text-align: center; word-wrap: break-word;'>69.7</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>94.5</td><td style='text-align: center; word-wrap: break-word;'>65.4</td><td style='text-align: center; word-wrap: break-word;'>86.8</td><td style='text-align: center; word-wrap: break-word;'>39.2</td><td style='text-align: center; word-wrap: break-word;'>41.1</td><td style='text-align: center; word-wrap: break-word;'>80.7</td><td style='text-align: center; word-wrap: break-word;'>80.4</td><td style='text-align: center; word-wrap: break-word;'>74.3</td><td style='text-align: center; word-wrap: break-word;'>91.3</td><td style='text-align: center; word-wrap: break-word;'>68.8</td><td style='text-align: center; word-wrap: break-word;'>72.5</td><td style='text-align: center; word-wrap: break-word;'>53.5</td><td style='text-align: center; word-wrap: break-word;'>87.9</td><td style='text-align: center; word-wrap: break-word;'>63.2</td><td style='text-align: center; word-wrap: break-word;'>70.2</td><td style='text-align: center; word-wrap: break-word;'>68.5</td><td style='text-align: center; word-wrap: break-word;'>53.7</td><td style='text-align: center; word-wrap: break-word;'>61.5</td><td style='text-align: center; word-wrap: break-word;'>71.0</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RPVNet [^24]</td><td style='text-align: center; word-wrap: break-word;'>70.3</td><td style='text-align: center; word-wrap: break-word;'>168 $^{{*}}$</td><td style='text-align: center; word-wrap: break-word;'>97.6</td><td style='text-align: center; word-wrap: break-word;'>68.4</td><td style='text-align: center; word-wrap: break-word;'>68.7</td><td style='text-align: center; word-wrap: break-word;'>44.2</td><td style='text-align: center; word-wrap: break-word;'>61.1</td><td style='text-align: center; word-wrap: break-word;'>75.9</td><td style='text-align: center; word-wrap: break-word;'>74.4</td><td style='text-align: center; word-wrap: break-word;'>73.4</td><td style='text-align: center; word-wrap: break-word;'>93.4</td><td style='text-align: center; word-wrap: break-word;'>70.3</td><td style='text-align: center; word-wrap: break-word;'>80.7</td><td style='text-align: center; word-wrap: break-word;'>33.3</td><td style='text-align: center; word-wrap: break-word;'>93.5</td><td style='text-align: center; word-wrap: break-word;'>72.1</td><td style='text-align: center; word-wrap: break-word;'>86.5</td><td style='text-align: center; word-wrap: break-word;'>75.1</td><td style='text-align: center; word-wrap: break-word;'>71.7</td><td style='text-align: center; word-wrap: break-word;'>64.8</td><td style='text-align: center; word-wrap: break-word;'>61.4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CPGNet [ours]</td><td style='text-align: center; word-wrap: break-word;'>68.3</td><td style='text-align: center; word-wrap: break-word;'>43/35.6 $^{{*}}$</td><td style='text-align: center; word-wrap: break-word;'>96.7</td><td style='text-align: center; word-wrap: break-word;'>62.9</td><td style='text-align: center; word-wrap: break-word;'>61.1</td><td style='text-align: center; word-wrap: break-word;'>56.7</td><td style='text-align: center; word-wrap: break-word;'>55.3</td><td style='text-align: center; word-wrap: break-word;'>72.1</td><td style='text-align: center; word-wrap: break-word;'>73.9</td><td style='text-align: center; word-wrap: break-word;'>27.9</td><td style='text-align: center; word-wrap: break-word;'>92.9</td><td style='text-align: center; word-wrap: break-word;'>68.0</td><td style='text-align: center; word-wrap: break-word;'>78.1</td><td style='text-align: center; word-wrap: break-word;'>24.6</td><td style='text-align: center; word-wrap: break-word;'>92.7</td><td style='text-align: center; word-wrap: break-word;'>71.1</td><td style='text-align: center; word-wrap: break-word;'>84.6</td><td style='text-align: center; word-wrap: break-word;'>72.9</td><td style='text-align: center; word-wrap: break-word;'>70.2</td><td style='text-align: center; word-wrap: break-word;'>64.5</td><td style='text-align: center; word-wrap: break-word;'>71.9</td></tr></table>

<div style="text-align: center;">TABLE III</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Methods</td><td style='text-align: center; word-wrap: break-word;'>mIoU</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RangeNet++ [^14]</td><td style='text-align: center; word-wrap: break-word;'>65.5</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>SalsaNext [^26]</td><td style='text-align: center; word-wrap: break-word;'>72.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>AMVNet [^30]</td><td style='text-align: center; word-wrap: break-word;'>76.1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Cylinder3D [^22]</td><td style='text-align: center; word-wrap: break-word;'>76.1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RPVNet [^24]</td><td style='text-align: center; word-wrap: break-word;'>77.6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CPGNet [ours]</td><td style='text-align: center; word-wrap: break-word;'>76.9</td></tr></table>

<div style="text-align: center;">RESULTS ON NUSCENES VALIDATION SET.</div>

FCN架构和变换一致性损失。从后续几行中我们可以发现：1）与点云后处理的MPF相比，点融合模块可使mIoU提升0.9；2）引入点特征后，mIoU可提升2.1；3）与单模块版本相比，包含2个PG融合模块的CPGNet能带来最大的mIoU提升。

随后，我们分析了其他组件的影响，包括2D FCN架构、变换一致性损失以及TensorRT FP16部署，如表五所示。对于2D FCN架构而言，双重下采样模块（DDB）和注意力金字塔特征融合（APFN）分别使mIoU提升了0.3和0.7，体现了它们的有效性。实验中，TTA会对点云进行三次增强，即沿x轴翻转、沿y轴翻转以及同时沿两个轴翻转。可以看出，TTA能提升性能（+1.2 mIoU），但需要进行四次模型推理。当我们在训练阶段加入变换一致性损失，并在推理阶段去掉TTA时，其性能比仅推理一次的TTA略好（+0.2 mIoU）。此外，CPGNet可轻松部署在TensorRT FP16推理模式下，每次扫描仅需26.8毫秒，且性能下降微乎其微（-0.1 mIoU）。

<div style="text-align: center;">TABLE IV</div>

<div style="text-align: center;">POINT-GRID (PG) FUSION BLOCK ANALYSIS ON SEMANTICKITTI VALIDATION SET.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Point Fusion</td><td style='text-align: center; word-wrap: break-word;'>Point Feature</td><td style='text-align: center; word-wrap: break-word;'>Blocks</td><td style='text-align: center; word-wrap: break-word;'>mIoU</td><td style='text-align: center; word-wrap: break-word;'>speed (ms)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>59.5</td><td style='text-align: center; word-wrap: break-word;'>19.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>60.4</td><td style='text-align: center; word-wrap: break-word;'>18.6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>62.5</td><td style='text-align: center; word-wrap: break-word;'>21.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'>65.9</td><td style='text-align: center; word-wrap: break-word;'>43</td></tr></table>

<div style="text-align: center;">TABLE V</div>

2D FCN架构和变换一致性损失对SemanticKITTI验证集的影响。DDB：双重下采样模块。APFN：注意力特征金字塔融合。TTA：测试时增强。TRT16：TensorRT FP16

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>DDB</td><td style='text-align: center; word-wrap: break-word;'>AFPN</td><td style='text-align: center; word-wrap: break-word;'>TTA</td><td style='text-align: center; word-wrap: break-word;'>$\mathcal{L}_{tc}$</td><td style='text-align: center; word-wrap: break-word;'>TRT16</td><td style='text-align: center; word-wrap: break-word;'>mIoU</td><td style='text-align: center; word-wrap: break-word;'>speed (ms)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>63.5</td><td style='text-align: center; word-wrap: break-word;'>38.4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>63.8</td><td style='text-align: center; word-wrap: break-word;'>39.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>64.5</td><td style='text-align: center; word-wrap: break-word;'>43</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>65.7</td><td style='text-align: center; word-wrap: break-word;'>172</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>66.1</td><td style='text-align: center; word-wrap: break-word;'>172</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>65.9</td><td style='text-align: center; word-wrap: break-word;'>43</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>65.8</td><td style='text-align: center; word-wrap: break-word;'>26.8</td></tr></table>

### V. 结论

在本文中，我们提出了一种用于激光雷达语义分割的准确、快速且易于部署的CPGNet，该网络在级联框架中融合了点特征、鸟瞰图特征和距离视图特征。我们提出了变换一致性损失，可在不降低性能的前提下节省推理时间，无需采用TTA。此外，我们发现3D点特征有助于保留完整的点云信息，而2D网格特征则适合高效的语义特征提取。

---

## 参考文献

[^1]: C. R. Qi, H. Su, K. Mo, and L. J. Guibas, “Pointnet: Deep learning on point sets for 3d classification and segmentation,” in Proceedings of the IEEE conference on computer vision and pattern recognition, 2017, pp. 652–660.

[^2]: C. R. Qi, L. Yi, H. Su, and L. J. Guibas, “Pointnet++: Deep hierarchical feature learning on point sets in a metric space,” in Advances in Neural Information Processing Systems, vol. 30, 2017, pp. 5105–5114.

[^3]: Y. Li, R. Bu, M. Sun, W. Wu, X. Di, and B. Chen, “Pointcnn: Convolution on x-transformed points,” Advances in neural information processing systems, vol. 31, pp. 820–830, 2018.

[^4]: Q. Hu, B. Yang, L. Xie, S. Rosa, Y. Guo, Z. Wang, N. Trigoni, and A. Markham, "Randla-net: Efficient semantic segmentation of large-scale point clouds," in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2020, pp. 11108–11117.

[^5]: J. Long, E. Shelhamer, and T. Darrell, “Fully convolutional networks for semantic segmentation,” in Proceedings of the IEEE conference on computer vision and pattern recognition, 2015, pp. 3431–3440.

[^6]: H. Noh, S. Hong, and B. Han, “Learning deconvolution network for semantic segmentation,” in Proceedings of the IEEE international conference on computer vision, 2015, pp. 1520–1528.

[^7]: H. Zhao, J. Shi, X. Qi, X. Wang, and J. Jia, "Pyramid scene parsing network," in Proceedings of the IEEE conference on computer vision and pattern recognition, 2017, pp. 2881–2890.

[^8]: L.-C. Chen, G. Papandreou, I. Kokkinos, K. Murphy, and A. L. Yuille, “Deeplab: Semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected crfs,” IEEE transactions on pattern analysis and machine intelligence, vol. 40, no. 4, pp. 834–848, 2017.

[^9]: L.-C. Chen, G. Papandreou, F. Schroff, and H. Adam, “Rethinking atrous convolution for semantic image segmentation,” arXiv preprint arXiv:1706.05587, 2017.

[^10]: L.-C. Chen, Y. Zhu, G. Papandreou, F. Schroff, and H. Adam, “Encoder-decoder with atrous separable convolution for semantic image segmentation,” in Proceedings of the European conference on computer vision (ECCV), 2018, pp. 801–818.

[^11]: A. H. Lang, S. Vora, H. Caesar, L. Zhou, J. Yang, and O. Beijbom, "Pointpillars: Fast encoders for object detection from point clouds," in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2019, pp. 12697–12705.

[^12]: Y. Wang, T. Shi, P. Yun, L. Tai, and M. Liu, “Pointseg: Real-time semantic segmentation based on 3d lidar point cloud,” arXiv preprint arXiv:1807.06288, 2018.

[^13]: H. Vanholder, “Efficient inference with tensorrt,” 2016.

[^14]: A. Milioto, I. Vizzo, J. Behley, and C. Stachniss, “Rangenet++: Fast and accurate lidar semantic segmentation,” in 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2019, pp. 4213–4220.

[^15]: Y. A. Alnaggar, M. Afifi, K. Amer, and M. ElHelw, “Multi projection fusion for real-time semantic segmentation of 3d lidar point clouds,” in Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision, 2021, pp. 1800–1809.

[^16]: J. Behley, M. Garbade, A. Milioto, J. Quenzel, S. Behnke, C. Stachniss, and J. Gall, “Semanticitti: A dataset for semantic scene understanding of lidar sequences,” in Proceedings of the IEEE/CVF International Conference on Computer Vision, 2019, pp. 9297–9307.

[^17]: H. Thomas, C. R. Qi, J.-E. Deschaud, B. Marcotegui, F. Goulette, and L. J. Guibas, "Kpconv: Flexible and deformable convolution for point clouds," in Proceedings of the IEEE/CVF International Conference on Computer Vision, 2019, pp. 6411–6420.

[^18]: D. Kochanov, F. K. Nejadasl, and O. Booij, “Kprnet: Improving projection-based lidar semantic segmentation,” arXiv preprint arXiv:2007.12668, 2020.

[^19]: S. Xie, R. Girshick, P. Dollár, Z. Tu, and K. He, “Aggregated residual transformations for deep neural networks,” in Proceedings of the IEEE conference on computer vision and pattern recognition, 2017, pp. 1492–1500.

[^20]: C. Choy, J. Gwak, and S. Savarese, “4d spatio-temporal convnets: Minkowski convolutional neural networks,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2019, pp. 3075–3084.

[^21]: H. Tang, Z. Liu, S. Zhao, Y. Lin, J. Lin, H. Wang, and S. Han, “Searching efficient 3d architectures with sparse point-voxel convolution,” in European Conference on Computer Vision. Springer, 2020, pp. 685–702.

[^22]: X. Zhu, H. Zhou, T. Wang, F. Hong, Y. Ma, W. Li, H. Li, and D. Lin, "Cylindrical and asymmetrical 3d convolution networks for lidar segmentation," in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2021, pp. 9939–9948.

[^23]: R. Cheng, R. Razani, E. Taghavi, E. Li, and B. Liu, “2-s3net: Attentive feature fusion with adaptive feature selection for sparse semantic segmentation network,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2021, pp. 12547–12556.

[^24]: J. Xu, R. Zhang, J. Dou, Y. Zhu, J. Sun, and S. Pu, “Rpvnet: A deep and efficient range-point-voxel fusion network for lidar point cloud segmentation,” in Proceedings of the IEEE/CVF International Conference on Computer Vision, 2021, pp. 16024–16033.

[^25]: C. Xu, B. Wu, Z. Wang, W. Zhan, P. Vajda, K. Keutzer, and M. Tomizuka, “Squeezesegv3: Spatially-adaptive convolution for efficient point-cloud segmentation,” in European Conference on Computer Vision. Springer, 2020, pp. 1–19.

[^26]: T. Cortinhal, G. Tzelepis, and E. E. Aksoy, “Salsanext: Fast, uncertainty-aware semantic segmentation of lidar point clouds,” in International Symposium on Visual Computing. Springer, 2020, pp. 207–222.

[^27]: E. E. Aksoy, S. Baci, and S. Cavdar, “Salsanet: Fast road and vehicle segmentation in lidar point clouds for autonomous driving,” in 2020 IEEE Intelligent Vehicles Symposium (IV). IEEE, 2020, pp. 926–932.

[^28]: M. Berman, A. R. Triki, and M. B. Blaschko, “The lovasz-softmax loss: A tractable surrogate for the optimization of the intersection-over-union measure in neural networks,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2018, pp. 4413–4421.

[^29]: R. Razani, R. Cheng, E. Taghavi, and L. Bingbing, “Lite-hdseg: Lidar semantic segmentation using lite harmonic dense convolutions,” in 2021 IEEE International Conference on Robotics and Automation (ICRA), 2021, pp. 9550–9556.

[^30]: V. E. Liong, T. N. T. Nguyen, S. Widjaja, D. Sharma, and Z. J. Chong, “Amvnet: Assertion-based multi-view fusion network for lidar semantic segmentation,” arXiv preprint arXiv:2012.04934, 2020.

[^31]: K. He, X. Zhang, S. Ren, and J. Sun, “Deep residual learning for image recognition,” in Proceedings of the IEEE conference on computer vision and pattern recognition, 2016, pp. 770–778.

[^32]: H. Caesar, V. Bankiti, A. H. Lang, S. Vora, V. E. Liong, Q. Xu, A. Krishnan, Y. Pan, G. Baldan, and O. Beijbom, “nuscenes: A multimodal dataset for autonomous driving,” in Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, 2020, pp. 11621–11631.

[^33]: M. Ye, S. Xu, T. Cao, and Q. Chen, "Drinet: A dual-representation iterative learning network for point cloud segmentation," in Proceedings of the IEEE/CVF International Conference on Computer Vision, 2021, pp. 7447–7456.
