Imagenet验证集标签信息整理

1 Imagenet验证集介绍

Imagenet验证集数据大小为6.5G,共有1000类的50000张图片。本文主要是对这1000类的50000张图片的标签信息进行处理分类汇总成一个csv表格,便于实验读入信息需要。Imagenet验证集标签整理的文件和代码链接如下所示:

2 Imagenet验证集处理

待处理的文件有两个,一个是imagenet_img_info.txt文件,它包含了50000张图片与100个类别的对应关系。

另一个文件是imagenet_img_info.txt文件,它包含了Imagenet数据集中1000个类别详细信息。

最终输出的用于实验的csv文件如下所示,它详细的概括了图片与其类别的关系。

2 实例程序

用imagenet_img_info.txt文件和imagenet_img_info.txt文件最终生成的csv文件的程序如下所示:

import os
import re
import json
import csv
path1 = 'imagenet_label_info.txt'
path2 = 'imagenet_img_info.txt'

f1 = open(path1,'r')
str_all = f1.read()
json_all = json.loads(str_all)
f1.close()

img_dict = {
    
    }
img_list = []
f2 = open(path2,'r')
image_list = []
for item in f2.readlines():
	ditem = item.strip().split('\t')
	img_dict[ditem[0]] = ditem[1] 
	img_list.append(ditem[0])
f2.close()

data_list = []

for img_name in img_list:
	temp_list = []
	temp_list.append(int(img_dict[img_name]))
	temp_list.append(json_all[img_dict[img_name]][0])
	temp_list.append(img_name.strip())
	temp_list.append(json_all[img_dict[img_name]][1])
	data_list.append(tuple(temp_list))



header = ['class_index', 'class', 'image_name', 'class_name']
with open('selected_imagenet.csv', 'w+', newline='') as file_obj:
		writer = csv.writer(file_obj)
		writer.writerow(header)
		for data in data_list:
			writer.writerow(data)
reader = csv.reader(open('selected_imagenet.csv', 'r'))
for row in reader:
	print(row)


猜你喜欢

转载自blog.csdn.net/qq_38406029/article/details/125721477