在python中如何将图像划分为块?

在python中如何将图像划分为块?,python,keras,Python,Keras,我正在使用keras,我想读取代码中的图像,然后将其划分为32x32个不重叠的块,并将每个块发送到我学习的深度学习模型中进行进一步处理。我怎么做?在学习过程中,我使用CIFAR10进行训练,其图像大小为32x32。现在我想加载Lena,然后将其分成32x32个块,并发送到我的模型进行处理。我是否需要对Lena进行一些更改以达到正确的精度?多谢各位 lena=Image.open('E:/images/lena_gray_512.tif') a=view_as_blocks(lena_part,

我正在使用keras,我想读取代码中的图像,然后将其划分为32x32个不重叠的块,并将每个块发送到我学习的深度学习模型中进行进一步处理。我怎么做?在学习过程中,我使用CIFAR10进行训练,其图像大小为32x32。现在我想加载Lena,然后将其分成32x32个块,并发送到我的模型进行处理。我是否需要对Lena进行一些更改以达到正确的精度?多谢各位

lena=Image.open('E:/images/lena_gray_512.tif')
a=view_as_blocks(lena_part, (32,32))
错误:

a=查看作为块(lena_部分,(32,32))回溯(最近调用 最后):

文件“”,第1行,在 a=视为块(lena_零件,(32,32))

文件 “D:\software\Anaconda3\envs\py36\lib\site packages\skimage\util\shape.py”, 第82行,作为块的视图 如果块_shape.size!=arr_in.ndim:


AttributeError:“TiffImageFile”对象没有属性“ndim”

你可以试试


如果图像尺寸不能被32整除,会发生什么情况?我的图像是512x512,我对此问题没有任何问题。AttributeError:“TiffImageFile”对象没有属性“ndim”,我将代码和错误放在上面。请告诉我有什么问题?感谢分享代码,请分享“TiffImageFile”的类型使用python的内置函数类型我发现了问题,因为使用imread后,我的图像是一个图像对象,而不是数组,所以首先我使用以下命令将其更改为数组:lena_part=img_as_int(lena_part)很棒。我也这么怀疑。
from skimage.util.shape import view_as_blocks

view_as_blocks(arr, (2,2))