質問編集履歴

2

2021/01/05 12:13

投稿

tazaryu
tazaryu

スコア6

test CHANGED
File without changes
test CHANGED
@@ -10,7 +10,19 @@
10
10
 
11
11
   response = torch.argmax(torch.bincount(temp)) # tensor形式
12
12
 
13
-
13
+ ###やりたいこと
14
+
15
+ 得られるデータの最頻値を計算し、その最大要素のインデントを求めます。response
16
+
17
+ インデントをリストに入れますtemp
18
+
19
+
20
+
21
+ 次に64個要素がリストに入ったら(tmp)
22
+
23
+ 計算グラフで計算します。
24
+
25
+ この流れです
14
26
 
15
27
  ###エラー文
16
28
 

1

詳細な説明文を書きました

2021/01/05 12:13

投稿

tazaryu
tazaryu

スコア6

test CHANGED
File without changes
test CHANGED
@@ -162,19 +162,91 @@
162
162
 
163
163
  while True:
164
164
 
165
- data = listener.get_emg_data()
165
+ data = listener.get_emg_data() # 得られたキューをリストにします.
166
166
 
167
167
  if time.time() - start >= 10:
168
168
 
169
- response = np.argmax(np.bincount(temp))
169
+ response = np.argmax(np.bincount(temp)) # 最頻値の最大値のインデックスを返します.
170
170
 
171
171
  print("Predicted gesture: {0}".format(response))
172
172
 
173
+ temp = []# それらをリストに入れます.
174
+
175
+ start = time.time()
176
+
177
+ if len(data) > 0:
178
+
179
+ tmp = []  # 空のリストを入れます.
180
+
181
+ for v in listener.get_emg_data():
182
+
183
+ tmp.append(v[1])  # データを1つずつ読み込み,リストに入れます.
184
+
185
+ tmp = list(np.stack(tmp).flatten())
186
+
187
+ if len(tmp) >= 64: #>=64 データの数が64個になったら
188
+
189
+ pred = sess.run(y_pred_cls, feed_dict={x: np.array([tmp])}) # 計算グラフで計算します.(モデル)
190
+
191
+ temp.append(pred[0])   # 予測ラベルをtempに入れます,                     
192
+
193
+ with open("name1_pred_ANN.csv", "a") as f:
194
+
195
+ np.savetxt(f, pred, fmt="%s", delimiter=",")
196
+
197
+
198
+
199
+ sleep(0.01)
200
+
201
+ コード
202
+
203
+ ```
204
+
205
+ ### 現在,実装中のコードpytorchベース,numpy形式から変換したい場所だけ記載します.
206
+
207
+ ```
208
+
209
+ if __name__ == '__main__':
210
+
211
+
212
+
213
+ myo.init(bin_path=r'C:\Users\name\Desktop\myo-sdk-win-0.9.0\bin')
214
+
215
+ HUB = myo.Hub()
216
+
217
+ model.eval()
218
+
219
+ listener = MyListener()
220
+
221
+ start = time.time()
222
+
223
+ temp = []
224
+
225
+ with HUB.run_in_background(listener.on_event):
226
+
227
+ while True:
228
+
229
+ data = listener.get_emg_data() # 得られたキューをリストにします
230
+
231
+ #print(temp)
232
+
233
+ if time.time() - start >= 1:
234
+
235
+ #response = np.argmax(np.bincount(temp))# **numpy形式** 最頻値の最大のインデックス返す
236
+
237
+ temp = torch.stack(temp, dim=1)
238
+
239
+ response = torch.argmax(torch.bincount(temp)) **エラー箇所**
240
+
241
+ response.tolist()
242
+
243
+ print("Predicted gesture: {0}".format(response))
244
+
173
245
  temp = []
174
246
 
175
247
  start = time.time()
176
248
 
177
- if len(data) > 0:
249
+ if len(data) > 0: # len(data) = 8
178
250
 
179
251
  tmp = []
180
252
 
@@ -184,94 +256,22 @@
184
256
 
185
257
  tmp = list(np.stack(tmp).flatten())
186
258
 
259
+ tmp = torch.tensor(tmp) # tensor型に変換(listの中身を)
260
+
261
+ #print(tmp)
262
+
187
- if len(tmp) >= 64: #>=64
263
+ if len(tmp) >= 64:
264
+
188
-
265
+ pred = model(tmp)
266
+
267
+ #pred = torch.mean(_,predicted, feed_dict={x: np.array([tmp])})
268
+
189
- pred = sess.run(y_pred_cls, feed_dict={x: np.array([tmp])})
269
+ #pred = sess.run(y_pred_cls, feed_dict={x: np.array([tmp])})
270
+
271
+ print(pred)
190
272
 
191
273
  temp.append(pred[0])
192
274
 
193
- with open("name1_pred_ANN.csv", "a") as f:
194
-
195
- np.savetxt(f, pred, fmt="%s", delimiter=",")
196
-
197
-
198
-
199
- sleep(0.01)
200
-
201
- コード
202
-
203
- ```
204
-
205
- ### 現在,実装中のコードpytorchベース,numpy形式から変換したい場所だけ記載します.
206
-
207
- ```
208
-
209
- if __name__ == '__main__':
210
-
211
-
212
-
213
- myo.init(bin_path=r'C:\Users\name\Desktop\myo-sdk-win-0.9.0\bin')
214
-
215
- HUB = myo.Hub()
216
-
217
- model.eval()
218
-
219
- listener = MyListener()
220
-
221
- start = time.time()
222
-
223
- temp = []
224
-
225
- with HUB.run_in_background(listener.on_event):
226
-
227
- while True:
228
-
229
- data = listener.get_emg_data()
230
-
231
- #print(temp)
232
-
233
- if time.time() - start >= 1:
234
-
235
- #response = np.argmax(np.bincount(temp))# **numpy形式**
236
-
237
- temp = torch.stack(temp, dim=1)
238
-
239
- response = torch.argmax(torch.bincount(temp)) **エラー箇所**
240
-
241
- response.tolist()
242
-
243
- print("Predicted gesture: {0}".format(response))
244
-
245
- temp = []
246
-
247
- start = time.time()
248
-
249
- if len(data) > 0: # len(data) = 8
250
-
251
- tmp = []
252
-
253
- for v in listener.get_emg_data():
254
-
255
- tmp.append(v[1])
256
-
257
- tmp = list(np.stack(tmp).flatten())
258
-
259
- tmp = torch.tensor(tmp) # tensor型に変換(listの中身を)
260
-
261
- #print(tmp)
262
-
263
- if len(tmp) >= 64:
264
-
265
- pred = model(tmp)
266
-
267
- #pred = torch.mean(_,predicted, feed_dict={x: np.array([tmp])})
268
-
269
- #pred = sess.run(y_pred_cls, feed_dict={x: np.array([tmp])})
270
-
271
- print(pred)
272
-
273
- temp.append(pred[0])
274
-
275
275
  sleep(0.01)
276
276
 
277
277
  ```