Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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
Arrays “.fit()”的输入应具有排名4。已获取具有形状的数组:(777,1,256,256,3)_Arrays_Data Augmentation - Fatal编程技术网

Arrays “.fit()”的输入应具有排名4。已获取具有形状的数组:(777,1,256,256,3)

Arrays “.fit()”的输入应具有排名4。已获取具有形状的数组:(777,1,256,256,3),arrays,data-augmentation,Arrays,Data Augmentation,这就是我得到的错误 seed=24 from keras.preprocessing.image import ImageDataGenerator img_data_gen_args = dict(rotation_range=90, width_shift_range=0.3, height_shift_range=0.3, shear_range=0.5,

这就是我得到的错误

seed=24
from keras.preprocessing.image import ImageDataGenerator

img_data_gen_args = dict(rotation_range=90,
                 width_shift_range=0.3,
                 height_shift_range=0.3,
                 shear_range=0.5,
                 zoom_range=0.3,
                 horizontal_flip=True,
                 vertical_flip=True,
                 fill_mode='reflect')

mask_data_gen_args = dict(rotation_range=90,
                 width_shift_range=0.3,
                 height_shift_range=0.3,
                 shear_range=0.5,
                 zoom_range=0.3,
                 horizontal_flip=True,
                 vertical_flip=True,
                 fill_mode='reflect')
                 #preprocessing_function = lambda x: np.where(x>0, 1, 0).astype(x.dtype)) #Binarize 
the output again. 

image_data_generator = ImageDataGenerator(**img_data_gen_args)
image_data_generator.fit( X_train, augment=True, seed=seed)

image_generator = image_data_generator.flow(X_train, seed=seed)
valid_img_generator = image_data_generator.flow(X_test, seed=seed)

mask_data_generator = ImageDataGenerator(**mask_data_gen_args)
mask_data_generator.fit(y_train, augment=True, seed=seed)
mask_generator = mask_data_generator.flow(y_train, seed=seed)
valid_mask_generator = mask_data_generator.flow(y_test, seed=seed)

def my_image_mask_generator(image_generator, mask_generator):
    train_generator = zip(image_generator, mask_generator)
        for (img, mask) in train_generator:
        yield (img, mask)

my_generator = my_image_mask_generator(image_generator, mask_generator)

validation_datagen = my_image_mask_generator(valid_img_generator, valid_mask_generator)

x = image_generator.next()
y = mask_generator.next()
for i in range(0,1):
image = x[i]
mask = y[i]
plt.subplot(1,2,1)
plt.imshow(image[:,:,0], cmap='gray')
plt.subplot(1,2,2)
plt.imshow(mask[:,:,0])
plt.show()
---------------------------------------------------------------------------
ValueError回溯(最近一次调用上次)
在()
25
26图像数据发生器=图像数据发生器(**img数据发生器参数)
--->27图像数据生成器.fit(X\u序列,增强=真,种子=种子)
28
29图像生成器=图像数据生成器.流(X列,种子=种子)
/usr/local/lib/python3.7/dist-packages/keras_preprocessing/image/image_data_generator.py in
配合(自我、x、增强、轮次、种子)
934如果x.ndim!=4:
935 raise VALUE ERROR(“.fit()`的输入应为4级。”
-->936'获得形状为“+str(x.shape)”的数组
937如果x.shape[self.channel_轴]不在{1,3,4}中:
938.warning(
ValueError:“.fit()”的输入应具有秩4。获取了具有形状的数组:(777,1,256,256,3)
大家好。我在数组列组方面遇到了一些问题,似乎很难理解如何解决它(仍然是初学者!)。我看到了一些与同一问题相关的问题,但仍然不清楚如何以及在何处进行重塑。有任何可能的帮助吗?提前谢谢

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-97-6669d209f27d> in <module>()
25 
26 image_data_generator = ImageDataGenerator(**img_data_gen_args)
---> 27 image_data_generator.fit( X_train, augment=True, seed=seed)
28 
29 image_generator = image_data_generator.flow(X_train, seed=seed)

/usr/local/lib/python3.7/dist-packages/keras_preprocessing/image/image_data_generator.py in 
fit(self, x, augment, rounds, seed)
934         if x.ndim != 4:
935             raise ValueError('Input to `.fit()` should have rank 4. '
--> 936                              'Got array with shape: ' + str(x.shape))
937         if x.shape[self.channel_axis] not in {1, 3, 4}:
938             warnings.warn(
ValueError: Input to `.fit()` should have rank 4. Got array with shape: (777, 1, 256, 256, 3)