Что ж, это не «правило», но, вероятно, вы будете использовать в основном двумерные конвы и связанные с ними слои.
Вы кормите все как массивы, как обычно, возможно, нормализуя значения. Общие параметры:
- От 0 до 1 (просто разделите на 255.)
- От -1 до 1 (разделить на 255., умножить на 2, вычесть 1)
- Стиль кафе: вычитайте из каждого канала определенное значение, чтобы «центрировать» значения на основе их обычного среднего значения без их масштабирования.
Ваша модель должна начинаться с чего-то вроде:
inputTensor = Input((2048,2048,1))
output = Conv2D(filters, kernel_size, .....)(inputTensor)
Или, в последовательных моделях: model.add(Conv2D(...., input_shape=(2048,2048,1))
Позже вам решать, какие слои использовать.
- Conv2D
- MaxPooling2D
- Upsampling2D
Собираетесь ли вы создать линейную модель или собираетесь разделять ветви, объединять ветви и т. Д. - это также ваш вызов.
Модели в стиле U-Net должны стать хорошим началом для вас.
Что вы не можете сделать :
- Не используйте Сглаживать слои (на самом деле вы можете, если позже вы измените форму для получения размеров изображения ... но почему?)
- Не используйте слои Global Pooling (вы не хотите жертвовать своими пространственными измерениями)