更新时间:2022-11-24 GMT+08:00
分享

解析Pascal VOC文件

解析xml文件支持本地和OBS,如果是OBS,需要Session信息。

PascalVoc.parse_xml(xml_file_path, session=None)

示例代码

指定xml路径,通过调用parse_xml来解析获取xml文件的信息。
from modelarts.dataset.format.voc.pascal_voc import PascalVoc
from modelarts.session import Session

path = "obs://your-obs-bucket/voc/test.xml"
session = Session()
pascal_voc = PascalVoc.parse_xml(path, session=session)
print(pascal_voc) # 打印解析结果

参数说明

表1 请求参数

参数

是否必选

参数类型

描述

xml_file_path

String

xml文件路径。

session

Object

会话对象,初始化方法请参见Session鉴权。 当需要操作OBS时必填。

表2 pascal_voc 返回参数

参数

参数类型

描述

folder

String

文件夹名称。

file_name

String

文件名称。

source

Object

数据源信息,详细请见表3

width

Long

图片长度。

height

Long

图片高度。

depth

Long

图片深度。

segmented

String

分割。

mask_source

String

图像分割得到的mask文件的云存储路径,目前只支持PNG格式。

voc_objects

JSON Array

标注对象列表,详细请见表4

表3 source参数

参数

参数类型

描述

database

String

数据集名称,比如“The VOC2007 Database”。

annotation

String

标注,比如“PASCAL VOC2007”。

image

String

图片信息。

表4 voc_object参数

参数

参数类型

描述

name

String

文件夹名称。

properties

JSON Array

标注对象属性,为key-value列表格式,其中key和value的值均为String类型。

pose

String

标注内容的拍摄角度。

truncated

String

标注内容是否被截断(0表示完整)。

occluded

String

标注内容是否被遮挡(0表示未遮挡)。

difficult

String

标注目标是否难以识别(0表示容易识别)。

confidence

Double

置信度,数值类型,范围0<=confidence<=1,表示机器标注的置信度。

position

Object

标注对象的位置信息,详细请见表5

parts

Object

子标注对象列表,即嵌套的voc_object列表,详细请见表4

mask_color

String

图像分割mask图像的颜色。

表5 Position说明

type

形状

标注信息

point

点的坐标

<x>100<x>

<y>100<y>

line

线

各点坐标

<x1>100<x1>

<y1>100<y1>

<x2>200<x2>

<y2>200<y2>

bndbox

矩形框

左下和右上两个点坐标

<x_min>100<x_min>

<y_min>100<y_min>

<x_max>200<x_max>

<y_max>200<y_max>

polygon

多边形

各点坐标

<x1>100<x1>

<y1>100<y1>

<x2>200<x2>

<y2>100<y2>

<x3>250<x3>

<y3>150<y3>

<x4>200<x4>

<y4>200<y4>

<x5>100<x5>

<y5>200<y5>

<x6>50<x6>

<y6>150<y6>

circle

圆形

圆心坐标和半径

<cx>100<cx>

<cy>100<cy>

<r>50<r>

相关文档