exponenta event banner

groundTruthLidar

Данные метки истинности основания Lidar

Описание

groundTruthLidar содержит информацию о метках истинности основания лидара. Источник данных, используемый для создания объекта, представляет собой коллекцию данных облака точек лидара. Можно создавать, экспортировать или импортировать groundTruthLidar из приложения Lidar Labeler.

Создание

Экспорт groundTruthLidar в приложении Lidar Labeler на панели инструментов приложения выберите «Экспорт» > «В рабочую область». Приложение экспортирует объект в рабочую область MATLAB ®. Создание groundTruthLidar программно использовать groundTruthLidar функция (описана здесь).

Описание

пример

gTruth = groundTruthLidar(dataSource,labelDefs,labelData) возвращает объект, содержащий метки истинности lidar ground, которые можно импортировать в приложение Lidar Labeler.

  • dataSource указывает источник данных облака точек лидара и задает DataSource собственность.

  • labelDefs определяет определения интересующей области (ROI) и меток сцены, содержащих такую информацию, как Name, Type, и Groupи устанавливает LabelDefinitions собственность.

  • labelData определяет идентифицирующую информацию, положение и временные метки для помеченных меток окупаемости инвестиций и меток сцены, а также устанавливает LabelData собственность.

Свойства

развернуть все

Источник данных lidar истинности земли, указанный как PointCloudSequenceSource, VelodyneLidarSource, LasFileSequenceSource, или RosbagSource объект. Этот объект содержит информацию, описывающую источник, из которого были помечены основные данные lidar. В этой таблице представлены дополнительные сведения о типе объектов, которые можно указать.

Имя объектаИсточник данныхСсылка на класс
PointCloudSequenceSourceПапка последовательности облаков точекvision.labeler.loading.PointCloudSequenceSource
VelodyneLidarSourceФайл захвата пакетов Velodine ® (PCAP)vision.labeler.loading.VelodyneLidarSource
LasFileSequenceSourceПапка последовательности файлов LAS или LAZlidar.labeler.loading.LasFileSequenceSource
RosbagSourceФайл Росбагlidar.labeler.loading.RosbagSource

Это свойство доступно только для чтения.

Определения меток, указанные как таблица. Чтобы создать эту таблицу, используйте один из этих параметров.

  • В приложении Lidar Labeler создайте определения меток, а затем экспортируйте их как часть groundTruthLidar объект.

  • Использовать labelDefinitionCreatorLidar для создания таблицы определений меток. При сохранении этой таблицы в MAT-файл можно загрузить определения меток в сеанс приложения Lidar Labeler, выбрав команду «Открыть» > «Определения меток» на панели инструментов приложения.

  • Создайте таблицу определений меток в командной строке MATLAB.

В этой таблице описываются требуемые и необязательные столбцы таблицы, указанные в LabelDefinitions собственность.

КолонкаОписаниеОбязательно или необязательно
NameСтроки или векторы символов, задающие имя каждого определения метки.

Необходимый

Type

labelType перечисления, определяющие тип каждого определения метки.

  • Для определений меток ROI единственный допустимый labelType перечисление является labelType.Cuboid.

  • Для определений меток сцен допустимы только labelType перечисление является labelType.Scene.

Необходимый

LabelColorТриплеты RGB, определяющие цвета определений меток. Значения находятся в диапазоне [0, 1]. Желтый цвет (триплет RGB [1 1 0]) зарезервирован для цвета выбранных меток в приложении Lidar Labeler.

Дополнительный

При определении меток в приложении Lidar Labeler необходимо указать цвет. Поэтому экспортированная таблица определений меток всегда содержит этот столбец.

При создании определений меток с помощью labelDefinitionCreatorLidar объект без указания цветов, возвращенная таблица определения метки включает этот столбец, но все значения столбцов пусты.

GroupСтроки или векторы символов, определяющие группу, к которой принадлежит каждое определение метки.

Дополнительный

При создании таблицы определений меток в командной строке MATLAB нет необходимости включать Group столбец.

Если вы экспортируете определения меток из приложения Lidar Labeler или создаете их с помощью labelDefinitionCreatorLidar таблица определений меток содержит этот столбец, даже если группы не указаны. Приложение назначает каждому определению метки Group значение 'None'.

DescriptionСтроки или векторы символов, описывающие каждое определение метки.

Дополнительный

При создании таблицы определений меток в командной строке MATLAB нет необходимости включать Description столбец.

Если вы экспортируете определения меток из приложения Lidar Labeler или создаете их с помощью labelDefinitionCreatorLidar таблица определений меток содержит этот столбец, даже если описания не были указаны. Description для этих определений меток - пустой символьный вектор.

Hierarchy

