同步操作将从 lulululala/Pointnet_Pointnet2_pytorch 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
这个仓库是PointNet 和 PointNet++ 的 PyTorch 实现。
2021/03/27:
(1) 为语义分割发布预训练模型,其中 PointNet++ 可以获得 53.5% mIoU.
(2) 发布分类和部件分割的预训练模型在 log/
目录中
2021/03/20: 更新用于分类的代码
(1) 增加代码用于训练 ModelNet10 数据集,使用配置 --num_category 10
.
(2) 增强代码用于在 CPU 上执行,使用配置 --use_cpu
.
(3) 增加代码用于离线数据处理,加快训练速度,使用配置 --process_data
.
(4) 增加代码用于训练均匀采样,使用配置 --use_uniform_sample
.
2019/11/26:
(1) 修改先前代码中的部分错误,增加数据增强的技巧。现在分类仅通过1024个点就可以得到 92.8%!
(2) 增加测试代码,包括分类和分割,以及语义分割的可视化。
(3) 组织所有的模型到 ./models
目录中方便使用。
最新代码测试在 Ubuntu 16.04, CUDA10.1, PyTorch 1.6 and Python 3.7:
conda install pytorch==1.6.0 cudatoolkit=10.1 -c pytorch
下载对齐数据 ModelNet here
并且保存在 data/modelnet40_normal_resampled/
.
下面的代码可以运行在不同的模式下:
--process_data
。也可以下载预处理数据 here 并且保存在 data/modelnet40_normal_resampled/
.--num_category 10
.# ModelNet40
## Select different models in ./models
## e.g., pointnet2_ssg 没有法向特征
python train_classification.py --model pointnet2_cls_ssg --log_dir pointnet2_cls_ssg
python test_classification.py --log_dir pointnet2_cls_ssg
## e.g., pointnet2_ssg 增加法向特征
python train_classification.py --model pointnet2_cls_ssg --use_normals --log_dir pointnet2_cls_ssg_normal
python test_classification.py --use_normals --log_dir pointnet2_cls_ssg_normal
## e.g., pointnet2_ssg 基于均匀采样
python train_classification.py --model pointnet2_cls_ssg --use_uniform_sample --log_dir pointnet2_cls_ssg_fps
python test_classification.py --use_uniform_sample --log_dir pointnet2_cls_ssg_fps
# ModelNet10
## 与 ModelNet40 的配置相同,仅使用 --num_category 10
## e.g., pointnet2_ssg 没有法向特征
python train_classification.py --model pointnet2_cls_ssg --log_dir pointnet2_cls_ssg --num_category 10
python test_classification.py --log_dir pointnet2_cls_ssg --num_category 10
Model | Accuracy |
---|---|
PointNet (Official) | 89.2 |
PointNet2 (Official) | 91.9 |
PointNet (Pytorch without normal) | 90.6 |
PointNet (Pytorch with normal) | 91.4 |
PointNet2_SSG (Pytorch without normal) | 92.2 |
PointNet2_SSG (Pytorch with normal) | 92.4 |
PointNet2_MSG (Pytorch with normal) | 92.8 |
下载对齐的数据 ShapeNet here
保存在 data/shapenetcore_partanno_segmentation_benchmark_v0_normal/
.
## Check model in ./models
## e.g., pointnet2_msg
python train_partseg.py --model pointnet2_part_seg_msg --normal --log_dir pointnet2_part_seg_msg
python test_partseg.py --normal --log_dir pointnet2_part_seg_msg
Model | Inctance avg IoU | Class avg IoU |
---|---|---|
PointNet (Official) | 83.7 | 80.4 |
PointNet2 (Official) | 85.1 | 81.9 |
PointNet (Pytorch) | 84.3 | 81.1 |
PointNet2_SSG (Pytorch) | 84.9 | 81.8 |
PointNet2_MSG (Pytorch) | 85.4 | 82.5 |
下载三维室内解析数据集 ( 3D indoor parsing dataset,S3DIS) here
保存在 data/s3dis/Stanford3dDataset_v1.2_Aligned_Version/
.
cd data_utils
python collect_indoor3d_data.py
处理数据保存在 data/s3dis/stanford_indoor3d/
.
## Check model in ./models
## e.g., pointnet2_ssg
python train_semseg.py --model pointnet2_sem_seg --test_area 5 --log_dir pointnet2_sem_seg
python test_semseg.py --log_dir pointnet2_sem_seg --test_area 5 --visual
可视化结果保存在 log/sem_seg/pointnet2_sem_seg/visual/
并且可以使用 MeshLab 可视化 .obj 文件
Model | Overall Acc | Class avg IoU | Checkpoint |
---|---|---|---|
PointNet (Pytorch) | 78.9 | 43.7 | 40.7MB |
PointNet2_ssg (Pytorch) | 83.0 | 53.5 | 11.2MB |
## build C++ code for visualization
cd visualizer
bash build.sh
## run one example
python show3d_balls.py
如果这个仓库在你的研究中有用,请考虑引用:
@article{Pytorch_Pointnet_Pointnet2,
Author = {Xu Yan},
Title = {Pointnet/Pointnet++ Pytorch},
Journal = {https://github.com/yanx27/Pointnet_Pointnet2_pytorch},
Year = {2019}
}
@InProceedings{yan2020pointasnl,
title={PointASNL: Robust Point Clouds Processing using Nonlocal Neural Networks with Adaptive Sampling},
author={Yan, Xu and Zheng, Chaoda and Li, Zhen and Wang, Sheng and Cui, Shuguang},
journal={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
year={2020}
}
@InProceedings{yan2021sparse,
title={Sparse Single Sweep LiDAR Point Cloud Segmentation via Learning Contextual Shape Priors from Scene Completion},
author={Yan, Xu and Gao, Jiantao and Li, Jie and Zhang, Ruimao, and Li, Zhen and Huang, Rui and Cui, Shuguang},
journal={AAAI Conference on Artificial Intelligence ({AAAI})},
year={2021}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。