Keras层输入类型

时间:2017-07-18 07:28:20

标签: keras keras-layer

我在Keras设计了一个图层。这是网络的第一层。该层的输入必须是RGB图像,即形状(高度,宽度,3)。但是,当我运行代码时,我收到以下错误。

ValueError:使用不是符号张量的输入调用Layer sequential_1。收到类型:。完整输入:[< main .CountPix对象位于0x7fa9a5e81518>]。该层的所有输入都应该是张量。

我应该如何输入我的图像或我应该在图层中修改什么?

class CountPix(Layer):

def __init__(self, **kwargs):
    super(CountPix, self).__init__(**kwargs)

def build(self, input_shape):
    # Create a trainable weight variable for this layer.
    self.kernel = self.add_weight(name='kernel', shape=((200,200,3)),initializer='uniform',trainable=True)
    super(MyLayer, self).build(input_shape)  # Be sure to call this somewhere!

1 个答案:

答案 0 :(得分:0)

您需要定义输入。

from keras.layers import Input
input_X = Input(shape=(height, width, 3), dtype='float32', name='input_image')

另外,如果你的self.kernel行需要明确告诉keras它的输入形状类似于这个例子:

from keras.layers import Dense
from keras.models import Sequential
model = Sequential()
model.add(Dense(32, input_shape=(height, width, 3)))