語義分割Semantic Segmentation研究綜述


語義分割和實例分割概念

語義分割:對圖像中的每個像素都划分出對應的類別,實現像素級別的分類。

實例分割:目標是進行像素級別的分類,而且在具體類別的基礎上區別不同的實例。

image

語義分割(Semantic Segmentation)

輸入:一張原始的RGB圖像

輸出:帶有各像素類別標簽的與輸入同分辨率的分割圖像

image

對預測的分類目標采用one-hot編碼,為每個分類類別創建一個輸出的channel。
image

將分割圖相加到原始圖像上的效果。

image

語義分割的難點

在經典的網絡中,需要經過多層卷積和池化進行提取特征工作,從而找到分類目標,這個過程會使圖像尺寸逐漸減小。需要將分類后的特征圖還原到原圖尺寸。

通常的做法是編碼和解碼網絡結構。

卷積核池化操作可以看圖像編碼的過程,也就是下采樣過程

解碼理解為編碼的逆運算,對輸出的特征圖不斷上采樣,逐漸得到一個與原始圖像同分辨率的分割圖。

卷積動圖

image

最大池化和最大池化的示意圖(池化上采樣是通過將單個值分配更高的分辨率來達到擴充的目的)

image

反卷積(轉置卷積)

image

Dilated convolution(空洞卷積)

image

1. FCN全卷積網絡簡介

1.1 關鍵技術:卷積化(convolutionalization)

分類所使用的網絡通常會在最后連接全連接層,它會將原來二維的矩陣(圖片)壓縮成一維的,從而丟失了空間信息,最后訓練輸出一個標量,這就是我們的分類標簽。

語義分割的輸出是個分割圖,至少是二維的。通常是一個類別為一個通道。

image

1.2 關鍵技術:上采樣(Upsampling)

需要得到一個與原圖像size相同的分割圖,需要對最后一層進行上采樣。

1.3 關鍵技術:跳躍結構(Skip Architecture)

由於直接將全卷積的結果上采樣后的結果很粗糙。采用跳躍結構,將不同池化層的結果進行上采樣,然后結合這些結果來優化輸出。(出發點:由於池化層會丟失信息,將不同池化層結果上采樣,從而彌補部分信息)

image

2. u-net簡介

u-net作為FCN的改進,通過擴大網絡解碼器容量來改進了全卷積網絡結構,並給編碼和解碼模塊添加了收縮路徑(contracting path),從而實現更精准的像素邊界定位。

image

融合之前要crop到對應的層相同尺寸。(思考:融合操作是不是對應通道的相加,具體需要看論文和代碼。有沒有更合理的特征融合方法)

3. v-net簡介

v-net 可以理解為 3D 版本的 u-net ,適用於三維結構的醫學影像分割。v-net 能夠實現 3D 圖像端到端的圖像語義分割,加了一些像殘差學習一樣的trick來進行網絡改進,總體結構上與 u-net 差異不大。

image


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM