亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種虛擬現(xiàn)實場景的實現(xiàn)方法和裝置與流程

文檔序號:12663281閱讀:321來源:國知局
一種虛擬現(xiàn)實場景的實現(xiàn)方法和裝置與流程

本發(fā)明涉及虛擬現(xiàn)實技術(shù)領(lǐng)域,具體涉及一種虛擬現(xiàn)實場景的實現(xiàn)方法和裝置。



背景技術(shù):

虛擬現(xiàn)實(Virtual Reality,VR)技術(shù)是一種可以創(chuàng)建和體驗虛擬世界的計算機仿真系統(tǒng),它利用計算機生成一種模擬環(huán)境,是一種多源信息融合的交互式的三維動態(tài)視景和實體行為的系統(tǒng)仿真使用戶沉浸到該環(huán)境中。

虛擬現(xiàn)實技術(shù)主要包括模擬環(huán)境、感知、自然技能和傳感設(shè)備等方面。模擬環(huán)境是由計算機生成的、實時動態(tài)的三維立體逼真圖像。感知是指理想的VR應(yīng)該具有一切人所具有的感知。除計算機圖形技術(shù)所生成的視覺感知外,還有聽覺、觸覺、力覺、運動等感知,甚至還包括嗅覺和味覺等,也稱為多感知。自然技能是指人的頭部轉(zhuǎn)動,眼睛、手勢、或其他人體行為動作,由計算機來處理與參與者的動作相適應(yīng)的數(shù)據(jù),并對用戶的輸入做出實時響應(yīng),并分別反饋到用戶的五官。傳感設(shè)備是指三維交互設(shè)備。

現(xiàn)有虛擬現(xiàn)實設(shè)備呈現(xiàn)的虛擬現(xiàn)實場景中物體的控制和位置移動是通過在3D開發(fā)引擎中直接嵌入和設(shè)定的,這種方式導(dǎo)致虛擬現(xiàn)實場景中的物體與現(xiàn)實空間中物體的實際移動差別較大,導(dǎo)致沉浸感差,用戶體驗不佳。



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

本發(fā)明提供了一種虛擬現(xiàn)實場景的實現(xiàn)方法和裝置,以解決現(xiàn)有技術(shù)中虛擬現(xiàn)實場景實現(xiàn)方案導(dǎo)致的沉浸感差,用戶體驗不佳的問題。

根據(jù)本發(fā)明的一個方面,提供了一種虛擬現(xiàn)實場景的實現(xiàn)方法,方法包括:

實時捕捉現(xiàn)實空間中指定物體的移動;

響應(yīng)于指定物體的移動,改變虛擬現(xiàn)實設(shè)備呈現(xiàn)的虛擬現(xiàn)實場景中與指定物體對應(yīng)的指定對象的位置;

將指定對象位置改變后的虛擬現(xiàn)實場景呈現(xiàn)給用戶。

根據(jù)本發(fā)明的另一個方面提供了一種虛擬現(xiàn)實場景的實現(xiàn)裝置,裝置包括:

移動捕捉單元,用于實時捕捉現(xiàn)實空間中指定物體的移動;

響應(yīng)單元,用于響應(yīng)于指定物體的移動,改變虛擬現(xiàn)實設(shè)備呈現(xiàn)的虛擬現(xiàn)實場景中與指定物體對應(yīng)的指定對象的位置;

呈現(xiàn)單元,用于將指定對象位置改變后的虛擬現(xiàn)實場景呈現(xiàn)給用戶。

本發(fā)明實施例的有益效果是:本發(fā)明的虛擬現(xiàn)實場景的實現(xiàn)方法和裝置通過獲取現(xiàn)實空間中物體的移動,并根據(jù)該物體的移動控制虛擬現(xiàn)實場景中對應(yīng)物體的移動,使得虛擬現(xiàn)實場景中的物體能夠?qū)崟r響應(yīng)現(xiàn)實空間中的物體的移動,提高了用戶在虛擬現(xiàn)實場景中的沉浸感,提升了用戶體驗,并且,相比以往通過在3D虛擬現(xiàn)實空間中直接嵌入移動數(shù)據(jù)的方式,本發(fā)明的技術(shù)方案使得虛擬現(xiàn)實場景中物體移動控制更加準(zhǔn)確且方便,也使底層與上層開發(fā)對接更加容易。

