分享好友 最新动态首页 最新动态分类 切换频道
【转载】细嚼慢咽读论文:点云上采样GAN的实践——PU-GAN
2024-12-26 11:57

首先我们来分析一下文章题目:PU-GAN: a Point Cloud Upsampling Adversarial Network

【转载】细嚼慢咽读论文:点云上采样GAN的实践——PU-GAN

PU即Point Upsampling,也就是本文要做的任务是点云上采样。关于点云上采样的介绍,我在介绍PU-Net的这篇文章中介绍过,可参考

刘昕宸:细嚼慢咽读论文:点云上采样网络开天辟地PU-Net​zhuanlan.zhihu.com

GAN即现在大名鼎鼎的GAN(生成对抗网络,也就是本文使用的网络是GAN,依赖GAN来实现点云的上采样。上采样任务其实也是一种生成式任务,因此很自然地想到可以使用GAN来尝试一下。关于GAN的基本原理介绍,可参考


上采样的意义我在PU-Net那篇文章中详细介绍过

点云处理任务存在极大挑战,很重要的一点是点云这种数据形式的稀疏性和不规则性。
而本文要做的上采样任务,正是为了解决点云数据稀疏性这一问题,为下游各种特征学习任务提供更“高质”的数据。
点云上采样任务,简单来说就是输入某一点云,生成保持基本形状的“更稠密”点云。

单就上采样效果而言,之前基于深度学习的方法如PU-Net、MPU在现实场景扫描点云上取得的效果均非常有限。我们来看看PU-GAN论文在开头放的图Kitti数据集上测试

点云上采样本质也是一种生成式任务,在视觉领域做生成任务,自然而然地就会想到:不妨试试GAN

  1. 针对点云上采样任务,提出了GAN框架的解决方案,并且取得了非常好的效果。(原文指出:the difficulty to balance between the generator and discriminator and to avoid the tendency of poor convergence.
  2. 局部网络结构设计非常有新意:比如up-down-up unit用来expand point features,self-attention unit用来feature integration quality等
  3. 设计了compound loss,特别是设计了用来约束上采样点云均匀分布uniform loss,让人眼前一亮。
  4. PU-GAN不仅在一般点云模型上做了实验,还在KITTI这样真实扫描的场景点云上做了上采样实验,依然取得了非常好的效果,这也进一步验证了PU-GAN强大的泛化能力。

本文的目标就是上采样,也就是给定有N个点的稀疏点集  ,我们期望生成有 rN 个点的稠密点集 .

Q 并不需要是 P 的超集,但是需要满足以下2个条件

  1. Q 应该能够和 P 表达一样的underlying geometry of latent target object.
  2. Q 内的点应该是在target object surface上均匀分布的,即使甚至输入 P 都是非均匀的。

PU-GAN的网络结构图如下所示

因为是GAN,所以网络分成了Generator和Discriminator两部分。

Generator用于从稀疏点云 P 生成稠密点云 Q .

Discriminator用于区分真实稠密点云和generator生成的点云

看出来了嘛,其实generator的整体框架还是PU-Net那一套patch --> feature extraction --> feature expansion --> coordinate reconstruction ;-)

Generator全局代码

 

Ⅰ Patch Extraction

对每个3D mesh,在表面随机选择200个种子点,对每个种子点根据测地线距离生成patch,并将每个patch normalize到一个unit sphere中。

对每个patch,使用Poisson Disk Sampling生成  ,作为有 rN 个点的目标点云

我们动态地对  随机采样 N 个点生成输入点云 P .

 

Ⅱ Feature Extraction

本模块旨在提取point-wise feature

输入点云 N*d ( d 包括点云的原始数据,坐标、颜色、法向量等, d 一般为 3 ,输出point-wise feature N*C

本模块直接借鉴了论文Patch-based progressive 3D point set upsampling特征提取方法,使用了dense connection集成不同层的特征。

网络结构如下,处理过程非常明晰了:

我们再来看看代码加深理解

 

核心dense_conv的实现

 

Ⅲ Feature Expansion

和PU-Net一样,PU-GAN也设计了自己的feature expansion模块,这也应该是上采样算法的核心了吧

PU-Net的做法是 直接复制点的特征,然后使用不同的 MLP来分别独立处理各自的点特征备份。
即使PU-Net使用了诸如 repulsion loss这样的约束,但这种上采样方式仍然会导致 扩展的点特征过于接近彼此,影响上采样质量。

输入point-wise feature N*C ,输出 

PU-GAN还设计了up-down-up expansion unit增强特征扩展的效果,以实现enabling the generator to produce more diverse point distributions.

网络结构图如下所示,还包括了Up-feature operator和Down-feature operator的结构

看代码是比较明晰的,点特征输入到Up-feature operator生成  ,再输入Down-feature operator将其降采样回.

计算降采样点特征与原输入之间的difference  .

输入  到Up-feature operator生成  ,将 作为  的偏移量,得  . 

 

Up-feature operator

不像PU-Net直接复制,PU-GAN在复制点特征时使用了grid结构(可参考FoldingNet: Point Cloud Auto-encoder via Deep Grid Deformation,这等价于在输入点附近增加一些新的点.

整合复制点特征使用了self attention机制

 

1)grid机制

为每个feature-map copy生成一个唯一的2D vector,然后将该2D vector拼接给其对应feature-map copy内的每一个点。

因为该2D vector的存在,因此复制的点特征还是有些细微差别的。

 

2)attention机制

 

Down-feature operator

Down结构比较简单

对expanded features降采样,对特征reshape,然后使用一系列MLPs来拟合原特征

 

Ⅳ Coordinate Reconstruction

最后是坐标重建

 

Discriminator的目标是分辨上采样点云是否是Generator生成的

首先使用一个轻量的网络结构整合local和global信息提取global feature

另外Discriminator还使用了self-attention unitenhance the feature integration and improve the subsequent feature extraction capability

最后使用MLP和pooling得到了最后的confidence value,可以理解成是Discriminator判断输入上采样点云是真实上采样点云的可能性。

 

因为GAN的原因,PU-GAN的loss设计得比较多,主要分为了Generator loss和Discriminator loss

Ⅰdiscriminator loss

 

discriminator_loss只包括了adversarial loss.

discriminator_loss设计的adversarial loss很简单

 是真实点云, Q 是generator生成的fake点云, D(Q) 表示判别器输出的confidence value.

 

Ⅱ generator loss

 

generator loss包括了reconstruction loss,repulsion loss,uniform loss和adversarial loss.

1)adversarial loss

