Add hungarian file
[trackerpp.git] / src / MultiTracker.cpp
1 #include "MultiTracker.h"
2 #include "Metrics.h"
3 #include <algorithm>
4
5 using namespace suanzi;
6 using namespace cv;
7
8 MultiTracker::MultiTracker(MetricsPtr m) : metrics(m)
9 {
10 }
11
12
13 MultiTracker::~MultiTracker()
14 {
15     trackers.clear();
16 }
17
18 TrackerPtr MultiTracker::createTracker(int id)
19 {
20     TrackerPtr t (new Tracker(id));
21     addTracker(t);
22     return t;
23 }
24
25 void MultiTracker::addTracker(TrackerPtr t)
26 {
27     trackers.insert(t);
28 }
29
30 void MultiTracker::removeTracker(TrackerPtr t)
31 {
32     trackers.erase(t);
33 }
34
35 void MultiTracker::initNewTrackers(cv::Mat& iamge)
36 {
37 }
38
39
40 void MultiTracker::correctTrackers(MetricsPtr m, Mat& image)
41 {
42 }
43
44
45 void MultiTracker::update(unsigned int total, const Detection* d, const Mat& image)
46 {
47
48     // correct_trackers
49
50
51     //
52
53
54
55
56
57
58
59
60     // Delete long lost trackers;
61 //    for (auto& t : trackers){
62 //        if (t->status == TrackerStatus::Delete)
63 //            trackers.erase(t);
64 //    }
65 //
66     // Update trackers using kalman filter
67 //    for(auto& t: trackers){
68 //        //t.bb_ltrb = 
69 //    }
70 //
71     // associate trackers with detections
72 //    correctTrackers(this->metric, image);
73
74     // create new trackers for new detections
75 }