更新时间:2022-11-24 GMT+08:00
创建和保存Pascal VOC文件
需要先创建包含Pascal VOC信息的对象,然后保存。Pascal VOC信息请见表2。路径支持本地和OBS,如果是OBS,需要Session信息。
pascal_voc.save_xml(xml_file_path, save_mode='w', session=None)
示例代码
在保存Pascal VOC的XML文件之前需要先创建包含Pascal VOC信息的对象,包括voc object信息等。保存的时候调用save_xml接口,将session信息传入,即可保存到指定路径。
from modelarts.dataset.format.voc.pascal_voc import PascalVoc from modelarts.dataset.format.voc.voc_object import VocObject from modelarts.session import Session path = "obs://your-obs-bucket/voc/test2.xml" size_list = [640, 321, 3] file_name = "000000089955.jpg" voc_object_tags = ["trafficlight", "trafficlight"] voc_object_properties = [{"@modelarts:color": "#FFFFF0", "@modelarts:shortcut": "C", "pose": "0", "truncated": "0", "difficult": "0", "@modelarts:shape": "bndbox", "@modelarts:feature": [[347, 186], [382, 249]]}, {"@modelarts:color": "#FFFFE0", "@modelarts:shortcut": "D", "pose": "0", "truncated": "0", "difficult": "0", "@modelarts:shape": "bndbox", "@modelarts:feature": [[544, 50], [591, 149]]}] voc_objects = [] for i in range(len(voc_object_tags)): object_tag = voc_object_tags[i] object_properties = voc_object_properties[i] voc_objects.append(VocObject(name=object_tag, properties=object_properties)) pascal_voc = PascalVoc(file_name=file_name, width=size_list[0], height=size_list[1], depth=size_list[2], voc_objects=voc_objects) session = Session() pascal_voc.save_xml(path, session=session)
参数说明
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
xml_file_path |
是 |
String |
Pascal VOC格式的XML文件保存路径。 |
session |
否 |
Object |
会话对象,初始化方法请参见Session鉴权。 当需要操作OBS时必填。 |
save_mode |
否 |
String |
保存模式。默认为w,即重写模式,另外还支持a,为追加模式。 |
父主题: Manifest管理