標籤:

圖片語義分割-FCN

首先說下什麼是語義分割,語義分割是從像素的水平上來理解識別圖像,相當於知道每一個像素是什麼東西。可用於自動駕駛和醫學上的。

早先是利用手工特徵加圖模型。隨著深度網路的發展,也引入的CNN,傳統的CNN是有問題的:a.網路的後半段空間信息的缺失;b.輸入的圖片的尺寸固定。為了改進這個FCN到來了,FCN(Fully Convolutional Networks)又全卷積網路,如它的名字一樣,它的所有層都是卷積層,很好的解決了降採樣後的低解析度問題。

對每一個像素進行預測

FCN有三個重要的東西:卷積化;反卷積;跳層結構。

卷積化:全連接層(6,7,8)都變成卷積層,適應任意尺寸輸入,輸出低解析度的分割圖片。開始的5個卷積層,使圖像的解析度下降了32倍,每層降低2倍。降主要是因為Pooling池化層,相當於掃描四個像素選一個,掃描的步長是2。後面的三層是沒有降採樣的。我自己有畫一個卷積的降緯的圖解。如下第二個圖:

反卷積:低解析度的圖像進行上採樣,輸出同解析度的分割圖片。有兩點注意的反卷積的卷積核是不變的。對於偶輸出,有外圍全部補0的反卷積,對於奇輸出,有插空補0的反卷積。如下圖:

輸入是2X2卷積的偶的,反卷積輸出是上面4X4的,卷積核3X3,步長是1,補零是補了兩層

輸入是卷積後的3X3的,反卷積的結果是5X5的,卷積核3X3,步長是2,補零是間隔補一個

跳層結構:32倍反卷積得到的分割結果粗糙,使用前面的2個卷積層的輸出做融合,就是pool3和pool4後增加一個1X1的卷積層做預測,對於為何選前面兩個卷積層的結果,因為較淺的網路的結果精細,較深的網路結果魯棒,至於什麼是魯棒可以認為你靈活抗干擾羅。

跳層結構圖例,第一個是直接32倍上採樣,第二個融合後再16倍上採樣,第三個是融合後再8倍上採樣

最後說下FCN網路的構架,我畫了一張圖:

pool池化層會導致圖像下採樣,前面的幾層基本不變,就是6,7,8的卷積化,然後加上反卷積和跳層操作,融合是和pool4第四個池化層數據融合。

論文引用:

Long J, Shelhamer E, Darrell T. Fully convolutional networks for semantic segmentation[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2015: 3431-3440.

歡迎關注我們的微信公眾號:人工智慧LeadAI,ID:atleadai

推薦閱讀:

基於word2vec的文檔語義分析
有沒有雙重否定不是肯定的情況?
目前哪些網站屬於語義網?
請教高手:我理解的語義網路是否正確?我想參加這方面的研究。
扯淡一詞的出處?

TAG:语义分析 |