我正在尝试微调Keras中的VGG16模型,用于医学成像应用 .

因为医学图像是灰色图像,所以我将每个灰色图像复制到RGB通道(3个通道具有相同的灰色图像),使得它们可以用作VGG模型的输入 . 我们称它们为“RGB”图像(带引号) .

但是,如果我使用 keras.applications.vgg16 中的 preprocess_input 函数预处理"RGB"图像,那么因为 preprocess_input 中的默认模式是'caffe',它将减去平均RGB值[103.939,116.779,123.68],这是根据Imagenet中的训练数据集计算的 . ,从我创建的每个"RGB"图像 .

但是,在我的“RGB”图像中,所有3个RGB通道应该具有相同的平均值,更重要的是因为我的是医学图像,平均值应该与Imagenet的平均值不同 .

那么在这种情况下,我应该如何预处理我的“RGB”图像以使用预先训练的“Imagenet”权重微调VGG16模型?

另外,为了确保,Keras中预训练的“Imagenet”权重是使用“caffe”模式预处理的数据进行训练的,对吧?