目标检测yolo数据集,批量修改 VOC 格式标注文件标签名称,修改xml格式标注文件的标签名称

在目标检测任务中,VOC 格式的标注文件(XML)是非常常见的数据格式。但有时候我们可能会遇到需要统一修改标签名称的情况 —— 比如标注时不小心用了不同的名称,或者需要将某一类别的标签统一调整。手动一个个改太费时间了!这个Python 脚本,帮你批量修改 VOC 格式 XML 文件中的标签名称。

脚本功能

这个脚本的核心功能很明确:遍历指定文件夹下的所有 XML 标注文件,将每个文件中所有object节点下的name标签内容,统一修改为我们需要的名称(示例中是rat,可根据需求调整)。

脚本完整代码

import os
import xml.etree.ElementTree as ET

def replace_xml_name_tag(folder_path):
    # 遍历文件夹中的所有文件
    for filename in os.listdir(folder_path):
        # 筛选出XML文件
        if filename.endswith('.xml'):
            file_path = os.path.join(folder_path, filename)
            
            # 解析XML文件
            tree = ET.parse(file_path)
            root = tree.getroot()
            
            # 查找所有object节点下的name标签并修改内容
            for obj in root.findall('object'):
                name_tag = obj.find('name')
                if name_tag is not None:
                    name_tag.text = 'rat'  # 修改标签名称为rat
            
            # 保存修改后的XML文件
            tree.write(file_path, encoding='utf-8', xml_declaration=True)
            print(f"已处理文件: {filename}")

# 使用示例:替换为你的XML文件所在文件夹路径
xml_folder = "./Annotations"  # 请替换为实际文件夹路径
replace_xml_name_tag(xml_folder)
print("所有XML文件处理完成")

使用方法

name_tag.text = 'rat'  # 修改实际标签名称
xml_folder = "./Annotations"  # 请替换为实际文件夹路径
replace_xml_name_tag(xml_folder)
print("所有XML文件处理完成")
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CV小涵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值