Git Product home page Git Product logo

deep-parking's Introduction

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.

Visit the project website 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:

    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 4.6 GB
  3. 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
  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):

    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:

    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}
}

deep-parking's People

Contributors

fabiocarrara avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

deep-parking's Issues

Issue on import

Hi Fabio Carrara,
`I have already installed caffe and pyffe in my system, but still there is import error.
Traceback (most recent call last):
File "pklot.py", line 1, in
import pyffe
File "/home/shiva/deep-parking/pyffe/init.py", line 3, in
from .forward import forward_all
File "/home/shiva/deep-parking/pyffe/forward.py", line 12, in
import caffe
ImportError: No module named caffe

where to download the raw image / video of "CNRPark" and "CNR-EXT" dataset

Hi, @fabiocarrara ,

I'm very interested in your work "Deep learning for decentralized parking lot occupancy detection", and would like to study it further and for practicing the detection. For detection evaluation on the parking lots, I could see the evaluation video , where could I download the raw image / video dataset? I had downloaded the "CNRPark" and "CNR-EXT" dataset, but only segmented patches located inside and there's no any raw image (with the view on the parking ground) or video in it.

I'd like to download the raw image / video. Could you help me ?

Thanks!

CNRPark slot segmentation

Hi,as we know, there will be many parking Spaces in the original picture. How do you divide the original picture into multiple parking Spaces?Is it cut by hand or algorithm?

How to use the camera

Hi, i have successed run 'python main.py' on Debian9.
Next step ,i don't kown how to use the camera , i have saw the online video in ‘http://cnrpark.it/’, in the video , how can i present the same picture in the video?

mean.binaryproto file ambiguity

I am looking at the model CNRPark-Trained-Models/mAlexNet-on-CNRPark.

It contains the file mean.binaryproto. Loading this file in Python I see it is an array of dimensions: 3x256x256. Does it contain the means of each pixel for all the three channels? If not how to interpret it?

Are the channels in the RGB or BGR format? I could not find any description of it.

It is better in my opinion to save the means in another format since there might be compatibility issues when importing in other frameworks rather than caffe: OpenCV in C++ can load the caffemodel and proto files but not the mean file mean.binaryproto.

Any help will be appreciated.

backend TkAgg version unknown

Hello Fabiocarrara, thank you for providing this project for everyone to try. At present, I have encountered a problem. I have an error after executing pklot.py. I also have this problem in main.py.

I also found debug information in the log, did not see any errors, only matplotlib will have a debug when just executed, how can this be solved?

matplotlib version 2.2.3

DEBUG 2019-02-11 00:28:43: CACHEDIR=/home/user/.cache/matplotlib
DEBUG 2019-02-11 00:28:43: Using fontManager instance from /home/user/.cache/matplotlib/fontList.json
DEBUG 2019-02-11 00:28:45: backend TkAgg version unknown

INFO 2019-02-11 00:28:45: Setting up mAlexNet trained on PKLot_UFPR05_train, validated on PKLot_UFPR04_train, PKLot_UFPR05_train, PKLot_PUC_train, tested on PKLot_UFPR04_test_PKLot_UFPR05_test_PKLot_PUC_test ...
INFO 2019-02-11 00:28:48: Training on PKLot_UFPR05_train while validating on PKLot_UFPR04_train, PKLot_UFPR05_train, PKLot_PUC_train ...
I0211 07:58:45.212375 2009 sgd_solver.cpp:112] Iteration 26166, lr = 0.0025
I0211 07:59:24.925103 2009 solver.cpp:239] Iteration 26215 (1.23388 iter/s, 39.712s/49 iters), loss = 0.00707085
I0211 07:59:24.925237 2009 solver.cpp:258] Train net output #0: loss = 0.00173975 (* 1 = 0.00173975 loss)
I0211 07:59:24.925256 2009 sgd_solver.cpp:112] Iteration 26215, lr = 0.0025
I0211 08:00:04.641950 2009 solver.cpp:239] Iteration 26264 (1.23376 iter/s, 39.716s/49 iters), loss = 0.00808991
I0211 08:00:04.642046 2009 solver.cpp:258] Train net output #0: loss = 0.000425289 (* 1 = 0.000425289 loss)
I0211 08:00:04.642061 2009 sgd_solver.cpp:112] Iteration 26264, lr = 0.0025
I0211 08:00:44.350703 2009 solver.cpp:239] Iteration 26313 (1.23401 iter/s, 39.708s/49 iters), loss = 0.00666064
I0211 08:00:44.350908 2009 solver.cpp:258] Train net output #0: loss = 0.00237676 (* 1 = 0.00237676 loss)
I0211 08:00:44.350924 2009 sgd_solver.cpp:112] Iteration 26313, lr = 0.0025
I0211 08:01:24.058185 2009 solver.cpp:239] Iteration 26362 (1.23404 iter/s, 39.707s/49 iters), loss = 0.008896
I0211 08:01:24.058348 2009 solver.cpp:258] Train net output #0: loss = 0.00142862 (* 1 = 0.00142862 loss)
I0211 08:01:24.058367 2009 sgd_solver.cpp:112] Iteration 26362, lr = 0.0025
I0211 08:02:03.743736 2009 solver.cpp:239] Iteration 26411 (1.23472 iter/s, 39.685s/49 iters), loss = 0.003344
I0211 08:02:03.743832 2009 solver.cpp:258] Train net output #0: loss = 0.000362561 (* 1 = 0.000362561 loss)
I0211 08:02:03.743847 2009 sgd_solver.cpp:112] Iteration 26411, lr = 0.0025
I0211 08:02:14.302935 2009 solver.cpp:464] Snapshotting to binary proto file snapshots/snapshot_iter_26425.caffemodel
I0211 08:02:14.303773 2009 sgd_solver.cpp:284] Snapshotting solver state to binary proto file snapshots/snapshot_iter_26425.solverstate
I0211 08:02:14.304250 2009 solver.cpp:332] Optimization Done.
I0211 08:02:14.304262 2009 caffe.cpp:250] Optimization Done.
DEBUG 2019-02-11 08:02:14: Summarizing mAlexNet-tr_PKLot_UFPR05_train-vl_PKLot_UFPR04_train_PKLot_UFPR05_train_PKLot_PUC_train-ts_PKLot_UFPR04_test_PKLot_UFPR05_test_PKLot_PUC_test ...
Traceback (most recent call last):
File "pklot.py", line 38, in
pyffe.summarize(exps).to_csv('pklot_results.csv')
File "/home/user/deep-parking-master/deep-parking-master/pyffe/experiment.py", line 84, in summarize
r = e.summarize()
File "/home/user/deep-parking-master/deep-parking-master/pyffe/experiment.py", line 42, in decorator
return function(*args, **kwargs)
File "/home/user/deep-parking-master/deep-parking-master/pyffe/experiment.py", line 548, in summarize
last_iter = log_data['train']['iteration'][-1]
IndexError: list index out of range

Thank you

Running main.py error

Hi, @fabiocarrara . Could you let me know why this error happens?

I0207 00:07:19.778118 22596 caffe.cpp:204] Using GPUs 0
F0207 00:07:19.778136 22596 common.cpp:66] Cannot use GPU in CPU-only Caffe: check mode.
*** Check failure stack trace: ***
@ 0x7fd5c58730cd google::LogMessage::Fail()
@ 0x7fd5c5874f33 google::LogMessage::SendToLog()
@ 0x7fd5c5872c28 google::LogMessage::Flush()
@ 0x7fd5c5875999 google::LogMessageFatal::~LogMessageFatal()
@ 0x7fd5c5da0bd0 caffe::Caffe::SetDevice()
@ 0x55ae5ca26226 (unknown)
@ 0x55ae5ca21d9a (unknown)
@ 0x7fd5c4673b97 __libc_start_main
@ 0x55ae5ca2279a (unknown)
DEBUG 2020-02-07 00:07:19: Summarizing mAlexNet-tr_PKLot_train-vl_PKLot_val_CNRPark-EXT_val-ts_PKLot_test_CNRPark-EXT_test ...

Not Issue: Request for tutorial to setup, load and use existing model from zero on RasberryPi

@fabiocarrara - Your project is impressive. I would like to explore more. Need to know the steps to setup, load and use your existing model of mAlexNet on RasberryPi.

Can you please write a detailed article / blog / README to explain, how to setup, load and use you models on RasberryPi + camera, so that we can see the things in action by pointing camera to some parking lot.

Another query - Do make the model work, do we need to mark the parking lots manually or the CNN automatically identifies the parking space (patch) by itself in whole picture of parking lot ?

backend Qt4Agg version unknown

DEBUG 2019-07-30 03:47:09: CACHEDIR=/home/pi/.cache/matplotlib
DEBUG 2019-07-30 03:47:09: Using fontManager instance from /home/pi/.cache/matplotlib/fontList.json
DEBUG 2019-07-30 03:47:11: backend Qt4Agg version unknown

an example for config.py

Hi, @fabiocarrara

As from README.md, config.py is required to placed inside each folder in splits/. Are the contents of config.py the same as this one?

Could you give a complete example for config.py?

THX!

Cannot use GPU in CPU-only Caffe: check mode.

HI,when i run 'python main.py'
it throw a question ' Cannot use GPU in CPU-only Caffe: check mode.'

root@linaro-alip:/usr/local/deeppark# python deep-parking/main.py
INFO 2019-08-15 07:15:10: Setting up mAlexNet trained on PKLot_train, validated on PKLot_val, CNRPark-EXT_val, tested on PKLot_test_CNRPark-EXT_test ...
INFO 2019-08-15 07:15:14: Training on PKLot_train while validating on PKLot_val, CNRPark-EXT_val ...
I0815 07:15:14.889346 16789 upgrade_proto.cpp:1084] Attempting to upgrade input file specified using deprecated 'solver_type' field (enum)': solver.prototxt
I0815 07:15:14.890483 16789 upgrade_proto.cpp:1091] Successfully upgraded file specified using deprecated 'solver_type' field (enum) to 'type' field (string).
W0815 07:15:14.890511 16789 upgrade_proto.cpp:1093] Note that future Caffe releases will only support 'type' field (string) for a solver's type.
I0815 07:15:14.891098 16789 caffe.cpp:204] Using GPUs 0
F0815 07:15:14.891127 16789 common.cpp:66] Cannot use GPU in CPU-only Caffe: check mode.
*** Check failure stack trace: ***
@ 0xb6cc9e2e google::LogMessage::Fail()
@ 0xb6ccb42a google::LogMessage::SendToLog()
@ 0xb6cc9adc google::LogMessage::Flush()
@ 0xb6ccba4c google::LogMessageFatal::~LogMessageFatal()
@ 0xb6e2a82c caffe::Caffe::SetDevice()
@ 0x7f5cbc62 train()
@ 0x7f5c90ca main
@ 0xb5af54aa __libc_start_main

Error when running main.py

Hi Fabiocarrara, thank you for your efforts in this incredible project. As I am following with the instructions, I have encountered some errors when running the main.py.

According to the other two posts, I have changed the caffe path to the correct one and remove the GPU 0 flags already. When I run main.py, I got the following errors:

py_lab@Pie:~/deep-parking$ python main.py
INFO 2018-07-09 17:16:03: Setting up mAlexNet trained on PKLot_train, validated on PKLot_val, CNRPark-EXT_val, tested on PKLot_test_CNRPark-EXT_test ...
INFO 2018-07-09 17:16:04: Training on PKLot_train while validating on PKLot_val, CNRPark-EXT_val ...
E0709 17:16:04.984817 4622 io.cpp:80] Could not open or find file /home/py_lab/deep-parking/PKLot/PKLotUFPR04/Sunny/2012-12-08/Empty/2012-12-08_14_25_10#010.jpg
F0709 17:16:04.985540 4622 image_data_layer.cpp:77] Check failed: cv_img.data Could not load UFPR04/Sunny/2012-12-08/Empty/2012-12-08_14_25_10#010.jpg
*** Check failure stack trace: ***
@ 0x7eff5db9f5cd google::LogMessage::Fail()
@ 0x7eff5dba1433 google::LogMessage::SendToLog()
@ 0x7eff5db9f15b google::LogMessage::Flush()
@ 0x7eff5dba1e1e google::LogMessageFatal::~LogMessageFatal()
@ 0x7eff5e07b358 caffe::ImageDataLayer<>::DataLayerSetUp()
@ 0x7eff5dfe598e caffe::BasePrefetchingDataLayer<>::LayerSetUp()
@ 0x7eff5df47d07 caffe::Net<>::Init()
@ 0x7eff5df4a44e caffe::Net<>::Net()
@ 0x7eff5e0d44fa caffe::Solver<>::InitTrainNet()
@ 0x7eff5e0d59c5 caffe::Solver<>::Init()
@ 0x7eff5e0d5cdf caffe::Solver<>::Solver()
@ 0x7eff5e0cd801 caffe::Creator_SGDSolver<>()
@ 0x40a288 train()
@ 0x407208 main
@ 0x7eff5c335830 __libc_start_main
@ 0x407ad9 _start
@ (nil) (unknown)

It says that it could not find the file at /home/py_lab/deep-parking/PKLot/PKLotUFPR04/Sunny/2012-12-08/Empty/2012-12-08_14_25_10#010.jpg
The problem is that a '/' is missing before UFPR04. UFPR04 is actually a folder within PKLot so it should instead be home/py_lab/deep-parking/PKLot/PKLot/UFPR04/Sunny/2012-12-08/Empty/2012-12-08_14_25_10#010.jpg

Could you please advice how to fix this issue?

error when i run main.py

Hi sir
i need your help
when i compile main.py or pklot.py get some errors " IndexError: list index out of range" and i don't where i must to change

env :

  • ubuntu 16.04
  • caffe only cpu, i don't use gpu

INFO 2018-03-22 10:35:55: Setting up mAlexNet trained on CNRPark-EXT_camera1, validated on PKLot_val, CNRPark-EXT_camera2, CNRPark-EXT_camera3, CNRPark-EXT_camera4, CNRPark-EXT_camera5, CNRPark-EXT_camera6, CNRPark-EXT_camera7, CNRPark-EXT_camera8, CNRPark-EXT_camera9, tested on PKLot_test_CNRPark-EXT_camera2_CNRPark-EXT_camera3_CNRPark-EXT_camera4_CNRPark-EXT_camera5_CNRPark-EXT_camera6_CNRPark-EXT_camera7_CNRPark-EXT_camera8_CNRPark-EXT_camera9 ...
INFO 2018-03-22 10:35:56: Training on CNRPark-EXT_camera1 while validating on PKLot_val, CNRPark-EXT_camera2, CNRPark-EXT_camera3, CNRPark-EXT_camera4, CNRPark-EXT_camera5, CNRPark-EXT_camera6, CNRPark-EXT_camera7, CNRPark-EXT_camera8, CNRPark-EXT_camera9 ...
DEBUG 2018-03-22 10:35:56: Summarizing mAlexNet-tr_PKLot_train-vl_PKLot_val_CNRPark-EXT_val-ts_PKLot_test_CNRPark-EXT_test ...
Traceback (most recent call last):
File "main.py", line 104, in
pyffe.summarize(exps).to_csv('results.csv')
File "/home/pret/Bureau/deep-parking/pyffe/experiment.py", line 89, in summarize
r = e.summarize()
File "/home/pret/Bureau/deep-parking/pyffe/experiment.py", line 46, in decorator
return function(*args, **kwargs)
File "/home/pret/Bureau/deep-parking/pyffe/experiment.py", line 558, in summarize
last_iter = log_data['train']['iteration'][-1]
IndexError: list index out of range

Thanks sir
i wish you the best
good luck

about running

Hi,there is a new property
i run this demo on python2.7 and caffe(make by source code in CPU-ONLY mode) , when i run "python main.py" , it pushed a problem

root@linaro-alip:/usr/local/deeppark# python deep-parking/main.py
INFO 2019-08-19 07:54:48: Setting up mAlexNet trained on CNRPark-EXT_sunny, validated on CNRPark-EXT_overcast, CNRPark-EXT_rainy, tested on CNRPark-EXT_overcast_CNRPark-EXT_rainy ...
INFO 2019-08-19 07:54:52: Training on CNRPark-EXT_sunny while validating on CNRPark-EXT_overcast, CNRPark-EXT_rainy ...
I0819 07:54:53.452330 15857 net.cpp:200] pool3 needs backward computation.
I0819 07:54:53.452353 15857 net.cpp:200] relu3 needs backward computation.
I0819 07:54:53.452368 15857 net.cpp:200] conv3 needs backward computation.
I0819 07:54:53.452384 15857 net.cpp:200] pool2 needs backward computation.
I0819 07:54:53.452399 15857 net.cpp:200] relu2 needs backward computation.
I0819 07:54:53.452421 15857 net.cpp:200] conv2 needs backward computation.
I0819 07:54:53.452436 15857 net.cpp:200] pool1 needs backward computation.
I0819 07:54:53.452451 15857 net.cpp:200] relu1 needs backward computation.
I0819 07:54:53.452464 15857 net.cpp:200] conv1 needs backward computation.
I0819 07:54:53.452486 15857 net.cpp:202] label_data_1_split does not need backward computation.
I0819 07:54:53.452502 15857 net.cpp:202] data does not need backward computation.
I0819 07:54:53.452514 15857 net.cpp:244] This network produces output accuracy
I0819 07:54:53.452529 15857 net.cpp:244] This network produces output loss
I0819 07:54:53.452570 15857 net.cpp:257] Network initialization done.
I0819 07:54:53.452848 15857 solver.cpp:57] Solver scaffolding done.
I0819 07:54:53.452966 15857 caffe.cpp:239] Starting Optimization
I0819 07:54:53.452992 15857 solver.cpp:289] Solving mAlexNet
I0819 07:54:53.453006 15857 solver.cpp:290] Learning Rate Policy: step
I0819 07:54:53.453198 15857 solver.cpp:347] Iteration 0, Testing net (#0)
I0819 07:54:53.453311 15857 blocking_queue.cpp:49] Waiting for data
DEBUG 2019-08-19 07:55:06: Summarizing mAlexNet-tr_CNRPark-EXT_sunny-vl_CNRPark-EXT_overcast_CNRPark-EXT_rainy-ts_CNRPark-EXT_overcast_CNRPark-EXT_rainy ...
Traceback (most recent call last):
File "deep-parking/main.py", line 62, in
pyffe.summarize(exps).to_csv('results.csv')
File "/usr/local/deeppark/deep-parking/pyffe/experiment.py", line 84, in summarize
r = e.summarize()
File "/usr/local/deeppark/deep-parking/pyffe/experiment.py", line 42, in decorator
return function(*args, **kwargs)
File "/usr/local/deeppark/deep-parking/pyffe/experiment.py", line 548, in summarize
last_iter = log_data['train']['iteration'][-1]
IndexError: list index out of range

anyway, i want to kown if this demo run success, how to show result? Will create a .csv file or pop a screen?

IndexError: list index out of range

@fabiocarrara

Hi, I try to run the "main.py" under GPU. And I already change the directory to Caffe. But here is a question when I try to run "python main.py":

INFO 2020-05-10 23:47:01: Setting up mAlexNet trained on PKLot_train, validated on PKLot_val, CNRPark-EXT_val, tested on PKLot_test_CNRPark-EXT_test ...
INFO 2020-05-10 23:47:02: Training on PKLot_train while validating on PKLot_val, CNRPark-EXT_val ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
INFO 2020-05-10 23:47:02: Setting up AlexNet trained on PKLot_train, validated on PKLot_val, CNRPark-EXT_val, tested on PKLot_test_CNRPark-EXT_test ...
INFO 2020-05-10 23:47:03: Training on PKLot_train while validating on PKLot_val, CNRPark-EXT_val ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
INFO 2020-05-10 23:47:03: Setting up mAlexNet trained on CNRParkAB_all, validated on CNRPark-EXT_val, PKLot_val, tested on CNRPark-EXT_test_PKLot_test ...
INFO 2020-05-10 23:47:04: Training on CNRParkAB_all while validating on CNRPark-EXT_val, PKLot_val ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
INFO 2020-05-10 23:47:04: Setting up AlexNet trained on CNRParkAB_all, validated on CNRPark-EXT_val, PKLot_val, tested on CNRPark-EXT_test_PKLot_test ...
INFO 2020-05-10 23:47:05: Training on CNRParkAB_all while validating on CNRPark-EXT_val, PKLot_val ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
INFO 2020-05-10 23:47:05: Setting up mAlexNet trained on Combined_CNRParkAB_Ext_train, validated on CNRPark-EXT_val, PKLot_val, tested on CNRPark-EXT_test_PKLot_test ...
INFO 2020-05-10 23:47:07: Training on Combined_CNRParkAB_Ext_train while validating on CNRPark-EXT_val, PKLot_val ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
INFO 2020-05-10 23:47:07: Setting up AlexNet trained on Combined_CNRParkAB_Ext_train, validated on CNRPark-EXT_val, PKLot_val, tested on CNRPark-EXT_test_PKLot_test ...
INFO 2020-05-10 23:47:08: Training on Combined_CNRParkAB_Ext_train while validating on CNRPark-EXT_val, PKLot_val ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
INFO 2020-05-10 23:47:08: Setting up mAlexNet trained on Combined_CNRParkAB_Ext_train_C1C8, validated on CNRPark-EXT_val, PKLot_val, tested on CNRPark-EXT_test_PKLot_test ...
INFO 2020-05-10 23:47:09: Training on Combined_CNRParkAB_Ext_train_C1C8 while validating on CNRPark-EXT_val, PKLot_val ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
INFO 2020-05-10 23:47:09: Setting up AlexNet trained on Combined_CNRParkAB_Ext_train_C1C8, validated on CNRPark-EXT_val, PKLot_val, tested on CNRPark-EXT_test_PKLot_test ...
INFO 2020-05-10 23:47:10: Training on Combined_CNRParkAB_Ext_train_C1C8 while validating on CNRPark-EXT_val, PKLot_val ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
INFO 2020-05-10 23:47:10: Setting up mAlexNet trained on CNRPark-EXT_sunny, validated on CNRPark-EXT_overcast, CNRPark-EXT_rainy, PKLot_val, tested on CNRPark-EXT_overcast_CNRPark-EXT_rainy_PKLot_test ...
INFO 2020-05-10 23:47:11: Training on CNRPark-EXT_sunny while validating on CNRPark-EXT_overcast, CNRPark-EXT_rainy, PKLot_val ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
INFO 2020-05-10 23:47:11: Setting up mAlexNet trained on CNRPark-EXT_overcast, validated on CNRPark-EXT_sunny, CNRPark-EXT_rainy, PKLot_val, tested on CNRPark-EXT_sunny_CNRPark-EXT_rainy_PKLot_test ...
INFO 2020-05-10 23:47:12: Training on CNRPark-EXT_overcast while validating on CNRPark-EXT_sunny, CNRPark-EXT_rainy, PKLot_val ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
INFO 2020-05-10 23:47:12: Setting up mAlexNet trained on CNRPark-EXT_rainy, validated on CNRPark-EXT_sunny, CNRPark-EXT_overcast, PKLot_val, tested on CNRPark-EXT_sunny_CNRPark-EXT_overcast_PKLot_test ...
INFO 2020-05-10 23:47:13: Training on CNRPark-EXT_rainy while validating on CNRPark-EXT_sunny, CNRPark-EXT_overcast, PKLot_val ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
INFO 2020-05-10 23:47:13: Setting up mAlexNet trained on CNRPark-EXT_camera8, validated on CNRPark-EXT_camera1, CNRPark-EXT_camera2, CNRPark-EXT_camera3, CNRPark-EXT_camera4, CNRPark-EXT_camera5, CNRPark-EXT_camera6, CNRPark-EXT_camera7, PKLot_val, CNRPark-EXT_camera9, tested on CNRPark-EXT_camera1_CNRPark-EXT_camera2_CNRPark-EXT_camera3_CNRPark-EXT_camera4_CNRPark-EXT_camera5_CNRPark-EXT_camera6_CNRPark-EXT_camera7_PKLot_test_CNRPark-EXT_camera9 ...
INFO 2020-05-10 23:47:14: Training on CNRPark-EXT_camera8 while validating on CNRPark-EXT_camera1, CNRPark-EXT_camera2, CNRPark-EXT_camera3, CNRPark-EXT_camera4, CNRPark-EXT_camera5, CNRPark-EXT_camera6, CNRPark-EXT_camera7, PKLot_val, CNRPark-EXT_camera9 ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
INFO 2020-05-10 23:47:15: Setting up mAlexNet trained on CNRPark-EXT_camera1, validated on PKLot_val, CNRPark-EXT_camera2, CNRPark-EXT_camera3, CNRPark-EXT_camera4, CNRPark-EXT_camera5, CNRPark-EXT_camera6, CNRPark-EXT_camera7, CNRPark-EXT_camera8, CNRPark-EXT_camera9, tested on PKLot_test_CNRPark-EXT_camera2_CNRPark-EXT_camera3_CNRPark-EXT_camera4_CNRPark-EXT_camera5_CNRPark-EXT_camera6_CNRPark-EXT_camera7_CNRPark-EXT_camera8_CNRPark-EXT_camera9 ...
INFO 2020-05-10 23:47:16: Training on CNRPark-EXT_camera1 while validating on PKLot_val, CNRPark-EXT_camera2, CNRPark-EXT_camera3, CNRPark-EXT_camera4, CNRPark-EXT_camera5, CNRPark-EXT_camera6, CNRPark-EXT_camera7, CNRPark-EXT_camera8, CNRPark-EXT_camera9 ...
caffe: command line brew
usage: caffe

commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time

Flags from tools/caffe.cpp:
-gpu (Optional; run in GPU mode on given device IDs separated by ','.Use
'-gpu all' to run on all available GPUs. The effective training batch
size is multiplied by the number of devices.) type: string default: ""
-iterations (The number of iterations to run.) type: int32 default: 50
-level (Optional; network level.) type: int32 default: 0
-model (The model definition protocol buffer text file.) type: string
default: ""
-phase (Optional; network phase (TRAIN or TEST). Only used for 'time'.)
type: string default: ""
-sighup_effect (Optional; action to take when a SIGHUP signal is received:
snapshot, stop or none.) type: string default: "snapshot"
-sigint_effect (Optional; action to take when a SIGINT signal is received:
snapshot, stop or none.) type: string default: "stop"
-snapshot (Optional; the snapshot solver state to resume training.)
type: string default: ""
-solver (The solver definition protocol buffer text file.) type: string
default: ""
-stage (Optional; network stages (not to be confused with phase), separated
by ','.) type: string default: ""
-weights (Optional; the pretrained weights to initialize finetuning,
separated by ','. Cannot be set simultaneously with snapshot.)
type: string default: ""
DEBUG 2020-05-10 23:47:16: Summarizing mAlexNet-tr_PKLot_train-vl_PKLot_val_CNRPark-EXT_val-ts_PKLot_test_CNRPark-EXT_test ...
Traceback (most recent call last):
File "main.py", line 100, in
pyffe.summarize(exps).to_csv('results.csv')
File "/home/hao/deep-parking/pyffe/experiment.py", line 84, in summarize
r = e.summarize()
File "/home/hao/deep-parking/pyffe/experiment.py", line 42, in decorator
return function(*args, **kwargs)
File "/home/hao/deep-parking/pyffe/experiment.py", line 548, in summarize
last_iter = log_data['train']['iteration'][-1]
IndexError: list index out of range
Could you help me?

Problem protobuf

Great job Fabio, I'm trying to execute the experiments but I've had difficulties.

I currently have the following problem:
AttributeError: 'google.protobuf.pyext._message.RepeatedScalarConta' object has no attribute '_values'

What does not allow me to go to training, I would like to know which version of protobuf is used for the experiments, and also the version of python, or if you know how to correct the error.

Thank you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.