开始使用视频标签

视频贴图应用程序提供了一种简单的方法来标记的关注区域(ROI)的标签,折线ROI标签,像素ROI标签和标签场景矩形区域中的视频或图像序列。这个例子让你开始通过向您展示如何使用的应用程序:

  • 从视频手动标记图像框架。

  • 自动标签跨图像帧使用自动化算法。

  • 导出标记的地面真实数据。

加载未标记的数据

打开应用程序并加载在高速公路上驾驶的车辆视频。视频必须采用文件格式可读录像机

Videolabeler('VisionTraffic.avi'

或者,打开应用程序从应用程序标签,下面图像处理和计算机视觉.然后,从加载菜单,加载视频数据源。

探索视频。单击播放按钮播放整个视频,或使用滑块在帧之间导航。

该应用程序还使您能够通过选择来加载具有相应时间戳的图像序列加载>图像序列.图像必须可读Imread.

要加载无法读取的自定义数据源录像机或者Imread., 看使用自定义图像源阅读器进行标记

将时间间隔设置为标签

您可以标记整个视频或从视频的一部分开始。在此示例中,您可以在加载的视频中标记五秒钟的时间间隔。在视频下方的文本框中,在几秒钟内输入以下时间:

  1. 在里面当前时间盒子,类型5.并按输入

  2. 在里面开始时间盒子,类型5.使得滑块是在时间间隔的开始。

  3. 在里面时间结束盒子,类型10.

或者,作出调整的时间间隔,单击并拖动红色间隔标记。

现在设置整个应用程序以专注于此特定时间间隔。视频仅在此间隔内播放,标签和自动化算法仅适用于此间隔。您可以通过移动标志随时更改间隔。

要扩展时间间隔填充整个播放部分,请单击放大时间间隔

创建标签定义

定义要绘制的标签。在此示例中,您可以在应用程序中直接定义标签。从MATLAB定义标签®命令行代替,可使用labelDefinitionCreator

创建ROI标签

一个ROI标签是与感兴趣区域(ROI)对应的标签。您可以定义这些类型的ROI标签。

ROI标签 描述 示例:驾驶场景
矩形 绘制矩形ROI标签(边框)周围的物体。

车辆,行人,道路标志

线 绘制线性ROI标签以表示线条。绘制折线投资回报率,使用两点或多个点。

车道边界,护栏,道路遏制

像素标签 将标签分配给像素以获取语义分割。您可以使用多边形,刷子或洪水填充手动标记像素。有关像素标签的更多信息,请参阅语义分割标签像素

车辆,路面,树木,路面

在此示例中,您定义了一个车辆组用于标记车辆类型,然后创建矩形ROI标签A.卡车.可选地,您可以使用显示ROI标签下拉菜单选择悬停总是, 或者绝不要控制标签期间如何出现ROI标签名称。默认情况下,将鼠标悬停在ROI上时,将显示名称。

  1. 在里面ROI标签窗格在左侧,单击标签

  2. 创建一个矩形标签命名

  3. 或者,通过点击预览颜色更改标签的颜色。

  4. 团体下拉菜单,选择新集团并命名小组车辆

  5. 点击好的

    车辆组名称显示在ROI标签窗格与标签创建。您可以在列表中的标签移动到列表中左键点击不同的位置或组拖动标签向上或向下。

  6. 添加第二个标签。点击标签.命名标签卡车确保车辆组被选中。点击好的

  7. 使用鼠标绘制矩形两辆车周围都是roi。

创建Sublabels

一种Sublabel.是一种ROI标签,对应于父ROI标签。属性中定义的特定标签必须属于或属于该标签的子标签ROI标签窗格。例如,在驾驶场景中,车辆标签可能具有用于前灯,牌照或轮子的子标签。

定义一个前灯的子标签。

  1. 在里面ROI标签窗格在左侧,单击标签。

  2. 点击Sublabel.

  3. 创建一个矩形sublabel命名前灯也可以选择写一篇描述。点击好的

    前灯Sublabel出现在ROI标签窗格。Sublabel嵌套在所选的ROI标签下,,并具有与父标签相同的颜色。

    您可以在标签下添加多个子标签。您还可以拖动和删除子标签重新排列它们在列表中。右键单击任何标签额外修改。

  4. 在里面ROI标签窗格,选择前灯sublabel。

  5. 在图像框架中,选择标签。选择后标签会变为黄色。你必须选择标签(父ROI),然后才能添加子标签。

    前灯每个汽车的子标筋。

  6. 重复上一个步骤以标记另一辆车的前灯。要更准确地绘制标签,请使用位于标签窗口右上角的平移和缩放选项。

子标签只能与矩形或折线ROI标签一起使用,不能有自己的子标签。有关使用子标签的详细信息,请参见使用子标签和属性标签地面真实数据

创建属性

一个属性提供ROI标签或SUBLABEL的进一步分类。属性指定有关可绘制标签的其他信息。例如,在驾驶场景中,属性可以包括车辆的类型或颜色。

您可以定义这些类型的属性。

属性类型 示例属性定义 示例默认值

数值

细绳

逻辑

列表

为车辆类型添加属性。

  1. 在里面ROI标签窗格在左侧,选择标签,然后单击属性

  2. 在里面属性名称盒子,类型.将属性类型设置为列表

  3. 在里面列表项部分,键入不同类型的汽车,如轿车掀背车, 和车皮,各在自己的行。可选赋予属性的说明,然后单击好的

  4. 在视频的第一帧中,选择一个ROI标签。在里面属性和sublabels.窗格,选择合适的该车辆的属性值。

  5. 重复上一步以分配一个属于其他车辆。

您还可以将属性添加到sublabels。添加属性前灯下标的告诉大灯是否接通。

  1. 在里面ROI标签窗格在左侧,选择前灯子标签,然后点击属性

  2. 在里面属性名称盒子,类型ISON..将属性类型设置为逻辑.离开默认值设置,也可以写描述,然后单击好的

  3. 在视频帧中选择一个前灯。设置适当的ISON.属性值,或将属性值保留为

  4. 重复上一步设置ISON.属性为其他大灯。

要删除属性,请右键单击ROI标签或Sublabel,然后选择要删除的属性。删除属性从所有先前创建的ROI标签注释中删除属性信息。

创建场景标签

一种场景标签定义整个场景的其他信息。使用场景标签来描述条件,例如照明和天气,或事件,如车道变化。

创建一个在视频中使用的场景标签。

  1. 选择现场标签左边的TAB。

  2. 点击定义新的场景标签按钮,并创建名为的场景标签阳光明媚.确保团体被设定为没有任何.点击好的

    现场标签窗格显示场景标签定义。

  3. 您可以将标签应用于当前帧或帧间隔。与之阳光明媚场景标签定义仍然选择现场标签窗格中,选择时间间隔

  4. 点击添加标签.的复选标记将出现阳光明媚场景标签,指示标签现在适用于时间间隔中的所有帧。

  5. 编辑或删除场景标签,在标签上点击右键并选择编辑标签或者删除标签

标签地面真相

到目前为止,您只标记了视频中的一帧。要标记剩余的帧,请选择其中一个选项。

手动标记地面真相

当您单击右箭头键以进入下一帧时,上一帧的ROI标签不会延续。只有阳光明媚场景标签适用于每个帧中,因为施加在整个时间间隔该标签。

逐帧前进,手动绘制标签和子标签的roi。还要更新这些roi的属性信息。

使用自动化算法标记地面真理

要加快标签过程,可以在应用程序中使用自动化算法。您可以定义自己的自动化算法,查看创建标签自动化算法时间自动化算法或使用内置自动化算法。在此示例中,您可以使用内置点跟踪算法标记地面真实性。

在此示例中,您只能自动执行标记ROI标签。内置的自动化算法不支持子标签和属性自动化。万博1manbetx

  1. 选择要自动执行的标签。在视频的第一帧中,按Ctrl然后点击选择这两个标签注释。标签以黄色突出显示。

  2. 从App ToolStrip,选择选择算法>点跟踪器.该算法跟踪过使用奏卢卡斯-Tomasi的(KLT)算法短的时间间隔的一个或多个矩形的ROI。

  3. (可选)配置自动化设置。例如,确保导入所选ROIS.被选择为使得标签您选择的导入自动化会话。

  4. 点击自动化打开自动化会话。算法指令出现在右窗格中,并且可以自动使用所选标​​签。

  5. 点击运行通过间隔跟踪所选ROI。

  6. 检查运行算法的结果。

    随后进入现场的车辆没有标识。未标记的车辆没有初始ROI标签,因此算法没有跟踪它们。点击撤消运行.使用滑块找到每辆车第一次出现的帧。画车辆rois围绕每个车辆,然后点击运行再次。

  7. 通过帧提前框架并手动移动,调整大小,删除或添加ROI,以提高自动化算法的结果。

    当您对算法结果感到满意时,请单击接受.或者,如果要丢弃会话期间生成的标签并手动使用标签,请单击取消.这取消按钮仅取消算法会话,而不是应用程序会话。

(可选)您现在可以手动标记Sublabel和属性信息的剩余帧。

为了进一步评估您的标签,您可以查看标记的地面真理的视觉摘要。从App ToolStrip,选择查看标签摘要.使用本摘要将框架,标签频率和场景条件进行比较。有关更多详细信息,请参阅查看Ground Truth标签摘要.此摘要不支持子标签或属性。万博1manbetx

出口标记地面真相

您可以将标记的地面真相导出到MAT文件或MATLAB工作区中的变量。在这两种情况下,将标记的地面真相存储为一个地面目的。您可以使用此对象培训基于深度学习的计算机视觉算法。有关更多详细信息,请参阅对象检测和语义分割的培训数据

笔记

如果导出像素数据,像素标签数据和地面实测数据都保存在单独的文件,但在同一个文件夹中。对于考虑与出口像素标签工作时,看到贴标程序应用程序如何存储导出像素标签

在此示例中,您将标记的地面真相导出到MATLAB工作区。从App ToolStrip,选择出口标签>到工作区.导出的matlab变量是gTruth

显示导出的属性地面目的。导出对象中的信息可能与此处显示的信息不同。

gTruth
gTruth = groundTruth with properties: DataSource: [1×1 groundTruthDataSource] LabelDefinitions: [2x6 table] LabelData: [531×3时间表]

数据源

数据源是一个地下adatasource.包含图像或视频和时间戳的路径的对象。显示此对象的属性。

gtruth.datasource.
使用matlab\toolbox\vision\visiondata\visiontraffic. png文件属性avi TimeStamps: [531×1 duration]

标签定义

标签是包含有关标签定义的信息的表。该表不包含绘制在视频帧上的标签的信息。要将标签定义保存在自己的mat文件中,请从应用程序工具条中选择节省>标签定义.然后,您可以通过选择将这些标签定义导入到另一个应用程序会话中导入文件

显示标签定义表。每行包含有关ROI标签定义或场景标签定义的信息。如果您导出像素标签数据,则标签表还包括一个Pixellabelid.列,其中包含每个像素标签定义的ID号。

gtruth.labeldefinitions
ans = 3×6表名称类型LabelColor组描述层次结构  _________ _________ ____________ ___________ ___________ ____________ {' 汽车的矩形}{1×3双}{‘汽车’}{0×0字符}{1×1 struct}{“卡车”}矩形{1×3双}{‘汽车’}{0×0字符}{0×0双}{‘阳光’}场景{1×3双}{‘天气’}{0×0字符}{0×0双}

标签, 这等级制度列存储有关父ROI标签的Sublabel和属性定义的信息。

显示用于该下标的和属性信息标签。

gtruth.labeldefinitions.hierarchy {1}
ANS =带有字段的结构:NUMPOOROS:[1×1结构]颜色:[1×1结构] inmotion:[1×1结构]肉类:[1×1结构]前灯:[1×1结构]类型:矩形描述:''

显示前灯sublabel。

gTruth.LabelDefinitions.Hierarchy {1} .headlight
ans = struct with字段:类型:矩形描述:''颜色:[0.5862 0.8276 0.3103] ISON:[1×1结构]

显示属性。

gtruth.labeldefinitions.hierarchy {1} .cartype
ANS =结构与字段:listItems中:{3×1细胞}说明: ''

标签数据

Labeldata.是一个包含关于在整个视频中绘制的ROI标签的信息的时间表。时间表每个标签包含一个列。

显示时间表的前几行。前几个时间戳表明没有检测到车辆,并且阳光明媚场景标签是错误的.这些结果是因为这个视频部分没有标注。只有5-10秒的时间间隔被标记。

labelData = gTruth.labelData;头(labelData)
ANS = 8×3时间表时间车辆转向架晴天__________ ____________ ____________ _____ 5.005秒[1×2结构] [1×0结构]真5.0384秒[1×2结构] [1×0结构]真5.0717秒[1×2结构] [1×0结构]真5.1051秒[1×2结构] [1×0结构]真5.1385秒[1×2结构] [1×0结构]真5.1718秒[1×2结构] [1×0结构]真5.2052秒[1×2结构] [1×0结构]真5.2386秒[1×2结构] [1×0结构]真

从包含标签的5-10秒间隔显示前几行。

gTruthInterval = labelData(TIMERANGE(00:00:05''00:00:10'),:);头(GTRECHINTERVAL)
ANS = 8×3时间表时间车辆转向架晴天__________ ____________ ____________ _____ 5.005秒[1×2结构] [1×0结构]真5.0384秒[1×2结构] [1×0结构]真5.0717秒[1×2结构] [1×0结构]真5.1051秒[1×2结构] [1×0结构]真5.1385秒[1×2结构] [1×0结构]真5.1718秒[1×2结构] [1×0结构]真5.2052秒[1×2结构] [1×0结构]真5.2386秒[1×2结构] [1×0结构]真

对于每一个人标签,该结构包括边界框和绕其子标签和属性信息的位置。

显示时间间隔开始时车辆的包围盒位置。您的边界框位置可能与这里显示的不同。

gtruthinterval(1,:)。汽车{1} .Position%[X Y宽度高度],以像素为单位
ANS = 1×4单列矢量415.8962 82.4737 130.8474 129.3805 ANS = 1×4单列矢量235.2182 1.0000 117.0611 55.3500

保存应用程序会话

从App ToolStrip,选择节省并保存应用程序会话的mat -文件。保存的会话包括数据源、标签定义和已标记的ground truth。它还包括您的会话首选项,如应用程序的布局。要更改布局选项,请选择布局

该应用程序会话MAT文件是当您选择导出地面实况MAT文件分开出口>从文件.为了共享标记的地面真值数据,作为一个最佳实践,共享地面真值mat -文件包含地面对象,而不是应用程序会话sop文件。有关更多详细信息,请参阅分享和存储标记地面真相数据

也可以看看

应用程序

对象

相关话题