批量修改xml文件中的标签类别

我在想要使用一个公开数据集时,发现需要修改数据集中的标注文件xml中的类别信息,最终根据其他博主的方法,修改成功!
代码如下,要修改的地方见注释:

import glob
import xml.etree.ElementTree as ET
path = r'C:/Users/Desktop/Annotations'    # 这里修改成自己的xml文件夹路径
i = 0
for xml_file in glob.glob(path + '/*.xml'):
    # print(xml_file)
    tree = ET.parse(xml_file)
    obj_list = tree.getroot().findall('object')
    for per_obj in obj_list:
        if per_obj[0].text != 'car':    
            per_obj[0].text = 'car'    # 将所有name不是car的类别全部修改为car
            i = i+1
    #将个别的标签名修改的方法
    # for per_obj in obj_list:
    #     if per_obj[0].text == '1':    # 要修改的标签“1”
    #         per_obj[0].text = '2'    # 修改成“2”
    #         i = i+1

    tree.write(xml_file)    # 将改好的文件重新写入,会覆盖原文件
print('共完成了{}处替换'.format(i))

参考博主:https://blog.csdn.net/SYGgogogo/article/details/121867089

你可能感兴趣的:(YOLO学习,xml)