9102年了,語義分割的入坑指南和最新進展都是什麼樣的

2021-01-10 機器之心Pro

選自Medium

作者:Derrick Mwiti

機器之心編譯

參與:Nurhachu Null,Geek AI

語義分割指的是將圖像中的每一個像素關聯到一個類別標籤上的過程,這些標籤可能包括一個人、一輛車、一朵花、一件家具等等。在這篇文章中,作者介紹了近來優秀的語義分割思想與解決方案,它可以稱得上是 2019 語義分割指南了。

我們可以認為語義分割是像素級別的圖像分類。例如,在一幅有很多輛車的圖像中,分割模型將會把所有的物體(車)標記為車輛。但是,另一種被稱為實例分割的模型能夠將出現在圖像中的獨立物體標記為獨立的實例。這種分割在被用在統計物體數量的應用中是很有用的(例如,統計商城中的客流量)。

語義分割的一些主要應用是自動駕駛、人機互動、機器人以及照片編輯/創作型工具。例如,語義分割在自動駕駛和機器人領域是十分關鍵的技術,因為對於這些領域的模型來說,理解它們操作環境的上下文是非常重要的。

圖片來源:

http://www.cs.toronto.edu/~tingwuwang/semantic_segmentation.pdf

接下來,我們將會回顧一些構建語義分割模型的最先進的方法的研究論文,它們分別是:

Weakly- and Semi-Supervised Learning of a Deep Convolutional Network for Semantic Image SegmentationFully Convolutional Networks for Semantic SegmentationU-Net: Convolutional Networks for Biomedical Image SegmentationThe One Hundred Layers Tiramisu: Fully Convolutional DenseNets for Semantic SegmentationMulti-Scale Context Aggregation by Dilated ConvolutionsDeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFsRethinking Atrous Convolution for Semantic Image SegmentationEncoder-Decoder with Atrous Separable Convolution for Semantic Image SegmentationFastFCN: Rethinking Dilated Convolution in the Backbone for Semantic SegmentationImproving Semantic Segmentation via Video Propagation and Label RelaxationGated-SCNN: Gated Shape CNNs for Semantic Segmentation

1. Weakly- and Semi-Supervised Learning of a Deep Convolutional Network for Semantic Image Segmentation (ICCV, 2015)

這篇論文提出了一個解決方法,主要面對處理深度卷積網絡中的弱標籤數據,以及具有良好標籤和未被合適標記得數據的結合時的挑戰。在這篇論文結合了深度卷積網絡和全連接條件隨機場。

論文地址:https://arxiv.org/pdf/1502.02734.pdf

在 PASCAL VOC 的分割基準測試中,這個模型高於 70% 的交並比(IOU)

這篇論文的主要貢獻如下:

為邊界框或圖像級別的訓練引入 EM 算法,這可以用在弱監督和半監督環境中。證明了弱標註和強標註的結合能夠提升性能。在合併了 MS-COCO 數據集和 PASCAL 數據集的標註之後,論文的作者在 PASCAL VOC 2012 上達到了 73.9% 的交並比性能。證明了他們的方法通過合併了少量的像素級別標註和大量的邊界框標註(或者圖像級別的標註)實現了更好的性能。

2. Fully Convolutional Networks for Semantic Segmentation (PAMI, 2016)

這篇論文提出的模型在 PASCAL VOC 2012 數據集上實現了 67.2% 的平均 IoU。全連接網絡以任意大小的圖像為輸入,然後生成與之對應的空間維度。在這個模型中,ILSVRC 中的分類器被丟在了全連接網絡中,並且使用逐像素的損失和上採樣模塊做了針對稠密預測的增強。針對分割的訓練是通過微調來實現的,這個過程通過在整個網絡上的反向傳播完成。

論文地址:https://arxiv.org/pdf/1605.06211.pdf

3. U-Net: Convolutional Networks for Biomedical Image Segmentation (MICCAI, 2015)

在生物醫學圖像處理中,得到圖像中的每一個細胞的類別標籤是非常關鍵的。生物醫學中最大的挑戰就是用於訓練的圖像是不容易獲取的,數據量也不會很大。U-Net 是非常著名的解決方案,它在全連接卷積層上構建模型,對其做了修改使得它能夠在少量的訓練圖像數據上運行,得到了更加精確的分割。

論文地址:https://arxiv.org/pdf/1505.04597.pdf