与上面Discriminator的adversarial loss基本类似

 

2)reconstruction loss

PU-GAN默认使用的是EMD loss,EMD的详细理解见这篇文章

3)repulsion loss

repulsion loss设计来自PU-Net,想详细了解可参考这篇文章

4)uniform loss

PU-GAN这一工作的一大贡献就是设计了uniform loss来控制生成点云分布的均匀性。

首先PU-Net设计了NUC这一评价指标来衡量生成点云的均匀性,但是这一评价忽视了local clutter of points,因此不宜再被采纳。

什么叫“忽视了local clutter of points”呢

下面三个disk包含了相同数量的点(因此NUC都是一样的,但是它们的均匀程度显然是不同的。造成NUC衡量失效的原因,很大可能是局部点分布均匀程度NUC是无法刻画的。

而这里uniform loss的设计就是同时考虑了global和local

第一项

对于有 rN 个点的点集 Q (在实验中实际就是1个patch

step 1. 使用最远点采样(FPS)采样 M 个seed points

step 2. 以每个seed point为球心,使用半径为  的ball query得到point subset  .

分析

严格坐落在 Q 表面面积为  的local disk上。

还记得上面介绍的Ⅰ Patch Extraction?我们通过测地线距离+正则化提取patch,因此patch就已经被我们normalize到一个unit sphere中了,patch的表面积是 

并且  内expected number of points  就应该是 rNp 了

自然而然地,遵循chi-square model设计了uniform loss的第一项,用来衡量  与  的偏差

 

第二项

考虑local point clutter,对  中的每个点,找到其最近邻并计算距离  ( k 表示第  中的第 k 个点

 想象一下,如果  是均匀分布的,那么点与点之间的距离分布应该是这样的

 

此时expected point-to-neighbor distance

因此最终我们可得uniform loss

程序实现

 

PU-Net和MPU的数据集以及Visionair repository中挑选了147个模型,尽可能多地覆盖不同的类型。其中120个模型用于训练,27个用于测试。

训练数据的准备:因为PU-GAN是基于patch的,因此需要先对各个模型提取patch。在每个训练模型上提取200个patch120个模型就一共能提取24000个patch用于训练其中每个patch就是一个(input patch, groundtruth patch)的pairinput patch有256个点groundtruth patch有1024个点

评价指标包括了4类

  1. point-to-surface (P2F) distance
  2. Chamfer distance (CD)
  3. Hausdorff distance (HD)
  4. uniform metrics: 评估方法类同上面的uniform loss

  1. 定量比较

2. 定性比较

3. 真实扫描场景的上采样

针对KITTI数据集

4. 消融实验

PU-GAN基本延续了PU-Net的思路,但是在诸多细节上均做了非常明显的改进gridding, self-attention, dense connection, up-down-up, uniform loss,也确实取得了更加强大的效果。

最新文章
退本!kimi智能App是做任务诈骗软件!被骗提现不了怎么办
kimi智能App是做任务诈骗软件!被骗提现不了怎么办技术出嘿《溦:9836356》(一)希望阅读此文的读者能够及时采取措施以减少损失;请及时与团队联系提供解决方案(文章下面图片有咨询方式)若想追回损失资产,务必仔细阅读以下内容。【JFHHERYE
高德地图怎么在地图上设置自己店的位置-门店地图定位服务
高德地图是一款功能丰富的地图应用,它提供了详细的地图信息、实时的交通状况和的服务。这款地图应用适合各种使用场景,无论是城市出行、郊区探索还是驾车、骑行和步行,都能为用户提供可靠的导航指引。高德地图拥有庞大的地图数据,覆盖了
这家跨境独立站年入42.9亿元 引流用的什么招儿?
原创:派派粉来源:跨境派做跨境电商无非两个路子:一是在亚马逊、ebay、wish 等电商平台开店卖货;另一条则是搭建自己的网站,将商品放在自己的网站上销售。刚入行的跨境小白们起初会选择在大平台上开店卖货。大平台做的久了,会发现平台
超好用的视频界AI助手——NoteGPT
6.笔记与记忆卡生成 我可以根据自己的需要,创建个性化的笔记和学习卡片,这不仅加深了我对知识的理解和记忆,也为我的复习提供了极大的方便。 二、AI助手还有哪些功能 NoteGPT作为一个视频界的AI助手,还有以下功
用AI一键生成超逼真美女写真,快来体验超火的AI神器!
在首页找到“生成照片”选项,进入后你会看到多种美女写真模板可供选择。你可以根据个人的喜好,选择想要的模板,模特风格多样化,能满足不同用户的需求。步骤三:输入描述 选择好模板后,系统会提示输入相应的文本描述。描述可以尽量详细
绵羊漫画app免费版下载
绝对好看的漫画都在这里。《绵羊漫画 免费版》是一款非常不错的漫画阅读软件。在绵羊漫画软件内,拥有着海量的漫画资源,各种类型的漫画,超全的漫画种类,只要是你想看的漫画,都能轻松的在这里搜索的到,而且所有的漫画,免费任你尽情的
给排水CAD入门学习之排水斜弯的绘制技巧
有些刚开始进行的小伙伴在使用正版CAD软件绘制图纸的过程中,有些时候会需要绘制排水斜弯,那么浩辰软件中怎么绘制排水斜弯呢?接下来的给排水CAD入门学习教程就让小编来给大家介绍一下正版CAD软件——浩辰CAD给排水软件中绘制排水斜弯的相
高清美女写真生成神器:AI画出你心中的完美女神!
限时免费,点击体验最近超火的AI生图神器,坐拥3000美女的大男主就是你! https://ai.sohu.com/pc/generate/textToImg?_trans_=030001_yljdaimn 在这个科技飞速发展的时代,AI技术已经渗透到我们生活的各个角落。想像一下,宝子们,今天你
闲置8年后更名,沈阳一大型商场将重新开业!
来自中国房地产报消息,闲置8年之久,沈阳市北于洪地区最大的社区商业综合体——恒大都市广场B馆终于有了新动作。业内人士透露,该商业项目已经全权委托柏利城商业管理(苏州)有限公司展开全面升级改造与招商工作,与此同时,该商业体也已
直播软件搭建要求有哪些-从技术到硬件配置全方位解析!
直播软件搭建的要求是一个多方面的问题,涵盖了技术、硬件、软件以及网络等多个领域。搭建直播平台不仅需要考虑到用户体验的流畅性,还要确保平台的安全性和可扩展性。为了确保直播软件的成功搭建,开发者需要满足一定的技术要求,合理配置
相关文章
推荐文章
发表评论
0评