主要内容

导出和探索多个信号的地真值标签

标记信号后,按照为多个信号标记地真值过程中,导出标签并探索它们的存储方式。

设置

打开地面真相标签包含标记信号的应用程序会话。您可以从MATLAB®命令行打开会话。例如,如果您将会话保存到一个名为groundTruthLabelingSession,输入该命令。

groundTruthLabelergroundTruthLabelingSession.mat

在应用程序工具条上,选择导出>到工作区.在导出到工作区窗口中,使用默认的导出变量名,gTruth,并单击好吧.应用程序导出一个groundTruthMultisignal对象,gTruth,到MATLAB®工作空间。该对象包含从应用程序会话中捕获的ground truth标签。

如果你没有导出groundTruthMultisignal对象添加到工作空间,从该变量加载预定义对象gTruth.用于加载此对象的函数作为支持文件附加到本示例中。金宝app如果您正在使用自己的对象,则标签位置等数据可能与本例中显示的数据不同。

如果(~ (“gTruth”“var”)) gTruth = helperLoadGTruthGetStarted;结束

属性的属性groundTruthMultisignal对象,gTruth.对象包含信号数据源、标签定义、ROI和场景标签等信息。此信息存储在对象的单独属性中。

gTruth
gTruth = groundTruthMultisignal with properties: DataSource: [1x2 vision.label .loading.]MultiSignalSource] LabelDefinitions: [3x7 table] ROILabelData: [1x1 vision.labeler.labeldata.ROILabelData] SceneLabelData: [1x1 vision.labeler.labeldata.SceneLabelData]

在本例中,您将检查每个属性的内容,以了解对象如何存储基本真值标签。

数据源

数据源属性包含有关数据源的信息。此属性包含两个MultiSignalSource对象:一个视频源,一个点云序列源。控件的内容数据源财产。

gTruth。数据源
ans = 1x2异构MultiSignalSource (VideoSource, PointCloudSequenceSource)数组,属性为:SourceName SourceParams SignalName SignalType Timestamp NumSignals

存储在这些对象中的信息包括数据源的路径、它们所包含的信号的名称以及这些信号的时间戳。显示数据源的信号名称。

gTruth.DataSource.SignalName
ans = "video_01_city_c2s_fcw_10s" ans = "lidarSequence"

标签定义

LabelDefinitions属性包含关于标签定义的信息表。显示标签定义表。每行包含关于ROI或场景标签定义的信息。的标签定义有两行:一行用于在标签上绘制矩形图像信号和一个用于当标签被绘制为长方体时PointCloud信号。

