小编jpr*_*pre的帖子

Keras:使用灰度掩模和 ImageDataGenerator 类进行图像分割

我目前正在尝试使用 Keras 2.1.6(以 TensorFlow 作为后端)实现一个卷积网络,并ImageDataGenerator使用灰度蒙版来分割图像。我尝试使用图像作为输入,使用蒙版作为标签。由于训练图像数量较少且内存限制,我使用ImageDataGeneratorKeras 中提供的类。

但是,将 Keras 示例中提供的值更改为稍后描述的值后,我收到此错误:

File "C:\Users\XXX\Anaconda3\lib\site-packages\keras\engine\training.py", line 2223, in fit_generator
batch_size = x.shape[0]
AttributeError: 'tuple' object has no attribute 'shape'
Run Code Online (Sandbox Code Playgroud)

据我所知,发生这种情况是因为生成器确实生成了一个元组,而不是一个数组。这首先发生在我将以下参数从 Keras 示例中提供的标准值更改为以下内容之后:color_mode='grayscale'对于所有掩码生成器,并且class_mode='input'由于建议自动编码器使用此值。

Keras 示例可以在此处找到。

我使用的数据集由 100 个图像 ( jpg) 和 100 个相应的灰度蒙版 ( ) 组成,可以从此链接png下载

我想要实现的架构是一个基于自动编码器/U-Net 的网络,它如提供的代码所示:

from keras.preprocessing import image
from keras.models import Model
from keras import optimizers 
from keras.preprocessing.image import ImageDataGenerator
from keras.layers import Input, Conv2D, MaxPooling2D, UpSampling2D
from …
Run Code Online (Sandbox Code Playgroud)

python machine-learning generator image-segmentation keras

5
推荐指数
2
解决办法
8365
查看次数