基于消費級攝像頭的魯棒實時三維重建方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及基于消費級攝像頭的魯棒實時三維重建方法。
【背景技術(shù)】
[0002] 隨著手機,數(shù)碼相機的普及,獲取高質(zhì)量的圖像越來越便捷,一個迫切的需求是利 用這些圖片數(shù)據(jù)重建我們所生活的三維世界,包括:物體、場景甚至整個環(huán)境。已有的基于 圖像的三維重建方法,所采用的工業(yè)相機設(shè)備價格昂貴,且計算成本較高,對于一個小場景 的重建一般需要一臺高性能計算機幾個小時的處理時間。然而,傳感器噪聲,遮擋和光照變 化經(jīng)常導(dǎo)致三維重建任務(wù)失敗,這些問題僅通過觀察圖像往往難以預(yù)測。由于這些問題,花 費幾個小時重建的模型往往是不精確的,不完整的,且包含瑕疵。在很多場合,幾乎不可能 重新返回待重建場景重新捕獲圖像數(shù)據(jù)。即便可以對待重建場景反復(fù)的拍攝和重建,造成 的計算負(fù)擔(dān)和工作量仍然是巨大的。因此,期望有一個重建方法能夠在拍攝過程中就實時 的反饋重建結(jié)果的質(zhì)量,并幫助用戶評估重建質(zhì)量,規(guī)劃可提高重建精度和完整度的相機 移動軌跡。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明是要解決現(xiàn)有方法計算成本高,重建的模型不精確并且不完整的問題,而 提供了基于消費級攝像頭的魯棒實時三維重建方法。
[0004] 基于消費級攝像頭的魯棒實時三維重建方法,按以下步驟實現(xiàn):
[0005] -、在攝像頭移動的過程中,基于攝像頭當(dāng)前的視頻幀作為輸入,估計每一視頻幀 在場景坐標(biāo)系下的相機姿態(tài):
[0006] 二、在視頻幀中選擇最佳的關(guān)鍵幀用于深度估計;
[0007] 三、采用快速魯棒的深度估計算法估計每一視頻幀的深度信息得到每一視頻幀的 深度圖:
[0008] 四、將每一視頻幀的深度圖轉(zhuǎn)化為截斷符號距離場,并在體素上增量的融合,最后 輸出三角網(wǎng)格表面,即完成了基于消費級攝像頭的魯棒實時三維重建方法。
[0009] 發(fā)明效果:
[0010] 本發(fā)明技術(shù)方案提出一個實時、低成本的三維重建方法,可以實時地且高質(zhì)量地 重建并可視化真實場景。如圖1所示,提出的方法使用低成本消費級攝像頭的視頻作為輸 入,如網(wǎng)絡(luò)攝像頭或是手機攝像頭。由于這些消費級攝像頭廣泛用于日常生活,方法實際上 可允許重建相當(dāng)廣泛的場景。三維重建的模型可以直接用于增強現(xiàn)實,3D打印,計算機游戲 等應(yīng)用,如圖2。在實驗中,使用一枚視頻分辨率為640 X 360的網(wǎng)絡(luò)攝像頭,幀率為30Hz。算 法在一臺配置為CPU i7,32G RAM,顯卡NVIDIATitian black,6G顯存的臺式電腦上運行。深 度融合中體素的解析度為256 X 256 X 256。算法平均運行速度是每秒5幀。研究內(nèi)容主要包 括了視頻幀相機姿態(tài)的實時估計,基于置信度的魯棒深度估計算,以及基于GPU的深度融 合。雖然基于消費級攝像頭的實時三維重建非常有價值,提出的方法需要解決幾個挑戰(zhàn)問 題:首先,相機在每一個視頻幀中的姿態(tài)是未知的;第二,消費級相機的成像質(zhì)量比工業(yè)級 相機要低很多;第三,弱紋理或無紋理區(qū)域廣泛存在,這些區(qū)域的三維重建的質(zhì)量和可靠性 較差,比如人臉重建。本發(fā)明有效解決上述難題。
[0011] (1)通過隨機策略初始化深度搜索范圍,深度估計算法具有尺度可擴展性;
[0012] (2)提出的深度估計算法對于弱紋理區(qū)域比較魯棒。算法為每一個深度估計一個 置信度值,并基于高置信度區(qū)域構(gòu)建一個分段線性模型用于預(yù)測弱紋理區(qū)域的深度。
[0013] (3)大多數(shù)重建方法使用稀疏采樣的關(guān)鍵幀進(jìn)行重建,提出的專利使用視頻的每 一幀進(jìn)行模型的估計,充分的利用了視頻圖像的冗余信息,能夠生成更稠密的重建,以及處 理遮擋問題。
[0014] (4)在深度融合階段,我們采用了基于GPU和體網(wǎng)格的融合,可以高效的抑制噪聲 并重建復(fù)雜的場景結(jié)構(gòu)。通過對體數(shù)據(jù)進(jìn)行可視化,可以實時可視化重建過程。
【附圖說明】
[0015] 圖1是提出的實時三維重建方法的概述圖;
[0016]圖2是提出的重建方法在3D打印上的應(yīng)用實例圖;
[0017]圖3是提出的單目相機三維重建的算法流程圖;
[0018]圖4是深度傳播示意圖;
[0019]圖5是基于置信度的深度調(diào)整;
[0020]圖6是截斷符號距離場的圖示;
[0021]圖7單目實時三維重建方法對靜態(tài)場景三維重建結(jié)果圖;其中,第一列和第三列是 輸入的視頻的某一幀,第二列和第四列是可視化的三維重建結(jié)果;
[0022]圖8是提出的單目相機三維重建方法對人臉的重建結(jié)果以及與LSD-SLAM算法的對 比圖;其中,第一行,從左到右:輸入視頻的一幀,基于圖像間直接匹配的LSD-SLAM算法估計 的深度圖,基于隨機初始化和成本傳播生成的深度圖,以及使用置信度調(diào)整后的深度圖; [0023]第二行,從左到右:基于圖像間直接匹配的LSD-SLAM的稀疏點云重建結(jié)果,不使用 基于置信度的深度調(diào)整的稠密重建結(jié)果,使用所提出的基于置信度的深度調(diào)整的稠密重建 結(jié)果;
[0024]圖9是提出的單目相機三維重建方法對人臉的重建結(jié)果以及與LSD-SLAM算法的對 比圖;其中,第一行,從左到右:輸入視頻的一幀,基于圖像間直接匹配的LSD-SLAM算法估計 的深度圖,基于隨機初始化和成本傳播生成的深度圖,以及使用置信度調(diào)整后的深度圖; [0025]第二行,從左到右:基于圖像間直接匹配的LSD-SLAM的稀疏點云重建結(jié)果,不使用 基于置信度的深度調(diào)整的稠密重建結(jié)果,使用所提出的基于置信度的深度調(diào)整的稠密重建 結(jié)果;
[0026]圖10是提出的單目相機三維重建方法對人臉的重建結(jié)果以及與LSD-SLAM算法的 對比圖;第一行,從左到右:輸入視頻的一幀,基于圖像間直接匹配的LSD-SLAM算法估計的 深度圖,基于隨機初始化和成本傳播生成的深度圖,以及使用置信度調(diào)整后的深度圖; [0027]第二行,從左到右:基于圖像間直接匹配的LSD-SLAM的稀疏點云重建結(jié)果,不使用 基于置信度的深度調(diào)整的稠密重建結(jié)果,使用所提出的基于置信度的深度調(diào)整的稠密重建 結(jié)果。
【具體實施方式】
【具體實施方式】 [0028] 一:結(jié)合圖1~圖10說明本實施方式,本實施方式的基于消費級攝像 頭的魯棒實時三維重建方法,按以下步驟實現(xiàn):
[0029] -、在攝像頭移動的過程中,基于攝像頭當(dāng)前的視頻幀作為輸入,估計每一視頻幀 在場景坐標(biāo)系下的相機姿態(tài):
[0030] 二、在視頻幀中選擇最佳的關(guān)鍵幀用于深度估計;
[0031] 三、采用快速魯棒的深度估計算法估計每一視頻幀的深度信息得到每一視頻幀的 深度圖:
[0032] 四、將每一視頻幀的深度圖轉(zhuǎn)化為截斷符號距離場,并在體素上增量的融合,最終 初始三角網(wǎng)格表面,即完成了基于消費級攝像頭的魯棒實時三維重建方法。
[0033]【具體實施方式】二:本實施方式與【具體實施方式】一不同的是:所述步驟一具體為:
[0034] (a)構(gòu)建一組關(guān)鍵幀集合:
[0035]在攝像頭移動的過程中,依據(jù)時間距離和空間距離閾值從視頻幀中選取關(guān)鍵幀k, 每一個關(guān)鍵幀對應(yīng)一個估計的相機姿態(tài),所有關(guān)鍵幀構(gòu)成關(guān)鍵幀集合戈?
[0036] (b)構(gòu)建三維圖#:
[0037] 三維圖I中包含點云數(shù)據(jù)(Ρ!,P」…P,…P .々·),其中pi為點云數(shù)據(jù)中的某一三 維點,|灰|