Smorodov / Multitarget-tracker

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

No result for tracking some first frames #95

Closed thuyndieu closed 5 years ago

thuyndieu commented 6 years ago

Hi, There is one issue with Kalman filter prediction. I wonder how Kalman filter works in some first frames, since the first tracking prediction always starts some where in the tenth frame, even the object contours are there from the beginning frame in the background model. Can you explain for me the reason? Thank you

Nuzhny007 commented 6 years ago

Hi! I use linear regression for Kalman initialization: https://github.com/Smorodov/Multitarget-tracker/blob/master/Tracker/Kalman.cpp#L463 You can disable it: set the MIN_INIT_VALS = 0

thuyndieu commented 6 years ago

Thank you, I am pretty new to Kalman filter. I got to know that linear regression for Kalman filter is to generate start values for the prediction including the point(x,y) and its velocity(dx,dy). Can you please explain what you have done in the function "get_lin_regress_params"? One more question, I have tried the versions of updating points and rectangles. Just find the point updating gives me better results than rectangles. I guess it is due to the parameters of Kalman filter, but why? thank you so much.

Nuzhny007 commented 6 years ago

Hi!

  1. "get_lin_regress_params" it's a simple linear regression for two functions: x(t) = kx t + bx and y(t) = ky t + by Here t is frame index, x(t) - horizontal coordinate in pixels and y(y) - vertical coordinate in pixels. If I detect the object on 4 frames than I can use linear regression for obtaining the equations. kx and ky - constant horizontal and vertical velocities of the object (or projection on the OX and OY axes).

  2. It depends of the video. Now I want to make some changes in this code for this issue: https://github.com/Smorodov/Multitarget-tracker/issues/99 Perhaps this will improve accuracy and clarify the operation of the filter with rectangles.

thuyndieu commented 6 years ago

Thank you much, I will try your change and observe the results.