Label video for computer vision applications
The Video Labeler app enables you to label ground truth data in a video, in an image sequence, or from a custom data source reader. Using the app, you can:
Define rectangular regions of interest (ROI) labels, polyline ROI labels, pixel ROI labels, and scene labels, and use these labels to interactively label your ground truth data.
Use built-in detection or tracking algorithms to label your ground truth data.
Write, import, and use your own custom automation algorithm to automatically label ground truth. See Create Automation Algorithm for Labeling.
Evaluate the performance of your label automation algorithms using a visual summary. See View Summary of Ground Truth Labels.
Export the labeled ground truth as a
groundTruth object. You can use this object for system verification or for
training an object detector or semantic segmentation network. See Train Object Detector or Semantic Segmentation Network from Ground Truth Data.
MATLAB® Toolstrip: On the Apps tab, under Image Processing and Computer Vision, click the app icon.
MATLAB command prompt: Enter
videoLabeler opens a new session of the app, enabling you to label
ground truth data in a video or image sequence.
videoLabeler(videoFileName) opens the app and loads the input
video. The video file must have an extension supported by
videoLabeler(imageSeqFolder) opens the app and loads the image
sequence from the input folder.
imageSeqFolder must be a string scalar or
character vector that specifies the folder containing the image files.
videoLabeler(imageSeqFolder,timestamps) opens the app and loads a
sequence of images with their corresponding timestamps.
duration vector of the same length as the
number of images in the sequence.
For example, load a sequence of images and their corresponding timestamps into the app.
imageDir = fullfile(toolboxdir('vision'),'visiondata','NewTsukuba'); timeStamps = seconds(1:150); videoLabeler(imageDir,timeStamps)
videoLabeler(gtSource) opens the app and loads the data source and
corresponding timestamps from a
gtSource. To generate this object for a custom data source, you can
specify a custom reader function. For details, see Use Custom Data Source Reader for Ground Truth Labeling.
videoLabeler(sessionFile) opens the app and loads a saved app
contains the path and file name. The MAT-file that
to contains the saved session.
The built-in automation algorithms support the automation of rectangular ROI labels only. When you select a built-in algorithm and click Automate, scene labels, pixel ROI labels, polyline ROI labels, sublabels, and attributes are not imported into the automation session. To automate the labeling of these features, create a custom automation algorithm. See Create Automation Algorithm for Labeling.
Pixel ROI labels do not support sublabels or attributes.
The Label Summary window does not support sublabels or attributes
To avoid having to relabel ground truth with new labels, organize the labeling scheme you want to use before marking your ground truth.
The Video Labeler app provides built-in algorithms that you can use to automate labeling. From the app toolstrip, click Select Algorithm, and then select an automation algorithm.
|Built-In Automation Algorithm||Description|
ACF People Detector
|Detect and label people using a pretrained detector based on aggregate channel features (ACF). With this algorithm, you do not need to draw any ROI labels.|
|Track and label one or more rectangular ROI labels over short intervals using the Kanade-Lucas-Tomasi (KLT) algorithm.|
|Estimate ROIs in intermediate frames using the interpolation of rectangular ROIs in key frames. Draw ROIs on a minimum of two frames (at the beginning and at the end of the interval). The interpolation algorithm estimates the ROIs between the frames.|
ACF Vehicle Detector (requires Automated Driving System Toolbox™)
|Detect and label vehicles using a pretrained detector based on ACF. With this algorithm, you do not need to draw any ROI labels.|