Skip to content

Latest commit

 

History

History
55 lines (33 loc) · 2.19 KB

File metadata and controls

55 lines (33 loc) · 2.19 KB

tracker_CLASS

This is an implementation of an Extended Kalman Filter based tracker.

There is both an implementation in C++ and in Matlab.

The idea was to develop a fast method to track objects from a pole-mounted camera. A visual tracker would have been too slow, therefore an EFK has been adopted. The idea is that after a Convolutional Neural Network (CNN) detects the bounding-boxes of the objects, the central bottom point of the bounding box is taken as a reference of that object and on that the tracker is instantiated.

However, the tracker implementation is general, but takes as input a point for an object for each frame and track those objects with an aging mechanism.

The idea is to use just the position of the object (x,y) to predict not only the new position (x’,y’), but also the velocity v the yaw equation, and the yaw-rate equation. Hence, the state of EKF is:

equation

While the state transition adopted:

equation

Dependencies

sudo apt-get install libeigen3-dev libflann-dev python3-matplotlib python-dev python-dev libflann-dev

Run the c++ code

git clone https://github.com/mive93/tracker_CLASS
cd tracker_CLASS/c++
mkdir build
cd build

build in Release or Debug with one the following commands

cmake -DCMAKE_BUILD_TYPE=Release .. 
cmake -DCMAKE_BUILD_TYPE=Debug .. 

and finally

make
./tracker

Acknowledgements

This work has been supported by the EU H2020 project CLASS, contract #780622.