两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種增強(qiáng)現(xiàn)實(shí)交互方法及系統(tǒng)與流程

文檔序號:12595047閱讀:727來源:國知局
一種增強(qiáng)現(xiàn)實(shí)交互方法及系統(tǒng)與流程

本發(fā)明涉及增強(qiáng)現(xiàn)實(shí)技術(shù)領(lǐng)域,尤其涉及一種增強(qiáng)現(xiàn)實(shí)交互方法及系統(tǒng)。



背景技術(shù):

增強(qiáng)現(xiàn)實(shí)技術(shù)將虛擬世界疊加到現(xiàn)實(shí)世界中,被人類感官所感知,從而達(dá)到超越現(xiàn)實(shí)的感官體驗(yàn)。人與增強(qiáng)現(xiàn)實(shí)的交互是增強(qiáng)現(xiàn)實(shí)技術(shù)里的重要組成部分,目前增強(qiáng)現(xiàn)實(shí)中應(yīng)用的交互基本是通過識別、觸控、聲控和傳感等比較復(fù)雜的方式。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明所要解決的技術(shù)問題是提供一種基于三維空間坐標(biāo)的增強(qiáng)現(xiàn)實(shí)交互方法及系統(tǒng)。

本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:

一種增強(qiáng)現(xiàn)實(shí)交互方法,適用于現(xiàn)實(shí)設(shè)備和所述現(xiàn)實(shí)設(shè)備通過AR技術(shù)得到的虛擬設(shè)備,所述增強(qiáng)現(xiàn)實(shí)交互方法包括:

S1:在Unity中建立三維場景,將Unity中的坐標(biāo)系作為AR空間坐標(biāo)系,將現(xiàn)實(shí)場景的中心點(diǎn)作為AR空間坐標(biāo)系的原點(diǎn),將所述現(xiàn)實(shí)設(shè)備作為AR空間坐標(biāo)系中的一點(diǎn);

S2:通過Unity中的transform組件實(shí)時(shí)獲取所述現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo);

S3:根據(jù)所述現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo),計(jì)算所述現(xiàn)實(shí)設(shè)備的移動(dòng)方向和移動(dòng)速度;

S4:根據(jù)所述現(xiàn)實(shí)設(shè)備的所述移動(dòng)方向和所述移動(dòng)速度,控制所述虛擬設(shè)備進(jìn)行與所述現(xiàn)實(shí)設(shè)備同步的運(yùn)動(dòng)。

本發(fā)明的有益效果是:本技術(shù)方案在增強(qiáng)現(xiàn)實(shí)應(yīng)用識別現(xiàn)實(shí)環(huán)境后建立識別設(shè)備(智能手機(jī)、AR眼鏡)、現(xiàn)實(shí)環(huán)境、虛擬場景對應(yīng)的三維坐標(biāo)關(guān)系,在移動(dòng)設(shè)備的過程中,通過實(shí)時(shí)計(jì)算設(shè)備在這個(gè)坐標(biāo)系中的位置、移動(dòng)方向、移動(dòng)速度信息,來觸發(fā)虛擬場景進(jìn)行合理的響應(yīng),從而達(dá)到虛擬場景和現(xiàn)實(shí)世界中持設(shè)備移動(dòng)的人保持一致行為的互動(dòng)效果。

在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。

優(yōu)選地,所述步驟S3中,根據(jù)所述現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo),計(jì)算所述現(xiàn)實(shí)設(shè)備的移動(dòng)方向,具體包括:

A1:獲取所述現(xiàn)實(shí)設(shè)備的第一預(yù)設(shè)幀數(shù)的AR空間坐標(biāo);

A2:將所述第一預(yù)設(shè)幀數(shù)的AR空間坐標(biāo)轉(zhuǎn)換為相應(yīng)的空間向量;

A3:通過Unity的Vector3組件和所述空間向量,計(jì)算所述現(xiàn)實(shí)設(shè)備的運(yùn)動(dòng)向量,得到所述移動(dòng)方向。

優(yōu)選地,所述步驟S3中,根據(jù)所述現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo),計(jì)算所述現(xiàn)實(shí)設(shè)備的移動(dòng)速度,具體包括:

B1:獲取所述現(xiàn)實(shí)設(shè)備的第二預(yù)設(shè)幀數(shù)的AR空間坐標(biāo);

B2:通過Unity的Vector3組件計(jì)算每相鄰兩幀返回的所述現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo)的間距;

