我有一个pgn图像列表。从每个图像中,我提取了一个特定的对象,并只将该对象存储到一个单独的图像中。我读原始图像
到xTrain
numpy
数组中,并将对象提取到yTrain
numpy
数组中:
def getFilesList(directory):
files = os.listdir(directory)
return map(lambda file: directory + file, files)
def readImagesIntoNumpy(directory):
filesList = getFilesList(directory)
images = map(lambda file: plt.imread(file), filesList)
return np.array(images)
xTrain = readImagesIntoNumpy("./original/")
yTrain = readImagesIntoNumpy("./objects/")
我想让模型训练如何从新图像中提取这些对象:
model = Sequential()
model.add(Dense(units=64, activation='relu', input_dim=100))
model.add(Dense(units=10, activation='softmax'))
model.compile(loss='categorical_crossentropy',
optimizer='sgd',
metrics=['accuracy'])
model.fit(xTrain, yTrain, epochs = 5, batch_size = 32)
问题是最后一个model.fit
调用抛出一个错误:
ValueError: Error when checking input: expected dense_17_input
to have 2 dimensions, but got array with shape (20, 256, 256, 4)
如何将一组图像传递到keras模型中进行训练?
输入的图像形状是(256,256,4),输入的密集层形状是2作为向量 将数据从(256,256,1)重塑为(256*256*1,1)
在第一层添加此层
相关问题 更多 >
编程相关推荐