深度学习标注的文件都是xml格式,有时需要修改xml的属性。本次将修改方式简单记录一下。
参考博客
import xml.etree.ElementTree as ET
import os
imgpath = '/home/huadian/darknet/demo/mask/JPEGImages' # 图片所在路径
xmlpath = "/home/huadian/darknet/demo/mask/mask_dataset/label_nomask" #xml标记所在路径
newpath = "/home/huadian/darknet/demo/mask/mask_dataset/2" # xml保存的新路径
filelist = os.listdir(xmlpath)
# print(filelist)
for xmlfile in filelist:
xmlnum=int(xmlfile.split('.')[0])
xmlnum += 515 # xml的文件的命名
leng = "0"*(6-len(str(xmlnum)))
outimg = leng + str(xmlnum) + '.jpg'
xmlname = leng + str(xmlnum) + '.xml'
pathname = imgpath + '/' + outimg
doc = ET.parse(xmlpath + '/' + xmlfile)
root = doc.getroot()
sub1 = root.find('filename') # 找到filename标签,
sub2 = root.find('path') # 找到path标签,
sub1.text = outimg # 修改filename标签内容
sub2.text = pathname # 修改path标签内容
doc.write(newpath + '/' + xmlname) # 保存修改