B3:通過加權(quán)平均法對所述間距進(jìn)行加權(quán)平均,得到所述移動(dòng)速度。

一種增強(qiáng)現(xiàn)實(shí)交互系統(tǒng),適用于現(xiàn)實(shí)設(shè)備和所述現(xiàn)實(shí)設(shè)備通過AR技術(shù)得到的虛擬設(shè)備,所述增強(qiáng)現(xiàn)實(shí)交互系統(tǒng)包括:

建立模塊,用于在Unity中建立三維場景,將Unity中的坐標(biāo)系作為AR空間坐標(biāo)系,將現(xiàn)實(shí)場景的中心點(diǎn)作為AR空間坐標(biāo)系的原點(diǎn),將所述現(xiàn)實(shí)設(shè)備作為AR空間坐標(biāo)系中的一點(diǎn);

獲取模塊,用于通過Unity中的transform組件實(shí)時(shí)獲取所述現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo);

計(jì)算模塊,用于根據(jù)所述現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo),計(jì)算所述現(xiàn)實(shí)設(shè)備的移動(dòng)方向和移動(dòng)速度;

控制模塊,用于根據(jù)所述現(xiàn)實(shí)設(shè)備的所述移動(dòng)方向和所述移動(dòng)速度,控制所述虛擬設(shè)備進(jìn)行與所述現(xiàn)實(shí)設(shè)備同步的運(yùn)動(dòng);

其中,所述建立模塊、所述獲取模塊、所述計(jì)算模塊和所述控制模塊依次連接。

優(yōu)選地,所述計(jì)算模塊包括:

第一獲取子模塊,用于獲取所述現(xiàn)實(shí)設(shè)備的第一預(yù)設(shè)幀數(shù)的AR空間坐標(biāo);

轉(zhuǎn)換子模塊,用于將所述第一預(yù)設(shè)幀數(shù)的AR空間坐標(biāo)轉(zhuǎn)換為相應(yīng)的空間向量;

第一計(jì)算子模塊,用于通過Unity的Vector3組件和所述空間向量,計(jì)算所述現(xiàn)實(shí)設(shè)備的運(yùn)動(dòng)向量,得到所述移動(dòng)方向;

其中,所述獲取子模塊、所述轉(zhuǎn)換子模塊和所述計(jì)算子模塊連接。

優(yōu)選地,所述計(jì)算模塊還包括:

第二獲取子模塊,用于獲取所述現(xiàn)實(shí)設(shè)備的第二預(yù)設(shè)幀數(shù)的AR空間坐標(biāo);

第二計(jì)算子模塊,用于通過Unity的Vector3組件計(jì)算所述現(xiàn)實(shí)設(shè)備每兩幀的間距;

加權(quán)子模塊,用于通過加權(quán)平均法對所述間距進(jìn)行加權(quán)平均,得到所述移動(dòng)速度;

其中,所述第二獲取子模塊、所述第二計(jì)算子模塊和所述加權(quán)子模塊依次連接。

附圖說明

圖1為本發(fā)明的一種增強(qiáng)現(xiàn)實(shí)交互方法的流程示意圖;

圖2為本發(fā)明的一種增強(qiáng)現(xiàn)實(shí)交互方法的流程示意圖;

圖3為本發(fā)明的一種增強(qiáng)現(xiàn)實(shí)交互方法的流程示意圖;

圖4為本發(fā)明的一種增強(qiáng)現(xiàn)實(shí)交互系統(tǒng)的結(jié)構(gòu)示意圖;

圖5為本發(fā)明的一種增強(qiáng)現(xiàn)實(shí)交互系統(tǒng)的結(jié)構(gòu)示意圖。

具體實(shí)施方式

以下結(jié)合附圖對本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。

如圖1所示,一種增強(qiáng)現(xiàn)實(shí)交互方法,適用于現(xiàn)實(shí)設(shè)備和現(xiàn)實(shí)設(shè)備通過AR技術(shù)得到的虛擬設(shè)備,增強(qiáng)現(xiàn)實(shí)交互方法包括:

S1:在Unity中建立三維場景,將Unity中的坐標(biāo)系作為AR空間坐標(biāo)系,將現(xiàn)實(shí)場景的中心點(diǎn)作為AR空間坐標(biāo)系的原點(diǎn),將現(xiàn)實(shí)設(shè)備作為AR空間坐標(biāo)系中的一點(diǎn);

