Dynamic Graph CNN for Learning on Point Clouds(ACM TOG2019)-目标检测论坛-AI for CV-点头深度学习网站

Dynamic Graph CNN for Learning on Point Clouds(ACM TOG2019)

image

论文链接:https://dl.acm.org/doi/abs/10.1145/3326362

代码链接:https://github.com/AnTao97/dgcnn.pytorch

摘要

Dynamic Graph CNN (DGCNN) 是2019年提出的点云深度学习模型,旨在解决传统点云处理方法(如PointNet)忽略局部几何关系的局限性。该模型通过动态图卷积(EdgeConv),在点云中动态构建局部邻域图,并学习点与其邻域的关系特征,同时保持置换不变性。核心创新包括:

  • 动态图更新:每层根据特征空间中的点间距离动态更新邻域图,逐步扩展感受野至整个点云;

  • 局部与全局特征融合:EdgeConv同时捕捉点的全局特征和局部邻域差异,增强语义分组能力;

  • 高效多任务支持:支持分类、分割等任务,在ModelNet40分类任务中达到92.9%准确率,优于PointNet++(90.7%)。

实验表明,DGCNN在复杂场景(如S3DIS室内分割)中表现优异,特征空间中的相似语义点距离显著缩小,验证了其对几何与语义信息的联合建模能力。

主要贡献

image

1、EdgeConv模块

  • 局部几何建模:通过计算中心点与K近邻点的特征差异\((\mathbf{x}_j-\mathbf{x}_i)\) 和全局特征\((\mathbf{x}_{i})\),结合MLP生成边缘特征,最后通过最大池化聚合,公式为:\(e_{ijm}^{\prime}=\mathrm{ReLU}(\theta_m\cdot(\mathrm{x}_j-\mathrm{x}_i)+\phi_m\cdot\mathrm{x}_i)\)    \(x_{im}^{\prime}=\max_{j:(i,j)\in\mathcal{E}}e_{ijm}^{\prime}\)。其中 θm和 ϕm为可学习参数,实现局部与全局特征融合。

  • 置换不变性:通过对称聚合函数(如max-pooling)保证对点云顺序不敏感。

2、动态图更新机制

  • 每层根据当前特征空间中的K近邻动态重建邻域图,避免固定图结构的局限性,增强模型对语义相似点的长距离关联捕捉能力。

网络结构

image

DGCNN的架构分为编码器任务头两部分,核心模块如下:

编码器

1、EdgeConv层堆叠

  • 输入:点云 XRN×3,N为点数(网络中点数一直不变,只是特征维度增加);

  • 动态图构建:每层通过KNN(分类任务K=20,分割K=30)在特征空间中构建邻域图;

  • 特征提取:对每个中心点及其邻域计算边缘特征,经多层MLP后聚合(max-pooling),输出更新后的点特征。

2、多尺度特征融合

  • 通过堆叠多个EdgeConv层逐步扩大感受野

任务头

  • 分类任务:全局最大池化生成全局特征,经MLP输出类别概率;

  • 分割任务:将各层EdgeConv特征拼接,通过MLP逐点预测语义标签,结合跳跃连接保留细节。

动态图更新示例

  • 输入层:基于欧氏距离构建邻域;

  • 深层:基于特征空间距离重建邻域,使语义相似但空间远离的点建立连接(例如机翼与机身的特征关联)。

实验结果

image

image

总结

优势

  1. 高效局部特征提取:EdgeConv在ModelNet40分类任务中较PointNet提升3.7%准确率,验证了局部几何建模的有效性;

  2. 动态语义感知:通过特征空间动态更新邻域,增强对复杂场景的适应性(如S3DIS室内分割任务mIoU达56.1%);

  3. 轻量化设计:参数量与计算效率优于体素化方法,适合实时应用。

局限性

  1. 计算开销:动态KNN搜索增加训练时间,尤其对大规模点云(如自动驾驶场景);

  2. 方向信息缺失:EdgeConv未显式编码邻域点的方向信息,可能影响细粒度分割精度。

请登录后发表评论

    没有回复内容