雙目深度估計中的自監督學習概覽

PaperWeekly發表於2020-03-09

深度學習的蓬勃發展得益於大規模有標註的資料驅動,有監督學習(supervised learning)推動深度模型向著效能越來越高的方向發展。但是,大量的標註資料往往需要付出巨大的人力成本,越來越多的研究開始關注如何在不獲取資料標籤的條件下提升模型的效能,也就是自監督學習(self-supervised learning)/無監督學習(unsupervised learning)。 

對於立體匹配(stereo matching),或者雙目深度估計,像 LiDAR 這樣的裝置是極其笨重且昂貴的,它所能收集的只是稀疏的深度資訊,而我們需要的是密集的深度圖(dense depth map);而基於結構光的裝置往往只能在室內場景下進行深度資訊標註,在室外場景下難以達到較高的標註質量。因此,自監督學習在立體匹配中得到越來越多的關注。

本文主要梳理了近年來自監督學習在深度立體匹配中的應用方法,希望和大家一起探討學習。

1、Stereo Matching

立體匹配也稱作視差估計(disparity estimation),或者雙目深度估計。其輸入是一對在同一時刻捕捉到的,經過極線校正的左右影像  和  。而它的輸出是由參考影像(一般以左圖作為參考影像)中每個畫素對應的視差值所構成的視差圖 。

視差是三維場景中某一點在左右影像中對應點位置的畫素級差距。當給定攝像機的基線距離  和焦距  之後,我們就可以從視差圖中自動計算出深度。所以深度和視差是可以互相轉換,相互等價的。

立體匹配演算法分為四個步驟:

  • 匹配代價計算(matching cost computation);
  • 代價聚合(cost aggregation);
  • 視差計算(disparity computation);
  • 視差精修(disparity refinement)

傳統的視差估計演算法主要分為兩類:

  • 區域性演算法:主要基於滑動視窗來計算區域性視窗內的匹配代價;
  • 全域性演算法:通過優化包括區域性資料項和平滑項的能量函式來計算立體檢視之間的相關性;

傳統的視差估計演算法對於各種應用場景都具有等價的視差估計能力,不會因為場景變化而產生較大的差異,因此有論文將傳統方法估計的視差圖作為帶有噪聲的標籤來提升無監督視差估計的效能,本文後面會提到。

隨著深度學習的發展以及大規模合成/模擬資料的推動,CNN 將上述四個步驟統一成一個端到端的網路,進一步提升了視差估計的效能。本文主要探討的是自監督學習在基於卷積神經網路的視差估計演算法中的應用情況。

相關文章