Ví dụ, làm thế nào để hiển thị hình ảnh được lưu trữ trong mảng numpy (hoạt động trong sổ ghi chép Jupyter)
Tôi biết có những câu trả lời đơn giản hơn nhưng câu trả lời này sẽ cho bạn hiểu về cách hình ảnh thực sự bị chết đuối từ mảng numpy.
Tải ví dụ
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
Hiển thị mảng của một hình ảnh
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.]])
Tạo các ô con 10 x 10 trống để hiển thị 100 hình ảnh
import matplotlib.pyplot as plt
fig, axes = plt.subplots(10,10, figsize=(8,8))
Vẽ 100 hình ảnh
for i,ax in enumerate(axes.flat):
ax.imshow(digits.images[i])
Kết quả:
Không gì axes.flat
làm gì?
Nó tạo ra liệt kê numpy để bạn có thể lặp qua trục để vẽ các đối tượng trên chúng.
Thí dụ:
import numpy as np
x = np.arange(6).reshape(2,3)
x.flat
for item in (x.flat):
print (item, end=' ')