-
Notifications
You must be signed in to change notification settings - Fork 45
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
84addc5
commit 9585c8f
Showing
1 changed file
with
63 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
# Deep Learning for Decentralized Parking Lot Occupancy Detection | ||
|
||
This repo contains code to reproduce the experiments presented in [Deep Learning for Decentralized Parking Lot Occupancy Detection](https://www.sciencedirect.com/science/article/pii/S095741741630598X). | ||
|
||
Visit the [project website](http://cnrpark.it/) for more info and resources (dataset, pre-trained models). | ||
|
||
## Requirements | ||
|
||
- Caffe with Python interface (PyCaffe) | ||
|
||
## Steps to reproduce experiments | ||
|
||
1. Clone this repo together with its submodules: | ||
|
||
```bash | ||
git clone --recursive https://github.com/fabiocarrara/deep-parking.git | ||
``` | ||
|
||
2. 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](https://web.inf.ufpr.br/vri/databases/parking-lot-database/) | 4.6 GB | | ||
|
||
|
||
3. Get the dataset splits and extract them in the repo folder | ||
```bash | ||
# Listfile containing dataset splits | ||
wget http://cnrpark.it/dataset/splits.zip | ||
unzip splits.zip | ||
``` | ||
|
||
4. Add a `config.py` files inside each folder in `splits/` to tell `pyffe` where the images are. | ||
The content of the files should be like this (adjust the `root_dir` attribute to the absolute path of the extracted datasets): | ||
```python | ||
config = dict(root_folder = '/path/to/dataset/dir/') | ||
``` | ||
This path will be prepended to each line in the list files defining the various splits. | ||
|
||
|
||
5. Train and evaluate all the models by running: | ||
```bash | ||
python main.py | ||
``` | ||
Modify `main.py` to select the experiments you want to reproduce. | ||
Run `pklot.py` if you want to train and evaluate our architecture on the PKLot splits only. | ||
|
||
## Citation | ||
|
||
``` | ||
@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} | ||
} | ||
``` | ||
|