После маркировки сигналов следующим Маркировать процедура Ground Truth for Multiple Signals экспортируйте метки и исследуйте, как они хранятся.
Откройте сеанс приложения Ground Truth Labeler, содержащий помеченные сигналы. Можно открыть сеанс из командной строки MATLAB®. Например, если вы сохраненный сеанс к MAT-файлу под названием groundTruthLabelingSession, введите эту команду.
groundTruthLabeler groundTruthLabelingSession.mat
На панели инструментов приложения выберите Export Labels> To Workspace. В экспорте в окно рабочей области используйте имя переменной экспорта по умолчанию, gTruth, и нажмите ОК. Приложение экспортирует объект, groundTruthMultisignalgTruth, к рабочей области MATLAB®. Этот объект содержит метки основной истины, полученные от сеанса приложения.
Если вы не экспортировали groundTruthMultisignal возразите против рабочей области, загрузите предопределенный объект от переменной gTruth. Функция, используемая, чтобы загрузить этот объект, присоединена к этому примеру как к вспомогательному файлу. Если вы используете свой собственный объект, данные, такие как положения метки могут отличаться от данных, показанных в этом примере.
if (~exist('gTruth','var')) gTruth = helperLoadGTruthGetStarted; end
Отобразите свойства groundTruthMultisignal объект, gTruth. Объект содержит информацию об источниках данных сигнала, определениях метки, и метках сцены и ROI. Эта информация хранится в раздельном имуществе объекта.
gTruth
gTruth =
groundTruthMultisignal with properties:
DataSource: [1x2 vision.labeler.loading.MultiSignalSource]
LabelDefinitions: [3x7 table]
ROILabelData: [1x1 vision.labeler.labeldata.ROILabelData]
SceneLabelData: [1x1 vision.labeler.labeldata.SceneLabelData]
В этом примере вы исследуете содержимое каждого свойства изучить, как основная истина объектно-ориентированной памяти помечает.
DataSource свойство содержит информацию об источниках данных. Это свойство содержит два MultiSignalSource объекты: один для источника видеосигнала и один для источника последовательности облака точек. Отобразите содержимое DataSource свойство.
gTruth.DataSource
ans =
1x2 heterogeneous MultiSignalSource (VideoSource, PointCloudSequenceSource) array with properties:
SourceName
SourceParams
SignalName
SignalType
Timestamp
NumSignals
Информация, хранившая в этих объектах, включает пути к источникам данных, именам сигналов, что они содержат, и метки времени для тех сигналов. Отобразите имена сигнала для источников данных.
gTruth.DataSource.SignalName
ans =
"video_01_city_c2s_fcw_10s"
ans =
"lidarSequence"
LabelDefinitions свойство содержит таблицу информации об определениях метки. Отобразите таблицу определений метки. Каждая строка содержит информацию о ROI или определении метки сцены. car определение метки имеет две строки: один для того, когда метка чертится как прямоугольник на Image сигналы и один для того, когда метка чертится как кубоид на PointCloud сигналы.
gTruth.LabelDefinitions
ans =
3x7 table
Name SignalType LabelType Group Description LabelColor Hierarchy
___________ __________ _________ ____________ ___________ ____________ ____________
{'car' } Image Rectangle {'Vehicles'} {0x0 char} {1x3 double} {1x1 struct}
{'car' } PointCloud Cuboid {'Vehicles'} {0x0 char} {1x3 double} {1x1 struct}
{'daytime'} Time Scene {'None' } {0x0 char} {1x3 double} {0x0 double}
Hierarchy столбец хранит информацию о подметке и определениях атрибута родительской метки ROI. Отобразите подметку и информационные признаки для car пометьте, когда это будет чертиться как прямоугольник. Эта метка содержит одну подметку, brakeLight, и никакие атрибуты.
gTruth.LabelDefinitions.Hierarchy{1}
ans =
struct with fields:
brakeLight: [1x1 struct]
Type: Rectangle
Description: ''
Отобразите информацию о brakeLight подпометьте для родительского car метка. Подметка содержит один атрибут, isOn. Подметки не могут иметь своих собственных подметок.
gTruth.LabelDefinitions.Hierarchy{1}.brakeLight
ans =
struct with fields:
Type: Rectangle
Description: ''
LabelColor: [0.5862 0.8276 0.3103]
isOn: [1x1 struct]
Отобразите информацию о isOn припишите для brakeLight подметка. Этот атрибут не имеет никакого значения по умолчанию, таким образом, DefaultValue поле пусто.
gTruth.LabelDefinitions.Hierarchy{1}.brakeLight.isOn
ans =
struct with fields:
DefaultValue: []
Description: ''
ROILlabelData свойство содержит объект со свойствами, которые содержат данные о метке ROI для каждого сигнала. Имена свойств совпадают с именами сигналов. Отобразите имена свойства объекта.ROILabelData
gTruth.ROILabelData
ans =
ROILabelData with properties:
lidarSequence: [34x1 timetable]
video_01_city_c2s_fcw_10s: [204x1 timetable]
Каждое свойство содержит расписание меток ROI, чертивших в каждой метке времени сигнала с одним столбцом на метку. Просмотрите фрагмент видео и расписания последовательности облака точек лидара. Установите временной интервал от 8 до 8,5 секунд. Этот временной интервал соответствует запуску временного интервала, помеченного в Маркировать процедуре Ground Truth for Multiple Signals. Видео расписание содержит больше строк, чем расписание последовательности облака точек, потому что видео содержит больше меток кадров.
timeInterval = timerange(seconds(8),seconds(8.5)); videoLabels = gTruth.ROILabelData.video_01_city_c2s_fcw_10s(timeInterval,:) lidarLabels = gTruth.ROILabelData.lidarSequence(timeInterval,:)
videoLabels =
10x1 timetable
Time car
________ ____________
8 sec {1x1 struct}
8.05 sec {1x1 struct}
8.1 sec {1x1 struct}
8.15 sec {1x1 struct}
8.2 sec {1x1 struct}
8.25 sec {1x1 struct}
8.3 sec {1x1 struct}
8.35 sec {1x1 struct}
8.4 sec {1x1 struct}
8.45 sec {1x1 struct}
lidarLabels =
2x1 timetable
Time car
__________ ____________
8.0495 sec {1x1 struct}
8.3497 sec {1x1 struct}
Просмотрите прямоугольник car метки для первого видеокадра во временном интервале. Данные о метке хранятся в структуре.
videoLabels.car{1}
ans =
struct with fields:
Position: [296 203 203 144]
brakeLight: [1x2 struct]
Position поле хранит положения car метки. Эта система координат содержит только один car пометьте, так в этом случае, Position содержит только одну прямоугольную ограничительную рамку. Положение ограничительной рамки имеет форму [x y w h], где:
x и y задайте верхний левый угол прямоугольника.
w задает ширину прямоугольника, который является длиной прямоугольника вдоль оси X.
h задает высоту прямоугольника, который является длиной прямоугольника вдоль оси Y.
car метка также содержит два brakeLight подметки в этой системе координат. Просмотрите brakeLight подметки. Подметки хранятся в массиве структур с одной структурой на подметку, продвинутую система координат.
videoLabels.car{1}.brakeLight
ans =
1x2 struct array with fields:
Position
isOn
Просмотрите положения ограничительной рамки для подметок.
videoLabels.car{1}.brakeLight.Position
ans = 304 245 50 46 ans = 435 243 54 51
Просмотрите значения для isOn припишите в каждой подметке. Для обеих подметок этот атрибут установлен в логический 1 TRUE).
videoLabels.car{1}.brakeLight.isOn
ans = logical 1 ans = logical 1
Представление Now кубоид car метки для первой последовательности облака точек структурируют во временном интервале. Последовательности облака точек не поддерживают подметки или атрибуты. Вместо того, чтобы хранить метки кубоида в Position поле структуры, положения ограничительной рамки кубоида хранятся в M- 9 матриц, где M количество меток кубоида. Поскольку эта система координат содержит только одну метку кубоида в этом случае M 1.
lidarLabels.car{1}
ans =
struct with fields:
Position: [-1.1559 -0.7944 1.2012 12.6196 5.9278 3.0010 0 0 0]
brakeLight: []
1 9 положение ограничительной рамки имеет форму [xctr, yctr, zctr, xlen, ylen, zlen, xrot, yrot, zrot], где:
xctr, yctr, и zctr задайте центр кубоида.
xlen, ylen, и zlen задайте длину кубоида вдоль x-, y-, и ось z, соответственно, прежде чем вращение было применено.
xrot, yrot, и zrot задайте углы поворота для кубоида вдоль x-, y-, и ось z, соответственно. Эти углы по часовой стрелке положительны при взгляде в прямом направлении их соответствующих осей.
Этот рисунок показывает, как эти значения задают положение кубоида.

SceneLabelData свойство содержит объект со свойствами, которые содержат данные о метке сцены через все сигналы. Имена свойств совпадают с именами меток сцены. Отобразите имена свойства объекта.SceneLabelData
gTruth.SceneLabelData
ans =
SceneLabelData with properties:
daytime: [0 sec 10.15 sec]
daytime метка применяется к целому временному интервалу, который составляет приблизительно 10 секунд.
Метки, показанные в этом примере, в иллюстративных целях только. Для вашей собственной маркировки, после того, как вы экспортируете метки, можно использовать их в качестве обучающих данных для детекторов объектов. Собрать данные о метке из groundTruthMultisignal объект для обучения, используйте функция.gatherLabelData
Чтобы совместно использовать помеченные достоверные данные, совместно используйте MAT-файл основной истины, содержащий groundTruthMultisignal объект, не MAT-файл, содержащий сеанс приложения. Для получения дополнительной информации смотрите Долю, и Хранилище Пометило Ground Truth Data (Computer Vision Toolbox).
gatherLabelData | groundTruthMultisignal | ROILabelData | SceneLabelData