Я использую keras и python для сегментации спутниковых изображений.Насколько я понимаю, чтобы получить (уровень пикселей) прогнозы для сегментации изображения, модель изменяет слой измерения (-1, num_classes, высота, ширина), чтобы сформировать (-1, num_classes, высота * ширина). Затем следует применениефункция активации, как softmax или сигмовидная.Мой вопрос заключается в том, как восстановить изображения после этого шага обратно в формате первого канала или последнего канала?пример кода
o = (Reshape(( num_classes , outputHeight*outputWidth)))(o)
o = (Permute((2, 1)))(o)
o = (Activation('softmax'))(o)
Я попытался добавить следующий слой к модели в конце
o = (Reshape((outputHeight, outputWidth, num_classes)))(o)
Это правильно?это переориентирует пиксели изображения в том же порядке, что и оригинал или нет?Другой альтернативой может быть использование следующего кода на отдельных изображениях.
array.reshape(height, width, num_classes)
Какой метод следует использовать для получения результата сегментации на уровне пикселей?