1. 程式人生 > >深度補全(Sparsity Invariant CNNs)-論文閱讀-翻譯

深度補全(Sparsity Invariant CNNs)-論文閱讀-翻譯

(由於是直接從word上覆制的,可能存在格式問題)

Sparsity Invariant CNNs翻譯

Abstract

本文考慮了基於稀疏輸入的卷積神經網路,並將其應用於稀疏鐳射掃描資料的深度上取樣。首先,傳統的卷積網路在應用於稀疏資料時表現較差,即使在向網路提供缺失資料的位置時也是如此。為了克服這個問題,本文提出了一個簡單而有效的稀疏卷積層,它明確地考慮了卷積運算中缺失資料的位置。而且在與各種基準方法相關的綜合和實際實驗中測試了所提出的網路體系結構的優點。與稠密基線相比,本文提出的稀疏卷積網路可以很好地推廣到新的資料集中,並且能夠保持資料的稀疏程度的不變。為了進行評估,該文從KITTI基準測試中獲得一個新的資料集,包含93k經過深度標註的RGB影象。

本文的資料集允許在具有挑戰性的實際環境中進行深度上取樣和深度預測方法的訓練和評估,並將在出版後提供。

1、介紹

在過去的幾年裡,卷積神經網路(CNNs)幾乎影響了計算機視覺的所有領域。在大多數情況下,CNN的輸入是一個影象或視訊,由密集的矩陣或張量表示。通過將非線性的卷積層和池化層相結合,CNNs能夠學習分散式表示,在第一層提取底層特徵,在隨後的層中依次提取高層特徵。然而,當網路的輸入是稀疏且不規則的(例如,當只有10%的畫素攜帶資訊時),如何定義卷積運算就變得模糊了,因為每個過濾器位置,輸入的數量和位置是不同的。

解決這個問題的方法是為所有非資訊性站點分配一個預設值[3,39]。不幸的是,這種方法會導致次優結果,因為學習過濾器必須對所有可能的啟用模式不變,其啟用數量隨著過濾器大小呈指數增長。在本文中,我們研究了一個簡單而有效的解決方案,該解決方案優於上述的方法和其他幾個基準。其中,我們引入了一種新穎的稀疏卷積層,它根據輸入畫素的有效性對卷積核的元素進行加權。

此外,第二個流將畫素的有效性資訊傳遞到網路的後續層。這使我們的方法能夠處理大量稀疏度而不會顯著降低準確性。

重要的是,我們的表示對輸入中的稀疏程度是不變的。正如我們的實驗所證明的那樣,在稀疏水平上訓練我們的網路不同於測試時的稀疏度水平不會顯著惡化結果。這具有重要的應用,例如,在機器人技術的背景下,其中演算法必須對感測器配置的變化具有魯棒性。

所提出的技術的一個重要應用領域是3D鐳射掃描資料的增強,參見圖1以進行說明。雖然鐳射掃描器提供有關深度和反射率的有價值資訊,但由此產生的點雲通常非常稀疏,特別是在考慮用於自動駕駛的Velodyne HDL-64e1等移動掃描器時[13]。【掃描器的資料沒有那麼準確】

因此非常需要能夠增加這種掃描密度的學習模型。不幸的是,在不影響精度的情況下[44],直接在3D中處理高解析度資料具有挑戰性。

我們在本文中遵循的另一種方法是將鐳射掃描投影到虛擬或真實的2D影象平面上,從而產生2.5D表示。除了可以將深度預測建模作為2D迴歸問題之外,這種表示還有一個優勢,那就是可以很容易地整合額外的密集資訊(例如,來自彩色相機的RGB值)。然而,投影的鐳射掃描通常非常稀疏並且不能保證與常規畫素網格對準,因此當使用標準CNN處理時,會導致差的結果。相比之下,即使輸入稀疏且不規則地分佈,所提出的方法也產生令人信服的結果。

