赞
踩
- #计算txt标签格式每个类别的数量
- import os
-
- def get_every_class_num(txt_path):
- # 需修改,根据自己的类别,注意一一对应
- class_categories=['Cahua', 'Crazing', 'Patches', 'Inclusion', 'Uneven', 'Blowhole', 'Break', 'Crack', 'Yueyawan', 'Zhehen', 'Siban', 'Shuiban', 'Hanfeng', 'Yiwu', 'Youban', 'Yahen', 'Chongkong', 'Yaozhe', 'Pengshang', 'Pitted_Surface', 'Rolled-in_Scale', 'Scratches', 'Tufen']
- class_num = len(class_categories) # 样本类别数
- class_list = [i for i in range(class_num)]
- class_num_list = [0 for i in range(class_num)]
- labels_list = os.listdir(txt_path)
- for i in labels_list:
- file_path = os.path.join(txt_path, i)
- file = open(file_path, 'r') # 打开文件
- file_data = file.readlines() # 读取所有行
- for every_row in file_data:
- class_val = every_row.split(' ')[0]
- class_ind = class_list.index(int(class_val))
- class_num_list[class_ind] += 1
- file.close()
- # 输出每一类的数量以及总数
- result=dict(zip(class_categories,class_num_list))
- for name,num in result.items():
- print(name,":",num)
- print("-----------------------------------")
- print('total:', sum(class_num_list))
- if __name__ == '__main__':
- # 需修改,txt文件所在路径
- txt_path = r'D:\desk\defect_dataset\labels\val'
- get_every_class_num(txt_path)

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。