三維視覺與幾何

單眼深度估計

單眼深度估計(monocular depth estimation)從單張照片預測完整的深度圖——沒有第二個視角、沒有立體基線、沒有運動。這很驚人,因為嚴格說來它在幾何上是不可能的:單張二維影像與無限多個三維場景相容(一個近處的小物體與一個遠處的大物體可以投影出完全相同的像素)。然而人類瞥一眼一張照片就能立刻感知何者近、何者遠。我們靠的是學到的先驗——我們知道天空很遠、人臉有一定大小、平行的鐵軌會交會,而紋理隨距離變得更細。單眼深度網路正是從資料中學會這些先驗。

因為幾何本質上是歧義的,誠實的輸出通常不是度量的。單張影像無法固定整體尺度(小物體對大物體的歧義),所以最好的通用模型預測相對深度,或更精確地說,尺度與位移不變的深度:距離的次序與比例是正確的,但要換成公尺需要一個未知的乘法與加法。以這種方式訓練的模型(MiDaS、DPT)能在相機與場景間出奇地泛化,正是因為它們迴避了絕對尺度。度量單眼深度(ZoeDepth、Metric3D)較困難,通常需要相機內參或特定領域的訓練來錨定尺度。

現代的工具箱深厚且由學習驅動。早期方法是在 RGB-D 資料集上訓練的 CNN 編碼器—解碼器;隨著轉換器骨幹(DPT 使用 Vision Transformer)以及在巨量混合資料集上訓練,這個領域躍進。Depth Anything 把這個構想規模化,在數百萬張有標註與偽標註的影像上訓練,產生一個用於相對深度的穩健基礎模型。一條更新的路線把深度當成生成問題:像 Marigold 這類以擴散模型為基礎的估計器,把預訓練的影像擴散模型改用來「去噪」一張深度圖,繼承了強大的場景先驗,並能用極少的深度訓練資料產生銳利、細緻的結果。

單眼深度如今無所不在,因為它只需要一台普通相機:手機人像模式的背景模糊、AR 物件擺放、影像轉三維與新視角合成的流程、立體視覺不切實際的機器人應用,以及作為初始化或正規化 NeRF 與高斯潑濺重建的先驗。它的限制正是它的前提——沒有幾何證據,它在不熟悉的場景、反光或透明表面,以及任何違反所學大小與布局先驗的事物上,可能會自信地出錯。

尺度不確定性不是你能修補掉的臭蟲。若你需要從單張影像得到真實距離,就必須從外部注入尺度——已知的相機高度、一個已知尺寸的參考物體,或相機內參加上地平面假設。除非其尺度來源明確,否則把任何單眼度量深度都當成近似值看待。

又称
single-image depth estimation單目深度估計