計(jì)算機(jī)視覺(jué)方向簡(jiǎn)介 | 多視角立體視覺(jué)MVS
點(diǎn)擊上方“小白學(xué)視覺(jué)”,選擇加"星標(biāo)"或“置頂”
重磅干貨,第一時(shí)間送達(dá)
知乎作者: 黃浴
多視角立體視覺(jué)(Multiple View Stereo,MVS)是對(duì)立體視覺(jué)的推廣,能夠在多個(gè)視角(從外向里)觀察和獲取景物的圖像,并以此完成匹配和深度估計(jì)。某種意義上講,SLAM/SFM其實(shí)和MVS是類似的,只是前者是攝像頭運(yùn)動(dòng),后者是多個(gè)攝像頭視角。也可以說(shuō),前者可以在環(huán)境里面“穿行”,而后者更像在環(huán)境外“旁觀”。
如圖所示(a)-(d)是MVS方法的基本流程,不同的應(yīng)用可能有各個(gè)主模塊的不同實(shí)現(xiàn),但總體方法是類似的:
?收集圖像;
?針對(duì)每個(gè)圖像計(jì)算相機(jī)參數(shù);
?從圖像集和相應(yīng)的攝像機(jī)參數(shù)重建場(chǎng)景的3D幾何圖形;
?可選擇地重建場(chǎng)景的形狀和紋理顏色。
注:可以看出一些步驟和SLAM/SFM是類似的,算法也是互通可用。




盡管MVS與經(jīng)典立體視覺(jué)算法具有相同的原理,但MVS算法旨在處理視角變化更多的圖像,例如圍繞目標(biāo)拍攝的圖像集,并且還處理甚至數(shù)百萬(wàn)數(shù)量的大量圖像。MVS問(wèn)題的差異最終會(huì)產(chǎn)生與經(jīng)典立體視覺(jué)相應(yīng)功能明顯不同的算法。例如3D地圖的工業(yè)應(yīng)用,一次處理數(shù)百公里范圍內(nèi)數(shù)百萬(wàn)張照片,有效地重建大都市、國(guó)家乃至整個(gè)地球的場(chǎng)景。
與雙目立體視覺(jué)法的分類思路相似,根據(jù)區(qū)分主要算法的六個(gè)基本屬性對(duì)現(xiàn)有方法進(jìn)行分類:場(chǎng)景表示,照片一致性(photo consistency)度量,可見(jiàn)性模型(visibility model),形狀先驗(yàn)知識(shí),重構(gòu)算法以及初始化要求。
在初始化階段,除了是一組標(biāo)定圖像之外,所有多視角立體視覺(jué)算法都假定或要求輸入被重建的目標(biāo)或場(chǎng)景的幾何范圍信息。
場(chǎng)景表示可以是體素、多邊形網(wǎng)格、深度圖和水平度集(level sets),如圖是一些場(chǎng)景表示例子,即深度圖,點(diǎn)云,體積標(biāo)量場(chǎng)和網(wǎng)格。

圖像一致性度量分為場(chǎng)景空間和圖像空間兩種,前者將幾何點(diǎn)、面或體投影到圖像并評(píng)估投影之間的相互協(xié)調(diào)度,后者基于場(chǎng)景幾何估計(jì)變換(warp)來(lái)自一個(gè)視點(diǎn)的圖像預(yù)測(cè)不同視點(diǎn)的圖像然后計(jì)算預(yù)測(cè)圖像和測(cè)量圖像之間的預(yù)測(cè)誤差。下圖是兩個(gè)圖像像素一致性度量的例子,上面是紋理豐富,下面是紋理貧乏。

可見(jiàn)性模型(遮擋問(wèn)題)確定在評(píng)估照片一致性度量時(shí)要考慮哪一個(gè)視角圖像。由于場(chǎng)景可見(jiàn)度隨視點(diǎn)變化,因此幾乎所有MVS算法都會(huì)以某種方式解決這種遮擋問(wèn)題。可見(jiàn)性技術(shù)包括幾何、準(zhǔn)幾何和基于出格點(diǎn)等三種方法:幾何法試圖明確模擬圖像形成過(guò)程和場(chǎng)景的形狀,以確定哪些場(chǎng)景結(jié)構(gòu)在哪些圖像中是可見(jiàn)的;準(zhǔn)幾何技術(shù)使用近似幾何推理來(lái)估計(jì)可見(jiàn)性關(guān)系;出格點(diǎn)法避免顯式幾何推理而是將遮擋視為出格點(diǎn)。下圖是可見(jiàn)性問(wèn)題示意圖。

