【論文閱讀】Semantic Segmentation with deep convolutional nets and fully connected CRFs

 

 

 

一、摘要

深度卷積神經網絡(DCNN)最近在高級視覺任務中展示了最先進的性能,例如圖像分類和對象檢測。這項工作彙集了來自DCNN和概率圖形模型的方法,用於解決像素級分類(也稱爲“語義圖像分割”)的任務。我們表明DCNN最後一層的響應沒有充分定位,無法進行精確的對象分割。這是由於非常不變的屬性使DCNN有利於高級任務。
我們通過將最終DCNN層的響應與完全連接的條件隨機場(CRF)相結合,克服了深度網絡的這種不良定位特性。定性地說,我們的“DeepLab”系統能夠以超出以前方法的精度水平定位分段邊界。定量地,我們的方法在PASCAL VOC-2012語義圖像分割任務中設置了新的現有技術,在測試集中達到71.6%的IOU準確度。
我們展示瞭如何有效地獲得這些結果:仔細的網絡重新利用和來自小波社區的“洞”算法的新應用允許在現代GPU上以每秒8幀的速度密集計算神經網絡響應。

二、內容

(1)介紹

自LeCun等人(1998)以來,深度卷積神經網絡(DCNN)一直是文檔識別的首選方法,但最近才成爲高級視覺研究的主流。在過去兩年中,DCNN已經將計算機視覺系統的性能推向了各種高級問題的飆升,包括圖像分類,對象檢測,細粒度分類等。
 
這些作品中的一個共同主題是,採用端到端訓練的DCNN比依賴精心設計的表示(如SIFT或HOG功能)的系統提供了驚人的更好結果。這種成功可部分歸因於DCNN對局部圖像變換的內置不變性這支持了他們學習數據分層抽象的能力。雖然這種不變性對於高級視覺任務來說顯然是理想的,但它可能會妨礙低級任務,例如姿勢估計和語義分割 - 我們需要精確定位,而不是抽象空間細節。將DCNN應用於圖像標記任務存在兩個技術障礙:信號下采樣和空間“不敏感”(不變性)。第一個問題涉及在每層標準DCNN處執行的最大池化和下采樣('跨越')的重複組合所引起的信號分辨率的降低。相反,如Papandreou等人。 (2014),我們採用最初爲有效計算未抽取離散小波變換而開發的'atrous'(帶孔)算法(Mallat,1999)。這允許在方案中有效地密集計算DCNN響應,該方案比該問題的早期解決方案簡單得多。
第二個問題涉及以下事實:從分類器獲得以對象爲中心的決策需要空間變換的不變性,從而固有地限制DCNN模型的空間精度。我們通過採用完全連接的條件隨機場(CRF)來提高模型捕獲精細細節的能力。條件隨機場已廣泛用於語義分割,以將由多路分類器計算的類分數與由像素和邊或超像素的局部交互捕獲的低級信息組合。儘管已經提出了更復雜的工作來模擬分段依賴性和/或分段的高階依賴性,但我們使用Krähenbühl&Koltun(2011)提出的完全連接的成對CRF來實現其高效計算和捕獲精細邊緣的能力。細節,同時也滿足遠程依賴。該模型在Krähenbühl&Koltun(2011)中展示,大大提高了基於增強的像素級分類器的性能,在我們的工作中,我們證明了當它與DCNN結合時,它可以產生最先進的結果 - 基於像素級分類器。
我們的“DeepLab”系統的三個主要優點是(i)速度:憑藉'atrous'算法,我們的密集DCNN以8 fps運行,而全連接CRF的平均場推斷需要0.5秒,(ii)準確性:我們在PASCAL語義分段挑戰中獲得最先進的結果,超越了Mostajabi等人的第二最佳方法。 (2014)以7.2%的幅度和(iii)簡單性:我們的系統由兩個相當完善的模塊,DCNN和CRF組成

(2)相關工作

與Long et al。(2014)類似,我們的系統直接在像素表示上工作。這與現在在使用DCNN的語義分段中最常見的兩階段方法形成對比:這些技術通常使用自下而上的圖像分割和基於DCNN的區域分類的級聯,這使得系統存在前端分割系統的潛在錯誤。例如,Girshick等人(2014)和(Hariharan等人,2014b)採用(Arbeláez等人,2014; Uijlings等人,2013)提供的邊界框提議( the bounding box proposals)和掩蔽區域( masked regions)作爲DCNN輸入,將形狀信息引入分類過程中。同樣,Mostajabi等人(2014)的作者依賴於超像素表示。這些工作的着名非DCNN前體是(Carreira等,2012)的二階池化方法,該方法還爲區域提供了標籤(Carreira&Sminchisescu,2012)。 Cogswell et al(2014)在(Yadollahpour等人,2013)的基礎上,做單分割時,探討了一系列基於CRF的細分方案,(Carreira&Sminchisescu, 2012)也計算了這寫提議。並利用DCNN對這些分段提議進行重新排序。儘管這種方法明確地試圖處理前端分割算法的性質,但在基於CRF的分割算法中仍然沒有明確利用DCNN分數:DCNN僅在事後應用,而它會在分割過程中直接使用其結果。

