RandLA-Net: Efficient Semantic Segmentation of Large-Scale Point Clouds阅读笔记

RandLA-Net是一种用于大规模点云语义分割的网络,通过随机采样和局部特征聚合模块处理高效率的点云数据。局部特征聚合包括局部空间编码、注意力池化和空洞残差块,分别用于捕捉局部几何模式、增强点特征和扩大感受野。代码实现中,这些模块被详细地用TensorFlow实现,包括寻找邻居点、相对位置编码和注意力分数计算等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

RandLA-Net: Efficient Semantic Segmentation of Large-Scale Point Clouds 论文阅读笔记

一、 论文部分:

整体结构简单说就是:
RandLaNet= ⑴ random sampling + ⑵ local feature aggregator
第⑴部分,为了高效的对大的点云进行采样
第⑵部分,因为random sampling 会丢失一些点,以此做为增强
⑵ Local feature aggregator = ① local spatial encoding (LocSE) + ② attentive pooling + ③ dilated residual block
①有效的收集局部几何模式,因此增强整个网络有效的学习复杂的局部结构(编码),分为三步:finding neighbouring points; relative point position encoding; point feature augmentation。
②用来增强点p附近点的特征(聚集),分为两步:computing attention scores; weighted summation。
③大点云下采样,所以用来增强每一个点的感受野。这样输入的点云的几何细节可以观察到。

网络示意图:

图1 each layer of RandLA-Net

图2 RandLa-Net
图2 RandLa-Net

在这里插入图片描述
图3 local feature aggregation module

二、 代码部分:

Local Feature Aggregation

(1)Local Spatial Encoding

公式1:
在这里插入图片描述
在代码的RandLANet.py:
**①Finding Neighbouring Points **,论文中的KNN。就是代码中的gather_neighbour函数中(暂时是377行)。

②Relative Point Position Encoding

relative_feature = tf.concat([relative_dis, relative_xyz, xyz_tile, neighbor_xyz], axis=-1)

在代码的relative_pos_encoding函数中(暂时是324行)。代码中的relative_feature就是这里的r_i^k,把它记作: f_xyz 。

③Point Feature Augmentation,f ̂_ik=r_ik+f_i^k。 其中在代码的building_block函数中(暂时是第301行),f_neighbours就是论文中的f_i^k;# f_xyz就是论文中的r_i^k;f_concat就是论文中的f ̂_i^k。
在这里插入图片描述

(2)Attentive Pooling

①Computing Attentive Scores
g()用来去学习每一个特征的一个unique的注意力分数

在这里插入图片描述
②Weighted Summation
在这里插入图片描述

f_reshaped = tf.reshape(feature_set, shape=[-1, num_neigh, d])
att_activation = tf.layers.dense(f_reshaped, d, activation=None, use_bias=False, name=name + 'fc')
att_scores = tf.nn.softmax(att_activation, axis=1)
f_agg = f_reshaped * att_scores 
f_agg = tf.reduce_sum(f_agg, axis=1)
f_agg = tf.reshape(f_agg, [batch_size, num_points, 1, d])
f_agg = helper_tf_util.conv2d(f_agg, d_out, [1, 1], name + 'mlp', [1, 1], 'VALID', True, is_training)

在代码的att_pooling函数中(暂时是393行)。其中tf.layers.dense()就是论文中的g()函数,它用于添加一个全连接层。

tf.layers.dense(
    inputs,                 #层的输入
    units,                  #该层的输出维度
    activation=None,        #激活函数
    use_bias=True,          #是否使用偏置项。
    kernel_initializer=None,    # 卷积核的初始化器
    bias_initializer=tf.zeros_initializer(),  # 偏置项的初始化器
    kernel_regularizer=None,    # 卷积核的正则化
    bias_regularizer=None,      # 偏置项的正则化
    activity_regularizer=None, 
    kernel_constraint=None,
    bias_constraint=None,
    trainable=True,			#表明该层的参数是否参与训练。
    name=None,  # 层的名字
    reuse=None  # 是否重复使用参数
)

论文中的f ̂_i^k 是代码中的f_reshaped;论文中的s_i^k是代码中的att_scores。所以最后代码中的f_agg就是论文中的f ̃_i。

(3)Dilated Residual Block

在dilated_res_block函数中(暂时是第286行)。在这篇文章中,堆叠了两层LocSE 和 Attentive Pooling。

### 回答1: randla-net是一种高效的大规模点云语义分割方法。它采用了一种新颖的点云降采样方法,可以在保持点云形状信息的同时大大减少点云数量。此外,它还使用了一种基于局部区域的特征提取方法,可以有效地捕捉点云中的局部特征。最终,randla-net可以在保持较高分割精度的同时,大大提高分割速度。 ### 回答2: Randla-Net是一种高效的大规模点云语义分割方法,它利用深度学习方法实现对三维点云数据中物体的自动识别和分类。在智能驾驶、金字塔建设、城市规划和3D建模等领域,点云数据已经成为一种重要的数据形式。在处理点云数据时,常常需要对点云中的各种物体进行语义分割,划分出物体的类别和边界,以进一步进行场景分析和建模。 Randla-Net的关键思想是将点云数据转换成局部规则网格(LHG)型式,然后对规则网格应用神经网络模型,实现对点云的语义分割。相较于传统的点云分割方法,Randla-Net的解决方案更加高效,并且能够适应大规模点云数据的处理。具体来说,Randla-Net采用的局部规则网格可以大大减少点云数据的复杂性,减少无效数据的计算,同时保证点云数据与原始数据的对应性。神经网络模型的引入能够提高计算的全局一致性,并在语义分割中对局部特征和位置被高效获取。此外,Randla-Net融合了RANDomized LAyered points(简称RANDLA)的思想,可以抽取多级别多方向的特征,使得点云数据在语义分割中的处理更加准确。 总之,Randla-Net是一种快速、有效、准确的大规模点云语义分割方法,其优点在于可以处理复杂的大规模点云数据,同时在语义分割中能够提供更高的计算效率和更精确的结果。它的应用将会推动点云技术的发展,为智能驾驶、建筑、机器人、VR/AR等领域提供更加精确的三维场景建模工具。 ### 回答3: RandLA-Net是一种高效而准确的点云语义分割神经网络,专为应对大规模点云场景而开发。该网络的核心功能在于通过快速地对点云数据进行聚类、降采样和投影等操作,实现了对点云进行语义分割,并能够输出详细的分割结果。 RandLA-Net相对于传统点云语义分割算法的优势在于,该算法不但能够处理大规模点云数据,同时还利用了矩阵分解的方法来提高运行速度。因此,该算法在极端情况下也能实现快速和准确的分割,如在不同分辨率、不同大小和不同密度的点云数据上。 RandLA-Net的另一个创新点在于使用了自适应滑动窗口的方法,就是通过分析点云的特征分布,来自动选择和匹配最适宜的窗口大小,以此进一步提高分割效果。同时,该算法还考虑到了实际应用场景中存在的地面、建筑物等不同的目标物体,对各自进行分割和处理,以期达到更高的准确率。 总的来说,RandLA-Net是一种高效、准确、可扩展的神经网络,为卫星、城市规划、无人驾驶等领域提供了强大的支持。该算法的研究提供了新的思路,为点云语义分割界的研究者提供了很好的启示,也为工业界解决实际问题提供了新的思路。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值