圖像分割是根據圖像內容對指定區域進行標記的計算機視覺任務,簡言之就是“這張圖片里有什么,其在圖片中的位置是什么?”本文聚焦于語義分割任務,即在分割圖中將同一類別的不同實例視為同一對象。
更具體地講,語義圖像分割的目標在于標記圖片中每一個像素,并將每一個像素與其表示的類別對應起來。因為會預測圖像中的每一個像素,所以一般將這樣的任務稱為密集預測。
語義分割的例子,目標是預測圖像中每一個像素的類別標簽。
當我們有越來越多要用機器執行的任務時,為這些機器配備必需的感知器是很重要的。
自動駕駛中實時語義分割道路場景
還有一點要注意的是我們不會分割同一類別的實例,只需要關注每一個像素的類別。換句話講,如果在輸入圖像中有兩個目標屬于同一類,分割映射不會將其分為單獨的兩個目標。
相對地,實例分割模型是另一種不同的模型,該模型可以區分同一類的不同目標。
任務表征
簡單地說,我們的目標是要用 RGB 圖(高 x 寬 x3)或灰度圖(高 x 寬 x1)為輸入,并輸出一個分割圖,在分割圖中每個像素都包括一個用整數表示的類別標簽(高 x 寬 x1)。
注意:為了視覺上的理解簡單起見,我標記的是分辨率比較低的預測圖。事實上,分割標簽的分辨率是和原始輸入圖的分辨率相對應的。
與我們處理標準分類值的方法相似,我們通過獨熱編碼類別標簽的方法創建目標——本質上講是要為每一個可能的類創建一個輸出通道。
然后我們可以利用每一個像素位深向量的 argmax 函數將預測值分解為分割映射(如上圖所示)。
也可以通過將目標重疊在輸入圖像上來對目標進行觀察。
建立網絡架構
針對這項任務簡單地構建神經網絡架構的方法是簡單地堆疊大量卷積層(用 same 填充保留維度)后輸出最終的分割映射。通過特征圖的接連轉換,直接從輸入圖像學到了相對應的分割映射;然而,在整個網絡中要保留完整分辨率的計算成本是很高的。
回顧深度卷積網絡,前期的卷積層更傾向于學習低級概念,而后期的卷積層則會產生更高級(且專一)的特征圖。為了保持表達性,一般而言,當我們到達更深層的網絡時,需要增加特征圖(通道)的數量。
對圖像分類任務而言,這不一定會造成什么問題,因為對這個任務而言,我們只需要關注圖像里面有什么(而不是目標類別對象的位置)。因此,我們可以通過池化或逐步卷積(即壓縮空間分辨率)定期對特征圖進行下采樣以緩和計算壓力。
常用的圖像分割模型的方法遵循編碼器/解碼器結構,在這個結構中,我們對輸入的空間分辨率下采樣,產生分辨率更低的特征圖,通過學習這些特征圖可以更高效地分辨類別,還可以將這些特征表征上采樣至完整分辨率的分割圖。
-
神經網絡
+關注
關注
42文章
4762瀏覽量
100539 -
計算機
+關注
關注
19文章
7421瀏覽量
87718
發布評論請先 登錄
相關推薦
評論