由於少量訓練數據是可以獲取的,所以這個模型通過在可獲得的數據上應用靈活的變形來使用數據增強。正如上面的圖 1 所描述的,模型的網絡結構由左邊的收縮路徑和右邊的擴張路徑組成。

收縮路徑由 2 個 3X3 的卷積組成,每個卷積後面跟的都是 ReLU 激活函數和一個進行下採樣的 2X2 最大池化運算。擴張路徑階段包括一個特徵通道的上採樣。後面跟的是 2X2 的轉置卷積,它能夠將特徵通道數目減半,同時加大特徵圖。最後一層是 1X1 的卷積,用這種卷積來組成的特徵向量映射到需要的類別數量上。

在這個模型中,訓練是通過輸入的圖像、它們的分割圖以及隨機梯度下降來完成的。數據增強被用來教網絡學會在使用很少的訓練數據時所必需的魯棒性和不變性。這個模型在其中的一個實驗中實現了 92% 的 mIoU。

4. The One Hundred Layers Tiramisu: Fully Convolutional DenseNets for Semantic Segmentation (2017)

DenseNets 背後的思想是讓每一層以一種前饋的方式與所有層相連接,能夠讓網絡更容易訓練、更加準確。

模型架構是基於包含下採樣和上採樣路徑的密集塊構建的。下採樣路徑包含 2 個 Transitions Down (TD),而上採樣包含 2 個 Transitions Up (TU)。圓圈和箭頭代表網絡中的連接模式。

論文地址:https://arxiv.org/pdf/1611.09326.pdf

這篇論文的主要貢獻是:

針對語義分割用途,將 DenseNet 的結構擴展到了全卷積網絡。提出在密集網絡中進行上採樣路徑,這要比其他的上採樣路徑性能更好。證明網絡能夠在標準的基準測試中產生最好的結果。

這個模型在 CamVid 數據集中實現 88% 的全局準確率。

5. Multi-Scale Context Aggregation by Dilated Convolutions (ICLR, 2016)

這篇論文提出了一個卷積網絡模塊,能夠在不損失解析度的情況下混合多尺度的上下文信息。然後這個模塊能夠以任意的解析度被嵌入到現有的結構中,它主要基於空洞卷積。

論文地址:https://arxiv.org/abs/1511.07122

這個模塊在 Pascal VOC 2012 數據集上做了測試。結果證明,向現存的語義分割結構中加入上下文模塊能夠提升準確率。

在實驗中訓練的前端模塊在 VOC-2012 驗證集上達到了 69.8% 的平均交並比(mIoU),在測試集上達到了 71.3% 的平均交並比。這個模塊對不同對象的預測準確率如下所示:

6. DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs (TPAMI, 2017)

在這篇論文中,作者對語義分割任務中做出了下面的貢獻:

為密集預測任務使用具有上採樣的卷積在多尺度上為分割對象進行帶洞空間金字塔池化(ASPP)通過使用 DCNNs 提升了目標邊界的定位

論文地址:https://arxiv.org/abs/1606.00915

這篇論文提出的 DeepLab 系統在 PASCAL VOC-2012 圖像語義分割上實現了 79.7% 的平均交並比(mIoU)。

這篇論文解決了語義分割的主要挑戰,包括:

由重複的最大池化和下採樣導致的特徵解析度降低檢測多尺度目標因為以目標為中心的分類器需要對空間變換具有不變性,因而降低了由 DCNN 的不變性導致的定位準確率。

帶洞卷積(Atrous convolution)有兩個用途,要麼通過插入零值對濾波器進行上採樣,要麼對輸入特徵圖進行稀疏採樣。第二個方法需要通過等於帶洞卷積率 r 的因子來對輸入特徵圖進行子採樣,然後對它進行去交錯(deinterlacing),使其變成 r^2 的低解析度圖,每一個 r×r 區域都有一個可能遷移。在此之後,一個標準的卷積被應用在中間的特徵圖上,並將其與原始圖像解析度進行交錯。

7. Rethinking Atrous Convolution for Semantic Image Segmentation (2017)

這篇論文解決了使用 DCNN 進行語義分割所面臨的兩個挑戰(之前提到過):當使用連續的池化操作時會出現特徵解析度的降低,以及多尺度目標的存在。

論文地址:https://arxiv.org/pdf/1706.05587.pdf

