import json
# 统计coco格式json文件中,空目标图像和包含目标图像的数目,
# 并将coco格式json文件中包含的所有图像文件名进行导出
def count_empty_targets(coco_json_file, output_txt_file):
with open(coco_json_file, 'r') as file:
data = json.load(file)
image_count = len(data['images'])
empty_target_count = 0
non_empty_target_count = 0
image_ids_with_annotations = set(anno['image_id'] for anno in data['annotations'])
with open(output_txt_file, 'w') as txt_file:
for image in data['images']:
if image['id'] not in image_ids_with_annotations:
empty_target_count += 1
else:
non_empty_target_count += 1
txt_file.write(f"{image['file_name']}\n")
return empty_target_count, non_empty_target_count
if __name__ == '__main__':
coco_json_file = 'annotations/balanced_val.json'
output_txt_file = './val_img_name.txt'
empty_target_count, non_empty_target_count = count_empty_targets(coco_json_file, output_txt_file)
print(f"Number of images containing empty targets: {empty_target_count}")
print(f"Number of images containing targets: {non_empty_target_count}")
统计coco格式json文件中空目标图像和包含目标图像的数目,并导出所有图像文件名为txt文件
于 2023-04-19 10:58:16 首次发布