將 Imagenet 圖像文件夾按照類別編號命名

ImageNet是偉大的圖像識別數據庫

但是其中各類別圖像的文件夾名稱讓強迫症患者難以忍受

遂碼了個改變類別文件夾名稱爲編號的小程序

 

###

imagenet_class_index.json 是Imagenet圖像的類別標註json文件

Imagenet文件夾中放置解壓好的1000個文件夾

import json
import os

#打開並讀取json文件
file=open("imagenet_class_index.json",'r')
load_dict = json.load(file)

print(load_dict)

#創建保存鍵值的字典
class_dict={}
for item in load_dict:
    #以原始名稱爲 鍵 ,類別序號爲 值 ,建立字典內容
    class_dict[load_dict[item][0]]=item

#讀取Imagenet文件夾列表
ImageNet_Path='Imagenet'
dir_list=os.listdir(ImageNet_Path)

for dir_name in dir_list:
    #獲取字典中以該文件夾名稱爲鍵的值(有可能不存在)
    class_index_in_str=class_dict.get(dir_name)
    if class_index_in_str is None:
        continue
    else:
        #執行linux下的重命名文件夾
        command = 'mv '+os.path.join(ImageNet_Path,dir_name)+' '+os.path.join(ImageNet_Path,class_index_in_str)
        os.system(command)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章