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

質問編集履歴

2

変数の追加

2019/09/11 04:39

投稿

dragon1
dragon1

スコア6

title CHANGED
File without changes
body CHANGED
@@ -13,6 +13,9 @@
13
13
  ### 該当のソースコード
14
14
  #### 訓練データの用意
15
15
  ``` python
16
+ NUM_CLASSES = 3 # 分類するクラス数
17
+ IMG_SIZE = 280 # 画像の1辺の長さ
18
+
16
19
  # 学習用画像データ
17
20
  train_images = []
18
21
  # 学習用データのラベル

1

訓練データに関して追記

2019/09/11 04:39

投稿

dragon1
dragon1

スコア6

title CHANGED
File without changes
body CHANGED
@@ -11,7 +11,45 @@
11
11
 
12
12
  ![イメージ説明](97699a31716757506bb1c981153176a4.png)
13
13
  ### 該当のソースコード
14
+ #### 訓練データの用意
15
+ ``` python
16
+ # 学習用画像データ
17
+ train_images = []
18
+ # 学習用データのラベル
19
+ train_labels = []
14
20
 
21
+ #学習用データセット作成
22
+ for label, dir_name in enumerate(img_dirs):
23
+ # ./data/以下の各ディレクトリ内のファイル名取得
24
+ files = os.listdir(os.getcwd() + '/imgs/train_images/' + dir_name)
25
+ for file in files:
26
+ # 画像読み込み
27
+ img = cv2.imread(os.getcwd() + '/imgs/train_images/' + dir_name + '/' + file)
28
+ if img is not None:
29
+ # 1辺がIMG_SIZEの正方形にリサイズ
30
+ img = cv2.resize(img, dsize=(IMG_SIZE, IMG_SIZE), interpolation=cv2.INTER_NEAREST)
31
+ # OpenCVの関数cvtColorでBGRとRGBを変換
32
+ img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
33
+ # Numpy配列にする
34
+ data = np.asarray(img)
35
+ # 配列に追加
36
+ train_images.append(data)
37
+ # ラベル
38
+ train_labels.append(label)
39
+
40
+ # numpy配列に変換
41
+ train_images = np.array(train_images)
42
+ train_labels = np.array(train_labels)
43
+
44
+ # ニューラルネットワークにデータを投入する前に、これらの値を0から1までの範囲にスケールする
45
+ train_images = train_images.astype('float32') / 255.0
46
+
47
+ # One-Hotエンコーディングする
48
+ train_labels = np_utils.to_categorical(train_labels, NUM_CLASSES)
49
+ ```
50
+
51
+
52
+ #### モデルに関して
15
53
  ```python
16
54
  model = models.Sequential()
17
55
  model.add(layers.Conv2D(32,(3,3),activation="relu",input_shape=(IMG_SIZE, IMG_SIZE, NUM_CLASSES)))