This repo contains code to reproduce the experiments presented in Deep Learning for Decentralized Parking Lot Occupancy Detection.
Visit the project website for more info and resources (dataset, pre-trained models).
- Caffe with Python interface (PyCaffe)
-
Clone this repo together with its submodules:
git clone --recursive https://github.com/fabiocarrara/deep-parking.git
-
Download the datasets using the following links and extract them somewhere.
Dataset Link Size CNRPark http://cnrpark.it/dataset/CNRPark-Patches-150x150.zip 36.6 MB CNR-EXT http://cnrpark.it/dataset/CNR-EXT-Patches-150x150.zip 449.5 MB PKLot visit PKLot webpage 4.6 GB -
Get the dataset splits and extract them in the repo folder
# Listfile containing dataset splits wget http://cnrpark.it/dataset/splits.zip unzip splits.zip
-
Add a
config.py
files inside each folder insplits/
to tellpyffe
where the images are. The content of the files should be like this (adjust theroot_dir
attribute to the absolute path of the extracted datasets):config = dict(root_folder = '/path/to/dataset/dir/')
This path will be prepended to each line in the list files defining the various splits.
-
Train and evaluate all the models by running:
python main.py
Modify
main.py
to select the experiments you want to reproduce. Runpklot.py
if you want to train and evaluate our architecture on the PKLot splits only.
@article{amato2017deep,
title={Deep learning for decentralized parking lot occupancy detection},
author={Amato, Giuseppe and Carrara, Fabio and Falchi, Fabrizio and Gennaro, Claudio and Meghini, Carlo and Vairo, Claudio},
journal={Expert Systems with Applications},
volume={72},
pages={327--334},
year={2017},
publisher={Pergamon}
}