groundTruth
地面真值标签数据
描述
的数组创建对象检测器的训练数据
groundTruth
对象,使用objectDetectorTrainingData
函数。的数组为语义分割网络创建训练数据
groundTruth
对象,使用pixelLabelTrainingData
函数。
创建
要导出groundTruth
对象,在应用程序工具条上选择出口标签>到工作空间.应用程序将对象导出到MATLAB®工作区。要创建groundTruth
对象时,使用groundTruth
函数(此处描述)。
属性
数据源
- - - - - -地面真实数据来源
groundTruthDataSource
对象
地面真实数据的来源,指定为groundTruthDataSource
对象。对象包含描述用于标记地面实况数据的视频、图像序列或自定义数据源的信息。
若要从原始数据源访问图像,请使用VideoReader
或imageDatastore
.您还可以使用自定义读取函数。详情请参见使用自定义图像源阅读器进行标记.
LabelDefinitions
- - - - - -标签定义
表格
此属性是只读的。
标签定义,作为表指定。要创建此表,请使用以下选项之一。
在其中一个标签应用程序中,创建标签定义,然后将它们导出为
groundTruth
对象。使用一个
labelDefinitionCreator
对象生成标签定义表。如果您将此表保存到mat文件中,则可以通过选择将标签定义加载到标签应用程序会话中负载>标签定义从应用程序工具条。在MATLAB命令行中创建标签定义表。
属性中指定的表的必选列和可选列LabelDefinitions
财产。
列 | 描述 | 必需或可选 |
---|---|---|
的名字 |
指定每个标签定义名称的字符串或字符向量。 | 要求 |
类型 |
labelType 指定每个标签定义类型的枚举,例如矩形 或场景 . |
要求 |
LabelColor |
RGB三元组的1 × 3行向量,指定标签定义的颜色。取值范围为[0,1]。黄色(RGB三元组[1 1 0])保留为标签应用中所选标签的颜色。 | 可选 在标签应用程序中定义标签时,必须指定颜色。因此,导出的标签定义表总是包含此列。 属性创建标签定义时 |
PixelLabelID |
标量,列向量,或者米-by-3矩阵的整值标签id。PixelLabelID 指定用于表示标签定义的像素标签值。像素标签ID值必须在0到255之间。 |
可选 在标签应用程序中定义像素标签时 在MATLAB命令行中创建标签定义表时,如果设置 |
集团 |
指定每个标签定义所属的组的字符串或字符向量。 | 可选 如果在MATLAB命令行中创建标签定义表,则不需要包含 如果您从标签应用程序导出标签定义或使用 |
描述 |
描述每个标签定义的字符串或字符向量。 | 可选 如果在MATLAB命令行中创建标签定义表,则不需要包含 如果您从标签应用程序导出标签定义或使用 |
层次结构 |
结构,包含每个标签定义的子标签和属性数据。的例子层次结构 格式,请参阅开始使用图像标签器或开始与视频标签. |
可选 在标签应用程序中,当您定义子标签或属性时,导出的 |
例如,考虑一个标签定义为天空
,植被
,车道
,StopSign
,车辆
,从贴标签机视频应用程序。
标签定义包括像素标签,因此该表包含
PixelLabelID
列。其中两个标签包含属性,因此应用程序创建了一个
层次结构
跨所有标签定义应用的列。标签定义没有分配的组,因此
集团
列是“没有”
适用于所有标签定义。
请注意
标签应用程序只能加载像素id在1到255之间的像素数据。
LabelData
- - - - - -为每个ROI和场景标签标记数据
表格|时间表
此属性是只读的。
为每个ROI和场景标签标记数据,指定为表格
对于图像集合或时间表
用于视频或图像序列。的每一列LabelData
控件保存单个标签定义的标签,并对应于的名字
中的每一行的值LabelDefinitions
.这些LabelData
描述表的元素。标签类别指定为labelType
枚举。
或者,对于按标签类型分组的ROI标签数据,可以使用单个列进行标记ROILabelData
,可以使用并指定为包含至少一种标签类型的结构,RectangleData
,PolygonData
,LineData
,或ProjCuboidData
.
表中描述了每种标签类型的存储格式。
标签类型 | 每个时间戳标签的存储格式 |
---|---|
labelType。矩形 |
|
|
图中显示了这些值如何决定长方体的位置。 |
|
图中显示了这些值如何决定长方体的位置。
|
labelType。行 |
|
labelType。PixelLabel |
所有像素标签定义的标签数据存储在单个标签中米1 |
labelType。多边形 |
|
labelType。自定义 |
标签完全按照时间表中指定的方式存储。如果你导入groundTruthMultisignal 对象中包含自定义标签数据地面真相标签在收集用于训练的标签数据时使用自定义数据,并将其与应用中标记的数据相结合。 |
金宝app支持的GroundTruth对象
视频标签应用程序 | 图像标签应用程序 | |
---|---|---|
数据源 | 视频文件,图像序列文件夹,自定义阅读器 | 图像文件 |
标签定义 | 矩形 ,行 ,PixelLabel ,或场景 标签类型 |
矩形 ,行 ,PixelLabel ,或场景 标签类型 |
标签数据 | 时间表的矩形 ,行 ,PixelLabel ,或场景 标签类型 |
的表格(没有时间表)矩形 ,行 ,PixelLabel ,或场景 标签类型 |
若要添加不是ROI的真实数据(矩形
,行
,PixelLabel
)或场景
将类别标记为groundTruth
对象提供标签定义labelType
这是自定义
.当你将自定义数据加载到标签应用程序中时,它是不可见的。
对象的功能
selectLabelsByGroup |
根据标签组选择接地真值标签 |
selectLabelsByType |
根据标签类型选择接地真值标签 |
selectLabelsByName |
根据标签名称选择接地真值标签 |
changeFilePaths |
更改地面实况数据中的文件路径 |
gatherLabelData |
从地面实况收集标签数据 |
例子
为停车标志和汽车创建地面真相
从图像集合创建数据源。
数据=负载(“stopSignsAndCars.mat”);imagefilename = data.stopSignsAndCars.imageFilename(1:2)
imageFilenames =2 x1细胞{' stopSignImages / image001.jpg '} {' stopSignImages / image002.jpg '}
imageFilenames = fullfile(toolboxdir(“愿景”),“visiondata”, imageFilenames);dataSource = groundTruthDataSource(imageFilenames);
定义用于指定基本真理的标签。使用labelDefinitionCreator
创建标签定义表。
ldc = labelDefinitionCreator();addLabel (ldc,“stopSign”, labelType.Rectangle);addLabel (ldc,“carRear”, labelType.Rectangle);labelDefs = create(ldc)
labelDefs =2×5表名称类型LabelColor组描述 ____________ _________ __________ ________ ___________ {' 矩形stopSign”}{0 x0 char}{”没有 '} {' '} {' carRear的矩形}{0 x0 char}{‘没有’}{' '}
初始化矩形roi的标签数据。
stopSignTruth = {[856 318 39 41];[445 523 52 54]};careartruth = {[398 378 315 210];[332 633 691 287]};
构造一个标签数据表。
labelNames = {“stopSign”;“carRear”};labelData = table(stopSignTruth, careartruth,“VariableNames”labelNames)
labelData =2×2表stopSign carRear _________________ ___________________ {[ 856 318 39 41]} {[398 378 315 210]} {[445 523 52 54]} {[332 633 691 287]}
创建一个ground truth对象。
gTruth = groundTruth(数据源,labelDefs,labelData)
属性:DataSource: [1x1 groundTruthDataSource] LabelDefinitions: [2x5 table] LabelData: [2x2 table]
创建道路车道的地面真相数据
创建一个groundTruth
对象来存储表示已标记道路车道的数据。
从图像创建数据源。
数据源= groundTruthDataSource({“stopSignTest.jpg”});
定义用于指定基本真理的标签。使用labelDefinitionCreator
创建标签定义表。
ldc = labelDefinitionCreator();addLabel (ldc,“车道”, labelType.Line);labelDefs = create(ldc);
在图像中指定两个车道标记。
laneMarkerTruth = {[257 254;311 180] [327 183;338 205;374 250]};
构造一个标签数据表。
labelNames = {“车道”};labelData = table(laneMarkerTruth,“VariableNames”labelNames)
labelData =表格车道 ____________________________ { 2 x2双}{3 x2双}
创建一个groundTruth对象。
gTruth = groundTruth(数据源,labelDefs,labelData)
gTruth = groundTruth with properties: DataSource: [1x1 groundTruthDataSource] LabelDefinitions: [1x5 table] LabelData: [1x1 table]
为像素标签创建Ground Truth数据
创建一个groundTruth
对象来存储表示场景各部分的数据。
创建数据源。
数据源= groundTruthDataSource({“visionteam.jpg”});
使用labelDefinitionCreator
创建标签定义表。定义标签,“人”
而且“背景”
.将它们对应的标签类型指定为PixelLabel
.
ldc = labelDefinitionCreator ();addLabel (ldc,“人”, labelType.PixelLabel);addLabel (ldc,“背景”, labelType.PixelLabel);labelDefs = create(ldc)
labelDefs =2×6表名字类型LabelColor PixelLabelID组描述 ______________ __________ __________ ____________ ________ ___________ {' 人”}PixelLabel {0 x0 char}{[1]}{”没有 '} {' '} {' 背景”}PixelLabel {0 x0 char}{[2]}{‘没有’}{' '}
为图像指定像素标签数据的位置。
dataFile = {“visionteamPixelLabels.png”}
外部=1x1单元阵列{' visionteamPixelLabels.png '}
为像素标签数据构造一个标签数据表。
labelData = table(数据文件,“VariableNames”,{“PixelLabelData”})
labelData =表格PixelLabelData _____________________________ {' visionteamPixelLabels.png '}
创建一个groundTruth
对象。
gTruth = groundTruth(数据源,labelDefs,labelData)
gTruth = groundTruth with properties: DataSource: [1x1 groundTruthDataSource] LabelDefinitions: [2x6 table] LabelData: [1x1 table]
为汽车和车道标志创建地面真相
从视频创建数据源。
videoName =“caltech_cordova1.avi”;dataSource = groundTruthDataSource(videoName);
定义用于指定基本真理的标签。使用一个labelDefinitionCreator
对象创建标签定义表。
ldc = labelDefinitionCreator();addLabel (ldc,“汽车”, labelType.Rectangle);addLabel (ldc,“LaneMarkers”, labelType.Line);labelDefs = create(ldc)
labelDefs =2×5表名称类型LabelColor组描述 _______________ _________ __________ ________ ___________ {' 汽车的矩形}{0 x0 char}{”没有 '} {' '} {' LaneMarkers”}{0 x0 char}{‘没有’}{' '}
为汽车和车道标志创建标签数据。
numRows = numel(dataSource.TimeStamps);carsTruth = cell(numRows,1);laneMarkerTruth = cell(numRows,1);
在第一帧中添加两个汽车标签和两个车道标记。
carsTruth{1} = [182 186 31 22;404 191 53 34];laneMarkerTruth{1} = {[257 254;311 180] [327 183;338 205;374 250]};
创建标签数据表。
labelNames = {“汽车”,“LaneMarkers”};labelData = table(carsTruth,laneMarkerTruth,“VariableNames”, labelNames);
创建一个groundTruth
对象。要将此对象导入标记应用程序,请从打开>导入标签菜单。
gTruth = groundTruth(数据源,labelDefs,labelData)
gTruth = groundTruth with properties: DataSource: [1x1 groundTruthDataSource] LabelDefinitions: [2x5 table] LabelData: [250x2时间表]
提示
groundTruth
基于视频的数据源的对象依赖于操作系统的视频读取功能。一个groundTruth
使用视频数据源创建的对象仅在用于创建它的同一平台上保持一致。创建一个平台无关的groundTruth
对象,将视频转换为图像序列,并将相关的时间戳包含在图像序列中。
版本历史
在R2017a中引入
Abrir比如
Tiene una versión modificada de este ejemplo。¿Desea abrir este ejemplo con sus modificaciones?
MATLAB突击队
Ha hecho clic en unenlace que对应一个este commando de MATLAB:
弹射突击队introduciéndolo en la ventana de commandos de MATLAB。Los navegadores web no permission comandos de MATLAB。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。