質問編集履歴

5

自己解決を追加

2017/07/16 12:35

投稿

tsurutake
tsurutake

スコア13

test CHANGED
File without changes
test CHANGED
@@ -186,8 +186,6 @@
186
186
 
187
187
  ![Youtube動画内キャプチャ画面](880188dd2473d1195f545fbf4d1e4cb6.png)
188
188
 
189
-
190
-
191
189
  >>>回答から以下を追記
192
190
 
193
191
 
@@ -211,3 +209,97 @@
211
209
  が出力されました。これはX_trainをresizeしなければならないのでしょうか。
212
210
 
213
211
  大変恐縮でございますが、ご指導頂きたく。ご回答の程宜しくお願いします。
212
+
213
+
214
+
215
+ 自己解決しました。以下に内容を述べます。
216
+
217
+ ###自己解決したソースコード(Python3.5)
218
+
219
+ ```Python3.5
220
+
221
+ import csv
222
+
223
+ import cv2
224
+
225
+ import numpy as np
226
+
227
+ import keras
228
+
229
+ from keras.models import Sequential
230
+
231
+ from keras.layers import Flatten, Dense
232
+
233
+
234
+
235
+ lines = []
236
+
237
+ with open('C:/Users/kom/Desktop/data/driving_log.csv') as csvfile:
238
+
239
+ reader = csv.reader(csvfile)
240
+
241
+ for line in reader:
242
+
243
+ lines.append(line)
244
+
245
+
246
+
247
+ images = []
248
+
249
+ measurements = []
250
+
251
+ for line in lines:
252
+
253
+ source_path = line[0]
254
+
255
+ filename = source_path.split('\\')[-1]
256
+
257
+ current_path = "C:/Users/kom/Desktop/data/IMG/" + filename
258
+
259
+ image = cv2.imread(current_path)
260
+
261
+ images.append(image)
262
+
263
+ measurement = float(line[3])
264
+
265
+ measurements.append(measurement)
266
+
267
+
268
+
269
+ X_train = np.array(images)
270
+
271
+ y_train = np.array(measurements)
272
+
273
+
274
+
275
+ model = Sequential()
276
+
277
+ model.add(Flatten(input_shape=(160,320,3)))
278
+
279
+ model.add(Dense(1))
280
+
281
+
282
+
283
+ model.compile(optimizer='adam', loss='mse')
284
+
285
+ model.fit(X_train,y_train,validation_split=0.2,shuffle=True, nb_epoch=10)
286
+
287
+ model.save('model.h5')
288
+
289
+ ```
290
+
291
+ 変更箇所は以下の2点です。若干コードの中身は変わっています。参考にした動画はMacからAWSを使用していましたが、自分のPCはWindowsを使用していたので、ファイルパスの指定がcsvとファイルでは異なることにピンときて修正したところコンパイルできました。
292
+
293
+ 1.(変更前)with open('./data/driving_log.csv') as csvfile:
294
+
295
+ (変更後)with open('C:/Users/(自分のPCユーザー名)/Desktop/data/driving_log.csv') as csvfile:
296
+
297
+ 2.(変更前)local_path = "\data\IMG\" + filename
298
+
299
+ (変更後)current_path = "C:/Users/kom/Desktop/data/IMG/" + filename
300
+
301
+ 無事シミュレーターに反映されたので、とりあえず一安心です。
302
+
303
+
304
+
305
+ -以上-

4

回答から追記

2017/07/16 12:35

投稿

tsurutake
tsurutake

スコア13

test CHANGED
File without changes
test CHANGED
@@ -185,3 +185,29 @@
185
185
 
186
186
 
187
187
  ![Youtube動画内キャプチャ画面](880188dd2473d1195f545fbf4d1e4cb6.png)
188
+
189
+
190
+
191
+ >>>回答から以下を追記
192
+
193
+
194
+
195
+ 3.「model.add(Flatten(input_shape=(160,320,3)))」→→→「model.add(Flatten(input_shape=(1,160,320,3)))」へ修正して再度コンパイルしてみました。すると
196
+
197
+ 「Error when checking model input: expected flatten_input_1 to have 5 dimensions, but got array with shape (1888, 1)」とエラーが表示され、dimensionsが異なっていることが分かりました。
198
+
199
+ 上記の画像のファイルパスと「X_train」の中身を確認してみました。すると
200
+
201
+ ---↓↓↓ファイルパス↓↓↓---
202
+
203
+ ./data/IMG/C:\Users\kom\AnacondaProjects\CarND-Behavioral-Cloning-P3-master\data\IMG\center_2017_07_16_16_26_04_663.jpg
204
+
205
+ ./data/IMG/C:\Users\kom\AnacondaProjects\CarND-Behavioral-Cloning-P3-master\data\IMG\center_2017_07_16_16_26_04_766.jpg
206
+
207
+ [None None None ..., None None None]
208
+
209
+ ---↑↑↑X_trainの中身↑↑↑---
210
+
211
+ が出力されました。これはX_trainをresizeしなければならないのでしょうか。
212
+
213
+ 大変恐縮でございますが、ご指導頂きたく。ご回答の程宜しくお願いします。

3

タイトル修正

2017/07/16 07:43

投稿

tsurutake
tsurutake

スコア13

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

2

画像の追加

2017/07/16 07:34

投稿

tsurutake
tsurutake

スコア13

test CHANGED
File without changes
test CHANGED
@@ -181,3 +181,7 @@
181
181
  ###補足情報(言語/FW/ツール等のバージョンなど)
182
182
 
183
183
  Windoes7 64bit Professional
184
+
185
+
186
+
187
+ ![Youtube動画内キャプチャ画面](880188dd2473d1195f545fbf4d1e4cb6.png)

1

誤字修正

2017/07/15 20:23

投稿

tsurutake
tsurutake

スコア13

test CHANGED
@@ -1 +1 @@
1
- Pythonの「Error when checking model input」
1
+ Pythonのファイルパス読み込みエラー「Error when checking model input」
test CHANGED
@@ -126,7 +126,7 @@
126
126
 
127
127
  filename = tokens[-1]
128
128
 
129
- local_path = "./data/IMG/" + filename
129
+ local_path = "\data\IMG\" + filename
130
130
 
131
131
  image = cv2.imread(local_path)
132
132
 
@@ -162,7 +162,7 @@
162
162
 
163
163
  model.compile(optimizer='adam', loss='mse')
164
164
 
165
- model.fit(X_train,y_train,validation_split=0.2,shuffle=True)![Youtubeで参考にコードを写経した画面](32e8d746548f8b330d49d3fb2c0a2842.png)
165
+ model.fit(X_train,y_train,validation_split=0.2,shuffle=True)
166
166
 
167
167
  model.save('model.h5')
168
168