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

質問編集履歴

5

自己解決を追加

2017/07/16 12:35

投稿

tsurutake
tsurutake

スコア13

title CHANGED
File without changes
body CHANGED
@@ -92,7 +92,6 @@
92
92
  Windoes7 64bit Professional
93
93
 
94
94
  ![Youtube動画内キャプチャ画面](880188dd2473d1195f545fbf4d1e4cb6.png)
95
-
96
95
  >>>回答から以下を追記
97
96
 
98
97
  3.「model.add(Flatten(input_shape=(160,320,3)))」→→→「model.add(Flatten(input_shape=(1,160,320,3)))」へ修正して再度コンパイルしてみました。すると
@@ -104,4 +103,51 @@
104
103
  [None None None ..., None None None]
105
104
  ---↑↑↑X_trainの中身↑↑↑---
106
105
  が出力されました。これはX_trainをresizeしなければならないのでしょうか。
107
- 大変恐縮でございますが、ご指導頂きたく。ご回答の程宜しくお願いします。
106
+ 大変恐縮でございますが、ご指導頂きたく。ご回答の程宜しくお願いします。
107
+
108
+ 自己解決しました。以下に内容を述べます。
109
+ ###自己解決したソースコード(Python3.5)
110
+ ```Python3.5
111
+ import csv
112
+ import cv2
113
+ import numpy as np
114
+ import keras
115
+ from keras.models import Sequential
116
+ from keras.layers import Flatten, Dense
117
+
118
+ lines = []
119
+ with open('C:/Users/kom/Desktop/data/driving_log.csv') as csvfile:
120
+ reader = csv.reader(csvfile)
121
+ for line in reader:
122
+ lines.append(line)
123
+
124
+ images = []
125
+ measurements = []
126
+ for line in lines:
127
+ source_path = line[0]
128
+ filename = source_path.split('\\')[-1]
129
+ current_path = "C:/Users/kom/Desktop/data/IMG/" + filename
130
+ image = cv2.imread(current_path)
131
+ images.append(image)
132
+ measurement = float(line[3])
133
+ measurements.append(measurement)
134
+
135
+ X_train = np.array(images)
136
+ y_train = np.array(measurements)
137
+
138
+ model = Sequential()
139
+ model.add(Flatten(input_shape=(160,320,3)))
140
+ model.add(Dense(1))
141
+
142
+ model.compile(optimizer='adam', loss='mse')
143
+ model.fit(X_train,y_train,validation_split=0.2,shuffle=True, nb_epoch=10)
144
+ model.save('model.h5')
145
+ ```
146
+ 変更箇所は以下の2点です。若干コードの中身は変わっています。参考にした動画はMacからAWSを使用していましたが、自分のPCはWindowsを使用していたので、ファイルパスの指定がcsvとファイルでは異なることにピンときて修正したところコンパイルできました。
147
+ 1.(変更前)with open('./data/driving_log.csv') as csvfile:
148
+ (変更後)with open('C:/Users/(自分のPCユーザー名)/Desktop/data/driving_log.csv') as csvfile:
149
+ 2.(変更前)local_path = "\data\IMG\" + filename
150
+ (変更後)current_path = "C:/Users/kom/Desktop/data/IMG/" + filename
151
+ 無事シミュレーターに反映されたので、とりあえず一安心です。
152
+
153
+ -以上-

4

回答から追記

2017/07/16 12:35

投稿

tsurutake
tsurutake

スコア13

title CHANGED
File without changes
body CHANGED
@@ -91,4 +91,17 @@
91
91
  ###補足情報(言語/FW/ツール等のバージョンなど)
92
92
  Windoes7 64bit Professional
93
93
 
94
- ![Youtube動画内キャプチャ画面](880188dd2473d1195f545fbf4d1e4cb6.png)
94
+ ![Youtube動画内キャプチャ画面](880188dd2473d1195f545fbf4d1e4cb6.png)
95
+
96
+ >>>回答から以下を追記
97
+
98
+ 3.「model.add(Flatten(input_shape=(160,320,3)))」→→→「model.add(Flatten(input_shape=(1,160,320,3)))」へ修正して再度コンパイルしてみました。すると
99
+ 「Error when checking model input: expected flatten_input_1 to have 5 dimensions, but got array with shape (1888, 1)」とエラーが表示され、dimensionsが異なっていることが分かりました。
100
+ 上記の画像のファイルパスと「X_train」の中身を確認してみました。すると
101
+ ---↓↓↓ファイルパス↓↓↓---
102
+ ./data/IMG/C:\Users\kom\AnacondaProjects\CarND-Behavioral-Cloning-P3-master\data\IMG\center_2017_07_16_16_26_04_663.jpg
103
+ ./data/IMG/C:\Users\kom\AnacondaProjects\CarND-Behavioral-Cloning-P3-master\data\IMG\center_2017_07_16_16_26_04_766.jpg
104
+ [None None None ..., None None None]
105
+ ---↑↑↑X_trainの中身↑↑↑---
106
+ が出力されました。これはX_trainをresizeしなければならないのでしょうか。
107
+ 大変恐縮でございますが、ご指導頂きたく。ご回答の程宜しくお願いします。

3

タイトル修正

2017/07/16 07:43

投稿

tsurutake
tsurutake

スコア13

title CHANGED
@@ -1,1 +1,1 @@
1
- Pythonのファイルパス読み込みエラー「Error when checking model input」
1
+ 「Error when checking model input」のエラーで困っています
body CHANGED
File without changes

2

画像の追加

2017/07/16 07:34

投稿

tsurutake
tsurutake

スコア13

title CHANGED
File without changes
body CHANGED
@@ -89,4 +89,6 @@
89
89
  URL:https://stackoverflow.com/questions/42770997/error-when-checking-model-input-expected-flatten-input-8-to-have-4-dimensions
90
90
  2.参考にしていた動画はMacでプログラミングしていたので、エラーが出ているファイルパスの箇所の「\」が問題だと思いましたが、Windowsとの違いが分かりませんでした。このエラーが発生する前のcsvファイルを読み込むところは動画内と同じでしたので、さほど違いがあるようには思えませんが、実際のところ良く分かっていません。
91
91
  ###補足情報(言語/FW/ツール等のバージョンなど)
92
- Windoes7 64bit Professional
92
+ Windoes7 64bit Professional
93
+
94
+ ![Youtube動画内キャプチャ画面](880188dd2473d1195f545fbf4d1e4cb6.png)

1

誤字修正

2017/07/15 20:23

投稿

tsurutake
tsurutake

スコア13

title CHANGED
@@ -1,1 +1,1 @@
1
- Pythonの「Error when checking model input」
1
+ Pythonのファイルパス読み込みエラー「Error when checking model input」
body CHANGED
@@ -62,7 +62,7 @@
62
62
  source_path = line[0]
63
63
  tokens = source_path.split('/')
64
64
  filename = tokens[-1]
65
- local_path = "./data/IMG/" + filename
65
+ local_path = "\data\IMG\" + filename
66
66
  image = cv2.imread(local_path)
67
67
  images.append(image)
68
68
  measurement = line[3]
@@ -80,7 +80,7 @@
80
80
  model.add(Dense(1))
81
81
 
82
82
  model.compile(optimizer='adam', loss='mse')
83
- model.fit(X_train,y_train,validation_split=0.2,shuffle=True)![Youtubeで参考にコードを写経した画面](32e8d746548f8b330d49d3fb2c0a2842.png)
83
+ model.fit(X_train,y_train,validation_split=0.2,shuffle=True)
84
84
  model.save('model.h5')
85
85
  ```
86
86