出口地面实况对象自定义和可可JSON文件
这个例子向您展示了如何导出地面实况对象自定义数据格式JavaScript对象表示法(JSON)文件,和可可[1]数据格式JSON文件。
你可以解析JSON文件用于培训和推理在机器学习框架。自定义数据格式JSON文件的格式类似于可可数据格式。所不同的是,JSON文件的格式表示标签注释修改包括各种标签类型地面实况支持的对象。万博1manbetx
这个示例使用一个地面实况对象包含标签之前使用视频贴标签机生成应用程序。
出口一个地面实况对象从贴标签机应用到JSON文件,遵循这些步骤:
使用图片标志或视频贴标签机分别应用标签图像或视频。
标签导出到文件或工作区中生成一个地面实况对象。
在本例中遵循的步骤。
加载地面真值对象
加载一个地面实况对象
负载(“VehicleImageSequenceGroundTruth.mat”)
显示标签定义
VehicleImageSequenceGroundTruth.LabelDefinitions
ans =3×6表名字类型LabelColor组描述层次_____ _________ _____________________________ ___________ ___________ _______{‘汽车’}多边形0.5862 0.8276 0.3103{‘汽车’}{0 x0 char} {1 x1 struct}{“车道”}行0.49412 0.18431 0.55686{‘路’}{0 x0 char} {0 x0双}{‘阳光’}场景1 0.41176 - 0.16078{‘没有’}{0 x0 char} {0 x0双}
添加信息和授权信息(可选)
添加元数据注释指定信息和许可名称-值对
信息=结构(…“年”,2020,…“版本”,' 1 ',…“描述”,“车辆数据集”,…“date_created”,日期时间…);许可证=结构(…“url”,{“www.tianjin-qmedu.com”,“www.tianjin-qmedu.com”},…“名字”,{“许可证1”,《许可证2》}…);
地面实况对象导出到一个自定义数据格式JSON文件
使用exportGroundTruthToJSON
函数导出地面实况对象的JSON文件。
的exportGroundTruthToJSON
函数解析地面实况对象中的数据,编码在一个自定义的数据格式描述下面,然后生成的JSON文件。
annotationsFileName =“vehicles_annotations.json”;exportGroundTruthToJSON (VehicleImageSequenceGroundTruth annotationsFileName,“信息”信息,“许可证”许可证)
出口的对象检测地面实况对象可可JSON文件数据格式
使用exportGroundTruthToJSON
与“可可”
名称-值设置为真正的
出口对象检测数据标签使用多边形可可对象检测数据格式JSON文件。
创建一个地面实况对象对象检测,可以出口到可可JSON数据格式文件,遵循这些步骤:
使用多边形标签类型标签的对象实例。
使用像素标签类型标签人群对象的区域。其标签名称应该如下:polygonLabelName_crowd (polygonLabelName标签名称对应的多边形标签)。
例如:
实例和注释图像包含两人人群区域,
创建一个标签类型的多边形与名称
“人”
注解人实例。创建一个对应的像素标签的名字
“person_crowd”
注释人群区域。
的“_crowd”
后缀是用来绑定两个标签在一起。因此,确保为每个像素标签有一个对应的多边形标签。
注意:虽然出口可可对象检测数据格式,预期指定的标签类型抛出警告被忽视。在这种情况下,由于地面实况对象行标签,他们将被忽略。
annotationsFileName =“vehicles_annotations_coco.json”;exportGroundTruthToJSON (VehicleImageSequenceGroundTruth annotationsFileName,…“信息”信息,“许可证”许可证,“可可”,真正的)
警告:标签类型,线,不支持现场,和被忽略在出口可可JSON数据格式文件万博1manbetx
自定义JSON数据格式
导出的JSON文件包含这五个领域:
信息
许可证
类别
图像/视频
注释
信息
信息字段指定数据集和注释信息通过使用名称-值对“信息”的论点。必须是一个标量值的结构。
默认值:
{“年”:今年,“版本”:“1”,“描述”:“使用MATLAB创建”、“date_created”:当前日期时间}
许可证
许可证字段指定信息许可使用许可名称-值对的论点。的值必须是一个结构数组。
默认值:[]
类别
分类字段包含地面实况标签定义表的内容。表中的变量名作为字段和修改是类似于可可数据格式。一个额外的字段Id标识每个标签定义。
每个类别对象包含以下两个附加字段替换“层次结构”变量如果它存在:
属性:属性的定义包含标签。
Sublabels:包含Sublabels定义的标签。
图像/视频
图像/视频字段包含一个列表的图片(或视频)对象和相关信息。
数据格式:
{" id ":独特的形象标识,“time_stamp”:图像帧的时间戳(只适用于数据来源与时间戳),“宽度”:图像/视频的宽度,“高度”:图像/视频的高度,“file_name”:文件名称、“file_path”:绝对文件路径,“date_captured”:当前图像的最后修改日期/ datetime}
注释
注释字段包含注释对象的列表。注释对象的数据格式取决于标签类型和如下:
矩形ROI
{" id ":独特的注释id、“image_id”:映像id、“category_id添加”:类别id,“位置”:[x, y,宽度、高度]边界框的位置,“属性”:包含属性数据,“sublabels”:包含sublabels数据}
x
和y
指定矩形的左上角,也就是。w
指定矩形的宽度,也就是沿其长度x设在。h
指定矩形的高,这是它的长度沿y设在。
多边形ROI
{" id ":独特的注释id、“image_id”:映像id、“category_id添加”:类别id,“位置”:[[(x1, y1 x2 y2……xN yN]] N个点的多边形,“属性”:包含属性数据,“sublabels”:包含sublabels数据}
多段线ROI
{" id ":独特的注释id、“image_id”:映像id、“category_id添加”:类别id,“位置”:[(x1, y1 x2 y2……xN yN) N个点的多段线。,"attributes": Contains attributes data, "sublabels": Contains sublabels data }
(x1, y1,…指定点的位置,也就是。
ProjectedCuboid ROI
{" id ":独特的注释id、“image_id”:映像id、“category_id添加”:类别id,“位置”:列表的形式(xctr、yctr zctr, xlen, ylen, zlen, xrot, yrot, zrot],“属性”:包含属性数据,“sublabels”:包含sublabels数据}
xctr
,yctr
,zctr
指定投影长方体的中心,也就是。xlen
,ylen
,zlen
投射长方体沿着指定的长度x设在,y设在,z分别设在前旋转被应用。xrot
,yrot
,zrot
指定的旋转角度投影的长方体x设在,y设在,z分别设在。这些角时clockwise-positive在相应的轴的前进方向。
PixelLabel ROI
{“image_id”:映像ID、“file_name”:像素标签图像文件的名称,“file_path”:路径像素标签图像文件,“segments_info”:}的部分对象列表
段对象格式:像素标签图像中的每一段是1段对象。
{" id ": PixelLabelID标签或R + G * 256 + B * 256 ^ 2,以防如果PixeLabelID是一个数组,“category_id添加”:类别id,“区域”:区域的像素}
场景
{" id ":独特的注释id、“image_id”:映像id、“category_id添加”:现场标签适用于图像的类别id}
限制
自定义标签类型不能出口到JSON文件。
你不能从一个定制的导出数据读者地面实况数据源JSON文件格式。
只有多边形和人群像素标签roi可以导出到可可对象检测数据格式。
生成的JSON文件“exportGroundTruthToJSON helper函数不能进口回MATLAB作为地面实况对象。
引用
[1]林TY. et al。(2014)微软可可:常见的对象上下文。D:舰队。,Pajdla T。,Schiele B., Tuytelaars T. (eds) Computer Vision – ECCV 2014. ECCV 2014. Lecture Notes in Computer Science, vol 8693. Springer, Cham. https://doi.org/10.1007/978-3-319-10602-1_48