teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

code追加

2019/03/04 12:04

投稿

kmll
kmll

スコア19

title CHANGED
File without changes
body CHANGED
@@ -56,4 +56,63 @@
56
56
  X_test, y_test = make_sample(test)
57
57
  xy = (X_train, X_test, y_train, y_test)
58
58
  #データを保存する
59
- np.save("C:\Users\kmll\python_code\cat\tea_data.npy", xy)
59
+ np.save("C:\Users\kmll\python_code\cat\tea_data.npy", xy)
60
+
61
+ ```python
62
+ #犬猫見た目による学習/検証データの準備
63
+
64
+ from PIL import Image
65
+ import os, glob
66
+ import numpy as np
67
+ import random, math
68
+
69
+ #画像が保存されているルートディレクトリのパス
70
+ root_dir ="C:\Users\kmll\python_code\dog"
71
+ # 種類
72
+ categories = ["cat","dog"]
73
+
74
+ # 画像データ用配列
75
+ X = []
76
+ # 種類データ用配列
77
+ Y = []
78
+
79
+ #画像データごとにadd_sample()を呼び出し、X,Yの配列を返す関数
80
+ def make_sample(files):
81
+ global X, Y
82
+ X = []
83
+ Y = []
84
+ for cat, fname in files:
85
+ add_sample(cat, fname)
86
+ return np.array(X), np.array(Y)
87
+
88
+ #渡された画像データを読み込んでXに格納し、また、
89
+ #画像データに対応するcategoriesのidxをY格納する関数
90
+ def add_sample(cat, fname):
91
+ img = Image.open(fname)
92
+ img = img.convert("RGB")
93
+ img = img.resize((150, 150))
94
+ data = np.asarray(img)
95
+ X.append(data)
96
+ Y.append(cat)
97
+
98
+ #全データ格納用配列
99
+ allfiles = []
100
+
101
+ #カテゴリ配列の各値と、それに対応するidxを認識し、全データをallfilesにまとめる
102
+ for idx, cat in enumerate(categories):
103
+ image_dir = root_dir + "/" + cat
104
+ files = glob.glob(image_dir + "/*.jpg")
105
+ for f in files:
106
+ allfiles.append((idx, f))
107
+
108
+ #シャッフル後、学習データと検証データに分ける
109
+ random.shuffle(allfiles)
110
+ th = math.floor(len(allfiles) * 0.8)
111
+ train = allfiles[0:th]
112
+ test = allfiles[th:]
113
+ X_train, y_train = make_sample(train)
114
+ X_test, y_test = make_sample(test)
115
+ xy = (X_train, X_test, y_train, y_test)
116
+ #データを保存する
117
+ np.save("C:\Users\kmll\python_code\cat\tea_data.npy", xy)
118
+ ```

2

文面修正

2019/03/04 12:04

投稿

kmll
kmll

スコア19

title CHANGED
File without changes
body CHANGED
@@ -55,5 +55,5 @@
55
55
  X_train, y_train = make_sample(train)
56
56
  X_test, y_test = make_sample(test)
57
57
  xy = (X_train, X_test, y_train, y_test)
58
- #データを保存する(データの名前を「tea_data.npy」としている)
58
+ #データを保存する
59
59
  np.save("C:\Users\kmll\python_code\cat\tea_data.npy", xy)

1

ファイル名修正

2019/03/04 11:24

投稿

kmll
kmll

スコア19

title CHANGED
File without changes
body CHANGED
@@ -9,7 +9,7 @@
9
9
  import random, math
10
10
 
11
11
  #画像が保存されているルートディレクトリのパス
12
- root_dir ="C:\Users\Atsuhiro\python_code\dog"
12
+ root_dir ="C:\Users\kmll\python_code\dog"
13
13
  # 種類
14
14
  categories = ["cat","dog"]
15
15
 
@@ -56,4 +56,4 @@
56
56
  X_test, y_test = make_sample(test)
57
57
  xy = (X_train, X_test, y_train, y_test)
58
58
  #データを保存する(データの名前を「tea_data.npy」としている)
59
- np.save("C:\Users\Atsuhiro\python_code\cat\animal_data.npy", xy)
59
+ np.save("C:\Users\kmll\python_code\cat\tea_data.npy", xy)