driving.connector.Connector class

Package: driving.connector

Interface to connect external tool to Ground Truth Labeler app

Description

The driving.connector.Connector class creates an interface between a custom visualization or analysis tool and a signal in the Ground Truth Labeler app. You can use the connector with video and image sequence signals only.

The driving.connector.Connector class is a handle class.

Creation

The Connector class that is inherited from the Connector interface is called a client.

The client can:

  • Sync an external tool to each frame change event for a specific signal loaded into the Ground Truth Labeler. Syncing allows you to control the external tool through the range slider and playback controls of the app.

  • Control the current time in the external tool and the corresponding display in the app.

  • Export custom labeled data from an external tool via the app.

To connect an external tool to the Ground Truth Labeler app, follow these steps:

  1. Define a client class that inherits from driving.connector.Connector. You can use the Connector class template to define a class and implement your custom visualization or analysis tool. At the MATLAB® command prompt, enter:

    driving.connector.Connector.openTemplateInEditor
    Follow the steps found in the template.

  2. Save the file to any folder on the MATLAB path. Alternatively, save the file to a folder and add the folder to MATLAB path by using the addpath function.

Properties

expand all

Start time of the signal, specified as a real scalar in seconds.

Attributes:

GetAccess
public
SetAccess
private

End time of the signal, specified as a real scalar in seconds.

Attributes:

GetAccess
public
SetAccess
private

Start of the time interval in the app, specified as a real scalar in seconds. To set the start time, use the start flag interval in the app.

Attributes:

GetAccess
public
SetAccess
private

Time of the frame currently displaying in the app for the connected signal, specified as a real scalar in seconds.

Attributes:

GetAccess
public
SetAccess
private

End of the time interval in the app, specified as a real scalar in seconds. To set the end time, use the end flag interval in the app.

Attributes:

GetAccess
public
SetAccess
private

Timestamps for the connected signal, specified as a duration vector. This signal must be the master signal. If you change the master signal, the TimeVector property updates to the timestamps for new master signal.

Attributes:

GetAccess
public
SetAccess
private

Label data imported from the external tool, specified as a two-column table. The first column contains the timestamps of the connected signal and the second column contains the label information that you specify for the corresponding timestamp.

  • The first column contains the timestamps for that signal

  • The second column contains the label information that you specify for the corresponding timestamp.

Attributes:

GetAccess
public
SetAccess
private

Names of labels, specified as a character vector, a string scalar, a cell array of character vectors, or a string array. These names must be valid MATLAB variables that correspond to the label names specified in the second column of LabelData.

Attributes:

GetAccess
public
SetAccess
public
Dependent
true

Descriptions of labels, specified as a character vector, a string scalar, a cell array of character vectors, or a string array. Each description of LabelDescription corresponds to a label specified in LabelName.

Attributes:

GetAccess
public
SetAccess
public

Methods

expand all

Examples

collapse all

Connect a lidar display tool to the Ground Truth Labeler app. Use the app and tool to display synchronized lidar and video data.

Specify the name of a video signal to load into the app.

signalName = '01_city_c2s_fcw_10s.mp4';

Add the path to the function handle for the lidar display tool.

path = fullfile(toolboxdir('driving'),'drivingdemos');
addpath(path)

Connect the lidar display to the app.

groundTruthLabeler(signalName,'ConnectorTargetHandle',@LidarDisplay);

After the app loads the video and lidar display tool, remove the path to the function handle.

rmpath(path)

Tips

  • For an example of an external tool, see this driving.connector.Connector class implementation. This class implements a lidar visualization tool. You can use this code as a starting point for creating your own tools.

    edit LidarDisplay

Introduced in R2017a