vision.labeler.AutomationAlgorithm

Интерфейс для автоматизации алгоритмов при разметке достоверных данных

Описание

The AutomationAlgorithm класс задает интерфейс для определения пользовательских алгоритмов автоматизации, запускаемых в Image Labeler, Video Labeler и Ground Truth Labeler (Automated Driving Toolbox) приложениях Классы, которые наследуются от AutomationAlgorithm интерфейс может использоваться с рабочим процессом автоматизации приложений для маркировки для генерации меток основной истины.

Свойства

расширить все

The AutomationAlgorithm класс предопределяет этот набор свойств.

Достоверные данные, заданные как groundTruth или groundTruthMultisignal (Automated Driving Toolbox) объект. Это свойство содержит все метки в приложении для маркировки до автоматизации.

  • Для алгоритмов автоматизации, используемых в приложении Image Labeler или Video Labeler, это свойство должно быть groundTruth объект.

  • Для алгоритмов автоматизации, используемых в приложении Ground Truth Labeler (Automated Driving Toolbox), это свойство должно быть groundTruthMultisignal объект.

Определения меток, выбранные для автоматизации в приложении для маркировки, заданы как структура. Приложения для маркировки поддерживают выбор только одного определения маркировки в каждом сеансе автоматизации. В приложениях для маркировки выбранное определение метки выделяется желтым цветом на ROI Labels или Scene Labels панели слева.

Структура содержит эти поля.

ОбластьОписание
Type

labelType перечисление, содержащее тип определения метки. Допустимые типы меток:

  • labelType.Rectangle

  • labelType.Cuboid (для облаков точек)

  • labelType.ProjectedCuboid (для изображений и видеоданных)

  • labelType.Line

  • labelType.PixelLabel

  • labelType.Scene

labelType.Custom не поддерживается.

NameВектор символов, содержащий имя определения метки.
Attributes (необязательно)

Массив структур, содержащий по одной структуре для каждого атрибута в определении метки. Если определение метки не содержит атрибутов, это свойство не включает Attributes поле.

Первое поле каждой структуры атрибутов в этом массиве структур содержит имя атрибута. Второе поле содержит структуру значений, связанных с этим именем. Если вы определяете List атрибут, вы также должны определить список значений для этого атрибута. Значения для Numeric Value, String, или Logical атрибуты необязательны. Описание атрибутов является необязательным для всех случаев.

PixelLabelID (необязательно)Положительное целое число, содержащее идентификатор метки пикселя для определения метки. Этот PixelLabelID поле применяется только к определениям меток типа PixelLabel.

Чтобы просмотреть выборку SelectedLabelDefinitions структуру, которая содержит атрибут, введите этот код в MATLAB® командная строка.

selectedLabelDefs.Type = labelType.Rectangle;
selectedLabelDefs.Name = 'Car';
selectedLabelDefs.Attributes = struct('distance', ...
    struct('DefaultValue',0,'Description','Sensor distance'))

Чтобы просмотреть выборку SelectedLabelDefinitions структуру, содержащую определения пиксельных меток, введите этот код в командной строке MATLAB.

selectedLabelDefs.Type = labelType.Rectangle;
selectedLabelDefs.Name = 'Car';
selectedLabelDefs.Attributes = struct('distance', ...
    struct('DefaultValue',0,'Description','Sensor distance'))

Допустимые определения меток, которые может автоматизировать алгоритм, заданные как массив структур. Каждая структура массива соответствует допустимому определению метки. Чтобы определить, какие определения меток действительны, приложение использует checkLabelDefinition способ. В этой таблице описываются поля для каждой действительной структуры определения меток.

ОбластьОписание
Type

labelType перечисление, содержащее тип определения метки. Допустимые типы меток:

  • labelType.Rectangle

  • labelType.Cuboid (для облаков точек)

  • labelType.ProjectedCuboid (для изображений и видеоданных)

  • labelType.Line

  • labelType.PixelLabel

  • labelType.Scene

labelType.Custom не поддерживается.

NameВектор символов, содержащий имя определения метки.
Attributes (необязательно)

Массив структур, содержащий по одной структуре для каждого атрибута в определении метки. Если определение метки не содержит атрибутов, это свойство не включает Attributes поле.

Первое поле каждой структуры атрибутов в этом массиве структур содержит имя атрибута. Второе поле содержит структуру значений, связанных с этим именем. Если вы определяете List атрибут, вы также должны определить список значений для этого атрибута. Значения для Numeric Value, String, или Logical атрибуты необязательны. Описание атрибутов является необязательным для всех случаев.

PixelLabelID (необязательно)Положительное целое число, содержащее идентификатор метки пикселя для определения метки. Этот PixelLabelID поле применяется только к определениям меток типа PixelLabel.

Чтобы просмотреть выборку ValidLabelDefinitions структуру, содержащую атрибут, введите этот код в командной строке MATLAB.

validLabelDefs(1).Type = labelType.Rectangle;
validLabelDefs(1).Name = 'Car';
validLabelDefs(2).Type = labelType.Line;
validLabelDefs(2).Name = 'LaneMarker';
validLabelDefs(3).Type = labelType.Scene
validLabelDefs(3).Name = 'Sunny';

Чтобы просмотреть выборку ValidLabelDefinitions структуру, содержащую определения пиксельных меток, введите этот код в командной строке MATLAB.

validLabelDefs(1).Type = labelType.PixelLabel;
validLabelDefs(1).Name = 'Road';
validLabelDefs(1).PixelLabelID  = 1;
validLabelDefs(2).Type = labelType.PixelLabel;
validLabelDefs(2).Name = 'Sky';
validLabelDefs(2).PixelLabelID = 2

Клиенты AutomationAlgorithm для определения этого набора свойств требуется класс. Эти свойства настраивают имя, описание и инструкции пользователя для вашего автоматического алгоритма.

Имя алгоритма автоматизации, заданное как вектор символов.

Описание алгоритма, заданное как вектор символов.

Направления алгоритма, отображаемые в приложении, задаются как массив ячеек. UserDirections заданы как cellstr, с каждой строкой, представляющей отдельное направление. Используйте checkSetup метод, чтобы проверить, что направления были соблюдены.

Функции объекта

Клиенты AutomationAlgorithm реализуйте эти пользовательские функции, чтобы задать выполнение алгоритма.

checkLabelDefinitionПроверьте определение метки
checkSignalTypeПроверьте тип сигнала
supportsMultisignalAutomationУстановите флаг автоматизации мультисигнального алгоритма
checkSetupНастройка валидации (необязательно)
initializeИнициализируйте состояние для выполнения алгоритма (необязательно)
runЗапустите автоматизацию меток на каждой системе координат в интервале
terminateЗавершает автоматический алгоритм (необязательно)

Клиенты AutomationAlgorithm может также реализовать пользовательскую settingsDialog функция для отображения настроек алгоритма или конструктор без входных параметров.

Для получения дополнительной информации о создании собственного алгоритма автоматизации смотрите, Создают Алгоритм Автоматизации для Маркировки.

Введенный в R2017a