前言
本文對語義分割相關重要論文進行了簡要概述,介紹了它們的主要改進方法和改進效果,並提供了這些論文的下載方式。
本文來自公眾號CV技術指南的
歡迎關注CV技術指南 ,專注於計算機視覺的技術總結、最新技術跟蹤、經典論文解讀。
語義分割 (Semantic segmentation) 是指將圖像中的每個像素鏈接到類標簽的過程。這些標簽可能包括人、車、花、家具等。
我們可以將語義分割視為像素級別的圖像分類。例如,在有很多汽車的圖像中,分割會將所有對象標記為汽車對象。然而,稱為實例分割 (instance segmentation) 的單獨類別的模型能夠標記對象出現在圖像中的單獨實例。這種分割在用於計算目標數量的應用中非常有用,例如計算商場中的人流量。
它的一些主要應用是自動駕駛汽車、人機交互、機器人技術和照片編輯/創意工具。例如,語義分割在自動駕駛汽車和機器人技術中非常重要,因為模型理解其運行環境中的上下文非常重要。
"Two men riding on a bike in front of a building on the road. And there is a car."
本文將介紹一些關於構建語義分割模型的最新方法的研究論文,即:
-
Weakly- and Semi-Supervised Learning of a Deep Convolutional Network for Semantic Image Segmentation
-
Fully Convolutional Networks for Semantic Segmentation
-
U-Net: Convolutional Networks for Biomedical Image Segmentation
-
The One Hundred Layers Tiramisu: Fully Convolutional DenseNets for Semantic Segmentation
-
Multi-Scale Context Aggregation by Dilated Convolutions
-
DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs
-
Rethinking Atrous Convolution for Semantic Image Segmentation
-
Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation
-
FastFCN: Rethinking Dilated Convolution in the Backbone for Semantic Segmentation
-
Improving Semantic Segmentation via Video Propagation and Label Relaxation
-
Gated-SCNN: Gated Shape CNNs for Semantic Segmentation
文末附以上論文的下載方式
用於語義圖像分割的深度卷積網絡的弱監督和半監督學習
論文:Weakly- and Semi-Supervised Learning of a Deep Convolutional Network for Semantic Image Segmentation (ICCV, 2015)
代碼:https: //bitbucket.org/deeplab/deeplab-public
本文針對在深度卷積神經網絡 (CNN) 中處理弱標記數據以及標記良好的數據和未正確標記的數據的組合提出了一種解決方案。
在論文中,應用了深度 CNN 與全連接條件隨機場的組合。
在 PASCAL VOC 分割基准上,該模型給出了高於 70% 的平均交並比 (mean intersection-over-union, IOU) 分數。這種模型面臨的主要挑戰之一是它需要在訓練期間在像素級別進行注釋的圖像。
本文的主要貢獻是:
-
引入可應用於弱監督和半監督設置的邊界框或圖像級訓練的期望最大化算法。
-
證明結合弱注釋和強注釋可以提高性能。在合並來自 MS-COCO 數據集和 PASCAL 數據集的注釋后,本文作者在 PASCAL VOC 2012 上達到了 73.9% 的 IOU 性能。
-
證明他們的方法通過合並少量像素級注釋圖像和大量邊界框或圖像級注釋圖像來實現更高的性能。
用於語義分割的全卷積網絡
論文:Fully Convolutional Networks for Semantic Segmentation(PAMI,2016)
代碼:http://fcn.berkeleyvision.org
本文提出的模型在 PASCAL VOC 2012 上實現了 67.2% 平均 IU 的性能。
全連接網絡獲取任意大小的圖像並生成相應空間維度的輸出。在這個模型中,ILSVRC 分類器被投射到完全連接的網絡中,並使用像素級損失和網絡內上采樣來增強密集預測。然后通過微調完成分割訓練。微調是通過在整個網絡上的反向傳播來完成的。
U-Net:用於生物醫學圖像分割的卷積網絡
論文:U-Net: Convolutional Networks for Biomedical Image Segmentation (MICCAI, 2015)
代碼:http://lmb.informatik.uni-freiburg.de/people/ronneber/u-net
在生物醫學圖像處理中,為圖像中的每個細胞獲得一個類別標簽是非常重要的。生物醫學任務中最大的挑戰是難以獲取數千張用於訓練的圖像。
本文建立在完全卷積層的基礎上並對其進行修改以處理一些訓練圖像並產生更精確的分割。
由於可用的訓練數據很少,因此該模型通過對可用數據應用彈性變形來使用數據增強。如上圖 1 所示,網絡架構由左側的收縮路徑和右側的擴展路徑組成。
收縮路徑由兩個 3x3 卷積組成。每個卷積之后是一個整流線性單元和一個用於下采樣的 2x2 最大池化操作。每個下采樣階段都會使特征通道的數量增加一倍。擴展路徑步驟包括特征通道的上采樣。接着是 2x2 上卷積,將特征通道的數量減半。最后一層是 1x1 卷積,用於將組件特征向量映射到所需數量的類。
在這個模型中,訓練是使用輸入圖像、它們的分割圖和 Caffe 的隨機梯度下降實現來完成的。當使用很少的訓練數據時,數據增強用於教導網絡所需的魯棒性和不變性。該模型在其中一項實驗中取得了 92% 的平均 IOU 分數。
一百層Tiramisu:用於語義分割的全卷積 DenseNets
論文:The One Hundred Layers Tiramisu: Fully Convolutional DenseNets for Semantic Segmentation (2017)
代碼:https://github.com/SimJeg/FC-DenseNet
DenseNets 背后的想法是讓每一層以前饋方式連接到每一層,使網絡更容易訓練和更准確。
該模型的架構建立在密集的下采樣和上采樣路徑塊中。下采樣路徑有 2 個向下轉換 (TD),而上采樣路徑有 2 個向上轉換 (TU)。圓圈和箭頭代表網絡內的連接模式。
本文的主要貢獻是:
-
將 DenseNet 架構擴展到完全卷積網絡,用於語義分割。
-
從密集網絡中提出比其他上采樣路徑表現更好的上采樣路徑。
-
證明該網絡可以在標准基准測試中產生SOTA結果。
-
該模型在 CamVid 數據集上實現了 88% 的全局准確率。
通過擴張卷積進行多尺度上下文聚合
論文:Multi-Scale Context Aggregation by Dilated Convolutions (ICLR, 2016)
代碼:https://github.com/fyu/dilation
在本文中,開發了一種融合多尺度上下文信息而不損失分辨率的卷積網絡模塊。然后可以將該模塊插入到任何分辨率的現有架構中。該模塊基於擴張卷積。
該模塊在 Pascal VOC 2012 數據集上進行了測試。它證明向現有語義分割架構添加上下文模塊可以提高其准確性。
在實驗中訓練的前端模塊在 VOC-2012 驗證集上實現了 69.8% 的平均 IoU,在測試集上實現了 71.3% 的平均 IoU。該模型對不同物體的預測精度如下圖
DeepLab:使用深度卷積網絡、Atrous 卷積和全連接 CRF 進行語義圖像分割
論文:DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs (TPAMI, 2017)
代碼:https://github.com/tensorflow/models (非官方)
在本文中,作者對深度學習的語義分割任務做出了以下貢獻:
-
用於密集預測任務的帶有上采樣濾波器的卷積
-
用於多尺度分割目標的多孔空間金字塔池化 (ASPP)
-
通過使用 DCNN 改進對象邊界的定位。
論文提出的 DeepLab 系統在 PASCAL VOC-2012 語義圖像分割任務上實現了 79.7% mIOU。
該論文解決了在語義分割中使用深度 CNN 的主要挑戰,其中包括:
-
重復組合最大池化和下采樣導致的特征分辨率降低。
-
多尺度目標的存在。
-
由於以目標為中心的分類器需要空間變換的不變性,因此 DCNN 的不變性導致定位精度降低。
Atrous 卷積是通過插入零對濾波器進行上采樣或對輸入特征圖進行稀疏采樣來應用的。第二種方法需要對輸入特征圖進行一個等於多孔卷積率 r 的子采樣,並對其進行去隔行掃描以生成 r^2 個降低分辨率的圖,每個 r×r 可能的移位一個。在此之后,標准卷積應用於直接特征圖,將它們與圖像的原始分辨率交錯。
重新思考語義圖像分割的 Atrous 卷積
論文:Rethinking Atrous Convolution for Semantic Image Segmentation (2017)
代碼:https://github.com/pytorch/vision (非官方)
本文解決了使用 DCNN 進行語義分割的兩個挑戰(前面提到過);應用連續池化操作和多個尺度對象的存在時發生的特征分辨率降低。
為了解決第一個問題,論文建議使用atrous卷積,也稱為擴張卷積。它提出使用多孔卷積來擴大視野並因此包括多尺度上下文來解決第二個問題。
該論文的“DeepLabv3”在沒有 DenseCRF 后處理的 PASCAL VOC 2012 測試集上實現了 85.7% 的性能。
用於語義圖像分割的具有 Atrous 可分離卷積的編碼器-解碼器
論文:Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation (ECCV, 2018)
代碼:https://github.com/tensorflow/models
本文的方法“DeepLabv3+”在沒有對 PASCAL VOC 2012 和 Cityscapes 數據集進行任何后處理的情況下實現了 89.0% 和 82.1% 的測試集性能。該模型是 DeepLabv3 的擴展,通過添加一個簡單的解碼器模塊來細化分割結果。
該論文實現了兩種類型的神經網絡,它們使用空間金字塔池化模塊進行語義分割。一種通過匯集不同分辨率的特征來捕獲上下文信息,而另一種則獲得清晰的對象邊界。
FastFCN:重新思考語義分割主干中的擴張卷積
論文:FastFCN: Rethinking Dilated Convolution in the Backbone for Semantic Segmentation (2019)
代碼:https://github.com/wuhuikai/FastFCN
本文提出了一個名為Joint Pyramid Upsampling(JPU)的聯合上采樣模塊來代替消耗大量時間和內存的擴張卷積。它的工作原理是將提取高分辨率地圖的功能制定為聯合上采樣問題。
該方法在 Pascal Context 數據集上實現了 53.13% 的 mIoU 性能,並且運行速度提高了 3 倍。
該方法實現了一個全連接網絡(FCN)作為主干,同時應用 JPU 對低分辨率的最終特征圖進行上采樣,從而產生高分辨率的特征圖。用 JPU 替換擴張卷積不會導致任何性能損失。
聯合采樣使用低分辨率目標圖像和高分辨率引導圖像。然后通過傳輸引導圖像的結構和細節來生成高分辨率的目標圖像。
通過視頻傳播和標簽松弛改進語義分割
論文:FastFCN: Rethinking Dilated Convolution in the Backbone for Semantic Segmentation (2019)
代碼:https://github.com/NVIDIA/semantic-segmentation
本文提出了一種基於視頻的方法,通過合成新的訓練樣本來擴展訓練集。這旨在提高語義分割網絡的准確性。它探索了視頻預測模型預測未來幀以預測未來標簽的能力。
該論文表明,在來自合成數據的數據集上訓練分割網絡可以提高預測精度。本文提出的方法在 Cityscapes 上實現了 83.5% 的 mIoU,在 CamVid 上實現了 82.9%。
論文提出了兩種預測未來標簽的方法:
-
標簽傳播 (Label Propagation, LP) 通過將傳播的標簽與原始未來幀配對來創建新的訓練樣本
-
聯合圖像標簽傳播 (Joint image-label Propagation, JP) 通過將傳播標簽與相應的傳播圖像配對來創建新的訓練樣本
該論文有三個主要命題;利用視頻預測模型將標簽傳播到直接相鄰幀,引入聯合圖像標簽傳播來處理未對齊問題,並通過最大化沿邊界的類概率並集的可能性來放松單熱標簽訓練。
Gated-SCNN:用於語義分割的門控形狀 CNN
論文:Gated-SCNN: Gated Shape CNNs for Semantic Segmentation (2019)
代碼:https://nv-tlabs.github.io/GSCNN/
這篇論文是語義分割塊上的最新成果。作者提出了一種雙流 CNN 架構。在此架構中,形狀信息作為單獨的分支進行處理。此形狀流僅處理與邊界相關的信息。這是由模型的門控卷積層 (GCL) 和本地監督強制執行的。
該模型在 mIoU 上比 DeepLab-v3+ 高 1.5%,在 F 邊界得分上高出 4%。該模型已使用 Cityscapes 基准進行評估。在更小更薄的物體上,該模型在 IoU 上實現了 7% 的改進。
下表顯示了 Gated-SCNN 與其他模型相比的性能。
結論
我們現在應該掌握一些最常見的——以及一些最近的——技術,用於在各種上下文中執行語義分割。
以上所有論文獲取方式:公眾號CV技術指南后台回復關鍵字“0009”可獲取
作者:Derrick Mwiti
編譯:CV技術指南
原文鏈接:https://heartbeat.comet.ml/a-2019-guide-to-semantic-segmentation-ca8242f5a7fc
歡迎關注公眾號 CV技術指南 ,專注於計算機視覺的技術總結、最新技術跟蹤、經典論文解讀。
在公眾號中回復關鍵字 “技術總結”可獲取公眾號原創技術總結文章的匯總pdf。
其它文章