目标检测数据增强:更改xml的属性
·
更改xml的属性
可以根据实际情况注释掉某些内容,比如folder、database等。
import os
import os.path
import xml.dom.minidom
path="./Annotations_new"#生成新xml的路径
path_xml = r'D:\code\data\Annotations'#输入的xml路径
path_img=r'D:\code\data\JPEGImages'#输入的图片路径
files = os.listdir(path_xml) # 得到文件夹下所有文件名称
modify_folder = "VOC2007"#更改后的名字,这里套用成了VOC2007
modify_database = "The VOC2007 Database"#更改后的名字,这里套用成了The VOC2007 Database
for xmlFile in files: # 遍历文件夹
if not os.path.isdir(xmlFile): # 判断是否是文件夹,不是文件夹才打开
print(xmlFile)
xmlFile
filepath = os.path.join(path_xml, xmlFile)
# 最核心的部分,路径拼接,输入的是具体路径
dom = xml.dom.minidom.parse(os.path.join(path_xml, xmlFile))
root = dom.documentElement
# 修改path
#oldpath = root.getElementsByTagName('path_xm')
#print(oldpath[0].firstChild.data)
#newpath = path_img + xmlFile[0:6] + ".jpg"
#oldpath[0].firstChild.data = newpath
# 修改folder
oldfolder = root.getElementsByTagName('folder')
oldfolder[0].firstChild.data = modify_folder
#修改database
olddatabase = root.getElementsByTagName('database')
olddatabase[0].firstChild.data = modify_database
#修改 filename
oldfilename = root.getElementsByTagName('filename')
oldfilename[0].firstChild.data = xmlFile[0:6] + ".jpeg"
with open(os.path.join(path, xmlFile), 'w') as fh:
dom.writexml(fh)
pass
更多推荐



所有评论(0)