版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、基于二維仿射變換的幾何一致性虛實融合增強(qiáng)現(xiàn)實(Augmented Reality, AR)1一直是三維顯示領(lǐng)域的研究熱點(diǎn),將計算機(jī)生成的虛擬對象與真實場景相結(jié)合,達(dá)到增強(qiáng)用戶視覺感觀的效果。AR廣泛地應(yīng)用于工業(yè)、軍事、醫(yī)療等領(lǐng)域2,近年來也經(jīng)常出現(xiàn)在春節(jié)聯(lián)歡晚會的節(jié)目中。AR技術(shù)在現(xiàn)代生活中扮演著越來越重要的角色,并且不斷改變著我們的日常生活。該技術(shù)的核心是虛實融合技術(shù)3,為了使虛實融合效果更加逼真,需要使虛擬對象與實際場景呈現(xiàn)一致的幾何效果。幾何一致性主要考慮的是場景中真實對象和虛擬對象的遮擋和幾何匹配,增強(qiáng)觀眾在視覺上的真實感。在AR領(lǐng)域中,解決幾何一致性虛實融合的方法主要分為輔助標(biāo)記法和
2、輔助設(shè)備法4。Guo等1采用雙通行方案,首先用平行相機(jī)實時跟蹤,并允許在掃描過程將重建結(jié)果更新并且可視化,然后根據(jù)攝像機(jī)姿態(tài)處理虛擬對象和真實場景模型之間的遮擋,將渲染結(jié)果與彩色圖像融合。Liang等5提出了一種為ARAS設(shè)計的裸手深度感知方法,它可以輸出操作員的手部和虛擬零件之間的正確遮擋。該方法包含一個懸掛在立足點(diǎn)上的深度攝像機(jī),由該攝像機(jī)提供了場景的俯視圖,并提出了一種基于深度攝像機(jī)的手部分割方法。Gne等6提出了一種無標(biāo)記的3D AR應(yīng)用程序,用于人體手臂周圍的虛擬物體試穿。上述這些方法都是在三維層面上處理模型和場景之間的遮擋和幾何匹配。本文提出了幾何一致性虛實融合算法,討論了真實場景
3、中的人體手臂是否正對攝像機(jī)拍攝的兩種情況。在手臂二維圖像上確定腕部的寬度和位置后,計算出虛擬腕表的位置、縮放和旋轉(zhuǎn)角度,最終通過差分渲染得到虛實融合的結(jié)果。為了使結(jié)果更加真實同時也考慮了光照一致性7。實驗證明在二維層面處理模型,可以更細(xì)致、精準(zhǔn)地確定虛擬物體與真實場景的幾何關(guān)系,使虛實融合結(jié)果更真實。2 虛實融合系統(tǒng)的構(gòu)成本文提出的虛實融合系統(tǒng)框圖如圖1所示。首先對場景進(jìn)行三維重建得到場景三維模型,對場景的三維模型進(jìn)行分割,分割出手臂區(qū)域并計算手腕的位置與寬度。然后,通過差分渲染8算法把虛擬物體插入到真實場景中,最后為了虛實融合結(jié)果的真實性,對場景進(jìn)行光照估計,構(gòu)建了幾何一致性和光照一致性統(tǒng)一
4、的虛實融合系統(tǒng)。圖1虛實融合系統(tǒng)框圖Fig.1System diagram of virtual-real fusion system3 關(guān)鍵算法3.1場景模型重建算法使用Kinect相機(jī)9拍攝場景得到場景的深度圖像和彩色圖像,采用KinectFusion10算法來重建三維場景。在導(dǎo)出重建的場景模型之后,通過蝴蝶細(xì)分算法11分割場景模型,將場景中的人體手臂部分分割出來。因為需要大量的點(diǎn)的坐標(biāo)數(shù)據(jù),所以將分割好的手臂模型表面的三角面片細(xì)分,增加其頂點(diǎn)數(shù)量,最后將所有的頂點(diǎn)坐標(biāo)輸出。3.2手腕位置與寬度計算3.2.1投影映射算法當(dāng)手臂正對攝像機(jī)時,手臂的三維模型坐標(biāo)系中z軸垂直于視覺平面。此時將模
5、型的所有xoy平面向z軸的方向投影,映射的結(jié)果就是手臂的二維圖像,如圖2所示。圖 2手臂二維圖像Fig.2Two-dimensional image of arm從圖2可以看出,手臂上的主方向是從手肘到手腕的方向,即水平方向。為了驗證結(jié)果的準(zhǔn)確性,計算了手臂二維圖像協(xié)方差的特征值,發(fā)現(xiàn)手臂二維圖像的水平特征值最大,因此得到的手臂二維圖像是準(zhǔn)確的。不難發(fā)現(xiàn)手臂二維圖像上因為一些點(diǎn)的缺失或者與其他點(diǎn)重疊,一些垂直列上的點(diǎn)很稀疏。在計算腕部位置與寬度時,這會導(dǎo)致錯誤。因此,刪除所有稀疏點(diǎn)的垂直列,獲得新的手臂二維圖像如圖3所示。圖3優(yōu)化后的手臂二維圖像Fig.3Optimized two-dimen
6、sional image of arm在圖3中,很容易找到手臂二維圖像每列的上邊緣和下邊緣上的點(diǎn)。上邊緣的點(diǎn)記為Yupper,下邊緣的點(diǎn)記為Ydown。因為這些點(diǎn)是離散的,上下點(diǎn)不嚴(yán)格匹配。因此,計算每列的長度為:L(x)=maxyupper(j)ydown(x)(1)其中:x=2,N1;j=i1,i,i+1,第i列的長度值是3條線的最大值。通過每一個下邊緣點(diǎn)與其對應(yīng)的3個上邊緣點(diǎn)之間的長度來計算腕部的長度。在獲得不同列的長度之后,最短的長度被視為手腕的長度,可通過以下公式得出:Loc=argminxL(x),x=2,N1(2)其中:Loc是計算得出的腕部寬度,相應(yīng)的x值可以確定哪根立柱是腕部
7、位置。3.2.2仿射變換算法手臂與攝像機(jī)成一定夾角,按照3.2.1的方法得到的手臂二維圖像如圖4所示。圖4不正對攝像機(jī)的手臂二維圖像Fig.4Two dimensional image of arm not facing camera由圖4可以看出,手臂的二維圖像不方便直接計算出手腕的位置與寬度,所以需要對手臂的二維圖像進(jìn)行仿射變換。仿射變換12是在幾何上定義為兩個向量空間之間的一個仿射變換或者仿射映射,由一個非奇異的線性變換13(運(yùn)用一次函數(shù)進(jìn)行的變換)并接上一個平移變換組成。這里使用仿射變換(或2D仿射變換),主要包括旋轉(zhuǎn)、平移和縮放等。該變換結(jié)果仍然保持二維圖像的平坦度,即直線上的點(diǎn)仍然
8、在直線上,點(diǎn)的位置順序保持不變,二維圖像的相對位置不變。任何仿射變換都可以表示為矩陣與向量的乘積,然后通過齊次坐標(biāo)將這兩部分結(jié)合起來,矩陣平移公式為:xy1=100010txty1xy1=x+txy+ty1(3)在上面的仿射矩陣中,1001是線性變換參數(shù),txty是平移參數(shù)。上面的操作是將(x,y)映射到(x,y)。然后假設(shè)矩陣旋轉(zhuǎn)角度為角,則坐標(biāo)的仿射矩陣為:xy1=cossin0sincos0001xy1=xcos+ysinxsin+ycos1(4)類似地,假設(shè)縮放因子為s,則坐標(biāo)的仿射矩陣為:xy1=ysx000sy0001xy1=xsxysy1(5)因此,需要根據(jù)上述算法優(yōu)化手臂的二維
9、圖像。求出圖4中手臂二維圖像上所有點(diǎn)的坐標(biāo),然后計算將其轉(zhuǎn)到面向相機(jī)的手臂二維圖像的旋轉(zhuǎn)角度。經(jīng)過計算可得旋轉(zhuǎn)角度為/3,旋轉(zhuǎn)后手臂的二維圖像如圖5所示。圖5旋轉(zhuǎn)后的手臂二維圖像Fig.5Two dimensional image of arm after rotating3.3坐標(biāo)系統(tǒng)一算法因為真實場景中物體的坐標(biāo)系和虛擬物體的坐標(biāo)系存在差異,所以坐標(biāo)系的統(tǒng)一有利于虛實融合。在手腕位置的中心點(diǎn)處建立了第一個坐標(biāo)系,同時在虛擬腕表的表盤處建立了第二個坐標(biāo)系,需要通過坐標(biāo)系的旋轉(zhuǎn)和平移將兩個坐標(biāo)系統(tǒng)一14。矩陣旋轉(zhuǎn)有3個,分別繞x軸旋轉(zhuǎn),繞y軸旋轉(zhuǎn),繞z軸旋轉(zhuǎn)。其中,繞x軸旋轉(zhuǎn)的旋轉(zhuǎn)矩陣為:Rx
10、()=1000cossin0sincos(6)其中為旋轉(zhuǎn)角度。同理,可以得到繞y軸旋轉(zhuǎn)和繞z軸旋轉(zhuǎn)的旋轉(zhuǎn)矩陣:Ry()=cos0sin010sin0cosRz()=cossin0sincos0001(7)如果有一個旋轉(zhuǎn)可以表示為依次繞著3個旋轉(zhuǎn)軸旋轉(zhuǎn)3個角度的組合,那這3個角度可以稱之為歐拉角,3個軸的旋轉(zhuǎn)次序不同,得到的結(jié)果也會不同。例如,常用的AR軟件Unity3D中歐拉角的旋轉(zhuǎn)順序就為ZYX,所以旋轉(zhuǎn)順序很重要。通過歐拉角旋轉(zhuǎn)將兩個坐標(biāo)系統(tǒng)一。由歐拉角求旋轉(zhuǎn)矩陣時,設(shè)3個軸的歐拉角分別為x,y,z。正弦值和余弦值分別為sx,cx,sy,cy,sz,cz,那么旋轉(zhuǎn)矩陣為:R(x,y,z)=
11、cyczcyszsyczsxsycxszcxcz+sxsyszcysysxsz+cxczsycxsyszczszcxcy(8)解上述旋轉(zhuǎn)矩陣可以逆向求得3個歐拉角,分別為:x=atan2(r32,r33)y=atan2(r31,r232+r233)z=atan2(r21,r11)(9)其中rij是旋轉(zhuǎn)矩陣中的元素值,i,j=1,2,3。由此就可以得到坐標(biāo)系3個坐標(biāo)軸各自的旋轉(zhuǎn)角度。3.4差分渲染算法為了自動地將虛擬物體與真實場景相融合,采用了差分渲染算法。3.4.1虛擬對象的插入為了在獲得的圖像中插入虛擬對象,實現(xiàn)場景的幾何一致性,在場景中放置一個虛擬對象,場景中的一些像素會被虛擬對象遮擋。虛
12、擬對象也會影響未被遮擋的像素,當(dāng)虛擬對象在場景中投射陰影時,插入對象周圍的局部區(qū)域?qū)⒆儼怠ebevec等18將該區(qū)域稱為“局部場景”,并使用微分方法渲染該區(qū)域。在給定的場景光照和相機(jī)參數(shù)下,對有合成對象和無合成對象的虛擬局部場景進(jìn)行渲染,得到圖像IO和IN。這兩個圖像之間的差異揭示了插入的對象對場景的影響。該改變被添加到原始圖像IF以生成合成圖像I:I=IF+(IOIN)(10)差分渲染要求在虛擬局部場景中渲染虛擬對象,并將虛擬局部場景與真實場景調(diào)成一致的像素。然而,因為虛擬局部場景的像素強(qiáng)度可能在每一個圖像之間發(fā)生變化。通過相機(jī)進(jìn)行自動曝光校正,虛擬局部場景的顏色強(qiáng)度會發(fā)生變化。所以插入虛
13、擬物體后,插入前后圖像的像素強(qiáng)度會不一致。為了克服這個問題,計算得到:IC=IF(SO/SN)(11)其中SO和SN分別是具有和不具有虛擬對象的渲染無紋理場景。它們的比率顯示插入虛擬對象導(dǎo)致的像素變暗程度。如果原始場景中的某個區(qū)域被插入的對象遮擋,便將它替換為虛擬對象中的像素。通過在相機(jī)坐標(biāo)系中比較場景像素和對象像素的深度來確定這些區(qū)域;如果插入的對象離攝像機(jī)較近,IO中的像素將復(fù)制到IC。由于攝像機(jī)的運(yùn)動,初始場景圖像可能會模糊。為了產(chǎn)生更具說服力的結(jié)果,虛擬對象也應(yīng)根據(jù)攝影機(jī)的移動進(jìn)行模糊。當(dāng)在時間t處合成圖像IC時,收集多個樣本,樣本時間t=tt其中t0,1,通過對樣本時間t處合成的圖像
14、進(jìn)行平均來獲得最終合成圖像Ic,t:IC,t=t(tt)(MtIO,t+(1Mt)IF,t(SO,t/SN,t)t(tt)(12)式中IO,t,SO,t和SN,t的定義與式(10)和式(11)中的IO,SO和SN相同。在樣本時間t進(jìn)行渲染并計算t處的相機(jī)姿態(tài)。IF,t是輸入圖像。Mt是一個值為1的二元掩膜,其中插入的對象在時間t和其他位置為0的地方開始遮擋原始場景。這可以反映出虛擬對象隨著場景的移動而移動,從而使整個場景更加連貫。3.4.2陰影檢測如果光源被其他對象阻擋,則投射的陰影可使其他陰影變形。如果能計算出有多少光線被遮擋,就能消除陰影。如果場景幾何體和照明可用,通過式(13)確定每個點(diǎn)
15、被遮擋的光線數(shù)量,即:S(x)=Li(x,wi)(win)V(x,wi)dwi(13)需要通過忽略可見性項V(V表示來自光源的光按照正常照射方向照向物體表面)來計算它在沒有遮擋的情況下接收的光線數(shù)量。忽略可見性項V后,式(13)變?yōu)椋篠(x)=Li(x,wi)(win)dwi(14)當(dāng)S(x)和S(x)分別測量到達(dá)x的光線是否有遮擋時,S(x)/S(x)表示光線在x處無遮擋的程度。為了去除陰影,將每個像素I(x)除以S(x)/S(x)的值以補(bǔ)償陰影。然而,該值可能不準(zhǔn)確,某些區(qū)域會被過度校正,而其他區(qū)域仍然太暗。為了克服這個問題,本文生成一個閾值為S(x)/S(x)的陰影遮罩,并使用掩膜區(qū)域中
16、的局部照明變化來調(diào)整其外觀。由于本方法中在插入對象和陰影檢測的同時也考慮了場景中的光照影響,所以在場景中對虛擬物體進(jìn)行了光照估計15-19。4 實驗結(jié)果4.1手腕位置與寬度確定采用式(2)來確定手腕位置和寬度,通過計算手臂二維圖像上每一列的上下邊緣點(diǎn)的差值來計算每一列的長度,得到的結(jié)果如圖6(a)所示,此時計算出的長度曲線圖很不規(guī)則,很難處理??紤]到手臂二維圖像上存在邊緣點(diǎn)缺失的問題,將每一個下邊緣點(diǎn)與它對應(yīng)的上邊緣點(diǎn)和其左右相鄰的兩個上邊緣點(diǎn)連線,計算3條線的長度,得到的結(jié)果中取最長的一條線作為這列的長度,最終的長度曲線如圖6(b)所示。圖6確定手腕位置與寬度實驗結(jié)果Fig.6Experim
17、ent result for determining wrist position and width由圖6可以看出,手腕的位置在橫坐標(biāo)(表示列數(shù))279處,寬度為對應(yīng)的縱坐標(biāo)66,用白線標(biāo)記出來,如圖7所示。圖7白線標(biāo)記手腕位置Fig.7Wrist position marked by white line4.2虛實融合通過3.3中坐標(biāo)系統(tǒng)一的算法將坐標(biāo)系旋轉(zhuǎn)的3個歐拉角計算出來,再通過差分渲染算法,結(jié)合計算出的虛擬物體旋轉(zhuǎn)角、位置坐標(biāo)和縮放將對象插入到真實場景中并進(jìn)行渲染20,虛擬腕表模型以及插入虛擬物體后場景的初步融合圖如圖8所示。圖8插入虛擬腕表模型融合Fig.8Fusion imag
18、e of virtual watch model on arm為了使融合結(jié)果更加真實,采用基于全局照明模型的光照估計算法17對場景加入了光照估計,結(jié)果如圖9所示。圖9虛實融合結(jié)果Fig.9Result of virtual-real fusion將計算得到的手腕寬度與實際手腕寬度比較,將虛擬腕表旋轉(zhuǎn)角度和位置點(diǎn)與實際的腕表旋轉(zhuǎn)角度和位置點(diǎn)比較,然后進(jìn)行誤差分析,結(jié)果如圖10和表1所示。把計算得到的手腕寬度與在手腕處4次測量得到的寬度相比較,可以看出計算得到的數(shù)據(jù)在誤差范圍內(nèi)。圖10手腕寬度計算誤差分析Fig.10Error analysis of wrist width calculation表1坐標(biāo)系旋轉(zhuǎn)角度和坐標(biāo)原點(diǎn)位置比較Tab.1Comparison of coordinate system rotation angle and coordinate origin location角度及位置實驗計算結(jié)果實際測量結(jié)果x軸旋轉(zhuǎn)角度-35-36.1y軸旋轉(zhuǎn)角度180178z軸旋轉(zhuǎn)角度5553.9坐標(biāo)系原點(diǎn)位置坐標(biāo)(136,136,136)(136.2,136.2,136.2)表1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版三角高炮合同
- 專項公共區(qū)域裝飾裝修工程承包協(xié)議2024一
- 2025年國際合同第六號生皮國際貿(mào)易稅務(wù)籌劃合同3篇
- 二零二五年度餐飲企業(yè)員工培訓(xùn)與職業(yè)發(fā)展規(guī)劃合同3篇
- 2024起重機(jī)安裝與運(yùn)輸安全保障服務(wù)合同3篇
- 2025年度柴油發(fā)電機(jī)組租賃與維修保養(yǎng)合同4篇
- 2024石材荒料電子商務(wù)平臺合作協(xié)議6篇
- 個性化商標(biāo)創(chuàng)作協(xié)議:2024版委托書版A版
- 2024版生鮮供應(yīng)合同范本
- 2024金融居間服務(wù)的終止與解除合同
- 上海紐約大學(xué)自主招生面試試題綜合素質(zhì)答案技巧
- 辦公家具項目實施方案、供貨方案
- 2022年物流服務(wù)師職業(yè)技能競賽理論題庫(含答案)
- ?;钒踩僮饕?guī)程
- 連鎖遺傳和遺傳作圖
- DB63∕T 1885-2020 青海省城鎮(zhèn)老舊小區(qū)綜合改造技術(shù)規(guī)程
- 高邊坡施工危險源辨識及分析
- 中海地產(chǎn)設(shè)計管理程序
- 簡譜視唱15942
- 《城鎮(zhèn)燃?xì)庠O(shè)施運(yùn)行、維護(hù)和搶修安全技術(shù)規(guī)程》(CJJ51-2006)
- 項目付款審核流程(visio流程圖)
評論
0/150
提交評論