Python 改变图像的深度?
我正在尝试制作自己的手写图像数据集,以测试我的手写数字分类器。 因此,为了做到这一点,我将图像写在一个画框中,并将图像的大小调整为28x28像素,与火车测试像素相同。但是当我将它加载到python中时,图像形状是(28,28,3),我知道这些是RGB值。但我不知道如何摆脱它们。我是否应该将图像更改为灰度以获得大小为(28,28)的图像。 我不知道它叫什么,所以题目可能是错的。 用于将图像上载到环境的代码Python 改变图像的深度?,python,image,matplotlib,image-processing,resize,Python,Image,Matplotlib,Image Processing,Resize,我正在尝试制作自己的手写图像数据集,以测试我的手写数字分类器。 因此,为了做到这一点,我将图像写在一个画框中,并将图像的大小调整为28x28像素,与火车测试像素相同。但是当我将它加载到python中时,图像形状是(28,28,3),我知道这些是RGB值。但我不知道如何摆脱它们。我是否应该将图像更改为灰度以获得大小为(28,28)的图像。 我不知道它叫什么,所以题目可能是错的。 用于将图像上载到环境的代码 import matplotlib.pyplot as plt import matplot
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
img=mpimg.imread('0.png')
imgplot = plt.imshow(img)
Xts_n=img
有人能给我一个如何完成的提示吗 如果您有RGB图像,并且希望将其转换为1个通道(灰度)-可以使用:
import cv2
img=cv2.imread('0.png')
img=cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
现在它的形状是(28,28)
python图像形状为(28,28,3)
如果您的意思是使用img.shape
获取(28,28,3),那么,为了澄清起见-img.shape
返回一个行、列和通道数的元组(如果图像是彩色的)。所以,如果希望(28,28)作为输出,您可能应该首先将其转换为灰度