首页 > 解决方案 > 在 Python 中重塑图像和绘图

问题描述

我正在处理 mnist_fashion 数据。mnist_data 中的图像为 28x28 像素。为了将其馈送到神经网络(多层感知器),我将数据转换为 (784,) 形状。

此外,我需要再次将其重塑回原始大小。

为此,我使用了下面给定的代码:-

from keras.datasets import fashion_mnist
import numpy as np
import matplotlib.pyplot as plt


(train_imgs,train_lbls), (test_imgs, test_lbls) = fashion_mnist.load_data()
plt.imshow(test_imgs[0].reshape(28,28))

no_of_test_imgs  = test_imgs.shape[0]

test_imgs_trans  = test_imgs.reshape(test_imgs.shape[1]*test_imgs.shape[2], no_of_test_imgs).T

plt.imshow(test_imgs_trans[0].reshape(28,28))

不幸的是,我没有得到类似的图像。我无法理解为什么会这样。

预期图像:在此处输入图像描述

收到的图片:在此处输入图像描述

请帮助我解决问题。

标签: tensorflowkerasdeep-learningneural-networkmnist

解决方案


将图像展平时请注意test_imgs_trans

(train_imgs,train_lbls), (test_imgs, test_lbls) = tf.keras.datasets.fashion_mnist.load_data()

plt.imshow(test_imgs[0].reshape(28,28))

no_of_test_imgs  = test_imgs.shape[0]

test_imgs_trans  = test_imgs.reshape(no_of_test_imgs, test_imgs.shape[1]*test_imgs.shape[2])

plt.imshow(test_imgs_trans[0].reshape(28,28))

推荐阅读