獨(dú)立的照片一致性測(cè)量并不足以恢復(fù)精確的幾何形狀,特別是在低紋理場(chǎng)景區(qū)域。因此考慮偏向重建具有期望特性的形狀先驗(yàn)知識(shí)可能是有幫助的。雖然先驗(yàn)知識(shí)對(duì)于立體視覺(jué)是必不可少的,但在多視圖立體視覺(jué)中起著不太重要的作用,因?yàn)閬?lái)自多視圖的約束更強(qiáng),比如表面積小的最小表面,以及體素著色(voxel coloring)和空間雕刻(space carving)方法采用的最大表面,還有可以放入馬爾可夫隨機(jī)場(chǎng)(MRF,Markov Random Field)的局部平滑性。
重建算法的劃分有四類:
? 第一類方法首先在3D體積計(jì)算成本函數(shù),然后從該體積提取表面進(jìn)行操作,如體素著色算法及其變型,單次掃描體積計(jì)算成本并在掃描中重建所有低于成本閾值的體素;
? 第二類技術(shù)通過(guò)減少或最小化成本函數(shù)來(lái)迭代演化一個(gè)表面,此類方法包括基于體素、水平度集和曲面網(wǎng)格等;
? 第三類方法在圖像空間計(jì)算一組深度圖;
? 最后一類方法提取并匹配一組特征點(diǎn)然后曲面擬合重建的特征點(diǎn)。
基于MRF的圖像一致性度量方法
下面以基于MRF的圖像一致性度量方法為例介紹MVS的重建算法。
盡管可以使用強(qiáng)大的圖像一致性函數(shù),但在具有挑戰(zhàn)性的場(chǎng)景中,一致性曲線的峰值可能與真實(shí)深度不對(duì)應(yīng)。在嚴(yán)重遮擋的情況下,可能在大多數(shù)其他圖像不存在匹配。一種標(biāo)準(zhǔn)解決方案是假設(shè)在相鄰像素具有相似深度值的強(qiáng)制一致性,其中馬爾可夫隨機(jī)場(chǎng)(MRF)是用于該任務(wù)的非常流行且成功的模型。MRF深度圖公式可以被視為組合優(yōu)化問(wèn)題,其中輸入深度范圍被離散化為有限的深度值集。而問(wèn)題是將標(biāo)簽集的深度標(biāo)簽kp分配給每個(gè)像素p,最小化以下成本函數(shù):

第一個(gè)求和項(xiàng)對(duì)圖像的所有像素,而第二個(gè)求和項(xiàng)對(duì)所有相鄰像素對(duì)。相鄰像素通常通過(guò)4鄰域或8鄰域系統(tǒng)來(lái)定義。前者像素連接水平和垂直相鄰像素。后者另外相鄰的對(duì)角線像素也相互連接。4鄰域系統(tǒng)具有較少的交互條件且更便宜,但可能受到離散化畸變的影響更大。
單元能量(Unary Potentials)
單元標(biāo)簽成本Φ(·)反映了圖像一致性信息,其中成本應(yīng)與圖像一致性得分成反比,單元成本的確定義各不相同。但是,假設(shè)NCC是圖像一致性函數(shù)的測(cè)度,其得分保證在[-1,1]范圍內(nèi)。那么單元成本可以定義為以下截?cái)嗑€性損失函數(shù):

其中τu是截止閾值。當(dāng)然,另一個(gè)任意的強(qiáng)大功能,例如Huber損失或Cauchy損失,可以代替使用。
成對(duì)交互能量(Pairwise Interaction Potentials)
成對(duì)成本強(qiáng)制空間正則化并被與相鄰像素的深度差成比例,使得相鄰像素具有相似的深度值。成對(duì)成本Ψ(·,·)的定義有所不同,下面是一個(gè)簡(jiǎn)單的實(shí)現(xiàn):作為一個(gè)截?cái)嗑€性損失函數(shù),避免過(guò)多地懲罰深度不連續(xù)性。

優(yōu)化
上述MRF構(gòu)造的重建問(wèn)題通常是NP-hard問(wèn)題,但是存在許多有效近似,特別是每對(duì)相鄰像素的成對(duì)成本滿足以下子模塊條件

對(duì)于這個(gè)子模塊函數(shù),最流行的技術(shù)之一稱為alpha-expansion,它反復(fù)解決最大流量最小切割(max-flow min- cut)算法以改進(jìn)深度標(biāo)簽的分配。
幸運(yùn)的是,子模塊條件適用于許多標(biāo)準(zhǔn)成對(duì)項(xiàng)。更具體地說(shuō),作為距離度量,Ψ(α,α)應(yīng)該是0,因?yàn)閮蓚€(gè)標(biāo)簽是相同的。然后,剩余的條件變成三角不等式:

平滑的先驗(yàn)知識(shí)通常被定義為距離度量,并且滿足該三角不等式。這種度量函數(shù)可以是線性、截?cái)嗑€性或Cauchy損失函數(shù)。但是,二次型或Huber損失函數(shù)不是子模塊函數(shù),因?yàn)槎魏瘮?shù)不服從三角不等式。注意,與成對(duì)成本不同,單元能量沒(méi)有限制,可以任意設(shè)定。
好消息,小白學(xué)視覺(jué)團(tuán)隊(duì)的知識(shí)星球開(kāi)通啦,為了感謝大家的支持與厚愛(ài),團(tuán)隊(duì)決定將價(jià)值149元的知識(shí)星球現(xiàn)時(shí)免費(fèi)加入。各位小伙伴們要抓住機(jī)會(huì)哦!

交流群
歡迎加入公眾號(hào)讀者群一起和同行交流,目前有SLAM、三維視覺(jué)、傳感器、自動(dòng)駕駛、計(jì)算攝影、檢測(cè)、分割、識(shí)別、醫(yī)學(xué)影像、GAN、算法競(jìng)賽等微信群(以后會(huì)逐漸細(xì)分),請(qǐng)掃描下面微信號(hào)加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺(jué)SLAM“。請(qǐng)按照格式備注,否則不予通過(guò)。添加成功后會(huì)根據(jù)研究方向邀請(qǐng)進(jìn)入相關(guān)微信群。請(qǐng)勿在群內(nèi)發(fā)送廣告,否則會(huì)請(qǐng)出群,謝謝理解~

