This is a tensorflow implementation of GOTURN.
Thanks to author David Held for his help of this implementation.
The original paper is:
Learning to Track at 100 FPS with Deep Regression Networks,
David Held,
Sebastian Thrun,
Silvio Savarese,
The github repo for caffe implementation is given by the authors: davheld/GOTURN
Brief illustration of how this network works:
You can refer to the paper or github repo above for more details.
- python3
- tensorflow 1.0+, both cpu and gpu work fine
- Create a folder, fill in all training images
- Create a <train_txt_file>.txt file
- It should contains target image, searching image and ground-truth bounding box
- Bounding box is in the form of
<x1, y1, x2, y2>
, usually from 0 to 1, but exceeding this range is also fine. - Example of one line:
train/target/000024.jpg,train/searching/000024.jpg,0.29269230769230764,0.22233115468409587,0.7991794871794871,0.7608061002178649
- Change related places in
train.py
- Train it and wait!
python train.py
- The log file is
train.log
by default
- Download pretrained model from: GOTURN_MODEL
- Uncompress the
checkpoints
folder, and put it in the root directory of this repo - Test on examples just by running
load_and_test.py
python load_and_test.py
- The log file is
test.log
by default
Be careful, the output of this network actually always from 0 to 10 thus I multiplied the ground-truth bounding boxes( always ranging from 0 to 1) by 10.