输出图片标注xml文件的二级标签
folder
filename
path
source
size
segmented
object
import xml.dom.minidom as xmldom
import sys
from lxml import etree
import tensorflow as tf
sys.setrecursionlimit(1000000)
def recursive_parse_xml_to_dict(xml):
if not xml:
return {xml.tag: xml.text}
result = {}
for child in xml:
child_result = recursive_parse_xml_to_dict(child)
if child.tag != 'object':
result[child.tag] = child_result[child.tag]
else:
if child.tag not in result:
result[child.tag] = []
result[child.tag].append(child_result[child.tag])
return {xml.tag: result}
with tf.io.gfile.GFile("000001.xml", 'r') as fid:
xml_str = fid.read()
xml = etree.fromstring(xml_str)
dict0 = recursive_parse_xml_to_dict(xml)['annotation']
for i in dict0:
print(i)