鄭義桀,羅健欣,陳衛(wèi)衛(wèi),潘志松,張艷艷,孫海迅
(陸軍工程大學(xué) 指揮控制工程學(xué)院,江蘇 南京 210007)
數(shù)據(jù)集在深度學(xué)習(xí)模型的訓(xùn)練和測(cè)試中起著重要的作用,但現(xiàn)實(shí)世界的數(shù)據(jù)集制作需要耗費(fèi)大量時(shí)間和精力,深度學(xué)習(xí)多視角三維重建(Multi View Stereo,MVS)的數(shù)據(jù)集相比于二維圖像需要的信息更多,通常需要增加相機(jī)姿態(tài)和場(chǎng)景深度,制作也更為復(fù)雜。
當(dāng)前已有一些三維重建有關(guān)的數(shù)據(jù)集,主要來(lái)源于現(xiàn)實(shí)世界,但一些不包含相機(jī)標(biāo)定或深度信息,可作為深度學(xué)習(xí)MVS訓(xùn)練的數(shù)據(jù)集并不多,目前常用的主要有DTU[1]、ETH3D[2]和Tanks and Temples[3]等。這些數(shù)據(jù)集為獲取高精度3維場(chǎng)景圖像和3維點(diǎn)云,制作均有較高的硬件要求。例如,3種數(shù)據(jù)集均采用專業(yè)高清單反相機(jī)拍攝場(chǎng)景圖像;ETH3D和Tanks and Temples使用亞毫米級(jí)激光掃描儀獲取場(chǎng)景深度;DTU在一個(gè)6軸工業(yè)機(jī)器臂上安裝了一個(gè)相機(jī)和一個(gè)結(jié)構(gòu)光掃描儀,同時(shí)獲取圖像、深度圖和相機(jī)姿態(tài)。數(shù)據(jù)集制作也消耗大量人力和時(shí)間成本。例如,在Tanks and Temples制作中,每個(gè)場(chǎng)景必須進(jìn)行多次掃描才能密集覆蓋表面。簡(jiǎn)單的物體從4個(gè)位置掃描,如小雕像。中型結(jié)構(gòu)物體從8到10個(gè)位置進(jìn)行掃描,如火車;最大的室外場(chǎng)景從14個(gè)和17個(gè)位置進(jìn)行掃描,如宮殿和寺廟,尤其宮殿數(shù)據(jù)集的數(shù)據(jù)采集持續(xù)了兩天。且后期還需要進(jìn)行的點(diǎn)云對(duì)齊和優(yōu)化。
近年來(lái)計(jì)算機(jī)圖形學(xué)的發(fā)展使得虛擬圖像設(shè)計(jì)更加真實(shí)。各種渲染引擎的出現(xiàn),例如UE4,Unity3D和CryEngine,使得逼真的虛擬圖像的獲取更加方便可行。不需要過高配置的硬件和大量的人力、時(shí)間投入,使得虛擬數(shù)據(jù)集的研究愈加火熱,也產(chǎn)生了各種虛擬數(shù)據(jù)集,例如:用于自動(dòng)駕駛Virtual KITTI[4]、用于對(duì)象檢測(cè)ParallelEye[5]、用于語(yǔ)義分割SYNTHIA[6]等,大多取得了不錯(cuò)的效果。
大量研究證明了虛擬數(shù)據(jù)集的可行性,且制作了許多虛擬數(shù)據(jù)集,但當(dāng)前還沒有專門應(yīng)用于深度MVS的虛擬數(shù)據(jù)集。受上述研究啟發(fā),該文基于Unity3D提出了一種自動(dòng)生成三維多視角虛擬數(shù)據(jù)的方法,并制作了虛擬數(shù)據(jù)集Visual DTU,通過實(shí)驗(yàn)證明了該數(shù)據(jù)集的有效性。主要貢獻(xiàn)有:
(1)提出了一種使用虛擬世界仿真現(xiàn)實(shí)世界的方法。融合域適應(yīng)和域隨機(jī)方法,通過Unity3D引擎搭建虛擬三維場(chǎng)景,設(shè)置虛擬相機(jī),自動(dòng)控制虛擬相機(jī)位置和方向的變換以獲取三維多視角虛擬數(shù)據(jù),主要包括相機(jī)圖像、相機(jī)參數(shù)及場(chǎng)景深度圖。
(2)提供了基于Unity3D引擎制作的可用于深度MVS模型訓(xùn)練的虛擬數(shù)據(jù)集Visual DTU及詳細(xì)制作過程。該數(shù)據(jù)集包含了128組圖像,每組圖像包含了49個(gè)相機(jī)視角和7種光照強(qiáng)度變化,及每個(gè)相機(jī)視角的內(nèi)外參數(shù)和每個(gè)視角的深度圖。
(3)通過實(shí)驗(yàn)驗(yàn)證了Visual DTU的有效性,證明了使用虛擬引擎生成的高質(zhì)量相機(jī)圖像、場(chǎng)景深度圖和相機(jī)參數(shù)可用于深度學(xué)習(xí)多視角三維重建模型的訓(xùn)練,同時(shí)可大幅降低了數(shù)據(jù)集制作時(shí)間和成本。將該數(shù)據(jù)集應(yīng)用于當(dāng)前主流的幾種深度MVS模型,如:CVP-MVSNet[7]、M3VSNet[8]、PatchmatchNet[9]、JADCS-MS[10]等。證明其訓(xùn)練效果基本與真實(shí)數(shù)據(jù)集相當(dāng),并在增加訓(xùn)練樣本或混合真實(shí)數(shù)據(jù)集和虛擬數(shù)據(jù)集的情況下可進(jìn)一步提高模型性能。
Seitz等[11]提出的多視角數(shù)據(jù)集是最早的MVS評(píng)估數(shù)據(jù)集,它僅包含兩個(gè)具有低分辨率圖像和校準(zhǔn)相機(jī)的室內(nèi)物體。Strecha等[12]獲取建筑立面的真實(shí)模型,并為MVS評(píng)估提供高分辨率圖像和真實(shí)點(diǎn)云。為了評(píng)估不同光照條件下的算法性能,DTU數(shù)據(jù)集用固定的相機(jī)軌跡獲取了128個(gè)室內(nèi)小物體的圖像和點(diǎn)云。點(diǎn)云被進(jìn)一步三角化成網(wǎng)格模型,并被渲染成不同的視點(diǎn),以生成相機(jī)深度圖。當(dāng)前基于深度學(xué)習(xí)的MVS網(wǎng)絡(luò)通常使用DTU數(shù)據(jù)集進(jìn)行訓(xùn)練。Tanks and Temples使用高清攝像機(jī)和激光掃描儀獲取室內(nèi)外不同大小的物體和場(chǎng)景,然而,它們的訓(xùn)練集只包含7個(gè)具有真實(shí)點(diǎn)云的場(chǎng)景。ETH3D包含一個(gè)低分辨率集和一個(gè)高分辨率集,涵蓋了從自然場(chǎng)景到人造的室內(nèi)和室外環(huán)境不同的視角和場(chǎng)景類型,也是第一個(gè)涵蓋了手持移動(dòng)設(shè)備的重要使用情況,但是類似Tanks and Temples,ETH3D只為網(wǎng)絡(luò)訓(xùn)練提供了少量的真實(shí)數(shù)據(jù)。Yao等[13]為提高M(jìn)VS模型泛化性,制作了BlendedMVS數(shù)據(jù)集,其中包含了超過17 000張高分辨率圖像,涵蓋了各種場(chǎng)景,包括城市、建筑、雕塑和小型物體。
相比于真實(shí)數(shù)據(jù)集的高人力和財(cái)力需求,虛擬數(shù)據(jù)集制作更加簡(jiǎn)單高效,因此近年來(lái)使用虛擬數(shù)據(jù)集訓(xùn)練和測(cè)試深度神經(jīng)網(wǎng)絡(luò)的做法越來(lái)越流行。
當(dāng)前已有一些虛擬數(shù)據(jù)集,主要應(yīng)用于目標(biāo)檢測(cè)[14-17]、自動(dòng)駕駛[4,18]和語(yǔ)義分割[6,19-20]等方面,都取得了不錯(cuò)的效果。由于虛擬數(shù)據(jù)集與真實(shí)數(shù)據(jù)集之間存在域差,使得虛擬數(shù)據(jù)集訓(xùn)練的模型在真實(shí)數(shù)據(jù)集的測(cè)試不易取得很好的性能。為了提高模型訓(xùn)練效果,目前主要分為兩種方法:
一是域適應(yīng),即讓虛擬數(shù)據(jù)更接近真實(shí)數(shù)據(jù)。Nogues等[21]利用CycleGAN網(wǎng)絡(luò)對(duì)源域圖像進(jìn)行處理,使其與目標(biāo)域圖像外觀上更加接近,這樣使用風(fēng)格轉(zhuǎn)換之后的虛擬數(shù)據(jù)訓(xùn)練出的網(wǎng)絡(luò)可以在真實(shí)數(shù)據(jù)集上取得更好的性能。Chen等[22]利用梯度反轉(zhuǎn)層對(duì)Faster R-CNN中的圖像級(jí)特征和實(shí)例特征進(jìn)行對(duì)抗訓(xùn)練處理,使得兩個(gè)特征在源域和目標(biāo)域的差距盡可能小。Saito等[23]則通過對(duì)抗訓(xùn)練方法對(duì)全局特征進(jìn)行弱對(duì)齊,對(duì)局部特征進(jìn)行了強(qiáng)對(duì)齊,進(jìn)而實(shí)現(xiàn)Faster R-CNN的域適應(yīng)。
二是域隨機(jī)。域隨機(jī)[24]用一種相反的思路,不刻意追求虛擬數(shù)據(jù)的真實(shí)性,而是通過以非照片真實(shí)感的方式隨機(jī)擾動(dòng)環(huán)境,故意放棄照片真實(shí)感,迫使網(wǎng)絡(luò)學(xué)習(xí)關(guān)注圖像的基本特征。Tremblay等[25]提出了一個(gè)利用合成圖像訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)進(jìn)行目標(biāo)檢測(cè)的系統(tǒng)。為了處理真實(shí)世界數(shù)據(jù)中的可變性,系統(tǒng)依賴于域隨機(jī)技術(shù),其中模擬器的參數(shù)(如照明、姿勢(shì)、對(duì)象紋理等)以非真實(shí)方式隨機(jī)化。結(jié)果顯示域隨機(jī)不僅優(yōu)于更真實(shí)的照片級(jí)數(shù)據(jù)集,而且改善了僅使用真實(shí)數(shù)據(jù)獲得的結(jié)果。在車輛識(shí)別和狀態(tài)估計(jì)實(shí)驗(yàn)中[26],將強(qiáng)度響應(yīng)、模糊、噪聲三種因素隨機(jī)化引入到虛擬圖像中,通過特殊的場(chǎng)景車輛布置方法和豐富的背景圖片來(lái)保證虛擬圖片的豐富變化性,以2D包圍盒檢測(cè)作為實(shí)例驗(yàn)證虛擬數(shù)據(jù)集的性能,結(jié)果顯示該虛擬數(shù)據(jù)集相比其他虛擬數(shù)據(jù)集有著明顯優(yōu)勢(shì)。
在近幾年大部分著名的深度學(xué)習(xí)MVS研究中,均采用了DTU數(shù)據(jù)集進(jìn)行模型訓(xùn)練,因此該文參照DTU數(shù)據(jù)集設(shè)置虛擬世界場(chǎng)景并制作虛擬數(shù)據(jù)集Visual DTU。DTU數(shù)據(jù)集包含了128組場(chǎng)景,每組場(chǎng)景包含了49個(gè)相機(jī)視角及7個(gè)不同光照的343張圖像,以及對(duì)應(yīng)的相機(jī)參數(shù)和深度圖。
如圖1所示,首先通過Unity3D設(shè)置虛擬場(chǎng)景,而后控制相機(jī)視角,同步生成多視角相機(jī)圖像、相機(jī)深度圖和相機(jī)參數(shù)。再對(duì)生成的相機(jī)圖像進(jìn)行中心剪裁、深度圖格式轉(zhuǎn)換、相機(jī)參數(shù)的坐標(biāo)系轉(zhuǎn)換,最后組合成虛擬數(shù)據(jù)集Visual DTU。
圖1 Visual DTU生成流程
(1)
其中,R為旋轉(zhuǎn)矩陣,t為平移向量。
計(jì)算發(fā)現(xiàn)49個(gè)相機(jī)基本部署在同一球面上,因此可擬合出球心坐標(biāo),作為物體放置的位置。圖2展示了相機(jī)和物體位置關(guān)系。
圖2 虛擬場(chǎng)景中相機(jī)(球體)和物體(立方體)位置
Visual DTU共128組場(chǎng)景,使用已構(gòu)建好的人物、動(dòng)物、車輛、建筑、家具擺件等各類3D模型。在設(shè)置不同的場(chǎng)景時(shí),分別采用了域適應(yīng)和域隨機(jī)的方法。
為實(shí)現(xiàn)域適應(yīng),部分場(chǎng)景設(shè)置采用高分辨率高仿真性物體模型,以盡可能仿真真實(shí)世界,圖3展示了4組真實(shí)物體和虛擬物體的對(duì)比,每組圖像中,左側(cè)為真實(shí)物體,右側(cè)為虛擬物體。同時(shí)每個(gè)相機(jī)視角均采集7種不同光照強(qiáng)度和方向的圖像,以增強(qiáng)網(wǎng)絡(luò)模型對(duì)不同光照條件下的適應(yīng)性。圖4展示了不同光照下的場(chǎng)景設(shè)置。
圖3 真實(shí)物體與虛擬物體對(duì)比
圖4 不同光照強(qiáng)度和方向的場(chǎng)景設(shè)置
為實(shí)現(xiàn)域隨機(jī)效果,部分場(chǎng)景采用低分辨率低仿真性的簡(jiǎn)易物體模型,或采用非真實(shí)卡通造型,或在場(chǎng)景中隨機(jī)加入一些三維物體,或者隨機(jī)改變物體顏色,以強(qiáng)化網(wǎng)絡(luò)模型學(xué)習(xí)圖像的基本特征。同時(shí),采用域隨機(jī)的方式可以無(wú)限增加數(shù)據(jù)集,提高數(shù)據(jù)集生成速度。圖5展示了部分場(chǎng)景中的域隨機(jī)效果。
圖5 域隨機(jī)場(chǎng)景
該文通過控制虛擬世界中相機(jī)位置和方向,獲得三維多視角虛擬數(shù)據(jù),主要包括不同相機(jī)視角的圖像、相機(jī)參數(shù)和深度圖。圖像和深度圖的生成方法采用文獻(xiàn)[27]提供的函數(shù)“ImageSynthesis”,該函數(shù)通過相機(jī)掛載可直接生成任意尺寸的相機(jī)圖像(該文設(shè)置1 600×1 200尺寸)和以單通道灰度圖表示的深度圖(與相機(jī)圖像尺寸相同)。
相機(jī)外參矩陣可由C#庫(kù)函數(shù)“matrix.SetTRS”獲得,但有幾點(diǎn)區(qū)別:(1)該函數(shù)采用相機(jī)坐標(biāo)系轉(zhuǎn)換為世界坐標(biāo)系的外參矩陣,而深度MVS模型采用世界坐標(biāo)系轉(zhuǎn)換為相機(jī)坐標(biāo)系的外參矩陣;(2)Unity3D使用左手坐標(biāo)系,而深度MVS模型使用右手坐標(biāo)系;(3)Unity3D中使用米(m)作為長(zhǎng)度單位,而深度MVS模型使用毫米(mm)作為長(zhǎng)度單位。因此外參矩陣需要轉(zhuǎn)換。
原外參矩陣為:
(2)
轉(zhuǎn)換后的外參矩陣為:
(3)
其中:
(4)
(5)
(6)
相機(jī)內(nèi)參數(shù)需單獨(dú)設(shè)定,可直接在Unity3D中設(shè)置。內(nèi)參矩陣一般表示為:
(7)
其中,f代表相機(jī)焦距,單位毫米;1/dx代表x軸方向1毫米內(nèi)的像素個(gè)數(shù);1/dy代表y軸方向1毫米內(nèi)的像素個(gè)數(shù);(u0,v0)代表圖像原點(diǎn)位置。由于虛擬相機(jī)圖像和相機(jī)傳感器的寬和高可以直接設(shè)置,因此相機(jī)內(nèi)參矩陣可由公式(8)計(jì)算得出。
(8)
其中,Wpic和Hpic代表相機(jī)圖像的寬和高,單位像素;Wsen和Hsen代表相機(jī)傳感器的寬和高,單位毫米。
為能適用當(dāng)前大多數(shù)深度MVS模型的訓(xùn)練需要,按照文獻(xiàn)[28]中圖像的處理方法,將原始1 600×1 200尺寸的相機(jī)圖像降采樣為800×600尺寸的圖像,然后進(jìn)行中心裁剪得到640×512尺寸的圖像。與圖像大小變化相適應(yīng),相機(jī)外參數(shù)保持不變,內(nèi)參數(shù)減小1倍。
深度圖根據(jù)不同的深度MVS模型訓(xùn)練需求進(jìn)行相應(yīng)降采樣和剪裁,但初始深度圖是單通道灰度圖,每個(gè)像素點(diǎn)對(duì)應(yīng)1個(gè)0~255的灰度值,因此需要將其轉(zhuǎn)化為真實(shí)深度值。通過公式(9)可進(jìn)行灰度值與深度值的轉(zhuǎn)化。
(9)
其中,Vgrey為像素灰度值,far和near分別為相機(jī)的遠(yuǎn)、近剪裁平面的距離。為方便計(jì)算,該文設(shè)置為far=10,near=0.01。
將Visual DTU與當(dāng)前流行的幾種真實(shí)MVS數(shù)據(jù)集進(jìn)行對(duì)比,以驗(yàn)證Visual DTU的有效性。主要采用2個(gè)評(píng)價(jià)指標(biāo):一是數(shù)據(jù)集制作的時(shí)間和經(jīng)濟(jì)成本;二是采用不同數(shù)據(jù)集訓(xùn)練的MVS網(wǎng)絡(luò)模型的三維重建效果。三維重建效果采用DTU數(shù)據(jù)集提供方法評(píng)估。主要包括準(zhǔn)確性(Acc.)、完整性(Comp.)和總體性(Overall)。準(zhǔn)確性(Acc.)以重建的三維點(diǎn)云與真實(shí)物體點(diǎn)云的距離來(lái)衡量,表示重建的點(diǎn)的精度;完整性(Comp.)表示物體表面被重建的完整程度;總體性(Overall)是準(zhǔn)確性和完整性的平均值,是一個(gè)綜合的誤差指標(biāo)。3種指標(biāo)的值越小代表誤差越小。
然后,通過改變訓(xùn)練樣本數(shù)量、混合真實(shí)數(shù)據(jù)集和虛擬數(shù)據(jù)集的方式分析Visual DTU的使用規(guī)律,以達(dá)到最好的訓(xùn)練效果。
該文主要對(duì)比了Visual DTU與當(dāng)前流行的幾種真實(shí)數(shù)據(jù)集(ETH3D、Tanks and Temples、DTU)在數(shù)據(jù)采集過程中的經(jīng)濟(jì)和時(shí)間成本。結(jié)果如表1所示,其中價(jià)格是依據(jù)各數(shù)據(jù)集進(jìn)行數(shù)據(jù)采集所需的主要設(shè)備計(jì)算得來(lái),具體是參照該型號(hào)設(shè)備的當(dāng)前價(jià)格,對(duì)于原始論文中沒有說明設(shè)備型號(hào)的情況,則按照同類型設(shè)備的均價(jià)計(jì)算。
表1 數(shù)據(jù)集制作成本對(duì)比
從經(jīng)濟(jì)成本看,真實(shí)數(shù)據(jù)集所需設(shè)備成本都比較高。例如,ETH3D和Tanks and Temples所采用的如Focus3D X330激光掃描儀需花費(fèi)幾十萬(wàn),各種高清相機(jī)也需數(shù)萬(wàn)元。而且,該文并未將一些輔助設(shè)備列入。例如,DTU為了產(chǎn)生光照變化的場(chǎng)景而設(shè)置了16個(gè)LED燈,Tanks and Temples為了獲取更穩(wěn)定的圖像而使用相機(jī)云臺(tái)。而相比之下,制作Visual DTU僅需一臺(tái)普通的筆記本電腦(該文采用的是聯(lián)想Air15),可大幅度降低經(jīng)濟(jì)成本。
從時(shí)間成本看,真實(shí)數(shù)據(jù)集時(shí)間消耗普遍較大,尤其Tanks and Temples和ETH3D需采集室外大范圍場(chǎng)景數(shù)據(jù),而室外容易受到自然環(huán)境或人為運(yùn)動(dòng)的影響而出現(xiàn)采集失敗的情況。DTU主要是室內(nèi)小場(chǎng)景,通過機(jī)器臂完成視角轉(zhuǎn)換,速度相對(duì)較快。而Visual DTU完全由電腦自動(dòng)計(jì)算完成,不會(huì)受到外界的影響,可快速完成數(shù)據(jù)采集工作;時(shí)間消耗與場(chǎng)景類型無(wú)關(guān),且時(shí)間消耗將隨著主機(jī)性能的提高而降低。
使用當(dāng)前比較流行的幾種有監(jiān)督(CVP-MVSNet[7]、Patchmatchnet[9])和無(wú)監(jiān)督(M3VSNet[8]、JDACS-MS[10])深度MVS模型進(jìn)行對(duì)比實(shí)驗(yàn)。有監(jiān)督深度MVS模型訓(xùn)練需要輸入相機(jī)圖像、相機(jī)參數(shù)和場(chǎng)景深度圖,無(wú)監(jiān)督深度MVS模型訓(xùn)練僅需要輸入相機(jī)圖像和相機(jī)參數(shù),不需要輸入場(chǎng)景深度圖,因此在兩類模型上比較更具有一般性。實(shí)驗(yàn)均使用Pytorch實(shí)現(xiàn),在4個(gè)NVIDIA GTX 1080Ti GPU上進(jìn)行訓(xùn)練。和原模型訓(xùn)練方法相同,采用79組圖像作為訓(xùn)練集,除因主機(jī)內(nèi)存限制而降低個(gè)別模型訓(xùn)練的批大小外,其余各訓(xùn)練參數(shù)設(shè)置均與原模型相同。為方便對(duì)比,訓(xùn)練后的模型均采用DTU數(shù)據(jù)集中的22組圖像進(jìn)行測(cè)試。模型在深度估計(jì)后均重建了場(chǎng)景的三維點(diǎn)云。
表2 Visual DTU與DTU數(shù)據(jù)集訓(xùn)練效果對(duì)比
圖6 不同數(shù)據(jù)集重建效果對(duì)比
表2展示了測(cè)試結(jié)果,括號(hào)內(nèi)表示使用的數(shù)據(jù)集。從表中數(shù)據(jù)可以看出,采用虛擬數(shù)據(jù)集Visual DTU訓(xùn)練的模型的重建效果基本與采用真實(shí)數(shù)據(jù)集訓(xùn)練的模型相當(dāng),有監(jiān)督模型總體重建效果平均差距僅0.012 5 mm,無(wú)監(jiān)督模型總體重建效果平均差距僅0.014 5 mm。證明由Unity3D生成的相機(jī)圖像、場(chǎng)景深度圖和相機(jī)參數(shù)與實(shí)際比較相符,可以作為深度MVS模型的訓(xùn)練輸入,而該文制作的虛擬數(shù)據(jù)集Visual DTU一定程度上可代替真實(shí)數(shù)據(jù)集DTU用于模型的訓(xùn)練。圖6展示了各深度MVS模型采用不同數(shù)據(jù)集訓(xùn)練后重建的點(diǎn)云效果,直觀上可看出兩種數(shù)據(jù)集訓(xùn)練的模型重建效果基本相當(dāng),只在一些細(xì)微的地方有所差距。
上文證實(shí),當(dāng)采用相同數(shù)量的Visual DTU樣本進(jìn)行深度MVS網(wǎng)絡(luò)訓(xùn)練,基本可達(dá)到采用真實(shí)數(shù)據(jù)集DTU訓(xùn)練的效果,但還是有一些差距。因此,本節(jié)分析了增加訓(xùn)練樣本的情況下三維重建效果的變化。將Visual DTU訓(xùn)練的場(chǎng)景數(shù)量從80逐步增加至130,總體性誤差隨訓(xùn)練樣本數(shù)量變化如圖7所示。由圖7可以看出,訓(xùn)練樣本數(shù)量逐漸增加時(shí),總體性誤差承下降趨勢(shì),最終總體誤差能小于原先采用79個(gè)DTU場(chǎng)景訓(xùn)練的情況。由此可以看出,雖然虛擬數(shù)據(jù)集Visual DTU與真實(shí)數(shù)據(jù)集DTU還有一些差距,但可以通過增加訓(xùn)練樣本數(shù)量來(lái)彌補(bǔ)。但從總體誤差變化趨勢(shì)也能看出,增加訓(xùn)練樣本并不能無(wú)限降低誤差,誤差的決定因素還是深度MVS網(wǎng)絡(luò)的結(jié)構(gòu)設(shè)計(jì),僅通過增加訓(xùn)練樣本很難突破深度MVS網(wǎng)絡(luò)本身的不足。
圖7 重建效果隨樣本數(shù)量變化
本節(jié)研究了深度MVS模型在Visual DTU與DTU兩種數(shù)據(jù)集上共同訓(xùn)練的情況。分別采用3種混合訓(xùn)練方式:(a)兩數(shù)據(jù)集隨機(jī)混合成一個(gè)更大的整體,而后在這個(gè)更大的數(shù)據(jù)集上進(jìn)行訓(xùn)練;(b)先用DTU數(shù)據(jù)集訓(xùn)練,后用Visual DTU數(shù)據(jù)集訓(xùn)練;(c)先用Visual DTU數(shù)據(jù)集訓(xùn)練,后用DTU數(shù)據(jù)集訓(xùn)練。選用CVP-MVSNet進(jìn)行對(duì)比實(shí)驗(yàn)。訓(xùn)練時(shí),除第一種方式中訓(xùn)練樣本擴(kuò)大一倍意外,其余各參數(shù)設(shè)置均與3.2節(jié)相同。測(cè)試同樣采用DTU測(cè)試集的22組圖像,表3展示了僅用一種數(shù)據(jù)集訓(xùn)練和混合數(shù)據(jù)集訓(xùn)練的重建效果對(duì)比。
表3 混合數(shù)據(jù)集訓(xùn)練效果對(duì)比
從表3可以看出,3種混合訓(xùn)練方式的重建結(jié)果有很大區(qū)別。采用整體混合數(shù)據(jù)集訓(xùn)練的重建效果雖然精確性誤差比DTU數(shù)據(jù)集要低,完整性誤差比Visual DTU低,但總體性誤差要優(yōu)于僅采用一種數(shù)據(jù)集訓(xùn)練。先用Visual DTU數(shù)據(jù)集訓(xùn)練、后用DTU數(shù)據(jù)集訓(xùn)練的方式的重建效果最好,各個(gè)指標(biāo)均比僅使用Visual DTU訓(xùn)練的模型更好,整體性誤差比僅使用DTU數(shù)據(jù)集降低了4.27%,比僅使用Visual DTU降低了5.08%。但是,先用DTU數(shù)據(jù)集訓(xùn)練、后用Visual DTU數(shù)據(jù)集訓(xùn)練的方法的重建結(jié)果反而比僅使用一種數(shù)據(jù)集訓(xùn)練更差。分析主要原因,是由于測(cè)試采用的是真實(shí)數(shù)據(jù)集DTU,因此模型后期采用Visual DTU訓(xùn)練反而會(huì)使預(yù)測(cè)值與真實(shí)值增大偏差。由此可得出結(jié)論,先采用虛擬數(shù)據(jù)集預(yù)訓(xùn)練,后用真實(shí)數(shù)據(jù)集訓(xùn)練可以達(dá)到最好的模型訓(xùn)練效果。
基于Unity3D提出了一種虛擬世界仿真現(xiàn)實(shí)世界的方法,通過Unity3D引擎搭建虛擬場(chǎng)景,設(shè)置虛擬相機(jī),自動(dòng)同步生成三維多視角虛擬數(shù)據(jù),并制作了虛擬數(shù)據(jù)集Visual DTU。通過大量實(shí)驗(yàn)證明,虛擬引擎生成的高質(zhì)量相機(jī)圖像、場(chǎng)景深度圖和相機(jī)參數(shù)可用于深度MVS模型訓(xùn)練,且該方法可大幅度降低了數(shù)據(jù)集制作的成本和時(shí)間。證明了虛擬數(shù)據(jù)集Visual DTU基本可以代替真實(shí)數(shù)據(jù)集,并可通過增加樣本數(shù)量可彌補(bǔ)與真實(shí)數(shù)據(jù)集直接的差距。同時(shí),采用虛擬數(shù)據(jù)集預(yù)訓(xùn)練、后用真實(shí)數(shù)據(jù)集訓(xùn)練的方式可進(jìn)一步提高訓(xùn)練效果。
在未來(lái)的工作中,將進(jìn)一步研究數(shù)據(jù)集與深度MVS網(wǎng)絡(luò)性能的內(nèi)在關(guān)系,以達(dá)到可以通過設(shè)計(jì)特定的數(shù)據(jù)集來(lái)提高特定網(wǎng)絡(luò)的重建效果。并進(jìn)一步通過Unity3D設(shè)置更復(fù)雜的大場(chǎng)景或運(yùn)動(dòng)場(chǎng)景,提高深度MVS網(wǎng)絡(luò)的魯棒性和泛化性。