目录

Point Cloud Denoising

环境配置

  • Python 3.9
  • Jittor 深度学习框架
  • NumPy, SciPy

文件结构

text ├── run.py # 主入口 ├── configs/ │ ├── task/ │ │ ├── train_vm.yaml # 训练配置 │ │ └── predict_vm.yaml # 推理配置 │ ├── model/vm.yaml # 模型超参数 │ ├── data/train.yaml # 数据配置 │ └── transform/ │ ├── vm.yaml # 训练/验证数据增强 │ └── predict.yaml # 推理数据变换 └── src/ ├── model/ │ ├── feature.py # 特征提取网络与解码器 │ ├── vm.py # 主模型(训练/推理逻辑) │ ├── parse.py # 模型解析 │ └── spec.py # 模型基类 ├── data/ │ ├── asset.py # 数据资产加载 │ ├── augment.py # 数据增强 │ ├── dataset.py # 数据集封装 │ └── transform.py # 变换流水线 └── system/ ├── vm.py # 系统与写入器 ├── parse.py # 系统解析 └── spec.py # 系统基类

快速开始

可以根据需要设置configs/task/predict_vm.yamltrain_vm.yaml中load_ckpt的值,设置训练的起始参数状态或推理所依据的模型。

训练:

python run.py --task configs/task/train_vm.yaml

训练数据需放置在./dataset_train/目录下,包含ShapeNet网格文件(.obj 格式)。

推理:

python run.py --task configs/task/predict_vm.yaml

测试数据需放置在./dataset_test/目录下,每个样本为noisy.npy文件。降噪结果将保存至./result/。测试时需注释掉dataset.py__getitem__函数的#self.transform.apply(asset=asset)一行。

方法概述

本方案将点云降噪建模为逐点位移回归任务,采用基于动态图卷积的编码器-解码器架构。编码器通过K近邻构建局部图结构,逐层提取点云几何特征;解码器将特征映射为三维位移向量,将含噪点”推回”真实表面。

核心优化包括:

  • 加权平均拼接:替代原始硬选择策略,保证输出点数守恒并消除拼接伪影
  • 迭代去噪:多次执行分块去噪-重组过程,逐步逼近真实表面
  • 斥力后处理:对局部聚集点施加微调偏移,改善点云均匀性,提升Chamfer Distance指标

数据获取

训练集文件从此获取 测试集文件从此获取

  1. 将训练数据 dataset_train.tar.gz 解压到本目录下:
    tar xzf dataset_train.tar.gz
    解压后目录: dataset_train/shapenet/<synset_id>/<model_id>/models/model_normalized.obj
  2. 将测试数据 dataset_test_noisy.zip 解压到本目录下:
    unzip dataset_test_noisy.zip
    解压后目录: dataset_test_noisy/shapenet/<synset_id>/<model_id>/noisy.npy
关于
405.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号