點擊上方「計算機視覺life」,選擇「星標」
快速獲得最新乾貨
作者: 黃浴
https://zhuanlan.zhihu.com/p/73748124
本文已由作者授權,未經允許,不得二次轉載
多視角立體視覺(Multiple View Stereo,MVS)是對立體視覺的推廣,能夠在多個視角(從外向裡)觀察和獲取景物的圖像,並以此完成匹配和深度估計。某種意義上講,SLAM/SFM其實和MVS是類似的,只是前者是攝像頭運動,後者是多個攝像頭視角。也可以說,前者可以在環境裡面「穿行」,而後者更像在環境外「旁觀」。
如圖所示(a)-(d)是MVS方法的基本流程,不同的應用可能有各個主模塊的不同實現,但總體方法是類似的:
•收集圖像;
•針對每個圖像計算相機參數;
•從圖像集和相應的攝像機參數重建場景的3D幾何圖形;
•可選擇地重建場景的形狀和紋理顏色。
註:可以看出一些步驟和SLAM/SFM是類似的,算法也是互通可用。
儘管MVS與經典立體視覺算法具有相同的原理,但MVS算法旨在處理視角變化更多的圖像,例如圍繞目標拍攝的圖像集,並且還處理甚至數百萬數量的大量圖像。MVS問題的差異最終會產生與經典立體視覺相應功能明顯不同的算法。例如3D地圖的工業應用,一次處理數百公裡範圍內數百萬張照片,有效地重建大都市、國家乃至整個地球的場景。
與雙目立體視覺法的分類思路相似,根據區分主要算法的六個基本屬性對現有方法進行分類:場景表示,照片一致性(photo consistency)度量,可見性模型(visibility model),形狀先驗知識,重構算法以及初始化要求。
在初始化階段,除了是一組標定圖像之外,所有多視角立體視覺算法都假定或要求輸入被重建的目標或場景的幾何範圍信息。
場景表示可以是體素、多邊形網格、深度圖和水平度集(level sets),如圖是一些場景表示例子,即深度圖,點雲,體積標量場和網格。
圖像一致性度量分為場景空間和圖像空間兩種,前者將幾何點、面或體投影到圖像並評估投影之間的相互協調度,後者基於場景幾何估計變換(warp)來自一個視點的圖像預測不同視點的圖像然後計算預測圖像和測量圖像之間的預測誤差。下圖是兩個圖像像素一致性度量的例子,上面是紋理豐富,下面是紋理貧乏。
可見性模型(遮擋問題)確定在評估照片一致性度量時要考慮哪一個視角圖像。由於場景可見度隨視點變化,因此幾乎所有MVS算法都會以某種方式解決這種遮擋問題。可見性技術包括幾何、準幾何和基於出格點等三種方法:幾何法試圖明確模擬圖像形成過程和場景的形狀,以確定哪些場景結構在哪些圖像中是可見的;準幾何技術使用近似幾何推理來估計可見性關係;出格點法避免顯式幾何推理而是將遮擋視為出格點。下圖是可見性問題示意圖。
獨立的照片一致性測量並不足以恢復精確的幾何形狀,特別是在低紋理場景區域。因此考慮偏向重建具有期望特性的形狀先驗知識可能是有幫助的。雖然先驗知識對於立體視覺是必不可少的,但在多視圖立體視覺中起著不太重要的作用,因為來自多視圖的約束更強,比如表面積小的最小表面,以及體素著色(voxel coloring)和空間雕刻(space carving)方法採用的最大表面,還有可以放入馬爾可夫隨機場(MRF,Markov Random Field)的局部平滑性。
重建算法的劃分有四類:
• 第一類方法首先在3D體積計算成本函數,然後從該體積提取表面進行操作,如體素著色算法及其變型,單次掃描體積計算成本並在掃描中重建所有低於成本閾值的體素;
• 第二類技術通過減少或最小化成本函數來迭代演化一個表面,此類方法包括基於體素、水平度集和曲面網格等;
• 第三類方法在圖像空間計算一組深度圖;
• 最後一類方法提取並匹配一組特徵點然後曲面擬合重建的特徵點。
基於MRF的圖像一致性度量方法下面以基於MRF的圖像一致性度量方法為例介紹MVS的重建算法。
儘管可以使用強大的圖像一致性函數,但在具有挑戰性的場景中,一致性曲線的峰值可能與真實深度不對應。在嚴重遮擋的情況下,可能在大多數其他圖像不存在匹配。一種標準解決方案是假設在相鄰像素具有相似深度值的強制一致性,其中馬爾可夫隨機場(MRF)是用於該任務的非常流行且成功的模型。MRF深度圖公式可以被視為組合優化問題,其中輸入深度範圍被離散化為有限的深度值集。而問題是將標籤集的深度標籤kp分配給每個像素p,最小化以下成本函數:
第一個求和項對圖像的所有像素,而第二個求和項對所有相鄰像素對。相鄰像素通常通過4鄰域或8鄰域系統來定義。前者像素連接水平和垂直相鄰像素。後者另外相鄰的對角線像素也相互連接。4鄰域系統具有較少的交互條件且更便宜,但可能受到離散化畸變的影響更大。
單元能量(Unary Potentials)
單元標籤成本Φ(·)反映了圖像一致性信息,其中成本應與圖像一致性得分成反比,單元成本的確定義各不相同。但是,假設NCC是圖像一致性函數的測度,其得分保證在[-1,1]範圍內。那麼單元成本可以定義為以下截斷線性損失函數:
其中τu是截止閾值。當然,另一個任意的強大功能,例如Huber損失或Cauchy損失,可以代替使用。
成對交互能量(Pairwise Interaction Potentials)
成對成本強制空間正則化並被與相鄰像素的深度差成比例,使得相鄰像素具有相似的深度值。成對成本Ψ(·,·)的定義有所不同,下面是一個簡單的實現:作為一個截斷線性損失函數,避免過多地懲罰深度不連續性。
優化
上述MRF構造的重建問題通常是NP-hard問題,但是存在許多有效近似,特別是每對相鄰像素的成對成本滿足以下子模塊條件
對於這個子模塊函數,最流行的技術之一稱為alpha-expansion,它反覆解決最大流量最小切割(max-flow min- cut)算法以改進深度標籤的分配。
幸運的是,子模塊條件適用於許多標準成對項。更具體地說,作為距離度量,Ψ(α,α)應該是0,因為兩個標籤是相同的。然後,剩餘的條件變成三角不等式:
平滑的先驗知識通常被定義為距離度量,並且滿足該三角不等式。這種度量函數可以是線性、截斷線性或Cauchy損失函數。但是,二次型或Huber損失函數不是子模塊函數,因為二次函數不服從三角不等式。注意,與成對成本不同,單元能量沒有限制,可以任意設定。
從零開始學習三維視覺核心技術SLAM,掃描查看介紹,3天內無條件退款
早就是優勢,學習切忌單打獨鬥,這裡有教程資料、練習作業、答疑解惑等,優質學習圈幫你少走彎路,快速入門!
歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、算法競賽、圖像檢測分割、人臉人體、醫學影像、計算攝影、自動駕駛、綜合等微信群(以後會逐漸細分),請掃描下面微信號加群,備註:」暱稱+學校/公司+研究方向「,例如:」張三 + 上海交大 + 視覺SLAM「。請按照格式備註,否則不予通過。添加成功後會根據研究方向邀請進入相關微信群。請勿在群內發送廣告,否則會請出群,謝謝理解~
前段時間參加了個線下交流會(附SLAM入門視頻)
計算機視覺方向簡介 | 從全景圖恢復三維結構
計算機視覺方向簡介 | 陣列相機立體全景拼接
計算機視覺方向簡介 | 單目微運動生成深度圖
計算機視覺方向簡介 | 深度相機室內實時稠密三維重建
計算機視覺方向簡介 | 深度圖補全
計算機視覺方向簡介 | 人體骨骼關鍵點檢測綜述
計算機視覺方向簡介 | 人臉識別中的活體檢測算法綜述
計算機視覺方向簡介 | 目標檢測最新進展總結與展望
計算機視覺方向簡介 | 唇語識別技術
計算機視覺方向簡介 | 三維深度學習中的目標分類與語義分割
計算機視覺方向簡介 | 基於單目視覺的三維重建算法
計算機視覺方向簡介 | 用深度學習進行表格提取
計算機視覺方向簡介 | 立體匹配技術簡介
計算機視覺方向簡介 | 人臉表情識別
計算機視覺方向簡介 | 人臉顏值打分
計算機視覺方向簡介 | 深度學習自動構圖
計算機視覺方向簡介 | 基於RGB-D的3D目標檢測
計算機視覺方向簡介 | 人體姿態估計
計算機視覺方向簡介 | 三維重建技術概述
計算機視覺方向簡介 | 視覺慣性裡程計(VIO)
計算機視覺方向簡介 | 多目標跟蹤算法(附源碼)
計算機視覺方向簡介 | 基於自然語言的跨模態行人re-id的SOTA方法(上)
計算機視覺方向簡介 | 圖像拼接
目標檢測技術二十年綜述
最全綜述 | 醫學圖像處理
最全綜述 | 圖像分割算法
最全綜述 | 圖像目標檢測
綜述 | 視頻分割在移動端的算法進展
綜述 | 語義分割經典網絡及輕量化模型盤點
綜述 | 機器視覺表面缺陷檢測
Graph Neural Networks 綜述
關於GANs在醫學圖像領域應用的總結
計算機視覺中,目前有哪些經典的目標跟蹤算法?
雷射雷達深度補全
最新AI乾貨,我在看