【发布时间】:2019-04-29 06:53:50
【问题描述】:
我为数字识别器 (https://www.kaggle.com/c/digit-recognizer/data) 训练了一个模型。输入数据是一个 csv 文件。文件中的每一行代表一个高 28 像素、宽 28 像素的图像,总共 784 像素。该模型已准备好使用,但我想知道如何为此输入创建测试数据?如果我有一个带有数字编号的图像,如何将其转换为 28 x 28 像素的数组格式。
我尝试了下面的代码,但它将图像背景呈现为黄色。 png 图像有白色背景,所以我不明白为什么它显示为黄色。
import numpy as np
import cv2
import csv
import matplotlib.pyplot as plt
img = cv2.imread('./test.png', 0) # load grayscale image. Shape (28,28)
flattened = img.flatten() # flatten the image, new shape (784,)
row = flattened.reshape(28,28)
plt.imshow(row)
plt.show()
【问题讨论】:
-
请提供 CSV 样本。