為了解決第二個問題,本文提出了帶洞卷積(atrous convolution),也被稱作 dilated convolution。我們能使用帶洞卷積增大感受野,因此能夠包含多尺度上下文,這樣就解決了第二個問題。

在沒有密集條件隨機場(DenseCRF)的情況下,論文的 DeepLabv3 版本在 PASCAL VOC 2012 測試集上實現了 85.7% 的性能。

8. Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation (ECCV, 2018)

這篇論文的方法「DeepLabv3+」在 PASCAL VOC 2012 數據集和 Cityscapes 數據集上分別實現了 89.0% 和 82.1% 的性能,而且沒有做任何後處理。這個模型在 DeepLabv3 的基礎上增加一個簡單的解碼模塊,從而改善了分割結果。

論文地址:https://arxiv.org/pdf/1802.02611v3.pdf

這篇論文實現了為語義分割使用兩種帶空間金字塔池化的神經網絡。一個通過以不同的解析度池化特徵捕捉上下文信息,另一個則希望獲取明確的目標邊界。

9. FastFCN: Rethinking Dilated Convolution in the Backbone for Semantic Segmentation (2019)

這篇論文提出了一種被稱作聯合金字塔上採樣(Joint Pyramid Upsampling/JPU)的聯合上採樣模塊來代替消耗大量時間和內存的帶洞卷積。它通過把抽取高解析度圖的方法形式化,並構建成一個上採樣問題來取得很好的效果。

論文地址:https://arxiv.org/pdf/1903.11816v1.pdf

此方法在 Pascal Context 數據集上實現了 53.13% 的 mIoU,並且具有三倍的運行速度。

該方法以全卷積網絡(FCN)作為主體架構,同時應用 JPU 對低解析度的最終特徵圖進行上採樣,得到了高解析度的特徵圖。使用 JPU 代替帶洞卷積並不會造成任何性能損失。

聯合採樣使用低解析度的目標圖像和高解析度的指導圖像。然後通過遷移指導圖像的結構和細節生成高解析度的目標圖像。

10. Improving Semantic Segmentation via Video Propagation and Label Relaxation (CVPR, 2019)

這篇論文提出了基於視頻的方法來增強數據集,它通過合成新的訓練樣本來達到這一效果,並且該方法還能提升語義分割網絡的準確率。本文探討了視頻預測模型預測未來幀的能力,進而繼續預測未來的標籤。

論文地址:https://arxiv.org/pdf/1812.01593v3.pdf

這篇論文證明了用合成數據訓練語義分割網絡能夠帶來預測準確率的提升。論文提出的方法在 Cityscape 上達到了 8.5% 的 mIoU,在 CamVid 上達到了 82.9% 的 mIoU。

論文提出了兩種預測未來標籤的方法:

Label Propagation (標籤傳播,LP):通過將原始的未來幀與傳播來的標籤配對來創建新的訓練樣本。Joint image-label Propagation (聯合圖像標籤傳播,JP):通過配對對應的傳播圖像與傳播標籤來創建新的訓練樣本。

這篇論文有 3 個主要貢獻:利用視頻預測模型將標籤傳播到當前的鄰幀,引入聯合圖像標籤傳播(JP)來處理偏移問題,通過最大化邊界上分類的聯合概率來鬆弛 one-hot 標籤訓練。

11. Gated-SCNN: Gated Shape CNNs for Semantic Segmentation (2019)

這篇論文是語義分割領域最新的成果(2019.07),作者提出了一個雙流 CNN 結構。在這個結構中,目標的形狀信息通過一個獨立的分支來處理,該形狀流僅僅處理邊界相關的信息。這是由模型的門卷控積層(GCL)和局部監督來強制實現的。

論文地址:https://arxiv.org/pdf/1907.05740.pdf

在用 Cityscapes 基準測試中,這個模型的 mIoU 比 DeepLab-v3 高出 1.5%,F-boundary 得分比 DeepLab-v3 高 4%。在更小的目標上,該模型能夠實現 7% 的 IoU 提升。下表展示了 Gated-SCNN 與其他模型的性能對比。

以上就是近來語義分割的主要進展,隨著模型和數據的進一步提升,語義分割的速度越來越快、準確率越來越高,也許以後它能應用到各種現實生活場景中。

