查看VOC数据集XML标签是否有空标签
【代码】查看VOC数据集XML标签是否有空标签。
·
import os
import xml.etree.ElementTree as ET
# 设置XML文件夹路径
xml_folder = r"" # 替换为您的XML文件夹路径
empty_class_files = []
# 遍历XML文件夹中的所有XML文件
for filename in os.listdir(xml_folder):
if filename.endswith(".xml"):
file_path = os.path.join(xml_folder, filename)
try:
# 解析XML文件
tree = ET.parse(file_path)
root = tree.getroot()
# 检查是否有object元素
objects = root.findall("object")
# 如果没有object元素,这个文件被认为是空类别
if len(objects) == 0:
empty_class_files.append(filename)
print(f"发现空类别文件: {filename}")
else:
# 检查每个object是否有空的name标签
for obj in objects:
name_tag = obj.find("name")
if name_tag is None or name_tag.text is None or name_tag.text.strip() == "":
if filename not in empty_class_files:
empty_class_files.append(filename)
print(f"发现含有空类别名称的文件: {filename}")
break
except Exception as e:
print(f"解析文件 {filename} 时出错: {str(e)}")
print(f"\n总计发现 {len(empty_class_files)} 个空类别文件:")
for file in empty_class_files:
print(file)
# 如果需要,可以将空类别文件列表保存到文本文件中
with open("empty_class_files.txt", "w") as f:
for file in empty_class_files:
f.write(f"{file}\n")
print("\n空类别文件列表已保存至 empty_class_files.txt")
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)