环境:win10 工具:pycharm 语言:python 备注:只需要修改代码中indir后的xml文件路径。
代码运行:
#导入所需的库
import os
from unicodedata import name
import xml.etree.ElementTree as ET
import glob
def count_num(indir):
os.chdir(indir)
annotations = os.listdir('.')
annotations = glob.glob(str(annotations) + '*.xml')
dict = {}
for i, file in enumerate(annotations):
# actual parsing
in_file = open(file, encoding='utf-8')
tree = ET.parse(in_file)
root = tree.getroot()
for obj in root.iter('object'):
name = obj.find('name').text
if (name in dict.keys()):
dict[name] += 1
else:
dict[name] = 1
KeyDict = sorted(dict)
print("%d kind labels and %d labels in total" % (len(KeyDict), sum(dict.values())))
print('labels:', KeyDict)
print('\n')
print("Label Name and it's number//各类标签的数量分别为:")
for key in dict.keys():
print(key + ': ' + str(dict[key]))
print("\n总标签数目:{}个".format(sum(dict.values())))
print('\t')
print('检索完成!')
indir = '奥迪车辆标注' # xml文件所在的目录
count_num(indir)
结果展示:
本文参考自:【XML文件数据预处理】获取xml文件中所有标签名称及数量||提取某个特定标签的数量||生成包含某个标签的图片索引txt并复制图片到指定文件夹_蓝胖胖▸的博客-CSDN博客_查看xml文件中的标签