Fully Convolutional Network
Одной из первых нейросетевых архитектур для решения задачи семантической сегментации была модель FCN (Fully Convolutional Network, [1]), в которой использовалась полносвёрточная архитектура для семантической сегментации. Такая архитектура состоит только из свёрток, пулингов, нелинейностей и операций повышения разрешения (upsampling). Преимуществом архитектуры является то, что она может работать со входным изображением произвольных размеров. В простейшем случае архитектура могла бы выглядеть так [1]:
Однако качество сегментации в подобной архитектуры будет невысоким вследствие того, что низкоразмерные промежуточные представления после резкого повышения разрешения не способны качественно выделять границы объектов.
Хотелось бы как-то совместить высокоуровневые представления низкого разрешения, способные качественно классифицировать объекты с простыми промежуточными представлениями с ранних слоёв, имеющих более высокое пространственное разрешение, чтобы качественно не только классифицировать объекты, но и выделять их границы.
Для этого в FCN предлагается прогнозировать сегментационную карту, используя не только последнее промежуточное представление (FCN-32s), но и предпоследнее. Пространственные размеры обоих прогнозов приводятся в соответствие, используя билинейную интерполяцию и складываются (FCN-16s). Этот же трюк повторяется ещё раз, когда прогнозы строятся по ещё более раннему промежуточному представлению и складываются с прогнозом FCN-16s, что даёт архитектуру FCN-8s.
Графически это представлено схемой ниже [1]:
Чем сильнее используется комбинирование прогнозов с более поздних и более ранних слоёв, тем точность сегментации получается выше [1]: