文章目录

  • Cylindrical and Asymmetrical 3D Convolution Networks for LiDAR Segmentation
    • 做了什么
    • Cylinder3D
      • 整体框架及其组件
      • 圆柱体划分( Cylindrical Partition)
      • 不对称 3D卷积网络(Asym-CNN)
      • 基于维度分解的上下文建模(DDCM)
      • 逐点细化模块(PR)
      • 目标函数
    • 实验结果

Cylindrical and Asymmetrical 3D Convolution Networks for LiDAR Segmentation

https://arxiv.org/abs/2011.10033

做了什么

对于室外驾驶场景中大规模LiDAR点云分割,常用的方法是将点云投影到二维空间,再通过2D卷积对其进行处理。这样做虽然有不错的表现,但它丢弃了点云的三维拓扑和几何关系信息。一种减少这种信息丢失的方法是对点云使用立方体划分的体素化再通过3D卷积对其进行处理,但这种方法得到的改善相当有限,因为室外点云还具有稀疏性和密度不均匀性。这篇论文提出了Cylinder3D:

  • 针对点云的稀疏性和密度不均匀性,对点云进行圆柱体划分的体素化
  • 使用不对称的3D卷积网络来生成体素级输出
  • 引入逐点细化模块,减少了因体素化带来的标签干扰

Cylinder3D在SemanticKITTI和nuScenes点云分割数据集上的表现达到当时的第一,并且能很好地推广到LiDAR全景分割和三维检测的任务中。

Cylinder3D

整体框架及其组件

Cylinder3D的整体框架如图:

有四个主要组件:

包括不对称残差模块(A)、不对称下样本块(AD)、不对称上采样模块(AU)和基于维度分解的上下文建模(DDCM)。

LiDAR点云首先输入MLP,得到点特征。然后根据柱面划分( Cylindrical Partition)对点特征进行重新分配得到圆柱特性(Cylindrical Features)。最后对圆柱特征使用非对称的3D卷积网络(Asymmetrical 3D Convolution Network,Asym-CNN)和基于维度分解的上下文建模(DDCM)来生成体素输出,并引入一个逐点细化模块(Point-wise Refinement Module,PR)来细化这些输出。

圆柱体划分( Cylindrical Partition)

圆柱体划分的流程如图:


图片来源:https://arxiv.org/pdf/2109.05441.pdf

首先,将点从笛卡尔坐标系转换到圆柱坐标系。这个步骤将点(x,y,z)(x,y,z)(x,y,z)转换为ρ,θ,z\rho,\theta,zρ,θ,z,这需要计算半径ρ\rhoρ(点在x-y平面上投影与原点的距离)和方位角θ\thetaθ(自xxx轴到yyy轴的角度)。进而在ρ−θ−z\rho-\theta-zρ−θ−z三个维度上执行圆柱体划分。
在此基础上,对MLP得到的逐点特征根据对应坐标进行重新分配,然后对各个单元使用max-pooling得到圆柱体特征。

经过以上步骤,从0度展开圆柱体即可得到三维圆柱体表示R∈C×H×W×L\mathbb{R}∈C × H × W × LR∈C×H×W×L,其中CCC表示特征维数,H,W,LH, W, LH,W,L表示半径、方位角和高度。后续的非对称3D卷积网络将在此表示上执行。

远离原点的区域的点更稀疏。而在圆柱坐标中,区域越远,单元格越大。这使得圆柱体划分比立方体划分得到的点分布更均匀:

下图显示了两种划分方法随着距离增加非空单元格的比例。可以看到,圆柱体划分相比于立方体划分非空比例更高,且随着距离增加越明显:

此外,不同于将点投影到二维视图的方法,圆柱体划分一定程度上保持了点云的三维拓扑和几何关系信息。

不对称 3D卷积网络(Asym-CNN)

不对称残差块(Asymmetrical Residual Block)

受ACNet的启发,Cylinder3D使用了不对称3D卷积构造残差块。以Car 和Motorcycle为例,下图展示了作用于圆柱体素的不对称残差块中的3D卷积:

不对称的残差块很好地匹配目标(汽车、卡车、公共汽车、摩托车等立方体物体)的点分布,也节省了计算量和内存开销。

Cylinder3D用不对称残差块设计下采样块和上采样块:

并将多个采样块和下采样块叠加,构建三维卷积网络:

基于维度分解的上下文建模(DDCM)

DDCM使用三个秩为1的低秩卷积核提取特征,然后聚合在一起,最终得到Cclass×H×W×LC_{class}×H×W×LCclass​×H×W×L的综合特征。

逐点细化模块(PR)

体素化方法(包括基于立方体划分和基于圆柱体划分的方法)为每个单元预测一个标签,这虽然有效地探索大范围点云,但不可避免地将不同类别的点被划分为同一个单元,从而导致信息丢失。

下图统计了不同标记编码方法的效果:

其中多数编码(majority encoding)表示使用单元内点的大多数类别作为单元标签,少数编码(minority encoding)表示使用少数类别作为单元标签。理想情况下,点云在划分之后各个点的标签应不变,即与原始标签点的mIoU应为100%。但可以观察到,多数编码和少数编码都无法达到100%的mIoU。