我們在消融研究和幾個最先進的基準上評估我們的方法。為了進行評估,我們利用合成的Synthia資料集[45]以及新提出的真實世界資料集,這個資料集包含了來自KITTI原始資料集[12]93k的深度註釋影象。我們的資料集是第一個為此場景提供大量高質量深度註釋的資料集。除了在深度和語義方面獲得更高的準確性之外,我們還證明了我們的方法在不同資料集和稀疏程度之間的泛化能力。我們的程式碼和資料集將在出版後釋出。

2、相關工作

在本節中,我們討論了對稀疏輸入進行操作的方法,然後是考慮CNN內部稀疏性的技術。我們簡要討論了不變表示學習的最新技術,並總結了相關深度補全技術。

具有稀疏輸入的CNNs:

處理稀疏輸入的簡單方法是將無效值歸零或為網路建立額外的輸入通道,以編碼每個畫素的有效性。為了檢測鐳射掃描中的物體,陳等人。 [3]和李等人。 [32]將來自鐳射掃描器的3D點雲投影到低解析度影象上,將缺失值歸零並在此輸入上執行標準CNN。對於光流插補和修復,Zweig等。 [59]和Koehler等人。 [28]將額外的二進位制有效性掩碼傳遞給網路。正如我們的實驗所證明的,與明確考慮卷積層內的稀疏性相比,這兩種策略都是次優的。

Jampani等人。 [25]使用雙邊濾波器作為CNN內的層,並學習相應的自組織卷積核的引數。雖然它們的圖層處理稀疏的不規則輸入,但它需要指導資訊來構建有效的全面體表示,並且對於大網格而言計算成本很高。與他們的方法相比,我們的稀疏卷積網路在與普通CNNs一樣高效的同時,在深度補全方面產生了明顯更好的結果。

Graham [15,16]和Riegler等人。 [44]考慮稀疏的3D輸入。與我們的工作相反,他們的重點是通過根據輸入劃分空間來提高計算效率和記憶體需求。然而,採用常規卷積層,其具有與上述初始方法相同的缺點。

Sparsity in CNNs:

許多研究[17,23,41,54,10]也考慮了卷積神經網路中的稀疏性。劉等人。 [33]展示瞭如何使用稀疏分解來減少引數中的冗餘。他們的方法消除了超過90%的引數,ILSVRC2012的精度下降不到1%。溫等人。 [54]建議規範深度神經網路的結構(即濾波器,通道和層深度)以獲得硬體友好的表示。他們報告了常規CNN的加速因子3到5。雖然這些工作側重於通過利用網路內的稀疏性來提高神經網路的效率,但我們考慮的是稀疏輸入問題而不是解決效率問題。這兩項工作的結合將是未來研究的一個有趣方向。

不變的表示

對輸入變化具有魯棒性的學習模型是計算機視覺的長期目標。確保穩健性的最常用解決方案是資料增加[50,30,31]。最近,幾何不變性(例如,旋轉,透視變換)已直接併入CNN的濾波器[4,55,58,24,20]。在本文中,我們考慮學習表示的問題與輸入中的稀疏程度不變。正如我們的實驗所證明的那樣,即使稀疏度水平在訓練和測試集之間顯著不同,我們的模型也能很好地執行。這具有重要意義,因為它允許在不重新訓練網路的情況下更換感測器(例如,鐳射掃描器)。

深度補全:

我們評估了我們的方法對深度完成任務的有效性,深度補全是一個活躍的研究領域,應用於例如立體視覺,光流和鐳射掃描資料的3D重建。雖然一些方法直接在深度輸入上操作,而另一些方法則需要指導,例如,利用高解析度的影象。

非導向深度上取樣的方法與單影象超解析度的方法密切相關。早期方法利用重複結構來識別2D [14,36]和3D [22]中不同尺度的相似斑塊。最近,基於深度學習的深度[43]和影象超分辨[56,7,8,27]方法在準確性和效率方面超越了傳統的上取樣技術。然而,所有上述方法都假定資料位於規則網格上,因此不能用於完成本文所考慮的稀疏和不規則分佈的3D鐳射掃描資料。

