1.当数据集中待检测对象的数量不均衡时,可以根据以下代码将对应label的xml文件筛选出来,分别进行数据增强。
2.批量替换label名字。
import os.path
import glob
import xml.etree.ElementTree as ET
rename_format = '{}'
path = r'C:\Users\AFan\Desktop\data\region\xml'#标签路径
for xml_file in glob.glob(path + '/*.xml'):
tree = ET.parse(xml_file)
root = tree.getroot()
for member in root.findall('object'):
objectname = member.find('name').text
if objectname == 'light_spot': #原来的标签名字
#1.筛选特定类别标签
doc_scr = os.path.join(xml_file)
print(doc_scr)
a = doc_scr.split('\\')[-1]
doc_name = rename_format.format(a)
doc_dst = os.path.join(r'C:\Users\AFan\Desktop\data\z-roi-withoutlight\xml',doc_name) #放入新路径
os.rename(doc_scr,doc_dst)
#2.替换标签种类
# member.find('name').text = str('') #新的标签名字
# tree.write(xml_file)