Updated on 2022-11-24 GMT+08:00

Parsing a Pascal VOC File

Parse an XML file in either a local or OBS path. If an OBS path is used, a session is required.

PascalVoc.parse_xml(xml_file_path, session=None)

Sample Code

Specify an XML file path and call parse_xml to parse the file.
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) # Print the parsing result.

Parameters

Table 1 Request parameters

Parameter

Mandatory

Type

Description

xml_file_path

Yes

String

XML file path

session

No

Object

Session object. For details about the initialization method, see Session Authentication. This parameter is mandatory when OBS is used.

Table 2 pascal_voc parameters

Parameter

Type

Description

folder

String

Folder name

file_name

String

File name

source

Object

Data source. For details, see Table 3.

width

Long

Image width

height

Long

Image height

depth

Long

Image depth

segmented

String

Segmentation

mask_source

String

Path for storing the mask file generated after image segmentation. Only PNG images are supported.

voc_objects

JSON Array

Labeled objects. For details, see Table 4.

Table 3 source parameters

Parameter

Type

Description

database

String

Dataset name, for example, The VOC2007 Database

annotation

String

Label, for example, PASCAL VOC2007

image

String

Image information

Table 4 voc_object parameters

Parameter

Type

Description

name

String

Folder name

properties

JSON Array

Properties of a labeled object in key-value pairs. Both key and value are of the string type.

pose

String

Shooting angle of labeled data

truncated

String

Whether a labeled object is truncated (0 indicates the object is not truncated.)

occluded

String

Whether a labeled object is occluded (0 indicates the object is not occluded.)

difficult

String

Whether a labeled object is difficult to identify (0 indicates that the object is easy to identify.)

confidence

Double

Confidence of machine labeling, which is a numeral ranging from 0 to 1

position

Object

Location of a labeled object. For details, see Table 5.

parts

Object

Built-in voc_object list. For details, see Table 4.

mask_color

String

Color of the mask image for image segmentation

Table 5 Position parameters

Parameter

Shape

Labeling Information

point

Point

Coordinates of a point

<x>100<x>

<y>100<y>

line

Line

Coordinates of points

<x1>100<x1>

<y1>100<y1>

<x2>200<x2>

<y2>200<y2>

bndbox

Rectangle

Coordinates of the lower left and upper right points

<x_min>100<x_min>

<y_min>100<y_min>

<x_max>200<x_max>

<y_max>200<y_max>

polygon

Polygon

Coordinates of points

<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

Circle

Center coordinates and radius

<cx>100<cx>

<cy>100<cy>

<r>50<r>