附圖說明

圖1是本發(fā)明一個實施例的一種虛擬現(xiàn)實場景的實現(xiàn)方法的流程圖;

圖2是本發(fā)明一個實施例的一種虛擬現(xiàn)實場景的實現(xiàn)裝置的結(jié)構(gòu)框圖。

具體實施方式

本發(fā)明的設(shè)計構(gòu)思在于:針對現(xiàn)有技術(shù)虛擬現(xiàn)實場景中對象的移動直接在開發(fā)引擎中設(shè)定,降低了虛擬場景空間和現(xiàn)實空間中物體之間的移動的關(guān)聯(lián)程度,導(dǎo)致用戶沉浸感較差的問題。本發(fā)明實施例的技術(shù)方案利用C++獲取現(xiàn)實空間中的實際物體的移動數(shù)據(jù)并轉(zhuǎn)換為3D虛擬現(xiàn)實空間中可識別的數(shù)據(jù),相比以往在3D空間直接嵌入數(shù)據(jù)的方式,本發(fā)明實施例的虛擬現(xiàn)實場景中物體的移動實時響應(yīng)于現(xiàn)實空間中物體的移動,保持兩者移動的一致,提高了用戶的沉浸感,并且使得虛擬現(xiàn)實場景物體的控制更加準(zhǔn)確且方便,提升了用戶體驗。

實施例一

圖1是本發(fā)明一個實施例的一種虛擬現(xiàn)實場景的實現(xiàn)方法的流程圖,參見圖1,本實施例的虛擬現(xiàn)實場景的實現(xiàn)方法包括如下步驟:

步驟S101,實時捕捉現(xiàn)實空間中指定物體的移動;

步驟S102,響應(yīng)于指定物體的移動,改變虛擬現(xiàn)實設(shè)備呈現(xiàn)的虛擬現(xiàn)實場景中與指定物體對應(yīng)的指定對象的位置;

步驟S103,將指定對象位置改變后的虛擬現(xiàn)實場景呈現(xiàn)給用戶。

由圖1所示方法可知,本實施例的虛擬現(xiàn)實場景的實現(xiàn)方法通過實時捕捉現(xiàn)實空間中指定物體的移動,響應(yīng)于該指定物體的移動,改變虛擬現(xiàn)實設(shè)備呈現(xiàn)的虛擬現(xiàn)實場景中與指定物體對應(yīng)的指定對象的位置,最后將位置改變后的虛擬現(xiàn)實場景呈現(xiàn)給用戶,從而與現(xiàn)有技術(shù)中直接在3D虛擬現(xiàn)實場景設(shè)定和改變指定對象的位置相比,本實施例的虛擬場景中的指定對象能夠響應(yīng)于現(xiàn)實空間中物體的移動并做出反饋,從而能夠提高用戶的沉浸感和用戶體驗,進而提高虛擬現(xiàn)實設(shè)備的市場競爭力。

實施例二

隨著虛擬現(xiàn)實技術(shù)的逐步成熟,對虛擬現(xiàn)實附加外部設(shè)備的需求也逐步增加。目前市場上有很多外部設(shè)備(例如,藍牙游戲手柄),但這些外部設(shè)備在虛擬現(xiàn)實中使用效果不佳。為了使外部設(shè)備更好地應(yīng)用于在虛擬場景中,提出了本發(fā)明實施例的虛擬現(xiàn)實場景實現(xiàn)方法,該方法通過獲取攝像頭捕捉的現(xiàn)實空間中物體的移動信號,然后轉(zhuǎn)換成虛擬現(xiàn)實場景中可識別的信號,從而使得虛擬現(xiàn)實場景中的物體能夠?qū)ΜF(xiàn)實空間中物體的移動做出及時反饋,提高用戶體驗。

