An Online Multi-Object Tracking (MOT) Method with the GMPHD Filter and Occlusion Group Management (OGM).
To implement a highly practical MOT method, online approach and real-time speed are required.
- Online Process: The Gaussian mixture probability density (GMPHD) filter was exploited as a base model.
- Real-time Speed: We only used bounding box information (x, y, width, height).
Tracking-by-detection paradigm.
- In this project, the public detection results on the MOT15 (ACF) and MOT17 (DPM, FRCNN, SDP) datasets are used as inputs of the GMPHD-OGM tracker.
Our main contributions are as follows:
- An effective extension of the conventional GMMPHD filter from the original domain radar/sonar systems to video systems, consisting of:
- A hierarchical data association strategy: detection-to-track and track-to-track associations.
- An occlusion group management scheme: merge and occlusion energy minimization.
- The GMPHD-OGM tracker achieved the competitive tracking accurary and real-time speed (>30 FPS).
Windows 10 (64 bit)
Visual Studio 2015 (64 bit)
Visual C/C++
OpenCV 3.4.1 and boost 1.61.0 (Windows Binaries) were used to implement the GMPHD-OGM tracker.
Download Win Pack and boost_1_61_0-msvc-14.0-64.exe to run our tracker in Visual Studio 2015 (64 bit).
PROJECT_HOME
├── GMPHD-OGM.sln <-- **solution file for the project**
└── GMPHD-OGM
├── demo_GMPHD-OGM.cpp <-- **the main function**
├── GMPHD_OGM.h, GMPHD_OGM.cpp <-- *a class implementation of the GMPHD-OGM tracker*
├── HungarianAlgorithm.h, HungarianAlgorithm.cpp <-- a class implementation of the Hungarian Algorithm
├── stdafx.h <-- precompiled header including essential header files
├── GMPHD-OGM.vcxproj, GMPHD-OGM.vcxproj.filters <-- VS project file, VS project filter file
├── params <-- text files containing scene parameters
| └── MOT15train_ACF.txt, MOT17train_DPM.txt, MOT17train_FRCNN.txt, MOT17train_SDP.txt
├── seqs <-- text files containing dataset paths and sequences' names
| └── MOT15train_ACF.txt, MOT17train_DPM.txt, MOT17train_FRCNN.txt, MOT17train_SDP.txt
└── res <-- tracking results are saved
├── MOT15
| └── test, train
└── MOT17
└── test, train
HungarianAlgorithm.h, HungarianAlgorithm.cpp
is a class implementation of the Hungarian Algorithm refering to #mcximing/hungarian-algorithm-cpp
- Open the solution file (GMPHD-OGM.sln)
- Link and include OpenCV3.4.1 and boost1.61.0 libraries to the project.
- Press Ctrl+F5 in Release mode (64 bit)
Download the MOTChallenge datasets.
Users should specify the dataset path and sequences' names in the sequence list file.
e.g., GMPHD-OGM\seqs\MOT17train_DPM.txt
F:\MOT\MOTChallenge2017\train\
MOT17-02-FRCNN
MOT17-04-FRCNN
MOT17-05-FRCNN
MOT17-09-FRCNN
MOT17-11-FRCNN
MOT17-13-FRCNN
More details of the parameters will be updated soon.
e.g., GMPHD-OGM\params\MOT17train_DPM.txt
4. Please check the input files' locations in the main fuction (demo_GMPHD-OGM.cpp)
// demo_GMPHD-OGM.cpp
int main()
{
string seqList = "seqs\MOT17train_DPM.txt";
string seqList = "params\MOT17train_DPM.txt";
...
Visualization Options in GMPHD_OGM.h
#define VISUALIZATION_MAIN_ON 0
#define SKIP_FRAME_BY_FRAME 0
VISUALIZATION_MAIN_ON: 0(off), 1(on)
- You can see the visualization windows of detection and tracking.
- At initial frame, press any key to start tracking process.
SKIP_FRAME_BY_FRAME: 0(off), 1(on)
- You can see the results, frame-by-frame. (by pressing any key).
#define VISUALIZATION_MAIN_ON 1
[MOT17-05-SDP] Click this gif image for playing a full demo video
[MOT17-10-SDP] Click this gif image for playing a full demo video
#define VISUALIZATION_MAIN_ON 0
The output file format is compatible with MOTChallenge.
The tracking results files are saved as
[project home]\GMPHD-OGM\res[benchmark name][train or test][sequence name].txt
e.g., [project home]\GMPHD-OGM\res\MOT15\train\Venice-2.txt
We are only providing the parameters of the GMPHD-OGM tracker on the training sequences.
[1] Ba-Ngu Vo and Wing-Kin Ma, "The Gaussian Mixture Probability Hypothesis Density Filter," IEEE Trans. Signal Process., vol. 54, no. 11, pp. 4091–4104, Oct. 2006. [paper]
[2] Young-min Song and Moong Jeon, "Online Multiple Object Tracking with the Hierarchically Adopted GM-PHD Filter Using Motion and Appearance," in Proc. IEEE Int. Conf. Consum. Electron.-Asia (ICCE-Asia), pp. 1--4, Oct. 2016. [paper]
[3] Young-min Song, Young-chul Yoon, Kwangjin Yoon, and Moongu Jeon, "Online and Real-Time Tracking with the GM-PHD Filter using Group Management and Relative Motion Analysis," in Proc. IEEE Int. Workshop Traffic Street Surveill. Safety Secur. (AVSS), Nov. 2018. [paper]
[4] Young-mins Song, Kwangjin Yoon, Young-chul Yoon, Kin Choon Yow, and Moongu Jeon, "Online Multi-Object Tracking with GMPHD Filter and Occlusion Group Management," IEEE Access, vol. 7, pp. 165103-165121, Nov. 2019.
\bibitem{gmphdogm} Y. Song, K. Yoon, Y-C. Yoon, K. C. Yow, and M. Jeon,
``Online Multi-Object Tracking with GMPHD Filter and Occlusion Group Management,''
IEEE Access, vol. 7, pp. 165103-165121, Nov. 2019.
5. License
BSD 2-Clause License