Skip to content

[CVPR'17] Training a Correlation Filter end-to-end allows lightweight networks of 2 layers (600 kB) to high performance at fast speed..

License

Notifications You must be signed in to change notification settings

bertinetto/cfnet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

End-to-end representation learning for Correlation Filter based tracking

pipeline image


Project page: [http://www.robots.ox.ac.uk/~luca/cfnet.html]


WARNING: we used Matlab 2015, MatConvNet v1.0beta24, CUDA 8.0 and cudnn 5.1. Other configurations might work, but it is not guaranteed. In particular, we received several reports of problems with Matlab 2017.


Getting started

[ Tracking only ] If you don't care about training, you can simply use one of our pretrained networks with our basic tracker.

  1. Prerequisites: GPU, CUDA (we used 7.5), cuDNN (we used v5.1), Matlab, MatConvNet.
  2. Clone the repository.
  3. Download the pretrained networks from here and unzip the archive in cfnet/pretrained.
  4. Go to cfnet/src/tracking/ and remove the trailing .example from env_paths_tracking.m.example, startup.m.example, editing the files as appropriate.
  5. Be sure to have at least one video sequence in the appropriate format. The easiest thing to do is to download the validation set (from here) that we used for the tracking evaluation and then extract the validation folder in cfnet/data/.
  6. Start from one of the cfnet/src/tracking/run_*_evaluation.m entry points.

[ Training and tracking ] Start here if instead you prefer to DIY and train your own networks.

  1. Prerequisites: GPU, CUDA (we used 7.5), cuDNN (we used v5.1), Matlab, MatConvNet.
  2. Clone the repository.
  3. Follow these step-by-step instructions, which will help you generating a curated dataset compatible with the rest of the code.
  4. If you did not generate your own metadata, download imdb_video_2016-10.mat (6.7GB) with all the metadata and also the dataset stats. Put them in cfnet/data/.
  5. Go to cfnet/src/training and remove the trailing .example from env_paths_training.m.example and startup.m.example, editing the files as appropriate.
  6. The various cfnet/train/run_experiment_*.m are some examples to start training. Default hyper-params are at the start of experiment.m and are overwritten by custom ones specified in run_experiment_*.m.
  7. By default, training plots are saved in cfnet/src/training/data/. When you are happy, grab a network snapshot (net-epoch-X.mat) and save it somewhere (e.g. cfnet/pretrained/).
  8. Go to point 4. of Tracking only, follow the instructions and enjoy the labour of your own GPUs!

About

[CVPR'17] Training a Correlation Filter end-to-end allows lightweight networks of 2 layers (600 kB) to high performance at fast speed..

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published