Как показать изображения, хранящиеся в массиве с примерами (работает в блокноте Jupyter)
Я знаю, что есть более простые ответы, но этот даст вам понимание того, как изображения на самом деле тонут из массива.
Пример загрузки
from sklearn.datasets import load_digits
digits = load_digits()
digits.images.shape #this will give you (1797, 8, 8). 1797 images, each 8 x 8 in size
Показать массив одного изображения
digits.images[0]
array([[ 0., 0., 5., 13., 9., 1., 0., 0.],
[ 0., 0., 13., 15., 10., 15., 5., 0.],
[ 0., 3., 15., 2., 0., 11., 8., 0.],
[ 0., 4., 12., 0., 0., 8., 8., 0.],
[ 0., 5., 8., 0., 0., 9., 8., 0.],
[ 0., 4., 11., 0., 1., 12., 7., 0.],
[ 0., 2., 14., 5., 10., 12., 0., 0.],
[ 0., 0., 6., 13., 10., 0., 0., 0.]])
Создайте пустые 10 x 10 участков для визуализации 100 изображений
import matplotlib.pyplot as plt
fig, axes = plt.subplots(10,10, figsize=(8,8))
Построение 100 изображений
for i,ax in enumerate(axes.flat):
ax.imshow(digits.images[i])
Результат:
Что делает axes.flat
?
Он создает нумерованный перечислитель, чтобы вы могли выполнять итерации по оси, чтобы рисовать на них объекты.
Пример:
import numpy as np
x = np.arange(6).reshape(2,3)
x.flat
for item in (x.flat):
print (item, end=' ')