DMPR-PS
DMPR-PS copied to clipboard
DMPR-PS: A Novel Approach for Parking-Slot Detection Using Directional Marking-Point Regression
DMPR-PS
This is the implementation of DMPR-PS using PyTorch.
Requirements
- PyTorch
- CUDA (optional)
- Other requirements
pip install -r requirements.txt
Pre-trained weights
The pre-trained weights could be used to reproduce the number in the paper.
Inference
-
Image inference
python inference.py --mode image --detector_weights $DETECTOR_WEIGHTS --inference_slot -
Video inference
python inference.py --mode video --detector_weights $DETECTOR_WEIGHTS --video $VIDEO --inference_slotArgument
DETECTOR_WEIGHTSis the trained weights of detector.
ArgumentVIDEOis path to the video.
Viewconfig.pyfor more argument details.
Prepare data
-
Download ps2.0 from here, and extract.
-
Download the labels, and extract.
(In case you want to label your own data, you can usedirectional_pointbranch of my labeling tool MarkToolForParkingLotPoint.) -
Perform data preparation and augmentation:
python prepare_dataset.py --dataset trainval --label_directory $LABEL_DIRECTORY --image_directory $IMAGE_DIRECTORY --output_directory $OUTPUT_DIRECTORY python prepare_dataset.py --dataset test --label_directory $LABEL_DIRECTORY --image_directory $IMAGE_DIRECTORY --output_directory $OUTPUT_DIRECTORYArgument
LABEL_DIRECTORYis the directory containing json labels.
ArgumentIMAGE_DIRECTORYis the directory containing jpg images.
ArgumentOUTPUT_DIRECTORYis the directory where output images and labels are.
Viewprepare_dataset.pyfor more argument details.
Train
python train.py --dataset_directory $TRAIN_DIRECTORY
Argument TRAIN_DIRECTORY is the train directory generated in data preparation.
View config.py for more argument details (batch size, learning rate, etc).
Evaluate
-
Evaluate directional marking-point detection
python evaluate.py --dataset_directory $TEST_DIRECTORY --detector_weights $DETECTOR_WEIGHTSArgument
TEST_DIRECTORYis the test directory generated in data preparation.
ArgumentDETECTOR_WEIGHTSis the trained weights of detector.
Viewconfig.pyfor more argument details (batch size, learning rate, etc). -
Evaluate parking-slot detection
python ps_evaluate.py --label_directory $LABEL_DIRECTORY --image_directory $IMAGE_DIRECTORY --detector_weights $DETECTOR_WEIGHTSArgument
LABEL_DIRECTORYis the directory containing testing json labels.
ArgumentIMAGE_DIRECTORYis the directory containing testing jpg images.
ArgumentDETECTOR_WEIGHTSis the trained weights of detector.
Viewconfig.pyfor more argument details.
Citing DMPR-PS
If you find DMPR-PS useful in your research, please consider citing:
@inproceedings{DMPR-PS,
Author = {Junhao Huang and Lin Zhang and Ying Shen and Huijuan Zhang and Shengjie Zhao and Yukai Yang},
Booktitle = {2019 IEEE International Conference on Multimedia and Expo (ICME)},
Title = {{DMPR-PS}: A novel approach for parking-slot detection using directional marking-point regression},
Month = {Jul.},
Year = {2019},
Pages = {212-217}
}