rnntracking

所属分类:人工智能/神经网络/深度学习
开发工具:Lua
文件大小:1489KB
下载次数:0
上传日期:2017-03-29 23:10:28
上 传 者sh-1993
说明:  玩rnntracking
(playing with rnntracking)

文件列表:
.buildpath (105, 2017-03-28)
.hgignore (144, 2017-03-28)
.project (364, 2017-03-28)
.settings (0, 2017-03-28)
.settings\org.eclipse.ldt.prefs (58, 2017-03-28)
.settings\org.eclipse.ltk.core.refactoring.prefs (104, 2017-03-28)
bin (0, 2017-03-28)
bin\rnnTracker_r300_l1_n1_m1_d4.t7 (1567381, 2017-03-28)
config (0, 2017-03-28)
config\configBF.txt (1556, 2017-03-28)
config\configDA.txt (1778, 2017-03-28)
src (0, 2017-03-28)
src\auxBF.lua (23643, 2017-03-28)
src\auxBFPAR.lua (33429, 2017-03-28)
src\auxDA.lua (10212, 2017-03-28)
src\external (0, 2017-03-28)
src\external\hungarian.lua (8665, 2017-03-28)
src\model (0, 2017-03-28)
src\model\RNNBF.lua (12384, 2017-03-28)
src\model\RNNDA.lua (5284, 2017-03-28)
src\model\ticks.lua (1882, 2017-03-28)
src\rnnTracker.lua (32802, 2017-03-28)
src\runall (177, 2017-03-28)
src\trainBF.lua (39886, 2017-03-28)
src\trainDA.lua (57417, 2017-03-28)
src\util (0, 2017-03-28)
src\util\ProFi.lua (14021, 2017-03-28)
src\util\csv.lua (2466, 2017-03-28)
src\util\data.lua (56182, 2017-03-28)
src\util\io.lua (9807, 2017-03-28)
src\util\matlab.lua (2453, 2017-03-28)
src\util\misc.lua (64060, 2017-03-28)
src\util\model.lua (6344, 2017-03-28)
src\util\old.lua (30163, 2017-03-28)
src\util\paths.lua (1631, 2017-03-28)
src\util\plot.lua (21342, 2017-03-28)
src\util\stdio.lua (3696, 2017-03-28)
src\visBoxes.lua (3759, 2017-03-28)
... ...

# Online Multi-Target Tracking with Recurrent Neural Networks This code accompanies the following paper: [(pdf)](http://www.milanton.de/files/***i2017/***i2017-anton-rnntracking.pdf) Online Multi-target Tracking Using Recurrent Neural Networks A. Milan, S. H. Rezatofighi, A. Dick, I. Reid, K. Schindler. In: AAAI 2017 bibtex: ``` @inproceedings{Milan:2017:AAAI_RNNTracking, title = {Online Multi-Target Tracking using Recurrent Neural Networks}, booktitle = {AAAI}, author = {Milan, A. and Rezatofighi, S. H. and Dick, A. and Reid, I. and Schindler, K.}, month = {February}, year = {2017} } ``` **Mohammad**: My understanding is that the overall network was designed to be a recurrent network inside a recurrent network: Each frame is passed to the RNN module (for prediction/update) in each "outer" iteration and each "inner" iteration (LSTM module for data association) outputs one target at a time. In this sense, `t` indicates the outer iteration number while `i` indicates the inner iteration number. However, in paper's implementation, `i=1` always since `N=1`. Multi-target tracking is performed by cloning the RNN+LSTM network as many times as the maximum number of possible targets and running all of them in parallel. Does this make sense to you? # Dependencies ## Required * Lua * Torch * luarocks: nn, nngraph, lfs ## Optional * cunn, cutorch (optional for GPU usage) * Matlab (visualization and metric computation only) # Installation ## Torch # Follow these instructions to install Torch: http://torch.ch/docs/getting-started.html # in a terminal, run the commands curl -s https://raw.githubusercontent.com/torch/ezinstall/master/install-deps | bash git clone https://github.com/torch/distro.git ~/torch --recursive cd ~/torch; ./install.sh ## Additional Dependencies ### Luarocks sudo apt-get install luarocks luarocks install nn luarocks install nngraph luarocks install luafilesystem luarocks install https://raw.github.com/jucor/torch-distributions/master/distributions-0-0.rockspec luarocks install cutorch luarocks install cunn ### MOTChallenge The current version uses the training set of the [MOTChallenge benchmark](https://motchallenge.net) to generate synthetic data for training. You should download the dataset from [here](https://motchallenge.net/data/2D_MOT_2015/) and set the local path in src/util/paths.lua # Usage ## Testing The code comes with a pre-trained model located in `bin/rnnTracker.t7`. It was trained on a subset of the [MOTChallenge 2015 training set](https://motchallenge.net/data/2D_MOT_2015/) Run th rnnTracker.lua to get a sense of the result on synthetic data or th rnnTracker.lua -model_name rnnTracker -seq_name TUD-Campus to produce results on the `TUD-Campus` sequence. The bounding boxes are saved in `./out/rnnTrack/TUD-Campus.txt`. Type th rnnTracker.lua -h to get a full list of options This example uses Hungarian data association. ## Visualization To see the visual results you can run th visBoxes.lua -file ../out/rnnTracker_r300_l1_n1_m1_d4/TUD-Campus.txt ## Training th trainBF.lua -config ../config/configBF.txt will start training a model on the `TUD-Campus` sequence. Type th trainBF.lua -h to see the full set of options. You may define the training parameters in a separate text file, similar to `config/configBF.txt` and pass it as the `-config` option to the training script. ## Data Training expects annotated image sequences. The annotation format is a CSV text file following the syntax of the [MOTChallenge benchmark](https://motchallenge.net). For testing, the image sequence and the corresponding set of detection in the same format is required. ### Internal representation Internally, all data (tracks and detections) is stored in N x F x D tensors, where * N = max. number of targets / detections * F = number of frames in a batch * D = dimensionality (e.g. 2 for (x,y) or 4 for (x,y,w,h) The labels (data association) is represented by an NxF tensor. Furthermore, training, validation and real-data sets are kept in a lua table. I.e. each entry in a table is then a MB*N x F x D tensor, where MB is the mini-batch size. There are four tables for each set. 1. Tracks 2. Detections 3. Labels 4. Sequence names (used for generating that one specific datum) # Documentation The code is documented following the luadoc convention. To generate html docs, install luadoc `luarocks install luadoc` and run `./docify.sh`. # Known issues ## Data Association The code for training data association is not included yet. We are working on releasing it soon. ## Training data Training data is generated synthetically by learning simple generative trajectory models from annotated data. Training with real data is not supported. # Acknowledgements and remarks We thank Andrej Karpathy for releasing his [code](https://github.com/karpathy/char-rnn) on character-level RNNs that served as basis for this project. **Pull requests welcome.** # License BSD License

近期下载者

相关文件


收藏者