\brief InitTracker \param frame \return
| 283 | /// \return |
| 284 | /// |
| 285 | bool InitTracker(cv::UMat frame) override |
| 286 | { |
| 287 | if (!m_trackerSettingsLoaded) |
| 288 | { |
| 289 | m_trackerSettings.SetDistance(tracking::DistCenters); |
| 290 | m_trackerSettings.m_kalmanType = tracking::KalmanLinear; |
| 291 | m_trackerSettings.m_filterGoal = tracking::FilterRect; |
| 292 | m_trackerSettings.m_lostTrackType = tracking::TrackCSRT; // Use visual objects tracker for collisions resolving. Used if m_filterGoal == tracking::FilterRect |
| 293 | m_trackerSettings.m_matchType = tracking::MatchHungrian; |
| 294 | m_trackerSettings.m_useAcceleration = false; // Use constant acceleration motion model |
| 295 | m_trackerSettings.m_dt = m_trackerSettings.m_useAcceleration ? 0.05f : 0.4f; // Delta time for Kalman filter |
| 296 | m_trackerSettings.m_accelNoiseMag = 0.2f; // Accel noise magnitude for Kalman filter |
| 297 | m_trackerSettings.m_distThres = 0.8f; // Distance threshold between region and object on two frames |
| 298 | #if 0 |
| 299 | m_trackerSettings.m_minAreaRadiusPix = frame.rows / 20.f; |
| 300 | #else |
| 301 | m_trackerSettings.m_minAreaRadiusPix = -1.f; |
| 302 | #endif |
| 303 | m_trackerSettings.m_minAreaRadiusK = 0.8f; |
| 304 | m_trackerSettings.m_maximumAllowedLostTime = 2.; // Maximum allowed skipped frames |
| 305 | m_trackerSettings.m_maxTraceLength = 2.; // Maximum trace length |
| 306 | } |
| 307 | m_tracker = BaseTracker::CreateTracker(m_trackerSettings); |
| 308 | return true; |
| 309 | } |
| 310 | |
| 311 | /// |
| 312 | /// \brief DrawData |
nothing calls this directly
no test coverage detected