相關焦點

  • 2020入坑圖像分割,我該從哪兒入手?
    初識圖像分割顧名思義,圖像分割就是指將圖像分割成多個部分。在這個過程中,圖像的每個像素點都和目標的種類相關聯。圖像分割方法主要可分為兩種類型:語義分割和實例分割。語義分割會使用相同的類標籤標註同一類目標(下圖左),而在實例分割中,相似的目標也會使用不同標籤進行標註(下圖右)。
  • 2019 語義分割指南
    這種分割在計算對象數量的應用程式中非常有用,例如計算商城的行人流量。它的一些主要應用是在自動駕駛、人機互動、機器人和照片編輯/創意工具中。例如,語義分割在汽車自動駕駛和機器人技術中是至關重要的,因為對於一個模型來說,了解其所處環境中的語義信息是非常重要的。
  • 圖像分割系列<->語義分割
    這期我們就來講講語義分割(Semantic Segmantation), 語義分割是指將圖像中的每一個像素都賦予一個類別標籤,用不同的顏色表示。 一、語義分割的概念和基礎 舉例:在對於我們人來說,給出這一幅圖,我們很容易知道圖片中那部分是貓,那些部分是落葉,那計算機怎麼是如何判別呢?
  • 谷歌開源語義圖像分割模型:該領域當前最優模型
    剛剛,谷歌開源了語義圖像分割模型 DeepLab-v3+,DeepLab-v3+結合了空間金字塔池化模塊和編碼器-解碼器結構的優勢,是自三年前的 DeepLab 以來的最新、性能最優的版本。分配這些語義標籤的時候需要精準定位目標的輪廓,因此相比其他的視覺實體識別任務(如圖像級分類或邊界框級檢測等),該任務需要更高的定位準確率。今天,谷歌開源了其最新、性能最優的語義圖像分割模型 DeepLab-v3+ [1],該模型使用 TensorFlow 實現。
  • 從全卷積網絡到大型卷積核:深度學習的語義分割全指南
    By路雪 2017年7月14日  語義分割一直是計算機視覺中十分重要的領域,隨著深度學習的流行,語義分割任務也得到了大量的進步。本文首先闡釋何為語義分割,然後再從論文出發概述多種解決方案。本文由淺層模型到深度模型,簡要介紹了語義分割各種技術,雖然本文並沒有深入講解語義分割的具體實現,但本文簡要地概述了每一篇重要論文的精要和亮點,希望能給讀者一些指南。
  • 韓國科學技術院在讀博士潘飛:語義分割場景中域適應問題的研究 |...
    CV前沿講座,是智東西公開課針對計算機視覺推出的一檔講座,聚焦於計算機視覺前沿領域研究成果與進展。我們將持續邀請研究者、專家與資深開發者,為大家帶來直播講解。基於卷積神經網絡的監督學習方法近幾年在語義分割任務裡取得了顯著進展。但是,這種方法十分依賴於大量帶注釋的數據進行訓練。
  • 入門| 一文了解什麼是語義分割及常用的語義分割方法有哪些
    我們已經開始發展自動駕駛汽車和智慧機器人,這些都需要深入理解周圍環境,因此精確分割實體變得越來越重要。什麼是語義分割?語義分割是計算機視覺中的基本任務,在語義分割中我們需要將視覺輸入分為不同的語義可解釋類別,「語義的可解釋性」即分類類別在真實世界中是有意義的。
  • 語義分割概念及應用介紹
    比如自動駕駛汽車已經逐漸成為可能,但在整個深度學習過程,需要算法識別和學習作為原始數據提供的圖像,在這一過程中,應用到了語義分割技術。下面讓我們來看看語義分割的需求是如何演變的。早期,計算機視覺的初始應用需求只是識別基本元素,例如邊緣(線和曲線)或漸變。然而,僅僅通過全像素語義分割的創造來理解像素級的圖像,它將屬於同一目標的圖像部分聚集在一起,從而擴展了語義分割的應用場景。
  • 語義分割領域開山之作:Google提出用神經網絡搜索實現語義分割
    Google 儼然已是圖像語義分割領域的高產霸主,Liang-Chieh 從 Deeplabv1- Deeplabv3+ 持續發力,還是 MobileNetV2 共同作者,如今在 NAS 領域開發處女地:基於 NAS 的語義分割模型,性能超過之前的基於 MobileNetV2 的 Network Backbone。2.
  • 語義分割標註工具Semantic Segmentation Editor 快速安裝指南
    >,該工具專門用於創建機器學習語義分割的訓練數據,為自動駕駛研究開發的,但也可以用於標註其他類型的語義目標資料庫。它不僅支持普通相機拍攝的2D圖像(.jpg和.png文件)還支持LIDAR生成的3D點雲(.pcd文件)中目標的標註。它是使用React, Paper.js和three.js開發的Meteor應用程式。
  • CVPR 2018:新型語義分割模型:動態結構化語義傳播網絡DSSPN
    引言隨著卷積神經網絡的不斷進步,目標識別和分割作為計算機視覺的主要研究方向取得了巨大的成功。然而,目前使用更深、更寬網絡層的分割模型 [24,5,40,37,22] 在對分割注釋有限的大型概念詞彙的識別方面表現欠佳。原因在於它們忽略了所有概念的固有分類和語義層次。
  • 9102年是什麼梗和意思 9102年出處發展經歷介紹
    9102年是什麼梗?  作為網絡語的該詞多用來吐槽都這個年頭了,還會發生這樣的事情。把我們現在所處的年份2019年「倒裝」了一下用來誇張這個時間的久遠,常見用法為「都9102年,xxxxx」。常用作吐槽過時、陳舊。
  • DeepLabv3+:語義分割領域的新高峰
    本文將帶大家回顧 DeepLabv1-v4 系列的發展歷程,看看 Google 團隊這些年都在做什麼。DeepLabv1DeepLab 是結合了深度卷積神經網絡(DCNNs)和概率圖模型(DenseCRFs)的方法。
  • MMSegmentation:標準統一的語義分割框架
    語義分割作為計算機視覺中一項基礎任務,同時在自動駕駛/視頻編輯等領域中有重要的應用,因此一直受到學術界和工業界的廣泛關注。在近幾年的會議中,語義分割的論文層出不窮,但是市面上一直缺乏一款能夠相對公平比較各種方法的框架。為了方便研究員和工程師們,OpenMMLab開源了一套基於 PyTorch 實現的標準統一的語義分割框架:MMSegmentation。
  • 語義分割中的深度學習方法全解:從FCN、SegNet到各版本DeepLab
    目前用於語義分割研究的兩個最重要數據集是VOC2012和MSCOCO。 在深度學習應用到計算機視覺領域之前,研究人員一般使用紋理基元森林(TextonForest)或是隨機森林(Random Forest)方法來構建用於語義分割的分類器。 卷積神經網絡(CNN)不僅能很好地實現圖像分類,而且在分割問題中也取得了很大的進展。
  • 標準統一的語義分割框架
    在近幾年的會議中,語義分割的論文層出不窮,但是市面上一直缺乏一款能夠相對公平比較各種方法的框架。為了方便研究員和工程師們,我們開源了一套基於 PyTorch 實現的標準統一的語義分割框架:MMSegmentation。
  • CVPR 2019 Oral 論文解讀 | 無監督域適應語義分割
    該論文提出了一種從「虛擬域」泛化到「現實域」的無監督語義分割算法,旨在利用易獲取的虛擬場景標註數據來完成對標註成本高昂的現實場景數據的語義分割,大大減少了人工標註成本。 本文是論文作者之一羅亞威為雷鋒網 AI 科技評論提供的論文解讀。
  • 圖像語義分割之特徵整合和結構預測
    餘昌黔華中科技大學碩士研究方向為圖像語義分割知乎專欄https://zhuanlan.zhihu.com/semantic-segmentation前言近來閱讀了 PASCAL VOC 2012 排行榜上前幾的文章,包括 PSPNet 和林國省老師的幾篇論文,覺得現在在 semantic segmentation 領域對於 Multi-scale Features
  • 如何用PyTorch進行語義分割?一個教程教會你
    正值PyTorch 1.7更新,那麼我們這次便給大家帶來一個PyTorch簡單實用的教程資源:用PyTorch進行語義分割。△圖源:stanford該教程是基於2020年ECCV Vipriors Chalange Start Code實現了語義分割,並且添加了一些技巧。
  • 重新發現語義分割,一文簡述全卷積網絡
    全卷積網絡自 2012 年出現以來,在圖像分類和圖像檢測領域取得了巨大成功。本文利用筆記本電腦構建了一個小型全卷積網絡,詳細介紹了全卷積網絡的思路、過程等等,值得一看語義分割是一種學習如何識別圖像中對象範圍的機器學習技術。語義分割賦予機器學習系統與人類相似的理解圖像內容的能力。