《论文阅读》Complete & Label: A Domain Adaptation Approach to Semantic Segmentation of LiDAR Point Clouds

留个笔记自用

Complete & Label: A Domain Adaptation Approach to Semantic Segmentation of LiDAR Point Clouds

做什么

点云的概念:点云是在同一空间参考系下表达目标空间分布和目标表面特性的海量点集合,在获取物体表面每个采样点的空间坐标后,得到的是点的集合,称之为“点云”(Point Cloud)。
点包含了丰富的信息,包括三维坐标X,Y,Z、颜色、分类值、强度值、时间等等,不一一列举。在这里插入图片描述
一般的3D点云都是使用深度传感器扫描得到的,可以简单理解为相比2维点,点云是3D的采样
在这里插入图片描述
Point Cloud Completion点云补全
在这里插入图片描述
简单来说就是通过输入不完整的3D点云还原出完整的对象

做了什么

在这里插入图片描述
这里主要关注的是点云领域的domain也就是域问题,不同线的激光雷达会引起较大的差别,就跟Re-ID任务中不同摄像机的域差别一个道理,并且这里是无监督的,将稀疏点云表面重建为标准域下的结果

怎么做

整个体系采用无监督的方式进行,设置源域有一系列带label的点云集合在这里插入图片描述
目标域有一系列没有label的点云集合在这里插入图片描述
每个点x都是三维坐标向量,即x∈RT×3,T是分别点云集的点数,label的y是语义分割的结果,即逐点的Y数分类结果
然后构建一个标准域的存在,希望将两个域也就是源域和目标域的点云都能转换到这个标准域,规定
在这里插入图片描述
在这里插入图片描述
表示这两个域的转换结果,M个点是各个转换结果的稠密点数量
训练方法是用源域的标准域训练网络在这里插入图片描述
然后再应用在目标域的标准域在这里插入图片描述

最后将分割结果映射回去
简单来说,它们是用不同的激光雷达传感器进行的扫描,任务体系的目标就是在目标域也就是没有label的域上实现语义分割的高性能,这个训练是在源域上进行的,这怎么会是无监督呢,这连半监督都算不上吧
接下来进入具体做法,首先是文章的核心,SVCN(sparse voxel completion network),就是如何将不同域点云转换到一个标准域上面的操作
在这里插入图片描述
这就是SVCN网络结构,主要分为两个部分,Structure Generation(生成)和Structure Refinement(强化),前者将点云voxel化后的稀疏点云作为输入,输出更密集的voxel点云。后者就是将这个初步的voxel点云进行修剪强化了。
然后是具体的结构方面,首先是生成网络
在这里插入图片描述
从结构上看,就是一个纯纯的unet,但是做了一些改动,encoder部分将卷积换成了稀疏卷积,decoder部分将反卷积换成了voxel pruning和dense upsampling,也就是voxel修剪
前面的部分都是常见模块,这里主要是修剪层和上采样层,修剪层是针对每个voxel的,在每个voxel上应用一个线性层和sigmoid输出一个存在的概率,然后根据阈值对现有的所有voxel概率进行修剪。训练的时候是手动保留真实voxel和测试的时候就是看概率了,而至于上采样层就是将voxel密集采样化的操作
除了encoder和decoder,还有一个一个skip-connection层,这里需要注意的是传递的voxel有可能在后面被修剪掉了,所以不存在的新voxel会置为0
然后是第二个部分,强化部分
在这里插入图片描述
这里结构的作用是修剪前面修剪的结果,因为训练的时候是直接把GT体素留下其他都删掉的,所以网络可能会离群点敏感,这里就是对这个进行强化,这里的结构相比于前面还是decoder的变化,在稀疏卷积之后加了一个sparse upsampling
所以主要是稀疏上采样层,这里的稀疏上采样是根据encoder层定的,仅仅只上采样到那些高级encoder层存在的voxel
这就是整体SVCN的结构,然后是训练的方式设计
首先规定一下符号在这里插入图片描述
这里zc是标准域下的点云集,zs和zt是源域和目标域下的点云集
在这里插入图片描述
首先第一步就是如何获得这个标准域,这里采用的方法是用现有的数据集进行训练,在一个序列中聚合多个lidar帧,然后利用泊松分布进行平面的重建,用一个阈值或者密度法去掉低采样的平面,然后在平面上离散化采样来平铺一下表面,使表面点分辨率高,至此得到了一个标准的平面点云在这里插入图片描述
然后就是模拟一个雷达传感器将目标域或者源域点云转换到这个标准域上
做法是这样的,首先从一个域中选取出一个点云,在这个点云中选取一个传感器位置,把遮挡点去掉后计算这些极坐标,计算每个点的极坐标(polar)
在这里插入图片描述
这里
在这里插入图片描述
在这里插入图片描述
最后为参考帧中的每个点搜索在完整场景点云中的近邻点,然后模拟采样
然后是训练算法,将每个成对的训练数据在这里插入图片描述
voxel化,然后用voxel的交叉熵来预训练生成网络,然后freeze起来,使用预测的voxel存在概率作为输入来训练具有另一个voxel交叉熵损失的强化网络,除此之外还用了一个局部对抗性学习,也就是局部patch的相似学习
在这里插入图片描述
最后简单看一下整体流程,两个域的点云都经过一个SVCN转换成各自的标准域结果点云,然后用一个Segmentation网络这里选的是MinkowskiNet进行标准域的分割,然后再源域上(带label的)进行分割loss训练,而测试域的标准域结果就是目标结果,再映射回各自的域。

总结

1.非常新奇的做法,一个域自适应的做法,但说实话不是很能看懂是如何做到各种域转标准域的,这篇文章值得发展研究,后续再仔细阅读后再更改笔记内容
2.不禁让人感到奇特的是这是无监督吗。。为什么不做成纯粹的无监督,像常见的Re-ID中的域自适应用聚类的方法进行训练

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CVPR 2019中发表了一篇题为“迁移学习:无监督领域自适应的对比适应网络(Contrastive Adaptation Network for Unsupervised Domain Adaptation”的论文。这篇论文主要介绍了一种用于无监督领域自适应的对比适应网络。 迁移学习是指将从一个源领域学到的知识应用到一个目标领域的任务中。在无监督领域自适应中,源领域和目标领域的标签信息是不可用的,因此算法需要通过从源领域到目标领域的无监督样本对齐来实现知识迁移。 该论文提出的对比适应网络(Contrastive Adaptation Network,CAN)的目标是通过优化源领域上的特征表示,使其能够适应目标领域的特征分布。CAN的关键思想是通过对比损失来对源领域和目标领域的特征进行匹配。 具体地说,CAN首先通过一个共享的特征提取器来提取源领域和目标领域的特征表示。然后,通过对比损失函数来测量源领域和目标领域的特征之间的差异。对比损失函数的目标是使源领域和目标领域的特征在特定的度量空间中更加接近。最后,CAN通过最小化对比损失来优化特征提取器,以使源领域的特征能够适应目标领域。 该论文还对CAN进行了实验验证。实验结果表明,与其他无监督领域自适应方法相比,CAN在多个图像分类任务上取得了更好的性能,证明了其有效性和优越性。 综上所述,这篇CVPR 2019论文介绍了一种用于无监督领域自适应的对比适应网络,通过对源领域和目标领域的特征进行对比学习,使得源领域的特征能够适应目标领域。该方法在实验中展现了较好的性能,有望在无监督领域自适应任务中发挥重要作用。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值