Структуры, содержащие информацию об атрибутах для каждого определения метки.

ОбластьОписание
AttributeName1,...,AttributeNameN

Информация об атрибутах

Каждый определенный атрибут имеет собственное поле, где имя поля соответствует имени атрибута. Значение атрибута представляет собой структуру, содержащую следующие поля:

  • DefaultValue - Значение атрибута по умолчанию, указанное как числовой скаляр для Numeric атрибуты, строка для String атрибуты или логический скалярный или пустой массив для Logical атрибуты. List атрибуты не содержат этого поля.

  • ListItems - список элементов атрибута, указанный как массив ячеек символьных векторов. Только List атрибуты содержат это поле.

  • Description - Описание атрибута, заданного как символьный вектор.

TypeТип родительской метки для атрибутов, указанный как строковый или символьный вектор.
DescriptionОписание родительской метки для атрибутов, указанное как строковый или символьный вектор.

Если определение метки не содержит атрибутов, то запись таблицы для этого определения метки пуста.

Дополнительный

При определении суббнаков или атрибутов в приложении Lidar Labeler или labelDefinitionCreatorMultisignal , сформированная таблица определений меток содержит этот столбец.

Это свойство доступно только для чтения.

Данные метки для каждого ROI и метки сцены, указанные как timetable. Каждый столбец LabelData содержит метки для одного определения метки и соответствует Name значение для каждой строки в LabelDefinitions. Формат хранения данных метки зависит от типа метки.

Тип меткиФормат хранения для меток на каждой отметке времени

labelType.Cuboid

M-по-9 числовая матрица со строками формы [xctr, yctr, zctr, xlen, ylen, zlen, xrot, yrot, zrot], где:

  • M - количество меток в кадре.

  • xctr, yctr, и zctr укажите центр кубоида.

  • xlen, ylen, и zlen укажите длину кубоида вдоль оси X, оси Y и оси Z, соответственно, перед применением поворота.

  • xrot, yrot, и zrot задайте углы поворота кубоида вдоль осей X, Y и Z соответственно. Эти углы являются положительными по часовой стрелке при взгляде в направлении вперед соответствующих им осей.

На рисунке показано, как эти значения определяют положение кубоида.

labelType.Scene

Логический вектор, где true указывает на наличие метки на этой отметке времени.

Если Cuboid Данные метки ROI включают атрибуты, затем метки на каждой временной метке должны быть указаны как структуры. Структура включает эти поля.

Поле структуры меткиОписание
Position

Позиции родительских меток на данной отметке времени

Формат Position для меток типа Cuboid описывается в предыдущей таблице.

AttributeName1,...,AttributeNameN

Атрибуты родительских меток

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

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

changeFilePathsИзменение путей к файлам в данных истинности земли
selectLabelsВыберите истинные данные земли по имени или типу метки
selectLabelsByGroupВыбор данных истинности земли по имени группы меток
selectLabelsByNameВыберите истинные данные земли по имени метки
selectLabelsByTypeВыбор данных истинности земли по типу метки

Примеры

свернуть все

Создайте данные об истинности земли для источника лидара Velodyne, который захватывает автомобиль на дороге. Укажите источники сигналов, определения меток и данные меток окупаемости инвестиций.

Создайте источник данных Velodine.

sourceName = fullfile(toolboxdir('vision'),'visiondata', ...
    'lidarData_ConstructionRoad.pcap');

sourceParams = struct();
sourceParams.DeviceModel = 'HDL32E';
sourceParams.CalibrationFile = fullfile(matlabroot,'toolbox','shared', ...
    'pointclouds','utilities','velodyneFileReaderConfiguration', ...
    'HDL32E.xml');

Загрузите источник данных.

dataSource = vision.labeler.loading.VelodyneLidarSource;
dataSource.loadSource(sourceName,sourceParams);

Создание определений меток.

ldc = labelDefinitionCreatorLidar;
addLabel(ldc,'Car','Cuboid');
labelDefs = ldc.create;

Создайте данные истинности основания для последовательности лидара.

numPCFrames = numel(dataSource.Timestamp{1});
carData = cell(numPCFrames,1);
carData{1} = [1.0223 13.2884 1.1456 8.3114 3.8382 3.1460 0 0 0];
lidarData = timetable(dataSource.Timestamp{1},carData, ...
    'VariableNames',{'Car'});

Создайте объект lidar истинности основания.

gTruth = groundTruthLidar(dataSource,labelDefs,lidarData)
gTruth = 

  groundTruthLidar with properties:

          DataSource: [1×1 vision.labeler.loading.VelodyneLidarSource]
    LabelDefinitions: [1×5 table]
           LabelData: [1238×1 timetable]

См. также

Объекты

Представлен в R2020b