一種沉浸式虛擬現(xiàn)實(shí)維修與培訓(xùn)仿真系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于航天產(chǎn)品數(shù)字化設(shè)計(jì)與系統(tǒng)仿真領(lǐng)域,本發(fā)明涉及虛擬現(xiàn)實(shí)技術(shù)在虛 擬維修領(lǐng)域的應(yīng)用。
【背景技術(shù)】
[0002] 虛擬現(xiàn)實(shí)(Virtual Reality,簡(jiǎn)稱(chēng)VR)技術(shù)是計(jì)算機(jī)圖形學(xué)、人工智能、計(jì)算機(jī)網(wǎng) 絡(luò)、信息處理等技術(shù)綜合發(fā)展的產(chǎn)物。它利用計(jì)算機(jī)技術(shù)生成一種模擬環(huán)境,通過(guò)各種傳感 設(shè)備是用戶"投入"到模擬環(huán)境中,使用戶自然地與環(huán)境直接交互。虛擬現(xiàn)實(shí)是一種計(jì)算機(jī) 界面技術(shù)。從本質(zhì)上講,虛擬現(xiàn)實(shí)就是一種先進(jìn)的計(jì)算機(jī)用戶接口,它通過(guò)給用戶同時(shí)提供 諸如視覺(jué)、聽(tīng)覺(jué)、觸覺(jué)等各種直觀而又自然的實(shí)時(shí)交互手段,最大限度地方便用戶的操作, 從而減輕用戶的負(fù)擔(dān),提高整個(gè)系統(tǒng)的工作效率。
[0003] 利用虛擬現(xiàn)實(shí)環(huán)境開(kāi)展虛擬維修仿真已有了不少系統(tǒng),在汽車(chē)、飛機(jī)等領(lǐng)域開(kāi)展 了應(yīng)用。這些系統(tǒng)設(shè)計(jì)方案多種多樣,多面臨的問(wèn)題和解決的問(wèn)題也不盡相同。目前最常 用的維修仿真系統(tǒng)雖然基于三維模型開(kāi)展,但多是在計(jì)算機(jī)屏幕上顯示進(jìn)行,缺乏三維真 實(shí)的沉浸感,在擬真度方面表現(xiàn)不夠,無(wú)法真實(shí)有效地反映實(shí)際場(chǎng)景,營(yíng)造不出沉浸式的三 維虛擬環(huán)境,通用性較差。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的技術(shù)解決問(wèn)題的目的在于:本發(fā)明的技術(shù)解決問(wèn)題:克服現(xiàn)有技術(shù)的不 足,提供一種沉浸式的虛擬維修和虛擬培訓(xùn)系統(tǒng),能夠以直觀、立體的方式來(lái)呈現(xiàn)培訓(xùn)和訓(xùn) 練場(chǎng)景及內(nèi)容,達(dá)到參與者身臨其境的目的。
[0005] 本發(fā)明的技術(shù)解決方案是:
[0006] -種沉浸式虛擬現(xiàn)實(shí)維修與培訓(xùn)仿真系統(tǒng)包括:位置跟蹤子系統(tǒng)、三維模型數(shù)據(jù) 庫(kù)、節(jié)點(diǎn)管理子系統(tǒng)、節(jié)點(diǎn)渲染子系統(tǒng)、投影子系統(tǒng);
[0007] 三維模型數(shù)據(jù)庫(kù),存儲(chǔ)三維模型數(shù)據(jù),并將三維模型供節(jié)點(diǎn)管理子系統(tǒng)調(diào)用;
[0008] 位置跟蹤子系統(tǒng),獲取使用者的空間位置信息,并將該信息輸出到節(jié)點(diǎn)管理子系 統(tǒng);所述的空間位置信息包括使用者的頭部眼點(diǎn)位置和手部操作信息;
[0009] 節(jié)點(diǎn)管理子系統(tǒng),從三維模型數(shù)據(jù)庫(kù)中讀取三維模型,將三維模型傳遞給節(jié)點(diǎn)渲 染子系統(tǒng),并將位置跟蹤子系統(tǒng)提供的使用者的頭部眼點(diǎn)位置和手部操作信息,發(fā)送到節(jié) 點(diǎn)植染子系統(tǒng);
[0010] 節(jié)點(diǎn)渲染子系統(tǒng),在預(yù)設(shè)的顯示范圍內(nèi),將接收到的三維模型按照三維模型的左、 中、右、下四個(gè)部分進(jìn)行渲染,渲染后的圖像發(fā)送到投影子系統(tǒng)顯示,從而使使用者看到整 個(gè)虛擬的三維模型;節(jié)點(diǎn)渲染子系統(tǒng),根據(jù)接收到的使用者的頭部眼點(diǎn)位置和手部操作信 息,得到人眼視野范圍內(nèi)應(yīng)該顯示的圖像信息,將更新的圖像發(fā)送至投影子系統(tǒng);
[0011] 投影子系統(tǒng),接收節(jié)點(diǎn)渲染子系統(tǒng)發(fā)送的圖像信息,并進(jìn)行顯示,使使用者看到更 新后的三維模型圖像。
[0012] 位置跟蹤子系統(tǒng)包括位置處理主機(jī)、光學(xué)攝像機(jī)、跟蹤剛體目標(biāo);
[0013] 跟蹤剛體目標(biāo),固定在使用者的主要關(guān)節(jié)、頭部和眼睛附近;
[0014] 光學(xué)攝像機(jī)發(fā)射紅外光線,通過(guò)采集跟蹤剛體目標(biāo)反射的光線,將采集的數(shù)據(jù)傳 遞給位置處理主機(jī);
[0015] 位置處理主機(jī)接收到數(shù)據(jù)之后,通過(guò)位置跟蹤確定使用者的空間位置信息,并將 空間位置信息傳遞給節(jié)點(diǎn)管理子系統(tǒng);
[0016] 投影子系統(tǒng)包括四臺(tái)立體投影機(jī)和四個(gè)顯示屏幕;
[0017] 四個(gè)顯示屏幕分別呈現(xiàn)九十度,按照與使用者的位置,分別為左、中、右、下;四個(gè) 投影屏幕同時(shí)投影虛擬場(chǎng)景的一部分圖像,共同組成一個(gè)完整的虛擬環(huán)境。
[0018] 本發(fā)明與現(xiàn)有技術(shù)相比具有如下優(yōu)點(diǎn):
[0019] (1)本發(fā)明實(shí)現(xiàn)了一個(gè)沉浸式的立體三維虛擬環(huán)境,為使用者開(kāi)展虛擬培訓(xùn)和虛 擬維修提供了一個(gè)非常直觀的平臺(tái),有利于人員對(duì)操作、訓(xùn)練過(guò)程的理解,增強(qiáng)參與感,能 夠顯著地提高培訓(xùn)或訓(xùn)練效果,。
[0020] (2)本發(fā)明通過(guò)節(jié)點(diǎn)管理子系統(tǒng)與節(jié)點(diǎn)渲染子系統(tǒng)的協(xié)同工作,實(shí)現(xiàn)了三維立體 場(chǎng)景圖像的協(xié)同顯示,為形成沉浸式的虛擬場(chǎng)景提供了技術(shù)基礎(chǔ),設(shè)計(jì)巧妙,實(shí)現(xiàn)簡(jiǎn)單,通 用性較強(qiáng)。
[0021] (3)本發(fā)明通過(guò)位置跟蹤系統(tǒng)實(shí)現(xiàn)了對(duì)使用者頭部、手部位置的實(shí)時(shí)捕捉,進(jìn)一步 利用管理軟件對(duì)使用者位置信息的處理實(shí)現(xiàn)了三維圖像隨著使用者位置的不同和操作信 息而做出實(shí)時(shí)反饋,實(shí)現(xiàn)了人機(jī)交互,將使用者對(duì)虛擬現(xiàn)實(shí)場(chǎng)景的"漫游瀏覽"感受升級(jí)為 "互動(dòng)操作",提高了虛擬培訓(xùn)和訓(xùn)練的真實(shí)感和接受程度。
【附圖說(shuō)明】
[0022] 圖1為本發(fā)明的系統(tǒng)組成圖;
[0023] 圖2為本發(fā)明的位置跟蹤實(shí)現(xiàn)流程示意圖;
[0024] 圖3為本發(fā)明目標(biāo)點(diǎn)和定位點(diǎn)與攝像機(jī)位置坐標(biāo)原理圖;
[0025] 圖4為本發(fā)明的投影子系統(tǒng)結(jié)構(gòu)示意圖;
[0026] 圖5為本發(fā)明的投影子系統(tǒng)結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0027] 下面結(jié)合附圖對(duì)本發(fā)明【具體實(shí)施方式】做進(jìn)一步介紹。
[0028] 如圖1所示,本發(fā)明一種沉浸式虛擬現(xiàn)實(shí)維修與培訓(xùn)仿真系統(tǒng),包括位置跟蹤子 系統(tǒng)、三維模型數(shù)據(jù)庫(kù)、節(jié)點(diǎn)管理子系統(tǒng)、節(jié)點(diǎn)渲染子系統(tǒng)、投影子系統(tǒng);三維模型數(shù)據(jù)庫(kù), 主要存儲(chǔ)三維模型數(shù)據(jù),并將三維模型供節(jié)點(diǎn)管理子系統(tǒng)調(diào)用。為了滿足視覺(jué)的真實(shí)感和 快速顯示,三維模型采用三角面片形式,表面根據(jù)實(shí)際物體有金屬、復(fù)合材料等不同的表面 材質(zhì)。
[0029] 位置跟蹤子系統(tǒng),獲取使用者的空間位置信息,并將該信息輸出到節(jié)點(diǎn)管理子系 統(tǒng);所述的空間位置信息包括使用者的頭部眼點(diǎn)位置和手部操作信息;
[0030] 位置跟蹤子系統(tǒng)包括位置處理主機(jī)、光學(xué)攝像機(jī)、跟蹤剛體目標(biāo);
[0031] 跟蹤剛體目標(biāo),固定在使用者的主要關(guān)節(jié)、頭部和眼睛附近;用于標(biāo)示使用者手部 位置和頭部位置的跟蹤剛體目標(biāo)每一個(gè)都由兩部分組成,一部分為目標(biāo)點(diǎn),另一部分為定 位點(diǎn),定位點(diǎn)主要用來(lái)輔助確定目標(biāo)點(diǎn)的運(yùn)動(dòng)軌跡。
[0032] 光學(xué)攝像機(jī)發(fā)射紅外光線,通過(guò)采集跟蹤剛體目標(biāo)反射的光線,將采集的數(shù)據(jù)傳 遞給位置處理主機(jī);
[0033] 位置處理主機(jī)接收到數(shù)據(jù)之后,通過(guò)位置跟蹤確定使用者的空間位置信息,并將 空間位置信息傳遞給節(jié)點(diǎn)管理子系統(tǒng);
[0034] 如圖2、3所示,位置跟蹤的具體實(shí)現(xiàn)方式如下:
[0035] (1)確定各參考點(diǎn)位置;參考點(diǎn)為光學(xué)攝像機(jī)的空間位置,本實(shí)施例中在使用者 頭頂上方左前、左后、右前、右后四個(gè)位置各安裝一個(gè)光學(xué)攝像機(jī);
[0036] (2)獲取K時(shí)刻各參考點(diǎn)到目標(biāo)點(diǎn)和定位點(diǎn)瞬間距離;在初始時(shí)刻K,由光學(xué)攝 像機(jī)發(fā)出紅外光,定位點(diǎn)和目標(biāo)點(diǎn)反射光線,由光學(xué)攝像機(jī)接收,將信息傳遞回位置處理主 機(jī),主機(jī)計(jì)算得出各參考點(diǎn)到目標(biāo)點(diǎn)和定位點(diǎn)的瞬間距離;
[0037] (3)依據(jù)最大近似法獲取K時(shí)刻目標(biāo)點(diǎn)和定位點(diǎn)的空間坐標(biāo)值;具體方式如下:
[0038] 設(shè)三維空間的η (η彡4)個(gè)參考點(diǎn)的坐標(biāo)系為(X1, Y1, Z1)、(x2, y2, z2)、(x3, y3, Z3)… (xn, yn, zn),目標(biāo)點(diǎn)或定位點(diǎn)的坐標(biāo)X設(shè)為(X, y, z),點(diǎn)X到第1個(gè)、第2個(gè)、…、第η個(gè)參考 點(diǎn)的距離分別為屯、Cl1、…、屯,則根據(jù)空間兩點(diǎn)間距離公式有方程組:
[0040] 上式中,從第一個(gè)方程開(kāi)始分別減去最后一個(gè)方程并移項(xiàng),可得非齊次線性方程 組:
[0046] 則可得目標(biāo)點(diǎn)或定位點(diǎn)X的坐標(biāo)為:
[0047] 夕=(1/4) lYb (4)進(jìn)行時(shí)刻更新:K = K+i,i = i+t,t表示一個(gè)采樣間隔時(shí)間, 初始時(shí)刻i = 〇 ;
[0048] (5)在K時(shí)刻,依據(jù)最大近似法獲取K時(shí)刻目標(biāo)點(diǎn)和定位點(diǎn)的空間坐標(biāo)值;
[0049] (6)判斷步驟(5)得到的定位點(diǎn)位置相對(duì)于步驟(3)中得到的定位點(diǎn)位置是否 發(fā)生變化,若未發(fā)生變化,進(jìn)行步驟(7),若發(fā)生了變化,則認(rèn)為目標(biāo)點(diǎn)發(fā)生平移,進(jìn)入步驟 (10);
[0050] (7)判斷步驟(5)得到的目標(biāo)點(diǎn)位置相對(duì)于步驟(3)中得到的目標(biāo)點(diǎn)位置是否發(fā) 生變化,若未發(fā)生變化,則認(rèn)為目標(biāo)點(diǎn)未發(fā)生旋轉(zhuǎn)或平移,進(jìn)入步驟(12),若發(fā)生了變化,則 認(rèn)為目標(biāo)點(diǎn)繞定位矢量坐標(biāo)軸發(fā)生了旋轉(zhuǎn),進(jìn)入步驟(8);
[0051] (8)根據(jù)目標(biāo)點(diǎn)的位置和定位矢量坐標(biāo)軸,計(jì)算目標(biāo)點(diǎn)繞定位矢量坐標(biāo)軸旋轉(zhuǎn)的 角度;
[0052] (9)更新繞定位軸發(fā)生旋轉(zhuǎn)后的目標(biāo)點(diǎn)位置信息,進(jìn)入步驟(12);
[0053] 更新繞定位軸發(fā)生旋轉(zhuǎn)后的目標(biāo)點(diǎn)位置信息的具體方式如下:
[0054] 三維空間里一個(gè)點(diǎn)繞矢量旋轉(zhuǎn)后的新的點(diǎn)的坐標(biāo)
[0055] 在三維空間里一個(gè)點(diǎn)繞X軸Y軸Z軸旋