如何更改频道数量以在 Keras 中微调 VGG16 网络

zep*_*rus 4 keras tensorflow keras-layer

我想使用我自己的灰度图像微调 VGG16 模型。我知道我可以通过执行以下操作来微调/添加我自己的顶层:

base_model = keras.applications.vgg16.VGG16(include_top=False, weights='imagenet', input_tensor=None, input_shape=(im_height,im_width,channels))
Run Code Online (Sandbox Code Playgroud)

但仅当 channel = 3 根据文档。我曾想过简单地向我的图像添加两个冗余通道,但这似乎是一种计算浪费/可能会使分类变得更糟。我也可以跨三个通道复制相同的图像,但我同样不确定它会如何进行。

Mat*_*tin 5

Keras 预训练模型已经对彩色图像进行了训练,如果你想充分利用它们的能力,你应该使用彩色图像进行微调。但是,如果您有灰度图像,您仍然可以通过在三个通道上重复灰度图像来使用这些预先训练的模型。但显然,它不如使用彩色图像作为输入。