S2:通過Unity中的transform組件實(shí)時(shí)獲取現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo);

S3:根據(jù)現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo),計(jì)算現(xiàn)實(shí)設(shè)備的移動(dòng)方向和移動(dòng)速度;

S4:根據(jù)現(xiàn)實(shí)設(shè)備的移動(dòng)方向和移動(dòng)速度,控制虛擬設(shè)備進(jìn)行與現(xiàn)實(shí)設(shè)備同步的運(yùn)動(dòng)。

上述實(shí)施例中,在Unity中建立三維場景,以現(xiàn)實(shí)場景中某個(gè)中心點(diǎn)為坐標(biāo)系原點(diǎn),設(shè)定好三維坐標(biāo)系(AR空間坐標(biāo)系)的原點(diǎn)以及x、y、z軸方向,將Unity世界坐標(biāo)系作為AR空間坐標(biāo)系,初始化場景,假設(shè)現(xiàn)實(shí)場景為正方形,設(shè)為RealWall,中心點(diǎn)RWC(0,0,0),四個(gè)角點(diǎn)RW1(100,100,0),RW2(-100,100,0),RW3(-100,-100,0),RW4(100,-100,0),假設(shè)虛擬場景為正方體,設(shè)為Virtual,中心點(diǎn)VC(0,0,100),八個(gè)角點(diǎn)V11(20,20,80),V12(-20,20,80),V13(-20,-20,80),V14(20,-20,80),V21(20,20,120),V22(-20,20,120),V23(-20,-20,120),V24(20,-20,120);假設(shè)現(xiàn)實(shí)設(shè)備為Camera,點(diǎn)坐標(biāo)CC(0,0,200);通過Unity中的transform.position實(shí)時(shí)獲取現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo);當(dāng)現(xiàn)實(shí)設(shè)備移動(dòng)時(shí),設(shè)備相對現(xiàn)實(shí)場景的位置和方向發(fā)生改變,通過實(shí)時(shí)計(jì)算得到每幀時(shí)設(shè)備的坐標(biāo)CC,unity中每秒幀率在30左右,1秒的時(shí)間足夠反應(yīng)出設(shè)備的運(yùn)動(dòng)軌跡;最后,根據(jù)現(xiàn)實(shí)設(shè)備的移動(dòng)方向和移動(dòng)速度,控制虛擬設(shè)備進(jìn)行與現(xiàn)實(shí)設(shè)備同步的運(yùn)動(dòng)。

如圖2所示,步驟S3中,根據(jù)現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo),計(jì)算現(xiàn)實(shí)設(shè)備的移動(dòng)方向,具體包括:

A1:獲取現(xiàn)實(shí)設(shè)備的第一預(yù)設(shè)幀數(shù)的AR空間坐標(biāo);

A2:將第一預(yù)設(shè)幀數(shù)的AR空間坐標(biāo)轉(zhuǎn)換為相應(yīng)的空間向量;

A3:通過Unity的Vector3組件和空間向量,計(jì)算現(xiàn)實(shí)設(shè)備的運(yùn)動(dòng)向量,得到移動(dòng)方向。

上述實(shí)施例中,通過Unity的Vector3(x1,y1,z1)與Vector3(x2,y2,z2)相減的方法來計(jì)算每2幀設(shè)備運(yùn)動(dòng)向量,命名向量為v,v1=CC2-CC1,在現(xiàn)實(shí)場景下,用戶的移動(dòng)方向相對來說是不規(guī)則的,這里需要取值范圍相對來說要小一些,以10幀為計(jì)算范圍。假設(shè)當(dāng)前運(yùn)行幀數(shù)為m,

m=0時(shí),v=0;

m<10時(shí),v=CCn-CC1;

m>=10時(shí),v=CC10-CC1。

如圖3所示,步驟S3中,根據(jù)現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo),計(jì)算現(xiàn)實(shí)設(shè)備的移動(dòng)速度,具體包括:

B1:獲取現(xiàn)實(shí)設(shè)備的第二預(yù)設(shè)幀數(shù)的AR空間坐標(biāo);

B2:通過Unity的Vector3組件計(jì)算每相鄰兩幀返回的現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo)的間距;

B3:通過加權(quán)平均法對間距進(jìn)行加權(quán)平均,得到移動(dòng)速度。

