feat:add readme
Point Cloud Transformer (PCT) baseline implemented in Jittor for ModelNet40 classification. The script trains a model on the provided point clouds and produces a result.json prediction file for the test split.
result.json
requirements.txt
Install dependencies:
pip install -r requirements.txt
Train and generate predictions:
python pct.py
Common options:
python pct.py --epochs 200 --batch_size 32 --lr 0.002 --n_points 1024
120 epoches is enough to get 80% acc.
Outputs:
pct_model.pkl
Expected files under data/:
data/
train_points.npy
train_labels.npy
test_points.npy
categories.txt
CPU image:
docker build -f Dockerfile.cpu -t pct-jittor:cpu . docker run --rm -it -v "$PWD":/workspace pct-jittor:cpu
GPU image (requires NVIDIA runtime):
docker build -f Dockerfile.gpu -t pct-jittor:gpu . docker run --rm -it --gpus all -v "$PWD":/workspace pct-jittor:gpu
pct.py
jt.flags.use_cuda = 1
0
test.py
A Jittor implementation of Point Cloud Transformer (PCT) for ModelNet40 classification
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
PCT Jittor (ModelNet40)
Point Cloud Transformer (PCT) baseline implemented in Jittor for ModelNet40 classification. The script trains a model on the provided point clouds and produces a
result.jsonprediction file for the test split.Features
Requirements
requirements.txtInstall dependencies:
Quick Start
Train and generate predictions:
Common options:
120 epoches is enough to get 80% acc.
Outputs:
pct_model.pkl: saved model checkpointresult.json: test predictions (key: sample id, value: class id)Dataset
Expected files under
data/:train_points.npy(N, 2048, 3)train_labels.npy(N,)test_points.npy(M, 2048, 3)categories.txt(class names)Docker
CPU image:
GPU image (requires NVIDIA runtime):
Notes
pct.pywithjt.flags.use_cuda = 1. Set it to0if you want CPU only.test.pyis a minimal Jittor sanity check.