本發(fā)明實施例利用C#、C++和.Net框架,實現(xiàn)獲取現(xiàn)實空間中實際物體的移動并計算虛擬場景中對象的移動位置的有益效果。

本發(fā)明一個實施例中,虛擬現(xiàn)實場景實現(xiàn)方法是利用硬件攝像頭來捕捉外部設(shè)備(例如,藍牙游戲手柄)的移動位置的。

虛擬現(xiàn)實場景實現(xiàn)方法包括如下具體步驟:

步驟201,在攝像頭可捕捉圖像的范圍內(nèi),攝像頭采集虛擬現(xiàn)實外部設(shè)備的初始位置信息以及虛擬現(xiàn)實外部設(shè)備的空間移動信息。例如,藍牙游戲手柄在三維立體現(xiàn)實空間中的初始坐標(biāo)值,以及,當(dāng)藍牙手柄發(fā)生水平方向的移動時,水平方向?qū)?yīng)的坐標(biāo)值的改變量。

這里的虛擬現(xiàn)實外部設(shè)備,即現(xiàn)實空間中的指定物體,本實施例中,以藍牙游戲手柄為指定物體進行示意性說明。

步驟202,在得到外部設(shè)備的位置后,通過使用C++語言創(chuàng)建的圖像數(shù)據(jù)獲取類,并使用創(chuàng)建的圖像數(shù)據(jù)獲取類獲取攝像頭采集的現(xiàn)實空間中指定物體的圖像數(shù)據(jù)。

例如,通過C++獲取藍牙游戲手柄的位置信息和移動信息,并實時返回藍牙游戲手柄當(dāng)前的位置給上層函數(shù)或應(yīng)用。

步驟203,使用C#語言創(chuàng)建位置移動類,使用創(chuàng)建的位置移動類從圖像數(shù)據(jù)獲取類中獲取指定物體的位置信息和移動信息。

本實施例中通過C#程序底層委托的方式,實時獲取C++傳回的數(shù)據(jù)。

步驟204,將C#獲取的數(shù)據(jù)通過3D場景變換,得到虛擬現(xiàn)實場景中指定對象的位置。

本實施例中,在步驟203中使用C#語言創(chuàng)建的位置移動類獲取到指定物體的位置信息和移動信息后,發(fā)送給3D開發(fā)引擎,使得3D開發(fā)引擎對指定物體的位置信息和移動信息進行3D空間變換計算處理。

實際應(yīng)用中,具體實施如下:

首先,將能夠?qū)崟r捕捉現(xiàn)實空間中的指定物體位置信息和移動信息的底層動態(tài)鏈接庫(.dll文件)放入3D開發(fā)引擎中。動態(tài)鏈接庫(Dynamic Link Library,簡稱DLL),是微軟公司在微軟Windows操作系統(tǒng)中,實現(xiàn)共享函數(shù)庫概念的一種方式。

然后,在虛擬現(xiàn)實場景中需要執(zhí)行3D空間變化的指定對象中,添加該動態(tài)鏈接庫的引用,部分代碼示意如下:

Public class HIDQuaternion

{[DllImoport(“quaternionsdll”)]#添加動態(tài)鏈接庫的引用

public static extern float Ge tLeftHandQuaternionsDataX();

……}

本實施例的動態(tài)鏈接庫,用于動態(tài)獲取現(xiàn)實空間中指定物體的移動信息。可以理解,本實施例的動態(tài)鏈接庫中包括了使用C#語言創(chuàng)建的位置移動類。

接著,在處理指定對象空間變化時,將動態(tài)鏈接庫實時獲取的動態(tài)位置信息和移動信息,通過C#委托的方式取回并給3D開發(fā)引擎進行處理,即利用3D開發(fā)引擎對指定物體的位置信息和移動信息進行3D空間變換計算處理。3D開發(fā)引擎是包括3D圖形的各種算法整合起來,提供便捷的SDK接口方便開發(fā)者在這個基礎(chǔ)上開發(fā)3D場景的模塊,一個實施例中3D開發(fā)引擎可采用Unity 3D。