對於更接近我們方法的工作,其他幾位研究人員已經考慮使用卷積計算的DCNN特徵進行密集圖像標記。首先是Farabet等人(2013),他們以多種圖像分辨率應用DCNN,然後使用分割樹來平滑預測結果;最近,Hariharan等人(2014a)提出在DCNN內連接計算的中間特徵圖以進行像素分類,Dai等人(2014)提出按 region proposals pool中間特徵圖。儘管這些工作仍採用與DCNN分類器結果分離的分段算法,但我們認爲分割僅在稍後階段使用是有利的,從而避免了對過早決策的承諾。
最近,(Long等人,2014; Eigen&Fergus,2014)的無分割技術以滑動窗口方式直接將DCNN應用於整個圖像,通過卷積層替換DCNN的最後完全連接的層。爲了處理引言開頭概述的空間定位問題,Long等人。 (2014)上傳和連接來自中間特徵圖的分數,而Eigen&Fergus(2014)通過將粗略結果傳播到另一個DCNN來將預測結果從粗略細化到精細。
我們的模型與其他最先進的模型之間的主要區別在於像素級CRF和基於DCNN的“一元術語”的組合。 Cogswell(2014)等人專注於這個方向上最接近的工作,使用CRF作爲基於DCNN的重新排名系統的提議機制,而Farabet等人(2013)將超像素視爲局部成對CRF的節點,並使用圖形切割進行離散推理;他們的結果可能受到超像素計算中的誤差的限制,同時忽略了遠程超像素依賴性。我們的方法是將每個像素視爲CRF節點,利用遠程依賴性,並使用CRF推理直接優化DCNN驅動的成本函數。我們注意到傳統圖像分割/邊緣檢測任務已經廣泛研究了平均場,例如,(Geiger&Girosi,1991; Geiger&Yuille,1991; Kokkinos等,2008),但最近Krähenbühl&Koltun(2011)展示了推理對於完全連接的CRF非常有效,並且在語義分割的背景下尤其有效
在我們的手稿的第一版被公之於衆之後,我們注意到另外兩個小組獨立並同時追求一個非常相似的方向,結合DCNN和密集連接的CRF(Bell等,2014; Zheng等, 2015年)。不同的是Bell等人(2014)關注材料分類問題,而Zheng等人(2015)展開CRF平均場推斷步驟,將整個系統轉換爲端到端可訓練的前饋網絡。
我們更新了我們提出的“DeepLab”系統,並在我們的最新工作中採用了大大改進的方法和結果(Chen et al,2016)。我們將感興趣的讀者引用到論文中瞭解詳情。

(3)CNN for dense image labeling

該部分描述了作者如何重新定位和精細化公共可用的Imagenet預訓練的最先進的16層分類網絡(Simonyan&Zisserman,2014)(VGG-16),使其成爲一個高效且有效的密集特徵提取器,用於語義圖像分割系統。

3.1帶洞的密集滑動窗口特徵提取算法

密集的空間分數評估有助於我們密集的CNN特徵提取器的成功。作爲實現這一目標的第一步,將VGG-16的全連接層轉換爲卷積層,並以原始分辨率在圖像上以卷積方式運行網絡。然而這還不夠,因爲它產生非常稀疏計算的檢測分數(步長爲32像素)。爲了在8個像素的目標步幅中更密集地計算得分,我們開發了Giusti等人(2013)、Sermanet等(2013年)先前採用的方法的變體。在Simonyan&Zisserman(2014)的網絡中的最後兩個最大池層之後跳過子採樣,通過引入零來修改其後的層中的卷積濾波器以增加它們的長度(在最後三個卷積層中爲2×,在第一個全連接的層中爲4×)。

