Smorodov / Multitarget-tracker

Multiple Object Tracker, Based on Hungarian algorithm + Kalman filter.
Apache License 2.0
2.17k stars 647 forks source link

Wrong Object Assignment #338

Open sky9407 opened 3 years ago

sky9407 commented 3 years ago

Hi, I am using your tracker for people counting, and get good results for most of times. I met this wrong object assignment when people are too close to each other. Please see this pic below: wrong You can see these two people are very close and they don't move during these three frames. In frame 1&2, the left person's id is 2, and right person's id is 0; but in frame 3, they exchanged their ids.

Below is my settings: config

We find the m_SPCalculator->Solve function give the wrong assignment. I am not sure if this is a bug or change track settings can solve this or not? Can you give us some advice? Thanks!

Nuzhny007 commented 3 years ago

Hi! Try to change tracking::MatchBipart to tracking::MatchHungarian. I don't tested this algorithm long time and not sure that it works perfectly

sky9407 commented 3 years ago
Yes, we have changed to MatchHungarian and the test results are right now.
For MatchBipart, it seems when the currCost is close to m_distThres, and all the weights are 1, the assignments are not correct, so lower the distThres may reduce the frequency of occurrence.