Presentation is loading. Please wait.

Presentation is loading. Please wait.

Globally Optimal Generalized Maximum Multi Clique Problem (GMMCP) using Python code for Pedestrian Object Tracking By Beni Mulyana.

Similar presentations


Presentation on theme: "Globally Optimal Generalized Maximum Multi Clique Problem (GMMCP) using Python code for Pedestrian Object Tracking By Beni Mulyana."— Presentation transcript:

1 Globally Optimal Generalized Maximum Multi Clique Problem (GMMCP) using Python code for Pedestrian Object Tracking By Beni Mulyana

2 Tracking by Detection Human Detection Data Association Tracks
Input can be avi or mp4 video, converted to jpg frames using videosequence library Human detection use yolo darkflow. It gives 4 bboxes coordinates. So we have 4 parameters as input for data association Data association use GMMCP algorithm

3 Data Association Temporally Local! Temporally Global!
Bipartite Matching Frame 2 Frame 3 GMMCP Matching Frame 2 Frame 3 Frame 1 Frame 1 The limited-locality-methods in bipartite matching do not carry the information out of their current locality (i.e. no edges to or from the frames other than 3 and 4). So, it makes difficulties to handle occlusion. Meanwhile, GMMCP matching gather all information in temporal global frames makes easier to handle occlusion by incorporating other detections in other frames. Frame 5 Frame 4 Frame 5 Frame 4 Temporally Local! Temporally Global!

4 GMMCP Pipeline Input Video Detected Humans Human Detection
Low-level Tracklets Mid-level Tracklets GMMCP Stitch Tracklets Final Trajectories Segment 01 Segment 05 Segment 06 Segment 10

5 Low-Level Tracklet Generation
Segment 1 Segment 2 Frames 1-10 Frames 11-20 From 4 boxes input, we got two attributes of person detection in a frame which are : coordinate tracklets and color histogram The low-level tracklets are found using a simple overlap criteria where bounding boxes that overlap more than 60% in consecutive frames are connected in a segment. The appearance of tracklet is defined by computing median of all color histogram detections in a tracklet , where m is index of segment and n is index of node tracklet.

6 GMMCP Cost Computation
Segment i Segment m The weight cost is defined using linear combination of the histogram cost connections and motion cost connections :

7 GMMCP Cost Computation
Segment m Segment i By computing the histogram intersection between the two nodes in different segment, we got cost of color histogram in between tracklet in segment 1 and tracklet in segment 2

8 GMMCP Cost Computation
By computing the deviation error We can get cost of motion With the spatial velocity vector for every node is defined as : and sigma = 20

9 Number of Weight Cost Segment 1 Segment 2 Segment 4 Segment 3 All cost connections will create a mesh networks. The amount of cost connections fulfill the combination of 2 tracklets from all created tracklets :

10 GMMCP with ADN Segment 4 Segment 3 Segment 1 Segment 2 Purpose to handling occlusion by using single super dummy node (aggregated dummy node) Edges of ADN are integer variable. Therefore, in optimization, we use Mixed binary-integer programming Dummy edges are fixed weight. In here use 0.4.

11 Segment Clustering Segment 4 Segment 3 Segment 1 Segment 2 Cluster Cluster 1 Cluster 2 Cluster N-1 Cluster N To reduce computation complexity in GMMCP calculation, it use clustering with 4 segments in each cluster Every edge of cluster is chained to other edge of cluster to create long video sequence.

12 To ensures the solution would form a clique
GMMCP optimization The purpose of GMMCP optimization is to create cliques simultaneously and globally by maximizing vector multiplication of all weight cost and edges from all segment and tracklet with subject to constraint : Rule 1 : To ensures the solution would form a clique

13 GMMCP optimization Rule 2 :
To enforce sum of outgoing edges of a tracklet and entering a segment <= 1. Thus one clique that will create does not include more than one tracklet from each cluster.

14 GMMCP optimization Rule 3 :
These 3 rules are mixed binary-integer programming. We use dlpk python library to solve it. Finally, we got multiple cliques simultaneously!. That clique called as mid-level tracklet Where K is maximum number tracklet in a cluster and h is number of segment in a cluster. It guarantees that every tracklet from each segment is selected

15 Final Track Generation
With the chaining method, we can run and integrate a long video sequence by cutting that video into many separate chains and we can run or merging some of these chain sequences as we want. Cluster 1 Cluster 2 Long track video Cluster N-1 Cluster N

16 THANK YOU!.


Download ppt "Globally Optimal Generalized Maximum Multi Clique Problem (GMMCP) using Python code for Pedestrian Object Tracking By Beni Mulyana."

Similar presentations


Ads by Google