GeoNet阅读笔记:点云分析上的深度测地网络

目的

  • 点和邻近点的测地线距离估计。得到这样的估计后,我们求一个点的邻域时,就可以忽略那些欧氏距离很近,但测地线距离很远的点,从而减小误差。

大概过程

测地距离估计
  1. 得到Ground Truth:对每个点 x i x_i xi求出以 r r r为半径的邻域 B r ( x i ) B_r(x_i) Br(xi),对邻域内的每个点求测地距离。
  2. Encoder-Decoder部分:特征提取。基于PointNet++,得到每个采样点的特征;再通过插值+FC,得到每个点的 C + 3 C+3 C+3维特征。
  3. 按不同的半径 r l r_l rl,得到不同的邻域,分别采样 K l K_l Kl个点,因此每个点的邻域特征为 ( N , K l , 3 + C ) (N, K_l, 3+C) (N,Kl,3+C),将此邻域特征输入FC,得到新的邻域特征,维度为 ( N , K l , C ) (N, K_l, C) (N,Kl,C)。和原 C + 3 C+3 C+3维特征broadcast后concatenate,得到 ( N , K l , 2 C + 3 ) (N, K_l, 2C+3) (N,Kl,2C+3)维特征。
  4. 将特征输入到FC,得到 ( N , K l , 1 ) (N, K_l, 1) (N,Kl,1)的张量,和Ground Truth求L1误差,进行反向传播。
PUF:GeoNet融合上采样(PU-Net)
  1. 确定好采样点的邻域后,除了直接输入每个点的坐标,也输入它们和采样点之间的测地距离。注意到这里的测地距离并不是已经求出得到的,而是GeoNet这个网络结构,因此我们在训练PU-Net的过程中,也同时在训练GeoNet,而非分开成两个阶段。
  2. 因此损失函数由两部分组成,GeoNet的L1测地距离损失,和原来PU-Net的损失。
POF:GeoNet融合法向估计与表面网格生成(PointNet++)
  1. 由GeoNet得到测地距离,选择邻域。和PUF相比,直接去掉了欧氏距离近而测地距离远的点。(但我不知道在end-to-end训练过程中怎么做到这一点)
  2. 将GeoNet最后倒数第二个FC层的参数,作为点的特征输入到PointNet++中。
  3. 将融合后的特征用PointNet++的方式估计法向。
  4. 损失函数由GeoNet的L1测地距离损失,和原来PointNet++的L1法向估计损失两部分组成。
  5. 由法向进行泊松重建,得到表面网格。

疑问

  • GeoNet融合网络似乎都是end-to-end的,为何不先训完GeoNet,再将结果给到PU-Net或者PointNet++?另外,在GeoNet未算出来的时候,如何依赖测地距离得到邻域?
  • PUF和POF在图示上都有两个分支,但从文本描述上它们应该融合在一起?

相关的思考

  • 这篇paper非常直观非常有用。平时得到邻域时,确实会有测地距离很大的情况,带来很大的误差。如果它被避免(即使是部分避免),也会取得很大的进步。它应该可以和很多点云的方法做融合。
  • 期待这篇paper的代码开源。

参考文献

He, Tong, et al. “GeoNet: Deep Geodesic Networks for Point Cloud Analysis.” arXiv preprint arXiv:1901.00680 (2019).

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值