-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathutils.py
More file actions
60 lines (49 loc) · 1.35 KB
/
Copy pathutils.py
File metadata and controls
60 lines (49 loc) · 1.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
import numpy as np
def unpickle(file):
import pickle
with open(file, 'rb') as fo:
dict = pickle.load(fo, encoding='bytes')
return dict
def get_data():
path = "cifar-100-python/train"
d = unpickle(path)
label = d[b'fine_labels']
coarse_label = d[b'coarse_labels']
data = []
for i in range(len(d[b'data'])):
img = np.array([d[b'data'][i][0:1024], d[b'data'][i][1024:2048], d[b'data'][i][2048:3072]])
data.append(img.transpose())
return data, label, coarse_label
def organize_data(data, label):
dataset = [[] for i in range(99)]
for i in range(len(data)):
if label[i]==99:
for j in range(99):
dataset[j].append({
'data': data[i],
'label': 1
})
else:
dataset[label[i]].append({
'data': data[i],
'label': 0
})
return dataset
def organize_data2(data, label, coarse_label):
dataset = [[] for i in range(5)] #multi-calss
# for i in range(len(coarse_label)):
return dataset
def organize_data3(data, label):
dataset = [[] for i in range(100)]
for i in range(len(data)):
dataset[label[i]//2].append({
'data' : data[i],
'label' : label[i]&1
})
dataset[50+(label[i]//2)].append({
'data' : data[i],
'label' : 1- (label[i]&1)
})
return dataset
def organize_data4(data, label):
dataset = [[] for i in range(5)]