应用背景:
pascal_voc格式数据集采用的是xml超文本标记语义记录监督信息的。但是大型数据集的制作非一人之力可及。多人合作可能会涉及到针对同一张图片的不同xml标签合并。
适应:
目标检测中同一张图的多个xml标签,按照要求合并到一起,非直接拼接合并。
这里一个特点是,不管要把多少个文件夹里的xml合并,只需要把这些文件夹统一放到一个列表dir里面就可以。
然后实际上还是根据每一张图片,在这些文件夹里面检索有没有xml标签,所以不会遗漏。
代码如下:
# -*- coding: utf-8 -*-
'''
@ 2029.1.8
'''
import os
def readxml(xmlpath):
lines=[]
f=open(xmlpath,'r')
for line in f:
lines.append(line)
f.close()
return lines
def insert_in_tail(list1,list2):
list3=[]
tail=list1[-1]
list1=list1[0:-1]
list1.extend(list2)
list1.append(tail)
return list1
if __name__ == "__main__":
image_dir = ''
dir = []
save_path=''
本文介绍如何将目标检测任务中,针对同一张图片的多个XML标签进行有效合并。在大型数据集制作过程中,由于多人合作,可能出现同一图片有多个XML文件。通过将所有XML文件夹路径放入列表并遍历每张图片,搜索对应XML,实现合并而不遗漏。代码以基本文本处理方式进行,不依赖复杂的XML解析和结构修改。
订阅专栏 解锁全文
1598

被折叠的 条评论
为什么被折叠?



