SCCKTIM

Weakly Supervised 3D Object Detection from Point Cloud with Only Image-Level Annotation
Our code will be available soon.

The class knowledge transfer module and pseudo_label generalization module provide docker images.

Class Knowledge Transfer Module

Installation according to WS3DOD.
Generating the superpixel by running the following:

conda activate ws3dod
cd core/source/context_module
python generate_superpixel_image

Our data file structure is as follows:

--data
  --kitti
    --training
      --calib
      --image_2
      --label_2
      --planes
      --sphere
      --superpixel_2
      --velodyne
    --train.txt
    --trainval.txt
  --kitti_pseudo
    --training
      --label_2

Files in kitti_pseudo are generated by PG in the previous iteration.
Please read core/launcher.py and paper for details of running the code.

Conceptual Knowledge Transfer Module

Following README.md in CKT

Pseudo-label Generalization

Installation according to OpenpcDet.

conda activate openpcdet

Our data file structure is as follows:

--data
  --kitti
    --ImageSets
      --trainval.txt
      --val.txt
      --test.txt
    --ImageSets_real
      --train.txt
      --trainval.txt
      --val.txt
      --test.txt
    --testing
      --calib
      --image_2
      --velodyne
    --training
      --calib
      --image_2
      --label_2
      --velodyne
      --planes
      --pseudo_label
  --waymo

Files in pseudo_label are generated by CKT previous step.
label_2 is empty before training the deep network. Using the following command to generate pseudo-labels:

cd tools
python generate_pseudo_label

Using the following command for training deep network.

python -m torch.distributed.launch --nproc_per_node=4 train.py --launcher pytorch --cfg_file cfgs/kitti_models/pv_rcnn.yaml│
 --sync_bn --fix_random_seed --extra_tag normal_nonrot_pcn_reg_pvrcnn_iter1_pcn_reg

License

We note that some code in this repository is adapted from the following repositories:

GitHub - opjang5/SCCKTIM at pythonawesome.com
Weakly Supervised 3D Object Detection from Point Cloud with Only Image-Level Annotation - GitHub - opjang5/SCCKTIM at pythonawesome.com