通過保持濾波器完整性來更有效地實現這一點,而是使用分別爲2或4像素的輸入步幅稀疏地對應用它們的特徵映射進行稀疏採樣。上圖中所示的這種方法被稱爲“空洞算法”('atrous algorithm'),並且之前已經開發出用於有效計算未抽取小波變換的方法(Mallat,1999)。我們在Caffe框架中實現了這一點(Jia et al。2014),通過添加im2col函數(它將多通道特徵映射轉換爲矢量化補丁)稀疏地採樣底層特徵映射的選項。這種方法通常是適用的,並且允許我們以任何目標子採樣率有效地計算密集CNN特徵圖,而不引入任何近似。

作者根據Long(2014)的程序,對Imagenet預訓練的VGG-16網絡的模型權重進行微調,以便以簡單的方式使其適應圖像分類任務。用21分類替換VGG-16最後一層的1000-way的Imagenet分類器。損失函數是CNN輸出圖中每個空間位置的交叉熵項的總和(與原始圖像相比,8子採樣,subsampled by 8 compared to the original image)所有位置和標籤在整體損失函數中的權重相等。我們的目標是這些GroundTruth標籤(由8個子樣本)。通過Krizhevsky等人(2013)的標準SGD程序優化了所有網絡層的權重的目標函數。
在測試期間,需要原始圖像分辨率的類別得分圖(GT)。如圖2所示並在4.1節中進一步闡述,類得分圖(對應於對數概率)非常平滑,這使我們可以使用簡單的雙線性插值,將其分辨率提高8倍,計算成本可以忽略不計。注意,Long等人(2014)的方法不使用空洞算法並且在CNN輸出處產生非常粗略的分數(子因子爲32)。這迫使他們使用學習的上採樣層,大大增加了他們系統的複雜性和訓練時間:在PASCAL VOC 2012上微調我們的網絡需要大約10個小時,而他們報告的訓練時間爲幾天(現代GPU上的兩個時間) )。

3.2控制deceptive field大小,加速卷積網密集計算

重新利用我們的網絡進行密集分數計算的另一個關鍵因素是明確控制網絡的感受野大小。大多數基於DCNN的圖像識別方法依賴於在Imagenet大規模分類任務上預先訓練的網絡。這些網絡通常具有較大的感受野大小:以VGG-16爲例,如果網絡是卷積應用的,其感受野是224×224(具有零填充)和404×404像素。在將網絡轉換爲全卷積的網絡之後,第一個全連接的層具有4,096個大7×7空間大小的濾波器,成爲密集分數圖計算中的計算瓶頸。
我們通過空間子採樣(通過簡單抽取)將第一FC層到4×4(或3×3)空間大小來解決這個實際問題。這已經將網絡的感受野降低到128×128(具有零填充)或308×308(非卷積模式)並且將第一FC層的計算時間減少了2-3倍,基於Caffe的實現和Titan GPU,得到的VGG網絡非常高效:給定306×306輸入圖像,它在網絡頂部以大約8幀/秒的速率產生39×39密集的原始特徵分數,訓練期間的速度爲3幀/秒。還成功地將完全連接層的通道數量從4,096減少到1,024,大大進一步減少了計算時間和內存佔用而不會犧牲性能,詳見第5節。使用較小的網絡,如Krizhevsky等(2013)即使在輕量級GPU上也可以進行視頻速率測試時密集特徵計算。

(4)邊界細節恢復:全連接CRF和多尺度預測

4.1DCNN和局部挑戰

如圖2所示,DCNN得分圖能夠可靠地預測圖像中物體的存在和粗略位置,但不太適合用於指向其精確輪廓。卷積網絡在分類準確性和定位精度之間存在自然的權衡:具有多個最大池化層的更深層次模型已經證明在分類任務中最成功,但是它們增加的不變性和大的感受野使得從分數中推斷出位置的問題在他們的最高產出水平更具挑戰性。
面對局部挑戰的兩個方向。第一種方法是利用卷積網絡中多層的信息,以便更好地估計物體邊界(Long et al,2014; Eigen&Fergus,2014)。第二種方法是採用超像素表示,基本上將局部任務委託給低級分割方法。這條路線之後是Mostajabi等人(2014)最近成功的方法。(超像素是什麼?)
在4.2節中,基於DCNN的識別能力和全連接的CRF的細粒度定位精度來尋求新的替代方向,並表明它在解決定位挑戰方面非常成功,產生了準確的語義分割結果並恢復了對象細節層面的邊界遠遠超出現有方法的範圍。圖2中爲飛機的分數圖(softmax函數前輸入)和信號圖(softmax函數輸出)。 我們在每次平均場迭代後顯示得分(第1行)和信念(belief)(第2行)。(這裏的信念是什麼,最終分類結果?)
最後一個DCNN層的輸出用作平均場推斷的輸入。 最好看的顏色。

