As of R2018b we only support a detection-to-track workflow using our trackers, not track-to-track fusers.
By default, the trackers calculate the cost of assigning detections to tracks using the distance method of the track filter. You can bypass it and supply the cost matrix as part of the input if you set the tracker’s HasCostMatrixInput to true.
Assignment is done using the assignment algorithm of your choice. You can also use a custom algorithm if you want.
Once detections are assigned to track (up to one per sensor, but as many as the number of sensors), the track will be updated with the detections. Every detection carries its timestamp. The track will be predicted to the time of the first detection, corrected with it, then predicted to the next detection, corrected, etc., until all the detections are fused. The fusion itself is done using the tracking filter that you choose to use.
We use the term track to define the estimated object. Every track is identified by a unique ID.
In the example, there is a table that uses “Assigned Truth ID”. This is the identifier of the simulated truth object (platform) that was assigned to the track by thetrackAssignmentMetrics object.
The trackAssignmentMetrics is an object that tries to find the match (assignment) between a list of tracks (estimations) and a list of truth objects. It calculates many things related to the assignment, for example: the number of times an assignment is broken, a track drops, there is a track swap, etc.
Best Answer