另一方面,影象引導深度補全採用了一個基本假設,即目標域與高解析度引導影象共享共性,例如,影象邊緣與深度不連續性對齊。引導深度完成的流行選擇是雙邊濾波[2,6,29,57,34]。更先進的方法基於全域性能量最小化[5,40,9,1,42],壓縮感知[18],或者結合語義以提高效能[49]。雖然上述一些技術能夠處理稀疏輸入,但它們嚴重依賴於引導訊號。相反,在這裡,我們提出了一個基於學習的問題解決方案,即使沒有影象指導也能產生令人信服的結果。有幾種方法也利用端到端模型對常規資料進行引導深度上取樣[23,51]。與現有的基於CNN的方法不同,所提出的卷積層處理例如在3D鐳射掃描資料中出現的稀疏不規則輸入。

3、方法

設f表示通過卷積神經網路實現的從輸入域X(例如,強度,深度)到輸出域Y(例如,深度,語義)的對映。

核大小為2k + 1,權值w,偏置b,如果輸入包含多個特徵,則xu, v, wi, j表示長度取決於輸入通道數量的向量。

3.1 簡單的方法

有兩種簡單的方法來處理未觀察到的輸入。首先,可以使用預設值(例如,零)對無效輸入xu; v進行編碼。這種方法的問題在於網路必須學會區分觀察到的輸入和無效的輸入。這是一項艱鉅的任務,因為可能的二進位制模式的數量隨著核心大小呈指數增長。或者,o可以用作網路的附加輸入,希望網路能夠學習觀察掩碼和輸入之間的對應關係。不幸的是,這兩種變體都難以從稀疏輸入中學習健壯的表示(參見第5節)。

3.2 稀疏卷積

為了解決這個問題,我們提出了一種卷積運算,它通過僅評估觀察到的畫素並適當地標準化輸出來明確地考慮稀疏性:

注意,當輸入稠密時,方程2的值為標準卷積。

所提出的稀疏卷積運算背後的主要動機是使濾波器輸出不隨實際觀測輸入的數量變化,而由於稀疏輸入和不規則輸入在不同的濾波器位置上有顯著的變化。注意,與人工上取樣輸入的其他技術[43,4]相比(例如,通過內插),我們的方法直接對輸入進行操作,並且不會引入額外的干擾物。

在將資訊傳播到後續層時,重要的是跟蹤可見性狀態並使其可用於網路的下一層。特別是,當沒有觀察到任何濾波器輸入時,我們希望將輸出位置標記為未觀察到。因此,我們通過最大池化操作確定網路 中的後續觀察掩模;

如果過濾器可以看到至少一個觀察變數,則評估為1,否則為0。結合卷積的輸出,它用作下一個稀疏卷積層的輸入。我們網路的完整架構如圖2所示。

3.2.1 skip connections

到目前為止,我們只考慮了卷積運算。然而,最先進的CNNS由許多不同型別的層實現不同的數學運算。其中許多可以很容易地推廣到考慮觀察層面。在許多不同的網路體系結構中,例如在初始模組[52]中進行求和,或者在ResNets[19]中跳過連線,以及在完全卷積網路[35]中跳過連線,都經常使用將前面多個層的輸出合併為一個輸出的層。利用附加的觀測指標,可以將每個通道c和位置(u, v)的輸入層的總和重新定義為觀測輸入x的歸一化和。

4、大規模資料集

訓練和評估建議的深度補全方法需要訪問大型帶註釋的資料集。雖然對合成資料集[45,11,39]的評估是可能的,但這些資料集所達到的真實性水平是否足以得出演算法在具有挑戰性的現實情況下的效能的結論,仍然是一個懸而未決的問題。

不幸的是,所有現有的具有經過清理的標定過的真實深度資料的現實世界資料集在規模上都很小。米德爾伯裡基準[48,47]僅對十幾個影象提供深度估計,並且僅在受控實驗室條件下提供。雖然Make3D資料集[46]考慮了更真實的場景,但只提供了500張小解析度的影象。此外,KITTI [13,37]提供了400張具有相關深度地面真實性的街景影象。但是,這些資料集都不足以進行大容量深度神經網路的端到端訓練。