需要說明的是,在具體應(yīng)用實現(xiàn)時,需要建立指定物體與虛擬現(xiàn)實設(shè)備呈現(xiàn)的虛擬現(xiàn)實場景中指定對象之間的對應(yīng)關(guān)系,例如,建立現(xiàn)實空間中的藍牙游戲手柄和虛擬現(xiàn)實場景中游戲道具(如一把手槍)的對應(yīng)關(guān)系,這樣后續(xù)再控制游戲道具移動時,根據(jù)藍牙游戲手柄的位置信息和移動信息進行3D空間變換計算處理,得到虛擬現(xiàn)實場景中游戲道具改變后的位置信息根據(jù)指定對象改變后的位置信息,改變游戲道具的位置。

另外,3D開發(fā)引擎對指定物體的位置信息和移動信息進行3D空間變換計算處理的具體實現(xiàn)是現(xiàn)有技術(shù),可以參見現(xiàn)有技術(shù)中的描述,這里不再重復(fù)說明。

最后,3D開發(fā)引擎處理后得到3D虛擬現(xiàn)實場景可以識別的信號。

至此,本發(fā)明將C++獲取的實際空間中物體的移動信號轉(zhuǎn)換為3D虛擬現(xiàn)實空間中3D開發(fā)引擎可識別的信號,相比以往通過實際信號直接嵌入3D虛擬現(xiàn)實空間的方式更加準(zhǔn)確且方便,對于底層與上層開發(fā)之間對接也非常容易。

實施例三

圖2是本發(fā)明一個實施例的一種虛擬現(xiàn)實場景的實現(xiàn)裝置的結(jié)構(gòu)框圖,參見圖2,本實施例的虛擬現(xiàn)實場景的實現(xiàn)裝置20包括:

移動捕捉單元201,用于實時捕捉現(xiàn)實空間中指定物體的移動;

響應(yīng)單元202,用于響應(yīng)于指定物體的移動,改變虛擬現(xiàn)實設(shè)備呈現(xiàn)的虛擬現(xiàn)實場景中與指定物體對應(yīng)的指定對象的位置;

呈現(xiàn)單元203,用于將指定對象位置改變后的虛擬現(xiàn)實場景呈現(xiàn)給用戶。

在本發(fā)明的一個實施例中,移動捕捉單元,具體用于實時獲取攝像頭采集的現(xiàn)實空間中指定物體的圖像數(shù)據(jù);對獲取到的圖像數(shù)據(jù)進行處理,得到指定物體的位置信息和移動信息。

在本發(fā)明的一個實施例中,響應(yīng)單元,具體用于建立指定物體與虛擬現(xiàn)實設(shè)備呈現(xiàn)的虛擬現(xiàn)實場景中指定對象之間的對應(yīng)關(guān)系,并對指定物體的位置信息和移動信息進行3D空間變換計算處理后,得到虛擬現(xiàn)實場景中指定對象改變后的位置信息;根據(jù)指定對象改變后的位置信息,改變指定對象的位置。

在本發(fā)明的一個實施例中,響應(yīng)單元用于在虛擬現(xiàn)實場景中指定對象的位置變換類中,添加動態(tài)鏈接庫的引用;其中,動態(tài)鏈接庫,用于動態(tài)獲取現(xiàn)實空間中指定物體的移動數(shù)據(jù)。

在本發(fā)明的一個實施例中,移動捕捉單元用于使用C++語言創(chuàng)建圖像數(shù)據(jù)獲取類,并使用創(chuàng)建的圖像數(shù)據(jù)獲取類獲取攝像頭采集的現(xiàn)實空間中指定物體的圖像數(shù)據(jù)。

