1. 程式人生 > >語義分割之FCN個人總結

語義分割之FCN個人總結

一、網路結構

在這裡插入圖片描述 在這裡插入圖片描述 FCN涉及到了不同尺度的feature map的融合。 融合理由是:低層特徵具有較多的的解析度資訊,更加精細,但語義資訊較弱。高層特徵具有較多語義資訊,然而較粗糙,解析度資訊不足。為了融合語義資訊和細節資訊,對高層的feature map進行反捲積,然後將低層的feature map crop成相同尺寸,最後進行畫素級的相加。

最後,從pool3處融合輸出的feature map進行8倍反捲積,得到原圖尺寸。

損失函式為交叉熵損失。 在這裡插入圖片描述

二、crop layer

layer {
  name: "score"
  type: "Crop"
  bottom: "upscore8"
  bottom: "data"
  top: "score"
  crop_param {
    axis: 2
    offset: 31
  }
}

crop的原理是這樣的: 兩個bottom,一個作為crop之後的shape[n1,c1,w1,h1],一個作為待crop的feature map[n2,c2,w2,h2]。 axis = 2,表明[n,c,w,h]我們只針對w及w後面的維度進行crop,說白了就是平面crop。 offset = 31,表明我們從w2後面第31個畫素開始crop,取w1個畫素;同理從h2後面第31個畫素開始crop,取h1個畫素。

三、deconvolution

反捲積初始化值為雙線性插值,並且引數可以學習。 而最後一層反捲積,則固定為雙線性插值。 反捲積的forward就是卷積的backward。反捲積的backward就是卷積的forward。

四、度量標準(Evalueate Metric)

先介紹幾個表達形式: nij: 表示屬於第i類但是被預測為第j類的畫素數。 ncl: 表示類別數 表示第i類的畫素總數。

常用的度量標準是: mean IU. 即預測值與GT的交併比。

五、問題

FCN沒有考慮畫素之間的聯絡,孤立的對每個畫素進行分類。