鑑於我們的評估,我們因此建立了一個新的大規模資料集,它是基於KITTI原始資料集[12](包含了超過94k幀,具有半密度的深度標定資訊。)

雖然KITTI原始資料集以原始Velodyne掃描的形式提供深度資訊,但通常需要大量的手動工作來消除鐳射掃描中的噪聲,由於遮擋造成的偽影(例如,由於不同的中心投影的鐳射掃描器和照相機)或場景中的反射/透明表面[13]。因此非常希望自動執行該任務。

在本文中,我們建議通過將掃描深度使用半全域性匹配(SGM)[21]的立體重建方法的結果進行比較來去除鐳射掃描中的異常值。雖然立體重建通常會導致物體邊界處的深度出現偽影,但鐳射雷達感測器會沿其運動方向產生條紋偽影。為了消除這兩種型別的異常值,我們強制鐳射掃描和立體聲重建之間的一致性,並刪除所有表現出較大相對誤差的鐳射雷達點。為了比較兩個測量,我們使用KITTI提供的校準檔案將SGM視差圖變換為深度值。我們進一步遵循[13]並累積11次鐳射掃描以增加生成的深度圖的密度。雖然環境基本上是靜態的,但是一些KITTI序列包括動態物件,其中鐳射掃描累積在動態物件上引起許多異常值。因此,我們僅使用一次SGM深度圖清潔累積的鐳射掃描投影(而不是單獨清潔每個鐳射掃描),以便在一個步驟中移除所有異常值:遮擋,動態運動和測量偽像。我們還觀察到,由於SGM和鐳射雷達在這些區域很少達成一致,因此可以使用這種簡單的技術去除由於反射和透明表面引起的大多數誤差。

4.1 資料集的評測

在使用第5節中的資料集進行評估之前,我們驗證了它的質量。為實現這一目標,我們利用KITTI 2015立體基準的人工清理訓練集作為參考資料。我們使用提供的真實深度資訊為我們生成的深度圖計算了幾個誤差測量值,並將自己與原始和累積的鐳射雷達掃描以及表1中的SGM深度圖進行比較。SGM重建非常密集,但與原始鐳射掃描相比也相當不準確。在平均絕對誤差(MAE)方面,我們的資料集幾乎達到了與原始鐳射雷達掃描相同的精度水平。然而,對於度量標準,均方根誤差(RMSE),“KITTI outliers” (disparity error ≥ 3px and ≥

 5%),以及對 (最大平均相對誤差 ),我們的資料集優於所有的基準結果。與此同時,我們實現了比原始鐳射雷達掃描更密集的深度圖的四倍。圖3給出了定性比較。

在基準深度圖上手動分離前景和背景區域後,我們評估表2中動態物件和背景上出現的錯誤。結果表明我們建議的累積和清理管道能夠去除原始鐳射雷達掃描中的異常值,同時顯著增加了資料的密度。定性地說,我們在資料集中只發現很少的錯誤。大多數剩餘的錯誤位於動態物件或遠距離,參見圖3(底部)。相比之下,SGM結果在遠距離處是不準確的,並且鐳射雷達掃描導致由於鐳射雷達感測器和用於投影的虛擬相機的不同放置而導致的遮擋誤差(我們在所有實驗中使用KITTI參考相機的影象平面)。注意,動態物件(例如,左側的汽車)導致累積的鐳射雷達掃描中的重大誤差,這些誤差在我們的技術中大大減少。

對於這項工作中的實驗評估,我們將資料集分為86k影象用於訓練,3k影象用於測試,4k影象用於驗證。對於所有拆分,我們確保在KITTI場景類別(城市,道路,住宅和校園)上進行類似的分配,同時保持每個拆分的序列ID唯一,以避免過度擬合到附近的幀。為了提出學習深度完成和單影象深度預測的任務,我們將基於我們的資料和另外一組1.5k保持的測試影象建立基準。與線上評估伺服器配對的基準測試將在KITTI Vision主頁上釋出。

5、實驗

5.1. 深度上取樣

我們研究了深度圖補全的任務,以評估稀疏輸入資料對稀疏卷積模組的影響。對於此任務,從投影的鐳射掃描得到的稀疏,不規則填充的深度圖補全到完整的影象解析度,而沒有任何RGB引導。

