Tracking Interacting Objects Optimally Using Integer Programming

63
Tracking Interacting Objects Optimally Using Integer Programming ECCV’14 Xinchao Wang 1 , Engin Türetken 1 , François Fleuret 2,1 , Pascal Fua 1 1 EPFL, Lausanne, Switzerland 2 Idiap, Martigny, Switzerland

Transcript of Tracking Interacting Objects Optimally Using Integer Programming

Page 1: Tracking Interacting Objects Optimally Using Integer Programming

Tracking Interacting Objects Optimally Using Integer

ProgrammingECCV’14

Xinchao Wang1, Engin Türetken1, François Fleuret2,1, Pascal Fua1

1EPFL, Lausanne, Switzerland2Idiap, Martigny, Switzerland

Page 2: Tracking Interacting Objects Optimally Using Integer Programming

Problem Tracking two classes of objects that interact

Problem Motivation Method Experiments Conclusion

Page 3: Tracking Interacting Objects Optimally Using Integer Programming

Problem Tracking two classes of objects that interact

One class of object (i.e., container) “contain” the other (i.e., containee)

Problem Motivation Method Experiments Conclusion

Page 4: Tracking Interacting Objects Optimally Using Integer Programming

Problem Tracking two classes of objects that interact

One class of object (i.e., container) “contain” the other (i.e., containee)

Example

Cars-People

Problem Motivation Method Experiments Conclusion

Page 5: Tracking Interacting Objects Optimally Using Integer Programming

Problem Tracking two classes of objects that interact

One class of object (i.e., container) “contain” the other (i.e., containee)

Example

Cars-People People-Bags

Problem Motivation Method Experiments Conclusion

Page 6: Tracking Interacting Objects Optimally Using Integer Programming

Problem Tracking two classes of objects that interact

One class of object (i.e., container) “contain” the other (i.e., containee)

Example

Cars-People People-Bags Players-Basketball

Problem Motivation Method Experiments Conclusion

Page 7: Tracking Interacting Objects Optimally Using Integer Programming

Conventional Tracking Method

Track Objects Sequentially

Problem Motivation Method Experiments Conclusion

Page 8: Tracking Interacting Objects Optimally Using Integer Programming

Conventional Tracking Method

Track Objects Sequentially Track container first, and containee second

Problem Motivation Method Experiments Conclusion

Page 9: Tracking Interacting Objects Optimally Using Integer Programming

Conventional Tracking Method

Track Objects Sequentially Track container first, and containee second

Not Optimal, for example:

Problem Motivation Method Experiments Conclusion

Page 10: Tracking Interacting Objects Optimally Using Integer Programming

Conventional Tracking Method

Track Objects Sequentially Track container first, and containee second

Not Optimal, for example:

Problem Motivation Method Experiments Conclusion

Detection

Page 11: Tracking Interacting Objects Optimally Using Integer Programming

Conventional Tracking Method

Track Objects Sequentially Track container first, and containee second

Not Optimal, for example:

Detection Sequential Tracking Using KSP [1]

Problem Motivation Method Experiments Conclusion

[1] Multiple Object Tracking using K-Shortest Paths Optimization, J. Berclaz, F. Fleuret, E. Türetken, P. Fua. PAMI 2011

Page 12: Tracking Interacting Objects Optimally Using Integer Programming

Our Tracking Method

Tracking Objects Simultaneously

Problem Motivation Method Experiments Conclusion

Page 13: Tracking Interacting Objects Optimally Using Integer Programming

Our Tracking Method

Tracking Objects Simultaneously Intuition: the evidence of one object may reveal

the presence or absence of another

Problem Motivation Method Experiments Conclusion

Page 14: Tracking Interacting Objects Optimally Using Integer Programming

Our Tracking Method

Tracking Objects Simultaneously Intuition: the evidence of one object may reveal

the presence or absence of another

Example:

Detection Sequential Tracking Using KSP

Problem Motivation Method Experiments Conclusion

Page 15: Tracking Interacting Objects Optimally Using Integer Programming

Our Tracking Method

Tracking Objects Simultaneously Intuition: the evidence of one object may reveal

the presence or absence of another

Example:

Detection Sequential Tracking Using KSP

Ours

Problem Motivation Method Experiments Conclusion

Page 16: Tracking Interacting Objects Optimally Using Integer Programming

Our Tracking Method

Even better…

Problem Motivation Method Experiments Conclusion

Page 17: Tracking Interacting Objects Optimally Using Integer Programming

Our Tracking Method

Even better… Track the Invisible!

Track the basketball when it is possessed by players

Problem Motivation Method Experiments Conclusion

Page 18: Tracking Interacting Objects Optimally Using Integer Programming

Our Tracking Method

Even better… Track the Invisible!

Track the basketball when it is possessed by players Prior knowledge to improve tracking

At most one basketball ball in the match

Problem Motivation Method Experiments Conclusion

Page 19: Tracking Interacting Objects Optimally Using Integer Programming

Our Tracking Method

Page 20: Tracking Interacting Objects Optimally Using Integer Programming

Detection: Probability Occupancy Map (POM)

Problem Motivation Method Experiments Conclusion

Page 21: Tracking Interacting Objects Optimally Using Integer Programming

Detection: Probability Occupancy Map (POM)

Problem Motivation Method Experiments Conclusion

Page 22: Tracking Interacting Objects Optimally Using Integer Programming

Detection: Probability Occupancy Map (POM)

…… …

Problem Motivation Method Experiments Conclusion

containee

container

Page 23: Tracking Interacting Objects Optimally Using Integer Programming

Detection: Probability Occupancy Map (POM)

…… …

Problem Motivation Method Experiments Conclusion

Page 24: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Objective

Problem Motivation Method Experiments Conclusion

Page 25: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Objective

Problem Motivation Method Experiments Conclusion

Page 26: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Objective

Problem Motivation Method Experiments Conclusion

… …

Page 27: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Objective

Problem Motivation Method Experiments Conclusion

… … … …

…… …

……

Page 28: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Objective

Problem Motivation Method Experiments Conclusion

… … … …

…… …

……

Page 29: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Objective

Problem Motivation Method Experiments Conclusion

… … … …

…… …

……

Page 30: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Objective

Problem Motivation Method Experiments Conclusion

… … … …

…… …

……

Page 31: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Objective

Problem Motivation Method Experiments Conclusion

… … … …

…… …

……

Page 32: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Flow Conservation on Container Objects Spatial Exclusion on the ground Consistency of Interacting Flows Tracking the Invisible Additional Bound Constraint

Problem Motivation Method Experiments Conclusion

Page 33: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Flow Conservation on Container Objects Container Objects don’t disappear

Problem Motivation Method Experiments Conclusion

Page 34: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Flow Conservation on Container Objects Spatial Exclusion on the ground

Objects don’t overlap in the 3D space

Problem Motivation Method Experiments Conclusion

Page 35: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Flow Conservation on Container Objects Spatial Exclusion on the ground Consistency of Interacting Flows

Models the interaction between objects

Problem Motivation Method Experiments Conclusion

Page 36: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Consistency of Interacting Flows

If a person disappears, he enters the car

Problem Motivation Method Experiments Conclusion

Page 37: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Consistency of Interacting Flows

If a person appears, he exits the car

Problem Motivation Method Experiments Conclusion

Page 38: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Consistency of Interacting Flows

If a person appears, he exits the car

If a person disappears, he enters the car

Problem Motivation Method Experiments Conclusion

Page 39: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Flow Conservation on Container Objects Spatial Exclusion on the ground Consistency of Interacting Flows Tracking the Invisible

Track the invisible containee objects

Problem Motivation Method Experiments Conclusion

Page 40: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Tracking the Invisible – Counter Flow Variable

Problem Motivation Method Experiments Conclusion

Page 41: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Tracking the Invisible – Counter Flow Variable

The person is in the car after he enters it.

Problem Motivation Method Experiments Conclusion

Page 42: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Tracking the Invisible – Counter Flow Variable

The person was in the car before he exits.

Problem Motivation Method Experiments Conclusion

Page 43: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Tracking the Invisible – Counter Flow Variable

The person was in the car before he exits.

The person is in the car after he enters it.

Problem Motivation Method Experiments Conclusion

Page 44: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Tracking the Invisible – Counter Flow Variable

The person was in the car before he exits.

The person is in the car after he enters it.

Problem Motivation Method Experiments Conclusion

Integers!

Page 45: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Tracking the Invisible – Counter Flow Variable

The person was in the car before he exits.

The person is in the car after he enters it.

Problem Motivation Method Experiments Conclusion

Integers!

Relax to fractional!

Page 46: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Flow Conservation on Container Objects Spatial Exclusion on the ground Consistency of Interacting Flows Tracking the Invisible Additional Bound Constraint

Problem Motivation Method Experiments Conclusion

Page 47: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Additional Bound Constraint A Car carries limited number of people:

Problem Motivation Method Experiments Conclusion

Page 48: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Additional Bound Constraint A Car carries limited number of people At most one basketball in the match:

Problem Motivation Method Experiments Conclusion

Page 49: Tracking Interacting Objects Optimally Using Integer Programming

Formulation: Constraints

Additional Bound Constraint A Car carries limited number of people At most one basketball in the match A moving car has at least one driver:

Problem Motivation Method Experiments Conclusion

Page 50: Tracking Interacting Objects Optimally Using Integer Programming

Mixed Integer Programming

Objective:

Subject to Flow Conservation on Container Objects Spatial Exclusion on the ground Consistency of Interacting Flows Tracking the Invisible Additional Bound Constraint

Solved using GurobiProblem Motivation Method Experiments Conclusion

Page 51: Tracking Interacting Objects Optimally Using Integer Programming

Quantitative Results

6 baselines, 3 scenario, 15K+ frames

Problem Motivation Method Experiments Conclusion

Page 52: Tracking Interacting Objects Optimally Using Integer Programming
Page 53: Tracking Interacting Objects Optimally Using Integer Programming
Page 54: Tracking Interacting Objects Optimally Using Integer Programming
Page 55: Tracking Interacting Objects Optimally Using Integer Programming
Page 56: Tracking Interacting Objects Optimally Using Integer Programming
Page 57: Tracking Interacting Objects Optimally Using Integer Programming
Page 58: Tracking Interacting Objects Optimally Using Integer Programming
Page 59: Tracking Interacting Objects Optimally Using Integer Programming
Page 60: Tracking Interacting Objects Optimally Using Integer Programming
Page 61: Tracking Interacting Objects Optimally Using Integer Programming
Page 62: Tracking Interacting Objects Optimally Using Integer Programming
Page 63: Tracking Interacting Objects Optimally Using Integer Programming