所以,Cylinder3D引入了逐点细化(point-wise refinement)模块来缓解编码带来的标签干扰。

首先根据逆点-体素映射表将圆柱体素特征投影回各个点(同一体素单元内的点将被分配到相同的特征)。然后,将三维卷积网络前后的点特征融合在一起并输入逐点细化模块以细化输出。

目标函数

最终目标函数包括逐体素损失LvoxelL_{voxel}Lvoxel​和逐点损失LpointL_{point}Lpoint​

L=Lvoxel+LpointL=L_{voxel}+L_{point} L=Lvoxel​+Lpoint​

LvoxelL_{voxel}Lvoxel​为加权交叉熵损失weighted cross-entropy loss 加 lovasz(洛瓦兹)-softmax。而LpointL_{point}Lpoint​只有加权交叉熵损失。

对于训练后的推断,使用的是逐点细化模块的输出。

实验结果



【CVPR 2021】Cylinder3D:用于LiDAR点云分割的圆柱体非对称3D卷积网络相关推荐

  1. Cylinder3D :3D环境下的Lidar 点云分割

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 文章导读 导读:在自动驾驶中,3D感知相较于2D感知能够提供更加准确的位置信息.随着3D激光雷达传感器 ...

  2. 标注成本降低5倍!LaserMix:通用半监督LiDAR点云分割框架(新加坡南洋理工大学)...

    点击下方卡片,关注"自动驾驶之心"公众号 ADAS巨卷干货,即可获取 后台回复[LMix]获取论文! 后台回复[ECCV2022]获取ECCV2022所有自动驾驶方向论文! 后台回 ...

  3. 【AAAI】用于网约车需求预测的时空多图卷积网络

    #AAAI# 今天分享的是AAAI 2019的一篇论文<用于网约车需求预测的时空多图卷积网络> 原文链接:https://ojs.aaai.org//index.php/AAAI/arti ...

  4. 5篇CVPR 各路大佬显身手 点云分割、姿态估计、物体检测、生成重建

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 3D方向:港中文针对分割问题提出双重设置点分组模型:清华提出无需 PoseNet 的联合深度姿势学习: ...

  5. 论文推荐|【KSII TIIS 2021】DP-LinkNet:一种用于古籍文档图像二值化的卷积网络(有源码)...

    今日分享来自[KSII TIIS 2021]的论文『DP-LinkNet: A convolutional network for historical document image binariza ...

  6. PCL教程-点云分割之圆柱体分割

    原文链接:Cylinder model segmentation - Point Cloud Library 0.0 documentation 目录 处理流程 圆柱分割 程序代码 实验结果 打印结果 ...

  7. LightGCN:用于推荐任务的简化并增强的图卷积网络 SIGIR 2020

    论文链接:https://arxiv.org/abs/2002.02126 代码链接:https://github.com/gusye1234/LightGCN-PyTorch 论文来源:SIGIR ...

  8. 【论文泛读12】用于网约车需求预测的时空多图卷积网络

    贴一下汇总贴:论文阅读记录 论文链接:<Spatiotemporal Multi-Graph Convolution Network for Ride-Hailing Demand Foreca ...

  9. CVPR 2021 | 港大、牛津提出PAConv: 一种位置自适应卷积,点云分类、分割任务表现SOTA

    论文链接: https://arxiv.org/abs/2103.14635 代码: https://github.com/CVMI-Lab/PAConv 一.引言 近年来,深度学习在三维点云处理上取 ...

最新文章

  1. 初学python的30个操作难点汇总(入门篇)希望对你有帮助
  2. 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级
  3. eclipse中同步代码PULL报错checkout conflict with files的解决方法
  4. java 枚举工厂_在Java中使用枚举工厂,最佳做法?
  5. mysql bug_MySQL 记一次 Bug发现过程
  6. MybatisPlus_进阶
  7. java版spring cloud+spring boot 社交电子商务平台:服务消费(基础)
  8. 高通驱动一键安装_一键重装神器,装系统简单的超乎想象!
  9. ReentrantLock与Condition构造有界缓存队列与数据栈
  10. 虚拟机安装DOS系统步骤
  11. 改变linux环境背景色,改变Linux 字体和背景颜色
  12. 【Computeshader】个人总结
  13. macOS更换jupyter notebook默认浏览器
  14. IT去中心化背后的低代码平台
  15. Java中如何处理空指针异常
  16. 7-1 计算职工工资
  17. 怎样将好多个字符串组装成一个数组
  18. Get Request
  19. 将idea设置为中文
  20. Netty02-入门

热门文章

  1. 凹入法写入指定目录至文档,并计算目录大小
  2. VS2015 更换序列号
  3. Windows Project2016如何增加加班工时。
  4. PS 学习笔记 16 -渐变工具组
  5. 网易面试题——快速无条件分支的 RGB、HSV 互转【GLSL】
  6. GIS空间分析实验教程期末重点91012
  7. MySQL数据库查询语句汇总
  8. html日期控件默认设置为当天日期
  9. 247 中心对称数 II
  10. 对称数c语言,中心对称数 - Developmer的个人空间 - OSCHINA - 中文开源技术交流社区...