我是GAN的新领域的新手,我尝试了一些教程,但是,大多数都使用了Cifar或mnist数据集。所以大多数都是这样的格式化形式(xxxx,28,28)。
最近,我想……
图像的大小x,y(842x1116),以像素为单位,颜色通道数为-4(R,G,B,Alpha)
imread使用PIL或Pillow读取图像,它以下列格式返回图像: 高x宽x通道 通道通常是3个通道(正常彩色图像的红色,绿色,蓝色[RGB])或有时4个通道(红色,绿色,蓝色,alpha /透明度[RGBA])。
所以你读了一个大小的图像 842x1116 具有4个颜色通道的像素。你说你使用形状的训练数据(xxxx,28,28),所以你使用灰度而不是彩色图像。第一步是将彩色图像转换为灰度。 Pillow (作为PIL的替代品)是一个很好的图像操作库。或者,您可以使用一个频道
842x1116
Pillow
gray_data = data[:,:,0]
要将其用作训练数据,您现在可以将其调整为28x28或从中提取大小为28x28的小块。
small_data = gray_data[:28,:28]
这将导致(28,28)。大多数学习算法都期望不是一个而是几个图像,主要是格式(#images,高度,宽度)。所以你需要重塑它:
final_data = small_data.reshape(1,28,28)
应该这样做。但是,正确的RGB(A)到格雷转换和调整大小将是更好的解决方案。查看枕头文档了解详细信息。