This project is used to train the model of the object detection network with point clouds only. It is based on OpenPCDet framework which is a a clear, simple, self-contained open source project for LiDAR-based 3D object detection. Till now, the Astyx dataset has been successfully handled and trained.
After downloading the dataset, put them into the proper directory.
In this project, eg. the Astyx dataset is put into /home/ez/project/rpfanet/data/Astyx/. In the directory /Astyx, there are 3 folders named training, testing, ImageSets.
conda env create -f environment_openpcdet.yml
conda activate OpenPCDet
conda env create -f environment_vod.yml
conda activate view-of-delft-env
Forget which environment is suitable, just try. QAQ
- Install the SparseConv library, we use the implementation from
[spconv].- If you use PyTorch 1.1, then make sure you install the
spconv v1.0with (commit 8da6f96) instead of the latest one. - If you use PyTorch 1.3+, then you need to install the
spconv v1.2. As mentioned by the author ofspconv, you need to use their docker if you use PyTorch 1.4+.
- If you use PyTorch 1.1, then make sure you install the
python -m pcdet.datasets.astyx.astyx_dataset create_astyx_infos tools/cfgs/dataset_configs/astyx_dataset_radar.yaml
python3 -m pcdet.datasets.astyx.ttttt create_astyx_infos tools/cfgs/dataset_configs/astyx_dataset_radar.yaml
cd tools/
python train.py --cfg_file cfgs/astyx_models/pointpillar.yaml --tcp_port 25851 --extra_tag yourmodelname
cd tools/
CUDA_VISIBLE_DEVICES=1 python train.py --cfg_file cfgs/astyx_models/pointpillar.yaml --tcp_port 25851 --extra_tag yourmodelnamecd tools/
python test.py --cfg_file cfgs/astyx_models/pointpillar.yaml --batch_size 4 --ckpt ../output/astyx_models/pointpillar/rpfanet_313/ckpt/checkpoint_epoch_80.pth
cd tools/
python test.py --cfg_file cfgs/astyx_models/pointpillar.yaml --batch_size 4 --ckpt ##astyx_models/pointpillar/debug/ckpt/checkpoint_epoch_80.pthpython3 demo.py --ckpt ../output/astyx_models/pointpillar/rpfanet_313/ckpt/checkpoint_epoch_80.pth
├─data
│ └─Astyx
│ ├─ImageSets
│ ├─training
│ └─testing
├─docker
├─docs
├─pcdet
│ ├─datasets
│ │ ├─astyx
│ │ ├─augmentor
│ │ ├─kitti
│ │ │ └─kitti_object_eval_python
│ │ ├─nuscenes
│ │ └─processor
│ ├─models
│ │ ├─backbones_2d
│ │ │ └─map_to_bev
│ │ ├─backbones_3d
│ │ │ ├─pfe
│ │ │ └─vfe
│ │ ├─dense_heads
│ │ │ └─target_assigner
│ │ ├─detectors
│ │ ├─model_utils
│ │ └─roi_heads
│ │ └─target_assigner
│ ├─ops
│ │ ├─iou3d_nms
│ │ │ └─src
│ │ ├─pointnet2
│ │ │ ├─pointnet2_batch
│ │ │ │ └─src
│ │ │ └─pointnet2_stack
│ │ │ └─src
│ │ ├─roiaware_pool3d
│ │ │ └─src
│ │ └─roipoint_pool3d
│ │ └─src
│ └─utils
└─tools
├─cfgs
│ ├─astyx_models
│ ├─dataset_configs
│ ├─kitti_models
│ └─nuscenes_models
├─eval_utils
├─scripts
├─train_utils
│ └─optimization
└─visual_utils
This project was accomplished on June 1, 2024 and was first upload to the github on March 11, 2025.
Contact Email: [email protected]
