Python生成PASCAL VOC格式的xml标注文件
2017-05-29 23:32
726 查看
转自点击打开链接
怎样从
下面给出了一个例子。
安装依赖项
生成xml示例代码
Python生成PASCAL VOC格式的xml标注文件
PASCAL VOC数据集的标注文件是xml格式的。对于py-faster-rcnn,通常以下示例的字段是合适的:<annotation> <folder>GTSDB</folder> <filename>000001.jpg</filename> <size> <width>500</width> <height>375</height> <depth>3</depth> </size> <object> <name>mouse</name> <difficult>0</difficult> <bndbox> <xmin>99</xmin> <ymin>358</ymin> <xmax>135</xmax> <ymax>375</ymax> </bndbox> </object> </annotation>
怎样从
csv或者
txt格式的文件,读取bbox信息,生成xml格式的annotation文件呢?直接逐行写文件肯定可以,但是以后改起来并不太方便,
\t和空格的替换也不太方便。
xml.etree.ElementTree这个包似乎挺好用的,解析和生成xml都可以。但是会产生
<?xml version="1.0" ?>这样一行头部版本信息。我们不需要这个信息。使用
lxml包替代
xml,可以去掉它。
下面给出了一个例子。
安装依赖项
sudo pip install lxml
生成xml示例代码
#!/usr/bin/env python # coding:utf-8 #from xml.etree.ElementTree import Element, SubElement, tostring from lxml.etree import Element, SubElement, tostring import pprint from xml.dom.minidom import parseString node_root = Element('annotation') node_folder = SubElement(node_root, 'folder') node_folder.text = 'GTSDB' node_filename = SubElement(node_root, 'filename') node_filename.text = '000001.jpg' node_size = SubElement(node_root, 'size') node_width = SubElement(node_size, 'width') node_width.text = '500' node_height = SubElement(node_size, 'height') node_height.text = '375' node_depth = SubElement(node_size, 'depth') node_depth.text = '3' node_object = SubElement(node_root, 'object') node_name = SubElement(node_object, 'name') node_name.text = 'mouse' node_difficult = SubElement(node_object, 'difficult') node_difficult.text = '0' node_bndbox = SubElement(node_object, 'bndbox') node_xmin = SubElement(node_bndbox, 'xmin') node_xmin.text = '99' node_ymin = SubElement(node_bndbox, 'ymin') node_ymin.text = '358' node_xmax = SubElement(node_bndbox, 'xmax') node_xmax.text = '135' node_ymax = SubElement(node_bndbox, 'ymax') node_ymax.text = '375' xml = tostring(node_root, pretty_print=True) #格式化显示,该换行的换行 dom = parseString(xml) print xml
相关文章推荐
- Python生成PASCAL VOC格式的xml标注文件
- Python生成PASCAL VOC格式的xml标注文件
- 目标检测坐标信息txt文件转Pascal VOC XML 格式(仅包括对角框正矩形标注)
- python文本文件,生成指定的文件格式
- c#解析XML文件来获得pascal_voc特定目标负样本
- python将xml xsl文件生成html文件存储示例讲解
- python中lxml模块生成xml文件
- python处理文本文件实现生成指定格式文件的方法
- python处理文本文件实现生成指定格式文件的方法
- python生成sitemap格式文件
- 读取XML文件数据,XML数据标注格式转换为TXT格式
- python生成xml文件
- python.matplotlib/datatime/CSV学习范例-读取CSV格式文件生成折线图
- python将xml xsl文件生成html文件存储示例讲解
- python脚本从excel表到处数据,生成指定格式的文件
- python处理文本文件实现生成指定格式文件的方法
- Python实现将MySQL数据库表中的数据导出生成csv格式文件的方法
- [VB.NET]vb.net如何读取数据库生成指定格式的xml文件
- python处理文本文件并生成指定格式的文件
- python 生成xml文件