Getting Started for Point Cloud Pre-training

December 13, 2023 ยท View on GitHub

Please download and preprocess the point cloud datasets according to the dataset guidance

Download the labeled and pseudo-labeled data

How to run AD-PT

  • Take pre-training on small pseudo label set as an example:

      cd tools
      sh scripts/PRETRAIN/dist_train_ad-pt.sh ${NUM_GPUS} \
      --cfg_file ./cfgs/once_models/pretrain_models/once_ad-pt_pretrain_small.yaml
    

    or

      cd tools
      sh scripts/PRETRAIN/slurm_train_ad-pt.sh ${PARTITION} ${JOB_NAME} ${NUM_NODES} \ 
      --cfg_file ./cfgs/once_models/pretrain_models/once_ad-pt_pretrain_small.yaml
    

    Note you can choose small / medium / large pseudo set by changing the dataset config file (once_ad-pt_pretrain_small.yaml / once_ad-pt_pretrain_medium.yaml / once_ad-pt_pretrain_large.yaml)

  • Fine-tuning on downstream dataset:

      cd tools
      sh scripts/dist_train.sh ${NUM_GPUS} \
      --cfg_file ./cfgs/waymo_models/pv_rcnn_plusplus_resnet.yaml \
      --pretrained_model ${PRETRAINED_CHECKPOINT}
    

    or

      cd tools
      sh scripts/slurm_train.sh ${PARTITION} ${JOB_NAME} ${NUM_NODES} \
      --cfg_file ./cfgs/waymo_models/pv_rcnn_plusplus_resnet.yaml \
      --pretrained_model ${PRETRAINED_CHECKPOINT}
    

    ${PRETRAINED_CHECKPOINT} denotes the pre-trained checkpoints obtained using AD-PT method.

AD-PT pre-trained checkpoints

  • For rapid fine-tuning on downstream datasets, we also release the pre-trained checkpoint using our AD-PT

    Pre-training MethodPre-trained dataPre-trained model
    AD-PTONCE PS-100Konce-100K-ckpt
    AD-PTONCE PS-500Konce-500K-ckpt
    AD-PTONCE PS-1Monce-1M-ckpt

AD-PT Results:

We report the downstream fine-tuning results using our AD-PT pre-trained backbones.

Fine-tuning Results on Waymo:

Data amountOverallVehiclePedestrianCyclist
SECOND (From scratch)3%52.00 / 37.7058.11 / 57.4451.34 / 27.3846.57 / 28.28
SECOND (AD-PT)3%55.41 / 51.7860.53 / 59.9354.91 / 45.7850.79 / 49.65
SECOND (From scratch)20%60.62 / 56.8664.26 / 63.7359.72 / 50.3857.87 / 56.48
SECOND (AD-PT)20%61.26 / 57.6964.54 / 64.0060.25 / 51.2159.00 / 57.86
CenterPoint (From scratch)3%59.00 / 56.2957.12 / 56.5758.66 / 52.4461.24 / 59.89
CenterPoint (AD-PT)3%61.21 / 58.4660.35 / 59.7960.57 / 54.0262.73 / 61.57
CenterPoint (From scratch)20%66.47 / 64.0164.91 / 64.4266.03 / 60.3468.49 / 67.28
CenterPoint (AD-PT)20%67.17 / 64.6565.33 / 64.8367.16 / 61.2069.39 / 68.25
PV-RCNN++ (From scratch)3%63.81 / 61.1064.42 / 63.9364.33 / 57.7962.69 / 61.59
PV-RCNN++ (AD-PT)3%68.33 / 65.6968.17 / 67.7068.82 / 62.3968.00 / 67.00
PV-RCNN++ (From scratch)20%69.97 / 67.5869.18 / 68.7570.88 / 65.2169.84 / 68.77
PV-RCNN++ (AD-PT)20%71.55 / 69.2370.62 / 70.1972.36 / 66.8271.69 / 70.70

Fine-tuning Results on nuScenes:

Data amountmAPNDSCarTruckCV.BusTrailerBarrierMotorcycleBicyclePedestrianCyclist
SECOND (From scratch)5%29.2439.7467.6933.027.1545.9117.6725.2311.920.0053.0030.74
SECOND (AD-PT)5%37.6947.9574.8941.8212.0554.7728.9234.4123.633.1963.6139.54
SECOND (From scratch)100%50.5962.29----------
SECOND (AD-PT)100%52.2363.0483.1252.8615.2468.5837.5459.4846.0120.4478.9660.05
CenterPoint (From scratch)5%42.6850.4177.8243.6110.6544.0118.7152.9536.2616.7637.6254.52
CenterPoint (AD-PT)5%44.9952.9978.9043.8211.1355.1621.2255.1039.0317.7672.2855.43
CenterPoint (From scratch)100%56.264.584.853.916.867.035.964.855.836.483.163.4
CenterPoint (AD-PT)100%57.1765.4884.8654.3716.0967.35436.0664.3158.5040.5883.5366.05

Fine-tuning Results on KITTI:

Data amountmAP ( Mod.)Car (mod.)Pedestrian (Mod.)Cyclist (Mod.)
SECOND (From scratch)20%61.7078.8347.2359.06
SECOND (AD-PT)20%65.9580.7049.6767.50
SECOND (From scratch)100%66.7080.7852.6166.71
SECOND (AD-PT)100%67.5881.3953.5867.78
PV-RCNN (From scratch)20%66.7182.5253.3364.28
PV-RCNN (AD-PT)20%69.4382.7557.5967.96
PV-RCNN (From scratch)100%70.5784.5057.0670.14
PV-RCNN (AD-PT)100%73.0184.7560.7973.49