Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 改变图像的深度?_Python_Image_Matplotlib_Image Processing_Resize - Fatal编程技术网

Python 改变图像的深度?

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

我正在尝试制作自己的手写图像数据集,以测试我的手写数字分类器。 因此,为了做到这一点,我将图像写在一个画框中,并将图像的大小调整为28x28像素,与火车测试像素相同。但是当我将它加载到python中时,图像形状是(28,28,3),我知道这些是RGB值。但我不知道如何摆脱它们。我是否应该将图像更改为灰度以获得大小为(28,28)的图像。 我不知道它叫什么,所以题目可能是错的。 用于将图像上载到环境的代码

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)作为输出,您可能应该首先将其转换为灰度