上述實(shí)施例中,unity中每秒幀率在30左右,1秒的時(shí)間足夠反應(yīng)出設(shè)備的運(yùn)動(dòng)軌跡,因此這里采用最近30幀數(shù)據(jù)來計(jì)算設(shè)備移動(dòng)速度和方向;設(shè)30幀設(shè)備坐標(biāo)為:CC1,CC2,CC3,…,CC30,通過Unity的Vector3.Distance(CC1,CC2)來計(jì)算每2幀間距,依次得到間距為d1,d2,d3,…,d29。

由于在使用場景下,設(shè)備的移動(dòng)相對穩(wěn)定而緩慢,因此設(shè)備的移動(dòng)速度相對來說是比較平滑的,由于越接近運(yùn)行幀,其速度越真實(shí),因此采用權(quán)重的方式計(jì)算速度s。假設(shè)當(dāng)前運(yùn)行幀數(shù)為n,

n=0時(shí),s=0;

n<30時(shí),s=(d1*1+d2*2+…+dn*n)/(1+2+…+n);

n>=30時(shí),s=(d1*1+d2*2+…+d30*30)/(1+2+…+30)。

如圖4所示,一種增強(qiáng)現(xiàn)實(shí)交互系統(tǒng),適用于現(xiàn)實(shí)設(shè)備和現(xiàn)實(shí)設(shè)備通過AR技術(shù)得到的虛擬設(shè)備,增強(qiáng)現(xiàn)實(shí)交互系統(tǒng)包括:

建立模塊1,用于在Unity中建立三維場景,將Unity中的坐標(biāo)系作為AR空間坐標(biāo)系,將現(xiàn)實(shí)場景的中心點(diǎn)作為AR空間坐標(biāo)系的原點(diǎn),將現(xiàn)實(shí)設(shè)備作為AR空間坐標(biāo)系中的一點(diǎn);

獲取模塊2,用于通過Unity中的transform組件實(shí)時(shí)獲取現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo);

計(jì)算模塊3,用于根據(jù)現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo),計(jì)算現(xiàn)實(shí)設(shè)備的移動(dòng)方向和移動(dòng)速度;

控制模塊4,用于根據(jù)現(xiàn)實(shí)設(shè)備的移動(dòng)方向和移動(dòng)速度,控制虛擬設(shè)備進(jìn)行與現(xiàn)實(shí)設(shè)備同步的運(yùn)動(dòng);

其中,建立模塊1、獲取模塊2、計(jì)算模塊3和控制模塊4依次連接。

如圖5所示,計(jì)算模塊3包括:

第一獲取子模塊31,用于獲取現(xiàn)實(shí)設(shè)備的第一預(yù)設(shè)幀數(shù)的AR空間坐標(biāo);

轉(zhuǎn)換子模塊32,用于將第一預(yù)設(shè)幀數(shù)的AR空間坐標(biāo)轉(zhuǎn)換為相應(yīng)的空間向量;

第一計(jì)算子模塊33,用于通過Unity的Vector3組件和空間向量,計(jì)算現(xiàn)實(shí)設(shè)備的運(yùn)動(dòng)向量,得到移動(dòng)方向;

其中,獲取子模塊31、轉(zhuǎn)換子模塊32和計(jì)算子模塊33連接。

如圖5所示,計(jì)算模塊3還包括:

第二獲取子模塊34,用于獲取現(xiàn)實(shí)設(shè)備的第二預(yù)設(shè)幀數(shù)的AR空間坐標(biāo);

第二計(jì)算子模塊35,用于通過Unity的Vector3組件計(jì)算每相鄰兩幀返回的現(xiàn)實(shí)設(shè)備的AR空間坐標(biāo)的間距;

加權(quán)子模塊36,用于通過加權(quán)平均法對間距進(jìn)行加權(quán)平均,得到移動(dòng)速度;

其中,第二獲取子模塊34、第二計(jì)算子模塊35和加權(quán)子模塊36依次連接。

以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
富裕县| 交城县| 乌苏市| 车致| 普兰店市| 乐陵市| 青川县| 齐齐哈尔市| 赞皇县| 广灵县| 肥乡县| 岳普湖县| 连城县| 钦州市| 通化市| 广饶县| 乡宁县| 西平县| 迁安市| 博客| 监利县| 凤城市| 南充市| 开鲁县| 正安县| 哈巴河县| 平塘县| 南投县| 辛集市| 拜泉县| 扬中市| 安仁县| 阜新市| 乐亭县| 宾阳县| 枝江市| 霍林郭勒市| 微博| 志丹县| 内江市| 岳西县|