首先,我們用不同程度的稀疏性來評估我們的方法在輸入中的效能。為了達到這個目標,我們利用Ros等人的Synthia資料集。 [45]這使我們完全控制稀疏程度。為了人為地調整輸入的稀疏性,我們在訓練期間將隨機丟失應用於提供的密集深度圖。將畫素丟棄的概率設定為0%至95%的不同水平。

我們訓練完全卷積網路(FCN)的三種不同變體,其中包含5個核心大小為11,7,5,3和3的卷積層。每個卷積都有一個16個輸出通道的步幅,然後是ReLU非線性啟用函式。

我們使用Adam求解器,動量項為0.9和0.999,固定學習率為1·10^-3,重量衰減為5·10^-4。我們考慮的三個變體是:

  1. 僅具有稀疏深度作為輸入的普通卷積,
  2. 以稀疏深度和連線有效畫素圖作為輸入的簡單卷積
  3. 所提出的稀疏卷積層,參見圖2。圖2.我們使用Synthia Summer序列訓練不同稀疏度的單獨網路,而對Synthia Cityscapes資料集進行評估。為了比較不同方法的效能,我們首先在訓練過的稀疏程度上對它們進行評估。為了測試不同模型的泛化能力,我們進一步將它們應用於他們在訓練期間沒有看到的稀疏程度。

圖4顯示了我們的結果。我們觀察到,由於在卷積中考慮了所有畫素(有效和無效),因此普通卷積對於非常稀疏的輸入表現不佳。這在訓練和測試期間引入了很大程度的隨機性,並導致效能的強烈變化。具有級聯有效掩碼的稀疏深度圖上的卷積比僅使用深度輸入稍微好一些。然而,與我們的稀疏卷積相比,它們表現不佳,特別是在非常稀疏的輸入上。

對於深度補全方法來說,不變性是一個重要的性質,因為它增強了對資料中隨機擾動的魯棒性。此外,該特性還可以推廣到不同的深度感測器,如結構光感測器、PMD攝像機或鐳射雷達掃描器。如圖4所示,所有方法在他們已經訓練的效能水平(對角線條目)上表現得相當好,稀疏卷積變換的效能最好。然而,這兩個基線在預測更稀疏的深度估計時完全失敗,並且令人驚訝的是,也更難以預測更密集的輸入。相比之下,無論在訓練期間觀察到哪種稀疏程度,我們提出的稀疏卷積網路在所有稀疏水平上表現都相同。這突出了我們方法的泛化能力。圖5顯示了兩個基準的生成密集深度圖和我們在訓練和測試期間使用5%稀疏度的方法的定性比較。注意,使用擴張在視覺上增強了圖5(a)中的輸入以提高可讀性。因此,它看起來比網路的實際輸入更密集。對於相同的例子,圖6顯示了當訓練標準CNN為5%並且評估為20%時效能的急劇下降,而我們的方法同樣表現良好。雖然帶有輸入掩碼的ConvNets會導致噪聲結果,但標準的ConvNets甚至會導致系統偏差,因為他們不知道輸入中的稀疏程度。

5.1.1 Synthetic-to-Real Domain Adaptation

為了評估我們方法的域自適應能力,我們進行了一個實驗,我們在Synthia資料集上進行訓練並評估我們提出的KITTI驗證集。表3顯示了我們的網路(SparseConv)以及使用相同數量引數的兩個常規CNN基線的效能。我們的實驗證明,稀疏卷積在KITTI上的表現與在Synthia上的表現相同,而密集基線不能適應新的輸入模態而完全失敗。我們在圖7中顯示了該實驗的定性結果。

 

5.2. Comparison to Guided Upsampling

如相關工作部分中所討論的,文獻中的若干方法利用高解析度影象來指導深度圖完成任務,這極大地促進了該問題。密集顏色資訊對於控制稀疏深度點的內插非常有用,例如,以區分物件邊界和平滑表面。然而,依賴於多模感測器設定中的相機資訊,例如在例如自動駕駛汽車並不總是值得推薦。惡劣的天氣和夜景會降低影象資料的好處,甚至會使結果惡化。因此,我們的目標是利用深度作為本文的唯一輸入的方法。

 

