Main Content

addTrackFuser

Add track fuser to tracking architecture

Description

addTrackFuser(ta,fuser) adds a track fuser object to the trackingArchitecture object ta.

example

addTrackFuser(___,'ToOutput',tf) specifies if the output of the added track fuser appears in the output of the tracking architecture. Specify tf as true or false. The default value is true.

addTrackFuser(___,'Name',name) enables you to specify the name of the added track fuser. The specified name is shown in the outputs of the summary and show object functions.

s = addTrackFuser(___) returns the summary of the tracking architecture after adding the fuser.

Examples

collapse all

Create a tracking architecture.

ta = trackingArchitecture;

Create a trackerGNN object. The tracker takes detection inputs from sensors 1 and 2. Add the tracker to the tracking architecture.

tracker1 = trackerGNN('TrackerIndex',1);
addTracker(ta,tracker1,'SensorIndices',[1,2]);

Create a trackerPHD object. The tracker takes detection inputs from sensors 3 and 4. Add the tracker to the tracking architecture and disable its direct output.

tracker2 = trackerPHD('TrackerIndex',2,'SensorConfigurations',...
    {trackingSensorConfiguration(3),trackingSensorConfiguration(4)});
addTracker(ta,tracker2,'ToOutput',false); % Disable ouput

Create a trackFuser object. The track fuser takes track inputs from the two trackers.

fuser = trackFuser('FuserIndex',3,'SourceConfigurations',...
    {fuserSourceConfiguration(1),fuserSourceConfiguration(2)});
addTrackFuser(ta,fuser);

Display the summary of the tracking architecture.

sum = summary(ta)
sum=3×4 table
         System          ArchitectureInputs       FuserInputs        ArchitectureOutput
    _________________    __________________    __________________    __________________

    {'T1:trackerGNN'}        {'1  2'  }        {'Not applicable'}       {[       1]}   
    {'T2:trackerPHD'}        {'3  4'  }        {'Not applicable'}       {0x0 double}   
    {'F3:trackFuser'}        {0x0 char}        {'1  2'          }       {[       2]}   

Show the tracking architecture.

show(ta)

Figure contains an axes object. The axes object with title Tracking Architecture: ta contains 38 objects of type rectangle, text, line, patch.

Input Arguments

collapse all

Tracking architecture, specified as a trackingArchitecture object.

Track fuser, specified as a trackFuser object.

You can also use a customized track fuser inheriting from the fusion.trackingArchitecture.TrackFuser class.

Enable fuser output in the tracking architecture, specified as true or false.

Name of the added track fuser, specified as a string scalar or a character vector.

Example: 'Tracker 1'

Output Arguments

collapse all

Tracking architecture summary, returned as a table. The number of rows of the table is equal to the total number of trackers and track fusers in the tracking architecture. The table contain these columns:

  • System — A description of the system organized as 'T' or 'F' for tracker or fuser, respectively, followed by the tracker or fuser index and the class of the system. For example, 'T1: trackerJPDA' is a tracker with index 1 and class of trackerJPDA.

  • ArchitectureInputs — The indices of inputs of the tracking architectures that report detections to the specific tracker or track fuser, shown as a cell containing a character vector. Each integer is an index of the architecture input.

  • FuserInputs — The indices of track inputs to the specific fuser in the tracking architecture, shown as a cell containing a character vector. Each integer is the index of a tracker or track fuser in the architecture.

  • ArchitectureOuput — The output index of the specific tracker or track fuser, shown as an integer. Each integer is the index of an output in the architecture.

See Also

| |

Introduced in R2021a