4.2全連接的條件隨機場

圖3:模型示意圖,對FCN得到的粗糙分數圖進行雙線性插值,然後使用全連接的CRF refine分割結果。

傳統上,已經採用條件隨機場(CRF)來平滑噪聲分割圖(Rother等,2004; Kohli等,2009)。通常,這些模型包含耦合相鄰節點的能量項,有利於相同標籤分配到空間上近端像素。定性地說,這些短距離CRF的主要功能是清理基於本地手工設計功能構建的弱分類器的虛假預測。
與這些較弱的分類器相比,現代DCNN架構(例如我們在此工作中使用的架構)產生得分圖和語義標籤預測,這些預測在質量上是不同的。如圖2所示得分圖通常非常平滑並且產生均勻的分類結果(什麼意思?怎麼看?)。在這種情況下,使用短程CRF可能是有害的,因爲我們的目標應該是恢復詳細的局部結構而不是進一步平滑它。將對比敏感電位(Rother等人,2004)與局部範圍CRF結合使用可以潛在地改善定位,但仍然缺少薄結構,並且通常需要解決昂貴的離散優化問題。
爲了克服短距​​離CRF的這些限制,我們將Krähenbühl&Koltun(2011)的全連接的CRF模型整合到我們的系統中。該模型採用能量函數:

 

4.3多尺度預測

根據(Hariharan et al。2014a; Long et al。2014)最近的結果,探索了一種多尺度預測方法提高邊界定位精度。 具體來說,將前四個最大池化層中的每一個的輸入圖像和輸出附加到兩層MLP(第一層:128個3x3卷積濾波器,第二層:128個1x1卷積濾波器),其特徵映射連接到主網絡的最後一層特徵圖。 因此,饋送到softmax層的聚合特徵映射由5 * 128 = 640個通道。 我們只調整新增加的權重,將其他網絡參數保持爲第3節方法所學習的值。如實驗部分所述,從精細分辨率層引入這些額外的直接連接可提高定位性能,但效果不是 與全連接CRF獲得的一樣戲劇性。

上圖爲表1,a爲文中所提的模型(增強訓練集上訓練)在VOC2012驗證數據集的性能;b爲在VOC測試集上,本文所提模型(在增強的訓練驗證集上訓練)與其他模型相比較的結果。

(5)實驗評估

數據集
在PASCAL VOC 2012細分基準測試(Everingham et al。2014)上測試DeepLab模型,包括20個前景對象類和一個背景類。原始數據集包含分別用於訓練,驗證和測試的1464,1449和1456個圖像。Hariharan等人(2011年)提供的額外註釋增強了數據集,產生了10582張訓練圖像。 性能是根據21個類別的平均像素交叉(intersection-over-union,IOU)來衡量的。

訓練

採用最簡單的訓練形式,將DCNN和CRF訓練階段解耦,假設在CRF訓練期間DCNN提供的一元勢是固定的。
對於DCNN訓練,使用VGG-16網絡,該網絡已在ImageNet上進行過預訓練。我們通過交叉熵損失函數的隨機梯度下降,在VOC 21像素分類任務上微調VGG-16網絡,如3.1節所述。使用20個圖像的小批量和0.001的初始學習率(最終分類器層爲0.01),每2000次迭代將學習率乘以0.1,使用0.9的動量和0.0005的重量衰減
在對DCNN進行微調之後,在方程(2)中交叉驗證全連接的CRF模型的參數(Krähenbühl&Koltun(2011)),使用的默認值,我們通過對驗證集的一小部分進行交叉驗證來搜索w 1,σα和σβ的最佳值(我們使用100個圖像) 。我們採用粗到精的搜索方案。具體來說,參數的初始搜索範圍是w1∈[5,10],σα∈[50:10:100]和σβ∈[3:1:10](MATLAB符號),然後我們細化搜索第一輪最佳值的步長。我們將所有報告實驗的平均場迭代次數固定爲10。

驗證集評估

對PASCAL'val'組進行評估,在增強的PASCAL'train'組上訓練模型,如表格1(a)所示,將全連接的CRF與本文模型(由DeepLab-CRF表示)相結合,可以顯着提升性能,比DeepLab提高約4%。Krähenbühl&Koltun(2011)的工作將TextonBoost(Shotton等人,2009)的27.6%的結果提高到了29.1%,這使我們在這裏報告的改進(從59.8%到63.7%)更加令人印象深刻。
轉向定性結果,圖7爲DeepLab和DeepLab-CRF之間的可視化比較。採用全連接的CRF顯着改善了結果,使模型能夠準確捕獲複雜的對象邊界。