在本發(fā)明的一個實施例中,響應(yīng)單元,使用C#語言創(chuàng)建位置移動類,使用創(chuàng)建的位置移動類從圖像數(shù)據(jù)獲取類中獲取指定物體的位置信息和移動信息,位置移動類將獲取的指定物體的位置信息和移動信息發(fā)送給3D開發(fā)引擎,使得3D開發(fā)引擎對指定物體的位置信息和移動信息進行3D空間變換計算處理。

需要說明的是,本實施例的這種虛擬現(xiàn)實場景的實現(xiàn)裝置的工作過程是和前述虛擬現(xiàn)實場景的實現(xiàn)方法的步驟對應(yīng)的,因此,本實施例中對虛擬現(xiàn)實場景的實現(xiàn)裝置的未盡事項可參見前述方法實施例中的說明,這里不再贅述。

綜上所述,本發(fā)明的虛擬現(xiàn)實場景的實現(xiàn)方法和裝置通過獲取現(xiàn)實空間中物體的移動,并根據(jù)該物體的移動控制虛擬現(xiàn)實場景中對應(yīng)物體的移動,使得虛擬現(xiàn)實場景中的物體能夠響應(yīng)現(xiàn)實空間中的物體的移動,提高了用戶在虛擬現(xiàn)實場景中的沉浸感,提升了用戶體驗,并且,相比以往通過直接在3D空間中直接嵌入信號的方式,本發(fā)明的技術(shù)方案使得虛擬現(xiàn)實場景中物體移動控制更加準(zhǔn)確且方便,也使底層與上層開發(fā)對接更加容易。

需要說明的是:

本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實踐中使用微處理器或者數(shù)字信號處理器(DSP)來實現(xiàn)根據(jù)本發(fā)明實施例中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計算機程序和計算機程序產(chǎn)品)。這樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。

本發(fā)明的虛擬現(xiàn)實場景的實現(xiàn)裝置傳統(tǒng)上包括處理器和以存儲器形式的計算機程序產(chǎn)品或者計算機可讀介質(zhì)。存儲器可以是諸如閃存、EEPROM(電可擦除可編程只讀存儲器)、EPROM、硬盤或者ROM之類的電子存儲器。存儲器具有用于執(zhí)行上述方法中的任何方法步驟的程序代碼的存儲空間。例如,用于程序代碼的存儲空間可以包括分別用于實現(xiàn)上面的方法中的各種步驟的各個程序代碼。這些程序代碼可以從一個或者多個計算機程序產(chǎn)品中讀出或者寫入到這一個或者多個計算機程序產(chǎn)品中。這些計算機程序產(chǎn)品包括諸如硬盤,緊致盤(CD)、存儲卡或者軟盤之類的程序代碼載體。這樣的計算機程序產(chǎn)品通常為便攜式或者固定存儲單元。該存儲單元可以類似布置的存儲段、存儲空間等。程序代碼可以例如以適當(dāng)形式進行壓縮。通常,存儲單元包括用于執(zhí)行根據(jù)本發(fā)明的方法步驟的計算機可讀代碼,即可以由例如處理器讀取的代碼,這些代碼被運行時,導(dǎo)致該可穿戴設(shè)備執(zhí)行上面所描述的方法中的各個步驟。

應(yīng)該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計出替換實施例。單詞“包括”不排除存在未列在權(quán)利要求中的元件或步驟。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計算機來實現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。

在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細(xì)節(jié)的情況下被實踐。在一些實例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。本說明書中使用的語言主要是為了可讀性和教導(dǎo)的目的而選擇的,而不是為了解釋或者限定本發(fā)明的主題而選擇的。

以上所述,僅為本發(fā)明的具體實施方式,在本發(fā)明的上述教導(dǎo)下,本領(lǐng)域技術(shù)人員可以在上述實施例的基礎(chǔ)上進行其他的改進或變形。本領(lǐng)域技術(shù)人員應(yīng)該明白,上述的具體描述只是更好的解釋本發(fā)明的目的,本發(fā)明的保護范圍以權(quán)利要求的保護范圍為準(zhǔn)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1