gTruth。LabelDefinitions
ans = 3 x7表名SignalType LabelType LabelColor组描述层次结构  ___________ __________ _________ ____________ ___________ ________________________ ____________ {' 汽车的}形象矩形{‘汽车’}{0 x0 char} {[0.5862 0.8276 0.3103]} {1 x1 struct}{‘汽车’}PointCloud长方体{‘汽车’}{0 x0 char} {[0.5862 0.8276 0.3103]} {1 x1 struct}{“白天”}时间场景{‘没有’}{0 x0 char} {[0.0588 - 1 1]} {0 x0双}

层次结构列存储关于父ROI标签的子标签和属性定义的信息。属性的子标签和属性信息当它被绘制为矩形时进行标记。该标签包含一个子标签,brakeLight,没有属性。

gTruth.LabelDefinitions.Hierarchy {1}
ans = struct with fields: brakeLight: [1x1 struct]类型:矩形

显示有关brakeLight父元素的子标签标签。子标签包含一个属性,.子标签不能有自己的子标签。

gTruth.LabelDefinitions.Hierarchy {1} .brakeLight
ans = struct with fields:类型:矩形描述:" LabelColor: [0.5862 0.8276 0.3103] isOn: [1x1 struct]

显示有关属性的brakeLightsublabel。此属性没有默认值,因此DefaultValue字段为空。

gTruth.LabelDefinitions.Hierarchy {1} .brakeLight.isOn
ans = struct with fields: DefaultValue: []

ROI标签数据

ROILlabelData属性包含ROILabelData对象,其属性包含每个信号的ROI标签数据。属性的名称与信号的名称相匹配。显示对象属性名。

gTruth。ROILabelData
ans = ROILabelData属性:video_01_city_c2s_fcw_10s: [204x1时间表]lidarSequence: [34x1时间表]

每个属性包含在每个信号时间戳上绘制的ROI标签时间表,每个标签有一列。查看部分视频和激光雷达点云序列时间表。设置时间间隔为8 ~ 8.5秒。属性中标记的时间间隔的开始为多个信号标记地真值过程。视频时间表比点云序列时间表包含更多行,因为视频包含更多标签帧。

timeInterval = timerange(秒(8),秒(8.5));videoLabels = gTruth.ROILabelData.video_01_city_c2s_fcw_10s(timeInterval,:) lidarLabels = gTruth.ROILabelData.lidarSequence(timeInterval,:)
videollabels = 10x1时间表时间车________ ____________ 8秒{1x1 struct} 8.05秒{1x1 struct} 8.1秒{1x1 struct} 8.15秒{1x1 struct} 8.2秒{1x1 struct} 8.25秒{1x1 struct} 8.3秒{1x1 struct} 8.35秒{1x1 struct} 8.4秒{1x1 struct} 8.45秒{1x1 struct} lidarLabels = 2x1时间表时间车__________ ____________ 8.0495秒{1x1 struct} 8.3497秒{1x1 struct}

查看矩形时间间隔内第一个视频帧的标签。标签数据存储在一个结构中。

videoLabels.car {1}
位置:[296 203 203 144]brakeLight: [1x2 struct]

位置属性的位置标签。这个框架只包含一个标签,在这种情况下,位置只包含一个矩形包围框。边界框的位置为窗体[x y w h],地点:

  • x而且y指定矩形的左上角。

  • w指定矩形的宽度,即矩形沿x设在。

  • h指定矩形的高度,即矩形沿y设在。

标签还包含两个brakeLight这个坐标系的子标签。查看brakeLightsublabels。子标签存储在一个结构数组中,每个子标签在框架上绘制一个结构。

videoLabels.car {1} .brakeLight
ans =带有字段的1x2结构数组:位置isOn

查看子标签的包围框位置。

videoLabels.car {1} .brakeLight.Position
Ans = 304 245 50 46 Ans = 435 243 54 51

属性的值属性。对于两个子标签,此属性都设置为logical1真正的).

videoLabels.car {1} .brakeLight.isOn
Ans = logical 1 Ans = logical 1

现在来看长方体时间间隔内第一个点云序列帧的标签。点云序列不支持子标签或属性。金宝app而不是存储长方体标签位置字段的结构,长方体包围框的位置存储在-by-9矩阵,其中是长方体标签的个数。在这种情况下,因为这个帧只包含一个长方体标签是1。

lidarLabels.car {1}
ans = struct with fields: Position: [-1.1559 -0.7944 1.2012 12.6196 5.9278 3.0010 00 00] brakeLight: []

1 × 9边框位置的格式为[xctr, yctr, zctr, xlen, ylen, zlen, xrot, yrot, zrot],地点:

  • xctryctr,zctr指定长方体的中心。

  • xlenylen,zlen指定长方体沿的长度x-,y- - - - - -,z-轴,在应用旋转之前。

  • xrotyrot,zrot指定长方体沿的旋转角度x-,y- - - - - -,z分别设在。当观察它们对应轴的正向时,这些角是顺时针正的。

该图显示了这些值如何指定长方体的位置。

场景标签数据

SceneLabelData属性包含SceneLabelData对象,其属性包含跨所有信号的场景标签数据。属性的名称与场景标签的名称相匹配。显示对象属性名。

gTruth。SceneLabelData
ans = SceneLabelData属性:日间:[0秒10.15秒]

白天标签适用于整个时间间隔,大约为10秒。

使用Ground Truth标签

本例中显示的标签仅用于说明目的。对于您自己的标签,导出标签后,您可以将它们用作对象检测器的训练数据。来收集标签数据groundTruthMultisignal对象用于训练,使用gatherLabelData函数。

要共享标记的地面真实值数据,请共享包含groundTruthMultisignal对象,而不是包含应用程序会话的mat文件。详情请参见共享和存储标记地面真相数据

另请参阅

|||

相关的话题