Переход от градаций серого к приближению RGB математически сложен.Рассмотрим (одну из) формулу (ы) перехода от RGB к значению серого Y:
Y = 0,299R + 0,587G + 0,1144B
Теперь вы можете представитьчто движение в другом направлении и попытка получить значения R, G и B из Y, ну .. требует слишком много информации (1 уравнение 3 неизвестно).Люди на самом деле используют нейронные сети для этого материала ..
Скорее, правильный подход для вас - это сделать наоборот.То есть, если у вас есть доступ только к данным в градациях серого (или 1-канальным данным), вы должны изменить свою сеть так, чтобы она принимала правильные данные.
Я не уверен, какие библиотеки или точный код вы используете из вашего вопроса, но в целом это не должно быть слишком сложно.
Обычно код, который вы находите в сети, имеет функцию, которая создает для вас эти сети с правильными входными аргументами.
def ResNET(shape=(256,256,3), ...):
some_code()
тогда вы обычно можете просто передать свой собственный ввод:
net = ResNET(shape=(256,256,1))
Надеюсь, это поможет.