無監(jiān)督新框架!Depth Anywhere:增強(qiáng)任何單目360圖像的深度估計(jì)
本文經(jīng)自動駕駛之心公眾號授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請聯(lián)系出處。
寫在前面
準(zhǔn)確估計(jì)360度圖像中的深度對于虛擬現(xiàn)實(shí)、自主導(dǎo)航應(yīng)用至關(guān)重要。現(xiàn)有的為透視視圖圖像設(shè)計(jì)的深度估計(jì)方法,在應(yīng)用于360度圖像時,由于不同的相機(jī)投影和畸變而失效,而360度方法則因?yàn)槿狈?biāo)注數(shù)據(jù)對而表現(xiàn)不佳。這里提出了一種新的深度估計(jì)框架,該框架能夠有效利用未標(biāo)注的360度數(shù)據(jù)。
提出的方法采用最先進(jìn)的透視深度估計(jì)模型作為教師模型,通過六面體投影技術(shù)生成偽標(biāo)簽,從而實(shí)現(xiàn)對360度圖像中深度的有效標(biāo)注。這種方法利用了大型數(shù)據(jù)集日益增加的可用性。我們的方法包括兩個主要階段:離線無效區(qū)域mask生成和在線半監(jiān)督聯(lián)合訓(xùn)練方案。在Matterport3D和Stanford2D3D等基準(zhǔn)數(shù)據(jù)集上測試了提出的方法,結(jié)果顯示在深度估計(jì)準(zhǔn)確性方面取得了顯著改進(jìn),特別是在zero-shot學(xué)習(xí)場景中。提出的訓(xùn)練流程可以增強(qiáng)任何360度單目深度估計(jì)器,并在不同的相機(jī)投影和數(shù)據(jù)類型之間實(shí)現(xiàn)有效的知識遷移。
背景介紹
近年來,計(jì)算機(jī)視覺領(lǐng)域涌現(xiàn)出大量研究,專注于解決處理360度圖像所面臨的挑戰(zhàn)。隨著全景圖像在虛擬現(xiàn)實(shí)、自主導(dǎo)航和沉浸式媒體等各個領(lǐng)域的廣泛應(yīng)用,針對360度圖像量身定制的準(zhǔn)確深度估計(jì)技術(shù)的需求日益凸顯。然而,直接將針對透視視圖圖像開發(fā)的現(xiàn)有深度估計(jì)方法應(yīng)用于360度數(shù)據(jù)時,由于相機(jī)投影和畸變的差異,會遇到顯著困難。盡管許多方法旨在解決這種相機(jī)投影下的深度估計(jì)問題,但由于標(biāo)注數(shù)據(jù)集的有限可用性,它們往往難以應(yīng)對。
為了克服這些挑戰(zhàn),這里提出了一種在360度圖像上訓(xùn)練最先進(jìn)(SOTA)深度估計(jì)模型的新方法。隨著可用數(shù)據(jù)量的顯著增加,數(shù)據(jù)量和質(zhì)量的重要性變得顯而易見。關(guān)于透視感知模型的研究越來越多地集中在增加數(shù)據(jù)量和發(fā)展能夠跨不同類型數(shù)據(jù)泛化的基礎(chǔ)模型上。提出的方法利用SOTA透視深度估計(jì)基礎(chǔ)模型作為教師模型,并通過六面體投影方法為未標(biāo)注的360度圖像生成偽標(biāo)簽。通過這種方式,我們有效地解決了利用透視模型和大量未標(biāo)注數(shù)據(jù)來標(biāo)注360度圖像中深度信息的挑戰(zhàn)。
提出的方法包括兩個關(guān)鍵階段:離線mask生成和在線聯(lián)合訓(xùn)練。在離線階段,結(jié)合檢測和分割模型,為未標(biāo)注數(shù)據(jù)中的無效區(qū)域(如天空和水?。┥蒻ask。隨后,在在線階段,采用半監(jiān)督學(xué)習(xí)策略,將一半批次加載標(biāo)注數(shù)據(jù),另一半加載偽標(biāo)注數(shù)據(jù)。通過聯(lián)合訓(xùn)練標(biāo)注數(shù)據(jù)和偽標(biāo)注數(shù)據(jù),我們的方法在360圖像上實(shí)現(xiàn)了穩(wěn)健的深度估計(jì)性能。
為了驗(yàn)證提出方法的有效性,在基準(zhǔn)數(shù)據(jù)集(如Matterport3D和Stanford2D3D)上進(jìn)行了廣泛的實(shí)驗(yàn)。我們的方法在深度估計(jì)準(zhǔn)確性方面表現(xiàn)出了顯著的改進(jìn),特別是在zero-shot學(xué)習(xí)場景中,即模型在一個數(shù)據(jù)集上訓(xùn)練并在另一個數(shù)據(jù)集上評估時。此外,我們還通過不同的SOTA 360度深度模型和多種未標(biāo)注數(shù)據(jù)集展示了我們的訓(xùn)練技術(shù)的有效性,這凸顯了我們的方法在應(yīng)對360度圖像帶來的獨(dú)特挑戰(zhàn)方面的靈活性和有效性。
主要貢獻(xiàn)可以總結(jié)如下:
? 提出了一種針對360度圖像的全新訓(xùn)練技術(shù),該技術(shù)通過透視基礎(chǔ)模型的蒸餾來利用未標(biāo)注數(shù)據(jù)的潛力。? 引入了一種在線數(shù)據(jù)增強(qiáng)方法,該方法有效地在不同相機(jī)投影之間建立了知識蒸餾的橋梁。? 提出的訓(xùn)練技術(shù)顯著地促進(jìn)了并啟發(fā)了未來關(guān)于360度圖像的研究,通過展示最先進(jìn)(SOTA)360度模型、透視教師模型和未標(biāo)注數(shù)據(jù)集之間的可互換性。這使得即使在未來新的SOTA技術(shù)出現(xiàn)時,也能實(shí)現(xiàn)更好的結(jié)果。
Depth Anywhere方法介紹
本文提出了一種用于360度單目深度估計(jì)模型的新型訓(xùn)練方法。方法利用透視深度估計(jì)模型作為教師,并使用六面體投影為未標(biāo)注的360度圖像生成偽標(biāo)簽。圖2展示了訓(xùn)練流程,包括在離線階段使用“Segment Anything”來屏蔽未標(biāo)注數(shù)據(jù)中的天空和水印區(qū)域。隨后,使用標(biāo)注數(shù)據(jù)和未標(biāo)注數(shù)據(jù)進(jìn)行聯(lián)合訓(xùn)練,每個批次分配一半給每種數(shù)據(jù)。未標(biāo)注數(shù)據(jù)通過“Depth Anything”生成的偽標(biāo)簽進(jìn)行監(jiān)督,這是一種最先進(jìn)的透視單目深度基礎(chǔ)模型。借助教師模型的幫助,360度深度模型在zero-shot學(xué)習(xí)數(shù)據(jù)集上表現(xiàn)出了可觀的改進(jìn)。
數(shù)據(jù)集統(tǒng)計(jì)。近年來,360數(shù)據(jù)變得越來越容易獲取。然而,與透視視圖深度數(shù)據(jù)集相比,為360度數(shù)據(jù)標(biāo)注深度真實(shí)值面臨更大的挑戰(zhàn)。因此,360度數(shù)據(jù)的已標(biāo)注數(shù)據(jù)集可用性遠(yuǎn)小于透視數(shù)據(jù)集。表1列出了一些最流行的360度數(shù)據(jù)集的數(shù)據(jù)量,包括Matterport3D、Stanford2D3D和Structured3D。此外還列出了一個多模態(tài)數(shù)據(jù)集SpatialAudioGen,它由我們實(shí)驗(yàn)中使用的未標(biāo)注360度數(shù)據(jù)組成。值得注意的是,用于透視基礎(chǔ)模型Depth Anything的標(biāo)注和未標(biāo)注數(shù)據(jù)數(shù)量顯著更大,有150萬張標(biāo)注圖像和6200萬張未標(biāo)注圖像,使得360度數(shù)據(jù)集中的數(shù)據(jù)量大約小了170倍。
數(shù)據(jù)清洗和有效像素mask生成:未標(biāo)注數(shù)據(jù)通常在天空和水印等區(qū)域包含無效像素,這會導(dǎo)致訓(xùn)練不穩(wěn)定或收斂不理想。為了解決這個問題,我們應(yīng)用了GroundingSAM方法來屏蔽無效區(qū)域。這種方法利用Grounded DINOv2來檢測問題區(qū)域,并通過在邊界框內(nèi)進(jìn)行分割,應(yīng)用Segment Anything模型來屏蔽無效像素。雖然Depth Anything也使用了一個預(yù)訓(xùn)練的分割模型DINOv2來選擇天空區(qū)域,但魚眼相機(jī)拼接后經(jīng)常會出現(xiàn)品牌標(biāo)志和水印。因此,我們應(yīng)用了額外的標(biāo)簽來增強(qiáng)我們訓(xùn)練過程的魯棒性。除此之外,還移除了所有有效像素少于20%的圖像,以穩(wěn)定訓(xùn)練過程。
透視基礎(chǔ)模型(教師模型):為了應(yīng)對360度數(shù)據(jù)集中數(shù)據(jù)有限和標(biāo)注困難帶來的挑戰(zhàn),我們利用了大量未標(biāo)注數(shù)據(jù)以及最先進(jìn)的透視深度基礎(chǔ)模型。由于相機(jī)投影和畸變的顯著差異,直接將透視模型應(yīng)用于360度數(shù)據(jù)通常會產(chǎn)生較差的結(jié)果。之前的工作已經(jīng)探索了將等距投影轉(zhuǎn)換為透視深度的各種投影方法。其中,立方體投影和切線投影是最常見的技術(shù)。這里選擇了立方體投影,以確保每個patch具有更大的視場,從而在透視基礎(chǔ)模型的推斷過程中更好地觀察像素或物體之間的相對距離,并增強(qiáng)知識蒸餾。
在提出的方法中,首先將未標(biāo)注的360度數(shù)據(jù)進(jìn)行投影,然后在這些投影的透視圖像塊上運(yùn)行Depth Anything以生成偽標(biāo)簽。我們探索了兩種偽標(biāo)簽監(jiān)督的方向:將塊投影到等距投影上并在360度域中進(jìn)行計(jì)算,或者將360度模型的360度深度輸出投影到塊上并在透視域中進(jìn)行計(jì)算。由于訓(xùn)練是以縮放后的相對深度方式進(jìn)行的,因此將透視圖像塊重新拼接回等距投影并調(diào)整對齊的尺度是一個額外的研究方面。我們選擇在透視域中計(jì)算損失,這使得訓(xùn)練更快更容易,無需額外的對齊優(yōu)化。
直接將Depth Anything應(yīng)用于立方體投影的未標(biāo)注數(shù)據(jù)并不會帶來改進(jìn),因?yàn)楹雎粤丝缌⒎矫娴年P(guān)系,從而導(dǎo)致立方體偽影(圖4)。這個問題是由于對透視立方體面進(jìn)行了單獨(dú)估計(jì),其中單目深度是基于語義信息進(jìn)行估計(jì)的,可能缺乏對整個場景的全面理解。為了解決這個問題,我們提出了在透視基礎(chǔ)模型之前進(jìn)行隨機(jī)旋轉(zhuǎn)預(yù)處理的步驟。如圖2所示,使用隨機(jī)旋轉(zhuǎn)矩陣對等距投影的RGB圖像進(jìn)行旋轉(zhuǎn),然后進(jìn)行立方體投影。這將產(chǎn)生更多樣化的立方體面集合,更有效地捕捉天花板、墻壁、窗戶和其他物體之間的相對距離。通過提出的隨機(jī)旋轉(zhuǎn)技術(shù),由于觀察點(diǎn)不是靜態(tài)的,因此知識蒸餾變得更加全面。透視基礎(chǔ)模型的推理是即時進(jìn)行的,在360模型訓(xùn)練期間參數(shù)是凍結(jié)的。
為了執(zhí)行隨機(jī)旋轉(zhuǎn),我們在等距坐標(biāo)(記為(θ, ?))上應(yīng)用一個旋轉(zhuǎn)矩陣,記作 R。
對于等距投影到立方體投影,每個立方體面的視場(FoV)等于90度,每個面都可以被視為一個焦距為w/2的透視相機(jī),并且所有面在世界坐標(biāo)中共享同一個中心點(diǎn)。由于六個立方體面共享同一個中心點(diǎn),因此每個相機(jī)的外參矩陣可以通過旋轉(zhuǎn)矩陣Ri來定義。p是立方體面上的像素點(diǎn)。
訓(xùn)練過程與MiDaS、Depth Anything和其他跨數(shù)據(jù)集方法非常相似。我們的目標(biāo)是為任何360度圖像提供深度估計(jì)。遵循之前在多個數(shù)據(jù)集上進(jìn)行訓(xùn)練的方法,我們的訓(xùn)練目標(biāo)是估計(jì)相對深度。首先,使用公式1/d將深度值轉(zhuǎn)換為視差空間,然后將每個視差圖歸一化到[0, 1]的范圍內(nèi)。
為了適應(yīng)跨數(shù)據(jù)集訓(xùn)練和來自基礎(chǔ)模型的偽真實(shí)標(biāo)簽,我們采用了仿射不變損失,這與先前的跨數(shù)據(jù)集方法一致。這種損失函數(shù)忽略了每個域的絕對尺度和偏移,從而允許在不同數(shù)據(jù)集和模型之間進(jìn)行有效適應(yīng)。