Xml文件的读取与处理

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/u014421797/article/details/86651706

1.背景:在用Faster RCNN训练自己的数据集时,使用的是Pascal VOC数据集中室内物体的子数据集。因此需要将室内物体的标签提取出来,在提取的过程中发现一个问题,有些标签含有非室内物体的部分,例如在一个xml文件中的object中除了室内物体外还有少量的person,car等出现,因此对所有的xml文件进行读取,提取出所有的object类别,以便在训练时确定所有的类别!

2.程序核心代码:

import xml.etree.ElementTree as ET

#用于存放物体名称的集合
object_name = set()
#打开存储xml文件名称的txt文件
f = open('FindObjectName.txt','r')
#xml文件的根目录
xml_root = '/Annotations/'
for line in f:
    #依次打开xml文件,导入数据
    xml_name = xml_root + line[:-1] + '.xml'
    #print(xml_name)
    tree = ET.parse(xml_name)
    root = tree.getroot()
    for country in root.findall('object'):
        rank = country.find('name').text
        object_name.add(rank)
f.close()
print(object_name)

3.参考:Python官方文档https://docs.python.org/3/library/

猜你喜欢

转载自blog.csdn.net/u014421797/article/details/86651706