多尺度特徵

類似於(Hariharan等人(2014a); Long et al(2014)),利用了中間層的特徵。 如表格1(a)所示,在我們的DeepLab模型中添加多尺度特徵(表示爲DeepLab-MSc)可提高約1.5%的性能,並且進一步整合全連接的CRF(表示爲DeepLab-MSc-CRF)可提高約4%的性能。
DeepLab和DeepLab-MSc之間的定性比較如圖4所示,結合多尺度特徵(deepLab-MSc)可以略微細化對象邊界。

感受野

“atrous算法”通過調整輸入步幅來任意控制模型的視場(FOV),如圖1,表 2所示,在第一個全連接的層上試驗幾個內核大小和輸入步幅。DeepLab-CRF-7x7是VGG-16網絡的直接修改,其內核大小= 7×7,輸入stride = 4.該模型在'val'集上產生67.64%的性能,但它是相對較慢(訓練期間每秒1.44張圖像)。通過將內核大小減小到4×4,我們將模型速度提高到每秒2.9個圖像。我們已經嘗試了兩種具有不同FOV尺寸的網絡變體,DeepLab-CRF和DeepLab-CRF-4x4;後者具有大的FOV(即,大的輸入步幅)並且獲得更好的性能。最後,我們使用內核大小3×3並輸入stride = 12,並進一步將最後兩層的過濾器大小從4096更改爲1024。有趣的是,最終的模型DeepLab-CRF-LargeFOV與昂貴的DeepLab-CRF-7x7的性能相匹配。同時,它運行速度快3.36倍,參數明顯減少(20.5M而不是134.3M)

表1中對幾個模型的性能進行了總結,表明了開發多尺度特徵和大視場的有益效果。

對象邊界的平均像素IOU

爲了量化所提出的模型在物體邊界附近的準確性,用類似於Kohli等人(2009)和Krähenbühl&Koltun(2011年)的實驗來評估分割精度(什麼實驗?後者是CRF,前者)。 具體來說,使用val set中註釋的'void'標籤(這是什麼標籤?),該標籤通常出現在對象邊界周圍。計算位於'void'標籤的窄帶(稱爲trimap)內的那些像素的平均IOU。 如圖5所示,利用來自中間層的多尺度特徵並通過全連接的CRF細化分割結果顯着改善了對象邊界周圍的結果。

與最先進的模型比較

在圖6中,將作者提出的模型DeepLab-CRF與兩個最先進的模型進行比較:FCN-8s(Long et al。2014)和TTI-Zoomout-16(Mostajabi et al。2014)on 'val'集(結果從他們的論文中提取)。作者的模型能夠捕獲複雜的對象邊界。

復現:框架caffe,模型網址:https://bitbucket.org/deeplab/deeplab-public

測試結果

在PASCAL VOC 2012官方“測試”集上評估我們的模型變體。 如表3所示,DeepLab-CRF和DeepLab-MSc-CRF模型的性能分別爲66.4%和67.1%。 優於所有其他最先進的模型(特別是TTI-Zoomout-16(Mostajabi等,2014),FCN-8s(Long等,2014)和MSRA-CFM(Dai等) al。2014))。當增加模型的FOV時,DeepLab-CRF-LargeFOV的性能爲70.3%,與DeepLab-CRF-7x7相同,而其訓練速度更快。此外,DeepLab-MSc-CRF-LargeFOV通過採用多尺度特徵和大視場,獲得了71.6%的最佳性能。

(6)討論

作者結合了深度卷積神經網絡和全連接的條件隨機場的思想,產生了一種能夠產生語義準確預測和詳細分割圖的新方法,同時具有計算效率。實驗結果表明,該方法在具有挑戰性的PASCAL VOC 2012語義圖像分割任務中顯着提升了現有技術水平。模型中有多個方面需要改進,例如完全集成其兩個主要組件(CNN和CRF)並以端到端的方式訓練整個系統,類似於Krähenbühl&Koltun(2013);陳等人(2014);鄭等人(2015年)。作者計劃嘗試更多數據集,並將該方法應用於其他數據源,如深度圖或視頻。最近,以邊界框或圖像級標籤的形式進行了弱監督註釋的模型訓練(Papandreou等,2015)。
在更高的層次上,我們的工作在於卷積神經網絡和概率圖形模型的交集。我們計劃進一步研究這兩種強大方法的相互作用,並探索它們在解決具有挑戰性的計算機視覺任務方面的協同潛力。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章