在本節中,我們展示了儘管不依賴於指導資訊,但我們的方法與導向深度補全中的最新技術相當,甚至優於使用影象引導的幾種方法。表4(上)顯示了幾種用於引導過濾的現有技術方法的比較。特別是,我們評估了Barron等人的方法。 [1],Schneider等。 [49],Ferstl等。 [9],和Jampani等人。 [25]這些都需要非稀疏的RGB影象作為指導。為了公平比較,我們在Jampani等人的稀疏卷積網路中使用了相同數量的卷積層。 [26]。對於其他基線方法,我們通過驗證拆分上的網格搜尋優化超引數。

此外,我們將我們的方法與表4中的幾個深度演算法進行比較(下圖)。我們首先評估一種簡單的彙集方法,該方法採用最接近(距感測器的距離)的有效點來填充給定視窗內看不見的區域。其次,我們在稀疏深度輸入上使用高斯核應用Nadaraya-Watson迴歸量[38,53]。我們在訓練資料上優化了兩種方法的超引數。我們還將我們的方法與高容量基線進行比較。特別地,我們考慮一個標準的ConvNet,帶可見掩碼和不帶可見掩碼作為附加特性通道。

值得注意的是,儘管沒有使用任何RGB資訊,我們的方法與最先進的引導深度完成技術相當。特別是,它在驗證和測試分割方面的RMSE方面排名第二,我們將其歸因於用於訓練的歐幾里德損失。

5.2.1 Sparsity Evaluation on KITTI

在KITTI資料集中,使用了一臺旋轉頻率為10hz的64層鐳射掃描器來獲得真實深度,以完成立體視覺和流量估計等各種任務。如果投影到影象,深度測量覆蓋約5%的影象。對於諸如自動駕駛的工業應用,通常使用僅具有32或16層和更高頻率的掃描器。這導致非常稀疏的深度投影。為了分析極稀疏資訊的影響,我們評估了稀疏卷積網路以及關於我們新註釋的KITTI子集的不同稀疏度的幾個基準。特別是,我們使用所有鐳射測量訓練所有網路,並在使用隨機丟失改變輸入密度時評估效能。我們在圖8中的結果證明了我們的網路對不同稀疏度的泛化能力。在存在稀疏輸入的情況下,常規卷積以及幾種最先進的方法表現不佳。請注意,Barron等人。 [1]和Ferstl等人。 [9]在非常稀疏的資料上表現略好於我們的方法,但需要密集的高解析度RGB影象作為指導。

 

5.3. Semantic Labeling from Sparse Depth

為了演示不同於深度的輸出模態,我們還訓練了眾所周知的VGG16架構[35],用於從稀疏深度輸入進行語義標記的任務。我們通過使用稀疏卷積模組替換常規卷積來修改VGG16。此外,我們應用第3.2.1節中介紹的加權跳躍連線,從小的,空間下采樣的FC7層生成高解析度預測,同時合併各個網路階段的可見性掩模。

表5顯示了訓練所有Synthia 序列幀(左側攝像機到所有方向,僅限夏季)和評估Synthia Cityscapes子集後的平均效能。同樣,我們觀察到所提出的稀疏卷積模組優於兩個基線。相對較小的數字可以通過驗證集的不同性質來解釋,驗證集包含更多人以及非常不同的觀點(鳥瞰與街道級別)。

 

6、總結

我們提出了一種新穎的稀疏卷積模組,用於處理稀疏輸入,可以取代常規卷積模組,從而提高效能,同時很好地推廣到新的域或稀疏度級別。此外,我們提供了一個帶有93k深度註釋影象的新註釋資料集,用於訓練和評估深度預測和深度補全技術。

在未來的工作中,我們計劃將提出的稀疏卷積網路與網路壓縮技術相結合,以處理稀疏輸入,同時提高效率。我們進一步計劃研究稀疏不規則輸入對3D CNN的影響[44]。