是否可以更改张量流预训练模型的输入形状?

问题描述 投票:1回答:1

我有一个用于图像分割的Tensorflow预训练模型,该模型接收6个波段作为输入,我想将模型的输入大小更改为接收4个波段,因此我可以使用自己的数据集进行重新训练,但仍然无法执行它,不确定这是否可能?

我尝试通过名称获取输入节点并使用import_graph_def进行更改,但没有成功,似乎是在尝试替换时要求尊重尺寸。

graph = tf.get_default_graph()
tf_new_input = tf.placeholder(shape=(4, 256, 256), dtype='float32', name='new_input')
tf.import_graph_def(graph_def, input_map={"ImageInputLayer": tf_new_input})

但是我收到以下错误:

tensorflow.python.framework.errors_impl.InvalidArgumentError: Dimensions must be equal, but are 4 and 6 for 'import/ImageInputLayer_Sub' (op: 'Sub') with input shapes: [4,256,256], [6,256,256]
tensorflow transfer-learning
1个回答
0
投票

您必须将4通道占位符输入转换为6通道输入,并且输入图像的形状应与6通道模型所期望的相同。您可以使用任何操作,但是在将conv2d输入到现有模型之前,它很容易执行。这就是您的操作方式。

© www.soinside.com 2019 - 2024. All rights reserved.