Firsh Push at 20241207
This commit is contained in:
90
Load_process/Loading_Tools.py
Normal file
90
Load_process/Loading_Tools.py
Normal file
@@ -0,0 +1,90 @@
|
||||
import os
|
||||
import glob
|
||||
|
||||
class Load_Data_Prepare:
|
||||
def __init__(self) -> None:
|
||||
self.__Label_List = []
|
||||
self.__Data_List = []
|
||||
self.__Contect_Dictionary = {}
|
||||
self.__Final_Dict_data = {}
|
||||
self.__PreSave_Data_Root = [] # 所有要讀取資料所在的位置
|
||||
self.__Data_Content = []
|
||||
pass
|
||||
|
||||
def Set_Data_Content(self, Content, Length):
|
||||
tmp = []
|
||||
for i in range(Length):
|
||||
tmp.append(Content)
|
||||
|
||||
self.__Data_Content = tmp
|
||||
|
||||
def Set_Label_List(self, Label_List): # 為讀取檔案準備label list
|
||||
self.__Label_List = Label_List
|
||||
pass
|
||||
|
||||
def Set_Data_List(self, Data_List):
|
||||
self.__Data_List = Data_List
|
||||
pass
|
||||
|
||||
def Set_Data_Dictionary(self, Label : list, Content : list, Total_Label_Size : int):
|
||||
'''將資料合併成1個Dict'''
|
||||
for i in range(Total_Label_Size):
|
||||
temp = {Label[i] : Content[i]}
|
||||
self.__Contect_Dictionary.update(temp)
|
||||
pass
|
||||
|
||||
def Set_Final_Dict_Data(self, Name : list, Label_Root : list, Label_LabelEncoding : list, Label_Len : int):
|
||||
'''
|
||||
Name : 讀取出來的Data Root的名字
|
||||
Label_Root: 所有影像資料的路徑
|
||||
Label_LabelEncoding: LabelEncoding後的資料
|
||||
Label_Len: Label的大小
|
||||
'''
|
||||
for i in range(Label_Len):
|
||||
temp = {Name[i] + "_Data_Root" : Label_Root[Name[i]]}
|
||||
self.__Final_Dict_data.update(temp)
|
||||
|
||||
for i in range(Label_Len):
|
||||
temp = {Name[i] + "_Data_LabelEncoding" : Label_LabelEncoding[i]}
|
||||
self.__Final_Dict_data.update(temp)
|
||||
|
||||
def Set_PreSave_Data_Root(self, PreSave_Roots : list):
|
||||
for Root in PreSave_Roots:
|
||||
self.__PreSave_Data_Root.append(Root)
|
||||
|
||||
def Get_Label_List(self):
|
||||
'''
|
||||
將private的資料讀取出來
|
||||
現在要放入需要的Label 需要先Set Label
|
||||
'''
|
||||
return self.__Label_List
|
||||
|
||||
def Get_Data_List(self):
|
||||
return self.__Data_List
|
||||
|
||||
def Get_Data_Dict(self):
|
||||
return self.__Contect_Dictionary
|
||||
|
||||
def Get_Final_Data_Dict(self):
|
||||
return self.__Final_Dict_data
|
||||
|
||||
def Get_PreSave_Data_Root(self):
|
||||
return self.__PreSave_Data_Root
|
||||
|
||||
def Get_Data_Content(self):
|
||||
return self.__Data_Content
|
||||
|
||||
class Load_Data_Tools():
|
||||
def __init__(self) -> None:
|
||||
pass
|
||||
|
||||
def get_data_root(self, root, data_dict, classify_label, judge = True) -> dict :
|
||||
'''取得資料路徑'''
|
||||
for label in classify_label:
|
||||
if judge:
|
||||
path = os.path.join(root, label, "*")
|
||||
else:
|
||||
path = os.path.join(root, "*")
|
||||
path = glob.glob(path)
|
||||
data_dict[label] = path
|
||||
return data_dict
|
||||
Reference in New Issue
Block a user