trackBranchHistory
Track-oriented MHT branching and branch history
Description
The trackBranchHistory
System object™ is a track-oriented, multi-hypothesis tracking (MHT) branch history manager. The
object maintains a history of track branches (hypotheses) that are based on the results of an
assignment algorithm, such as the algorithm used by the assignTOMHT
function. Given the most recent scan of a set of sensors, the assignment algorithm results include:
The assignments of sensor detections to specific track branches
The unassigned track branches
The unassigned detections
The trackBranchHistory
object creates, updates, and deletes track
branches as needed and maintains the track branch history for a specified number of scans.
Each track and branch stored in the object has a unique ID. To view a table of track branches
for the current history, use the getHistory
function. To compute branch clusters and incompatible branches, specify the track branch
history as an input to the clusterTrackBranches
function.
To create a branch history manager and update the branch history:
Create the
trackBranchHistory
object and set its properties.Call the object with arguments, as if it were a function.
To learn more about how System objects work, see What Are System Objects?
Creation
Description
creates a branchHistoryMgr
= trackBranchHistorytrackBranchHistory
System object, branchHistoryMgr
, with default property values.
sets properties for the branchHistoryMgr
= trackBranchHistory(Name,Value
)trackBranchHistory
object by using one or more
name-value pairs. For example, branchHistoryMgr =
trackBranchHistory('MaxNumTracks',250,'MaxNumTrackBranches',5)
creates a
trackBranchHistory
object that can maintain a maximum of 250 tracks and
5 track branches per track. Enclose property names in quotes. Specified property values
can be any numeric data type, but they must all be of the same data type.
Properties
Usage
Syntax
Description
returns the branch history based on the results of an assignment algorithm. Specify the
assignments of detections to branches, the lists of unassigned tracks and unassigned
detections, and the IDs of the sensors from which the detections originated. The inputs
can be of any numeric data type.history
= branchHistoryMgr(assignments
,unassignedTracks
,unassignedDetections
,originatingSensor
)
The assignTOMHT
function returns assignment results as uint32
values, but the inputs to
branchHistoryMgr
can be of any numeric data type.
Input Arguments
Output Arguments
Object Functions
To use an object function, specify the
System object as the first input argument. For
example, to release system resources of a System object named obj
, use
this syntax:
release(obj)
Examples
References
[1] Werthmann, John R. "A Step-by-Step Description of a Computationally Efficient Version of Multiple Hypothesis Tracking." In Proceedings of SPIE Vol. 1698, Signal and Processing of Small Targets. 1992, pp. 288–300. doi: 10.1117/12.139379.
Version History
Introduced in R2018b