yolo转换voc
from xml.dom.minidom import Document
import os
import cv2
def make_xml(cls_dict, txt_path, xml_path, pic_path): # 读取txt路径,xml保存路径,数据集图片所在路径
files = os.listdir(txt_path)
lenFiles = len(files)
print('Start.')
for i, name in enumerate(files):
if 'classes.txt' in name:
continue
xmlBuilder = Document()
annotation = xmlBuilder.createElement("annotation") # 创建annotation标签
xmlBuilder.appendChild(annotation)
txtFile = open(txt_path + name)
txtList = txtFile.readlines()
img = cv2.imread(pic_path + name[0:-4] + ".jpg")
if img is None:
print(name[0:-4])
continue
Pheight, Pwidth, Pdepth = img.shape
# folder = xmlBuilder.createElement("folder") # folder标签
# folderContent = xmlBuilder.createTextNode('JPEGImages')
# folder.appendChild(folderContent)
# annotation.appendChild(folder)
filename = xmlBuilder.createElement("filename") # filename标签
filenameContent = xmlBuilder.createTextNode(name[0:-4] + ".jpg")
filename.appendChild(filenameContent)
annotation.appendChild(filename)
# pathElement = xmlBuilder.createElement("path") # path标签
# pathElementContent = xmlBuilder.createTextNode(os.path.join(pathContent, f"{name[0:-4]}.jpg"))
# pathElement.appendChild(pathElementContent)
# annotation.appendChild(pathElement)
size = xmlBuilder.createElement("size") # size标签
width