深度是實現 3D 場景理解的重要信息,快手 Y-tech 利用自研的單目深度估計技術獲得了高質量的深度信息,並將模型部署到移動端,結合 Y-tech 已有的多項技術研發了 3DPhoto、混合現實等多種新玩法。這些黑科技玩法不限機型,可讓用戶在手機上無門檻的實時體驗,給用戶帶來全新的視覺體驗和交互方式的同時,可幫助用戶更好的進行創作。
這項研究主要探究了如何更好的利用三維空間的結構性信息提升單目深度估計精度,此外還針對複雜場景構建了一個新的深度數據集 HC Depth,包含六種挑戰性場景,有針對性地提升模型的精度和泛化性。該論文已被 ECCV 2020 收錄,論文代碼和模型即將在 GitHub 上開源,作者也將在 8 月 23-28 日的 ECCV 大會線上展示他們的工作。從 2D 圖像恢復 3D 信息是計算機視覺的一個基礎性問題,可以應用在視覺定位、場景理解和增強現實等領域。在無法通過深度傳感器或者多視角獲得有效的深度測量時,單目深度估計算法尤為重要。傳統方法通常使用先驗信息恢復圖像的深度信息,例如紋理線索,物體尺寸和位置,遮擋和透視關係等。近年來深層卷積神經網絡通過對大規模數據集的學習,能夠隱式捕獲這些先驗信息,取得了重大的突破。然而,自然場景的深度信息估計存在很多挑戰,如光照不足或過曝,包含移動人像和天空區域,虛假邊緣,相機的抖動和傾斜等(見圖 1)。現有算法把單目深度估計轉化為像素深度值的分類或回歸問題,對於全局像素之間的結構性缺乏考量,導致遇到很多問題,如空間布局錯誤,邊緣不清晰,平面估計錯誤等。針對這一缺陷,這篇論文從深度信息的結構性角度出發,從網絡結構、損失函數、訓練方式、數據擴充等方面入手,提高深度估計的質量。![]()
![]()
這篇論文基於編碼 - 解碼結構的 U 形網絡進行設計,為多級特徵圖添加了從編碼器到解碼器的 skip 連接層。編碼器主要提取語義特徵,解碼器則更加關注空間結構信息。包含全局上下文信息的 GCB 模塊在編碼階段應用於每個殘差模塊,以重新校準通道特徵。校準的特徵與高級特徵組合,作為空間注意力機制 SAB 模塊的輸入。其中 SAB 是這篇論文提出的一種新穎的空間注意力機制模塊。從空間角度來看,GCB 模塊用於全局強調語義信息,而空間注意模塊則側重於圖像局部區域模塊的權重調節。GCB 和 SAB 注意力模塊可以構建三維注意機制以指導特徵選擇。如圖 3 所示,其中低解析度 SAB 特徵圖用於指導全局空間布局信息的選擇,而高解析度 SAB 特徵圖用於強調細節信息。經過選擇後的多尺度特徵圖融合後經過上採樣層輸出最終深度圖。![]()
論文的 SAB 模塊專為單目深度估計而設計,旨在優化像素級回歸任務中的幾何空間布局。SAB 模塊通過 1×1 卷積層對串聯特徵進行擠壓操作,以在其通道尺寸上聚合空間上下文。然後,激活局部特徵以獲取注意力特徵圖,該圖對所有空間位置上的像素深度信息進行編碼。低層特徵與該特徵圖進行逐像素相乘,以進行後續融合,獲取高層傳遞的空間上下文信息。因此,SAB 能生成具有空間信息的權重圖,以重新校準 GCB 的語義特徵。 ![]()
SAB 的表達式如上,其中 f 是融合函數(例如按元素求和,按元素點積或串聯),∗表示 1×1 或 3×3 卷積,⊙表示按元素點積。由於深度圖的元素值呈長拖尾的正值分布,因此將 ReLU 用作激活函數σ(x)。如圖 3 所示,使用 SAB 獲得的注意力特徵圖有助於網絡選擇跨不同尺度的特定空間信息。其中,S4 能夠描述語義層級關係,幫助網絡捕獲 3D 空間整體的遠近結構。空間注意力特徵圖越接近 S1,能夠使網絡關注更加局部空間的信息,如物體邊界。這篇論文的損失函數由四種損失函數構成,包含已開源的 Berhu 損失,尺度不變性梯度損失,法向損失和這篇文章提出的 GFRL 相對損失,我們參考相關文獻將這些 loss 進行合理的組合,從而使網絡更好的收斂。 GFRL 損失(global focal relative loss)為了更好地約束全局像素間的相對關係,這篇文章在相對損失函數(Relative Loss,RL)的基礎上引入了焦點損失概念(focal loss),可以通過減少易判斷空間遠近點對的權重,使得模型在訓練時更專注於難以區分遠近的點對。為了確保點對的均勻選擇,將圖像細分為相同大小的 16×16 塊,並從每個塊中隨機採樣一個點,訓練網絡時,會將每個點與同一圖像中的所有其他點進行比較,從而使網絡表現出更好的全局結構約束性能。第 k 對點的相對損失函數如下式所示:其中 rk 是真值的點對相對關係,如果第一個點的深度值比第二個點小時,rk 設置為 - 1,反之為 1。深度差值比率小於閾值 0.02 時,rk 設置為 0。與傳統的相對損失不同,GFRL 引入一個調控因子來衡量點對的相對損失權重。當一對像素在預測中具有不正確的序數關係時,調控因子權重接近於 1,相當於傳統的相對損失函數。當深度序數關係正確且深度差足夠大時,則對該點對的調控因子將變為 0。因此 GFRL 能是網絡在訓練時專注於錯誤的像素對。參數γ調整點對的權重調節幅度。當γ= 0 時,GFRL 相當於傳統相對損失函數。隨著γ的增加,調製因子的影響變大,這篇論文在實驗中將γ設置為 2。實驗證明,在各種評估指標下,GFRL 都優於 RL。邊緣感知策略(Edge-aware consistency)現有的大多數單目深度估計方法都無法準確地估計邊緣區域,生成的深度邊界有一定扭曲和模糊。為了使網絡更好的區分前後景且保持平面的平滑,這篇論文在訓練的過程中引入了邊緣感知策略,從而在深度預測結果中保留前後景深度的斷層。首先使用 Canny 邊緣檢測算子提取深度圖的邊緣,然後對這些邊緣進行擴張以得到邊界區域。在這些邊界區域調大訓練權重以顯著增加邊界區域中預測誤差的損失。邊緣感知一致性方案作為一種難例挖掘方法,在邊界區域提升效果顯著,如圖 4 所示:![]()
這篇論文在現有深度估計的方法上總結了六種挑戰性場景,並儘可能在開源數據集上搜集這些場景。然而現有開源的深度數據集場景非常單一,難以提供足夠的 hard case 數據。這篇論文針對這一現狀,設計了數據採集方案,並整理了 HC Depth 數據集。論文作者使用 Microsoft Kinect 收集了 24660 張挑戰場景圖像,由於 Kinect 的有效距離範圍有限,這些圖像主要是包含移動人像的室內場景。為了擴充數據集的深度分布範圍,論文作者同時使用了 Intel RealSense 收集了 95400 張室內和室外場景的圖像,對於室外場景,使用天空分割模型分割出天空區域並賦予最大深度值。此外還對所有深度圖進行了空洞補全及平滑處理,提升數據質量。HC depth 數據集示例如圖 5 所示:![]()
![]()
為了訓練通用的單目深度估計模型,這篇論文在多個不同的數據集上進行訓練。在非凸函數的全局優化中,深度數據在各種場景中的分布不同,導致訓練時難以收斂。這篇論文受到課程學習的啟發,提出了一種增量式數據集混合策略,以加速網絡訓練收斂並提高訓練模型的泛化性能。首先,在具有相似分布的數據集上訓練模型,直到收斂為止。然後逐一添加更難學習的不同深度分布的數據集,並為每個 batch 構建一個新的採樣器,以確保從這些不平衡的數據集中進行均衡的採樣。訓練收斂過程如圖 6 所示:![]()
圖 6:多數據集訓練策略的 BerHu loss 收斂曲線作者對比了當前最優的深度估計算法,在 NYUv2 開源數據集上的指標對比結果和視覺對比結果見下圖,可以看出該論文方法在深度圖整體及細節上均好於 SOTA。![]()
![]()
![]()
圖 9:在 NYUv2 數據集上的點雲可視化實驗對比為了進一步驗證模型的泛化性能,作者在 TUM 數據集上進行了方法對比測試如下圖,在未見過的場景下,該論文方法預測效果也優於 SOTA。![]()
![]()
最後,為了說明該論文方法在各種具有挑戰性場景下的有效性,作者在自採的 HC Depth 上進行了對比測試如下圖,可以看出該論文的方法遠好於 SOTA。![]()
圖 12:在 HC Depth 數據集上的 hard case 性能測試實驗![]()
圖 13:在 HC Depth 數據集上的可視化測試實驗基於深度信息業界已經有了很多相關的落地應用,快手利用深度信息也支持了很多應用的上線落地,如混合現實、3DPhoto、景深虛化等。傳統的增強現實 (AR) 技術一般只有空間定位功能,缺少環境感知、深度測量、實時光照等高級能力,虛擬和現實難以真正的融合和交互。快手利用單目深度估計技術實時感知和理解場景的幾何信息,並將其與傳統的 SLAM/VIO 技術相結合,同時完成了空間計算和場景重建,結合自研的 3D 渲染引擎,打造了移動端的 MR 混合現實系統,給用戶帶來更逼真、沉浸、新奇的虛實交互新體驗。該技術方向大大減少了對特殊硬體 (如深度傳感器) 的依賴,可以只利用現有手機硬體實現,技術的普適性可幫助幾乎所有用戶無門檻使用 MR 技術。用戶通過快手的 MR 混合現實系統可以實時體驗虛實遮擋、體表運動、虛擬打光、物理碰撞等虛實交互特性。快手最近半年已上線了 「新春燈牌」、「辭舊迎新」、「蹦迪濾鏡」 等多款 MR 魔錶,是國內首家上線該技術的公司,激發了用戶的創造力,提升了用戶拍攝生產欲望。3D 照片是近兩年比較熱的研究方向,通過對單張圖片進行重建,可以讓這張圖片動起來,產生偽 3D 的交互效果。其產生的玩法是沉浸式的,可交互的,可以給用戶帶來新穎的體驗。快手通過單目深度估計網絡對靜態圖片進行稠密重建,結合人像分割、人臉三維重建、圖像背景修復等技術,可產生生動逼真的 3D 立體照片效果。利用快手 Y-tech 自研的 YCNN 推理引擎,所有的模型都是在用戶的行動裝置上運行,沒有設備機型和數據傳輸能力的限制,可讓每位快手用戶都能體驗到這一新奇玩法。目前這項功能已在快手主 APP、一甜相機等多款 APP 上線。用戶在使用單反設備進行拍照時,可以拍出具有淺景深的大光圈照片,它突出了拍攝主體,讓畫面變得更富層次感,並將背景轉化為柔美的光斑。這樣的景深虛化功能能明確主次,增強畫面美感,提升用戶的拍攝質量。在手機上實現大光圈的效果需要有場景的深度信息,快手利用深度估計網絡獲取到的深度圖後,結合人像分割實現了逼真的虛化效果。目前該功能已經在一甜相機完成上線,支持多種光斑形態的景深虛化以及動感和旋集等新效果。用戶對該功能滿意度很高,進入虛化功能到保存的滲透率高達 70%。想要了解更多資訊,請掃描下方二維碼,關注機器學習研究會
轉自:機器之心