optimize pic
85.01% Test Accuracy · ModelNet40 · 200 Epochs · ~28s/epoch
python pct.py --epochs 200 --batch_size 32 --lr 0.01
训练完成后自动生成 pct_model.pkl 和 result.json
pct_model.pkl
result.json
本项目基于 Jittor 深度学习框架,复现了论文 PCT: Point Cloud Transformer (CVMJ 2021) 中提出的三维点云分类网络,并在 ModelNet40 数据集上完成训练与评测。
PCT 将 Transformer 的自注意力机制引入点云处理,通过全局关系建模替代传统的局部邻域聚合,在三维形状分类任务上取得了优异的性能。
Self-Attention Layer 内部结构:
依赖:
安装 Jittor:
pip install jittor # 验证 CUDA 是否可用 python -m jittor.test.test_cudnn_op
详细安装说明:https://cg.cs.tsinghua.edu.cn/jittor/download/
ModelNet40 数据集(npy 格式)从头歌平台下载:
https://www.educoder.net/competitions/Jittor-7
下载后放置于 data/ 目录:
data/
PCT_jittor/ ├── pct.py ├── data/ │ ├── train_points.npy # (9843, 2048, 3) 训练集点云 │ ├── train_labels.npy # (9843,) 训练集标签 │ └── test_points.npy # (2468, 2048, 3) 测试集点云
每个点云原始包含 2048 个点,训练时随机采样 1024 个点作为网络输入。
后台运行(推荐):
nohup python pct.py --epochs 200 --batch_size 32 --lr 0.01 > train.log 2>&1 & tail -f train.log
--epochs
--batch_size
--lr
--n_points
--data_dir
./data
--seed
{"0": 类别, "1": 类别, ...}
训练曲线(Train Accuracy):
Epoch 1 : 12% Epoch 50 : 65% Epoch 100 : 80% Epoch 150 : 86% Epoch 200 : 89% ← 最终
PCT_jittor/ ├── pct.py # 完整实现:数据集 / 模型 / 训练 / 预测 ├── README.md ├── .gitignore ├── data/ # 数据集(不上传,请自行下载) │ ├── train_points.npy │ ├── train_labels.npy │ └── test_points.npy ├── pct_model.pkl # 训练权重(不上传) └── result.json # 预测结果(不上传)
@article{guo2021pct, title = {PCT: Point Cloud Transformer}, author = {Guo, Meng-Hao and Cai, Jun-Xiong and Liu, Zheng-Ning and Mu, Tai-Jiang and Martin, Ralph R and Hu, Shi-Min}, journal = {Computational Visual Media}, year = {2021} }
A Jittor Implementation of Point Cloud Transformer for 3D Shape Classification
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
PCT Jittor
A Jittor Implementation of Point Cloud Transformer for 3D Shape Classification
85.01% Test Accuracy · ModelNet40 · 200 Epochs · ~28s/epoch
Quick Start
训练完成后自动生成
pct_model.pkl和result.json简介
本项目基于 Jittor 深度学习框架,复现了论文 PCT: Point Cloud Transformer (CVMJ 2021) 中提出的三维点云分类网络,并在 ModelNet40 数据集上完成训练与评测。
PCT 将 Transformer 的自注意力机制引入点云处理,通过全局关系建模替代传统的局部邻域聚合,在三维形状分类任务上取得了优异的性能。
网络架构
Self-Attention Layer 内部结构:
环境配置
依赖:
安装 Jittor:
数据集
ModelNet40 数据集(npy 格式)从头歌平台下载:
下载后放置于
data/目录:每个点云原始包含 2048 个点,训练时随机采样 1024 个点作为网络输入。
使用方法
训练
后台运行(推荐):
参数说明
--epochs--batch_size--lr--n_points--data_dir./data--seed输出文件
pct_model.pklresult.json{"0": 类别, "1": 类别, ...}训练细节
训练曲线(Train Accuracy):
结果
项目结构
参考