質問編集履歴
1
プログラムを修正しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -24,8 +24,21 @@
|
|
24
24
|
|
25
25
|
# MNIST の学習データのうち最初の nx * ny 個だけ取り出す
|
26
26
|
mn = mnist.MNIST(pathMNIST = './mnist')
|
27
|
-
dat = mn.getImage('L')
|
27
|
+
dat = mn.getImage('L')
|
28
|
-
lab = mn.getLabel('L')
|
28
|
+
lab = mn.getLabel('L')
|
29
|
+
|
30
|
+
result=[]
|
31
|
+
|
32
|
+
for i in range(10):
|
33
|
+
count=0
|
34
|
+
for count in range(10):
|
35
|
+
for j in range(len(dat)):
|
36
|
+
if i == lab[j]:
|
37
|
+
result.append(dat[j])
|
38
|
+
count = count+1
|
39
|
+
elif count == 10:
|
40
|
+
break
|
41
|
+
|
29
42
|
nrow, ncol = mn.nrow, mn.ncol
|
30
43
|
|
31
44
|
# 並べた画像の幅と高さ
|
@@ -38,7 +51,7 @@
|
|
38
51
|
lty = iy*(nrow + gap) + gap
|
39
52
|
for ix in range(nx):
|
40
53
|
ltx = ix*(ncol + gap) + gap
|
41
|
-
img[lty:lty+nrow, ltx:ltx+ncol] =
|
54
|
+
img[lty:lty+nrow, ltx:ltx+ncol] = result[iy*nx+ix].reshape((nrow, ncol))
|
42
55
|
|
43
56
|
# 画像の出力
|
44
57
|
cv2.imwrite('MNIST.png', img)
|
@@ -132,4 +145,8 @@
|
|
132
145
|
dat = mnist.getImage( 'T' )
|
133
146
|
lab = mnist.getLabel( 'T' )
|
134
147
|
print( dat.shape, dat.dtype, lab.shape )
|
135
|
-
```
|
148
|
+
```
|
149
|
+
|
150
|
+
## エラー箇所
|
151
|
+
これで実行すると「0」の画像が100枚(縦10、横10)表示にできました。
|
152
|
+
しかし、このままでは0のみになります。どうすれば全ての数字を10枚ずつ表示できますか?
|