背景
增強現(xiàn)實(ar)涉及提供經(jīng)增強的現(xiàn)實世界環(huán)境,其中用計算機生成的虛擬數(shù)據(jù)來增強或修改對現(xiàn)實世界環(huán)境(或表示現(xiàn)實世界環(huán)境的數(shù)據(jù))的感知。例如,可使用諸如相機或話筒等傳感輸入設(shè)備實時地捕捉表示現(xiàn)實世界環(huán)境的數(shù)據(jù),并用包括虛擬圖像和虛擬聲音的計算機生成的虛擬數(shù)據(jù)來增強該數(shù)據(jù)。虛擬數(shù)據(jù)還可包括與現(xiàn)實世界環(huán)境有關(guān)的信息,諸如與現(xiàn)實世界環(huán)境中的現(xiàn)實世界對象相關(guān)聯(lián)的文本描述。一些ar環(huán)境內(nèi)的對象可包括現(xiàn)實對象(即,存在于特定現(xiàn)實世界環(huán)境中的對象)和虛擬對象(即,不存在于該特定現(xiàn)實世界環(huán)境中的對象)。
為了將虛擬對象逼真地集成到ar環(huán)境中,ar系統(tǒng)可執(zhí)行包括映射和本地化在內(nèi)的若干任務(wù)。映射涉及生成現(xiàn)實世界環(huán)境的映射的過程。本地化涉及相對于現(xiàn)實世界環(huán)境的映射來定位特定視點或姿態(tài)的過程。在一些情況下,ar系統(tǒng)可實時本地化在現(xiàn)實世界環(huán)境內(nèi)移動的移動設(shè)備的姿態(tài),以便確定要隨該移動設(shè)備在現(xiàn)實世界環(huán)境中移動而被增強的與該移動設(shè)備相關(guān)聯(lián)的特定視圖。
概述
描述了用于提供交互式增強現(xiàn)實環(huán)境的技術(shù),在該交互式增強現(xiàn)實環(huán)境中,虛擬代理對象可被自動地生成,并隨后由頭戴式顯示設(shè)備(hmd)的終端用戶來控制。在一些實施例中,hmd可標識要為其生成虛擬代理對象的現(xiàn)實世界對象,生成與現(xiàn)實世界對象相對應(yīng)的虛擬代理對象,并使用hmd來顯示該虛擬代理對象使得該虛擬代理對象被感知為存在于向hmd的終端用戶顯示的增強現(xiàn)實環(huán)境內(nèi)。虛擬代理對象在增強現(xiàn)實環(huán)境內(nèi)的位置可由終端用戶使用姿勢或音頻命令(例如,經(jīng)由手勢或語音命令)來控制。在一些情況下,圖像處理技術(shù)(例如,特征檢測、邊緣檢測、分段等)可被應(yīng)用于從嵌入在hmd內(nèi)的深度相機得到的深度圖像和/或從嵌入在hmd內(nèi)的rgb相機得到的彩色圖像,以便標識現(xiàn)實世界對象的邊界點并確定與現(xiàn)實世界對象相對應(yīng)的虛擬代理對象的各維度。
提供本概述以便以簡化的形式介紹以下在詳細描述中進一步描述的一些概念。本概述并非旨在標識出要求保護的主題的關(guān)鍵特征或必要特征,亦非旨在用作輔助確定要求保護的主題的范圍。
附圖簡述
圖1是可在其中實施所公開的技術(shù)的聯(lián)網(wǎng)計算環(huán)境的一個實施例的框圖。
圖2a描繪了與第二移動設(shè)備通信的移動設(shè)備的一個實施例。
圖2b描繪了hmd的一部分的一個實施例。
圖2c描繪了hmd的一部分的一個實施例,其中延伸到注視點的注視向量被用于對準遠瞳距(ipd)。
圖2d描繪了hmd的一部分的一個實施例,其中延伸到注視點的注視向量被用于對準近瞳距(ipd)。
圖2e描繪了hmd的一部分的一個實施例,該hmd具有包括凝視檢測元件的可移動顯示光學(xué)系統(tǒng)。
圖2f描繪了hmd的一部分的一個替換實施例,該hmd具有包括凝視檢測元件的可移動顯示光學(xué)系統(tǒng)。
圖3描繪了包括捕捉設(shè)備和計算環(huán)境的計算系統(tǒng)的一個實施例。
圖4a描繪了其中可安置一個或多個現(xiàn)實世界對象的環(huán)境的一個實施例。
圖4b描繪了其中第一虛擬代理對象已被適配在桌子上的增強現(xiàn)實環(huán)境的一個實施例。
圖4c描繪了其中第二虛擬代理對象已被適配在椅子上的增強現(xiàn)實環(huán)境的一個實施例。
圖5a是描述用于生成和顯示虛擬代理對象的方法的一個實施例的流程圖。
圖5b是描述用于生成和顯示虛擬代理對象的方法的替換實施例的流程圖。
圖6是移動設(shè)備的一個實施例的框圖。
詳細描述
描述了用于在增強現(xiàn)實環(huán)境內(nèi)生成虛擬代理對象并控制虛擬代理對象的位置的技術(shù)。在一些實施例中,頭戴式顯示設(shè)備(hmd)可標識將生成其虛擬代理對象的現(xiàn)實世界對象,生成與該現(xiàn)實世界對象相對應(yīng)的虛擬代理對象,并使用hmd來顯示該虛擬代理對象使得該虛擬代理對象被感知為存在于向hmd的終端用戶顯示的增強現(xiàn)實環(huán)境內(nèi)。虛擬代理對象在增強現(xiàn)實環(huán)境內(nèi)的位置可由終端用戶通過基于姿勢或基于語音的命令來控制。在一些情況下,圖像處理技術(shù)(例如,特征檢測、邊緣檢測、分段等)可被應(yīng)用于從嵌入在hmd內(nèi)的深度相機得到的深度圖像,以便標識現(xiàn)實世界對象的邊界點并確定與現(xiàn)實世界對象相對應(yīng)的虛擬代理對象的維度。使用虛擬代理對象來在增強現(xiàn)實環(huán)境內(nèi)表示現(xiàn)實世界對象的益處包括對使用hmd來顯示的圖像的渲染更快,對各種不同環(huán)境內(nèi)的現(xiàn)實世界對象的可視化更快,并且hmd的功率消耗降低了。
在一個實施例中,hmd的終端用戶可選擇將為其生成虛擬代理對象的現(xiàn)實世界對象(例如,通過使用被hmd捕捉到的手勢來選擇現(xiàn)實世界對象)。在一個示例中,hmd的終端用戶可進入家具店,并選擇在hmd的視野內(nèi)的將為其生成虛擬代理對象的沙發(fā)或桌子。在該情況下,為了生成對應(yīng)的虛擬代理對象,hmd可標識沙發(fā)或桌子(例如,使用對象識別或通過捕捉固定到該沙發(fā)或桌子的ar標簽)、獲得包括該沙發(fā)或桌子的維度在內(nèi)的該沙發(fā)或桌子的模型(例如,通過從服務(wù)器下載該模型)、以及基于沙發(fā)或桌子的維度來生成虛擬代理對象。在另一示例中,為了生成虛擬代理對象,hmd可通過將矩形棱柱適配在沙發(fā)或桌子上來確定沙發(fā)或桌子的各維度,并隨后基于最佳地適配該沙發(fā)或桌子的矩形棱柱的各維度來生成虛擬代理對象。hmd的終端用戶可隨后旋轉(zhuǎn)和/或定位增強現(xiàn)實環(huán)境內(nèi)(例如,起居室內(nèi))的虛擬代理對象,以便在增強現(xiàn)實環(huán)境內(nèi)可視化現(xiàn)實世界對象。
在一個實施例中,虛擬代理對象可從現(xiàn)實世界對象的三維代理模型得到,在該三維代理模型中,點的數(shù)目和/或面的數(shù)目被限制。在一個示例中,三維代理模型可包括具有最多8個點和最多6個面的三維形狀。三維代理模型可包括矩形棱柱、立方體、三角棱柱、正方棱錐、圓柱體、圓錐體或球體。
在一些情況下,虛擬代理對象可基于對齊柵格被布置在增強現(xiàn)實環(huán)境內(nèi),對齊柵格在增強現(xiàn)實環(huán)境內(nèi)的間隔基于虛擬代理對象的復(fù)雜度和/或虛擬代理對象的各維度。在一個實施例中,對齊柵格間隔可被設(shè)置為虛擬代理對象的最小維度(例如,最小長度、寬度或高度)。在另一實施例中,對齊柵格間距可基于虛擬代理對象所使用的表面的數(shù)目以及虛擬代理對象的大小來確定。虛擬代理對象的表面可與一個或多個對齊屬性相關(guān)聯(lián),使得虛擬代理對象的特定表面可自動對齊到增強現(xiàn)實環(huán)境內(nèi)的特定對象。在一個實施例中,虛擬代理對象的特定表面可自動對齊到增強現(xiàn)實環(huán)境內(nèi)的墻壁(或地板)。在一個示例中,沙發(fā)的虛擬代理對象可包括表示沙發(fā)底部的第一表面和表示沙發(fā)背面的第二表面。在一種情況下,沙發(fā)底部可對齊到增強現(xiàn)實環(huán)境內(nèi)的地板(或地面),且沙發(fā)背面可對齊到增強現(xiàn)實環(huán)境內(nèi)的墻壁。在另一示例中,繪畫的虛擬代理對象可包括表示該繪畫的背面的后表面。在該情況下,后表面可對齊到房間中的垂直墻壁或房間內(nèi)的成角度的墻壁(例如,房間中相對于地板成45度角的墻壁)。
虛擬代理對象可與現(xiàn)實世界對象的全尺寸虛擬表示相對應(yīng),并可被渲染并顯示為使得hmd的終端用戶感知該虛擬代理對象作為現(xiàn)實世界對象的代理存在于增強現(xiàn)實環(huán)境內(nèi)。虛擬代理對象可變?yōu)橥该骰虿糠滞该?,使得虛擬代理對象不遮擋增強現(xiàn)實環(huán)境內(nèi)的任何現(xiàn)實世界對象。在一些情況下,每當虛擬代理對象與增強現(xiàn)實環(huán)境內(nèi)的現(xiàn)實世界對象交互或與其重疊時,虛擬代理對象可變?yōu)橥该骰虿糠滞该?。在一些情況下,虛擬代理對象可被排列或布置在增強現(xiàn)實環(huán)境內(nèi)的二維圖案中。例如,如果虛擬代理對象與圖片幀相對應(yīng),則可向hmd的終端用戶顯示虛擬代理對象陣列,使得該虛擬代理對象陣列覆蓋墻壁,并且該陣列中的每一個虛擬代理對象間隔特定量(例如,虛擬代理對象可水平間隔一英尺)。
圖1是可在其中實施所公開的技術(shù)的聯(lián)網(wǎng)計算環(huán)境100的一個實施例的框圖。聯(lián)網(wǎng)計算環(huán)境100包括通過一個或多個網(wǎng)絡(luò)180互連的多個計算設(shè)備。所述一個或多個網(wǎng)絡(luò)180允許一特定計算設(shè)備連接到另一計算設(shè)備以及與其通信。所描繪的計算設(shè)備包括移動設(shè)備11、移動設(shè)備12、移動設(shè)備19和服務(wù)器15。在一些實施例中,此多個計算設(shè)備可包括未示出的其他計算設(shè)備。在一些實施例中,此多個計算設(shè)備可包括比圖1所示的計算設(shè)備的數(shù)目更多或更少的計算設(shè)備。一個或多個網(wǎng)絡(luò)180可包括諸如企業(yè)專用網(wǎng)絡(luò)之類的安全網(wǎng)絡(luò)、諸如無線開放式網(wǎng)絡(luò)之類的不安全網(wǎng)絡(luò)、局域網(wǎng)(lan)、廣域網(wǎng)(wan)以及互聯(lián)網(wǎng)。一個或多個網(wǎng)絡(luò)180中的每個網(wǎng)絡(luò)可包括集線器、網(wǎng)橋、路由器、交換機以及諸如有線網(wǎng)絡(luò)或直接有線連接之類的有線傳輸介質(zhì)。
可包括補充信息服務(wù)器或應(yīng)用服務(wù)器的服務(wù)器15可允許客戶端從該服務(wù)器下載信息(例如,文本、音頻、圖像和視頻文件)或者執(zhí)行與存儲在該服務(wù)器上的特定信息相關(guān)的搜索查詢。一般而言,“服務(wù)器”可以包括在客戶端-服務(wù)器關(guān)系中充當主機的硬件設(shè)備、或者與一個或多個客戶端共享資源或為所述一個或多個客戶端執(zhí)行工作的軟件過程??蛻舳?服務(wù)器關(guān)系下的計算設(shè)備之間的通信可通過由客戶端向服務(wù)器發(fā)送要求訪問特定資源或執(zhí)行特定工作的請求來發(fā)起。服務(wù)器隨后可以執(zhí)行所請求的動作并且將響應(yīng)發(fā)送回客戶端。
服務(wù)器15的一個實施例包括網(wǎng)絡(luò)接口155、處理器156和存儲器157,所有這些都彼此通信。網(wǎng)絡(luò)接口155允許服務(wù)器15連接到一個或多個網(wǎng)絡(luò)180。網(wǎng)絡(luò)接口155可包括無線網(wǎng)絡(luò)接口、調(diào)制解調(diào)器和/或有線網(wǎng)絡(luò)接口。處理器156允許服務(wù)器15執(zhí)行被儲存在存儲器157中的計算機可讀指令以執(zhí)行在此討論的過程。
移動設(shè)備19的一個實施例包括網(wǎng)絡(luò)接口145、處理器146、存儲器147、相機148、傳感器149、以及顯示器150,所有這些都彼此通信。網(wǎng)絡(luò)接口145允許移動設(shè)備19連接到一個或多個網(wǎng)絡(luò)180。網(wǎng)絡(luò)接口145可包括無線網(wǎng)絡(luò)接口、調(diào)制解調(diào)器和/或有線網(wǎng)絡(luò)接口。處理器146允許移動設(shè)備19執(zhí)行存儲在存儲器147中的計算機可讀指令以執(zhí)行在此討論的過程。相機148可捕捉環(huán)境的彩色圖像和/或深度圖像。移動設(shè)備19可包括捕捉環(huán)境的圖像的面向外的相機以及捕捉移動設(shè)備的終端用戶的圖像的面向內(nèi)的相機。傳感器149可生成與移動設(shè)備19相關(guān)聯(lián)的運動和/或定向信息。在一些情況下,傳感器149可包括慣性測量單元(imu)。顯示器150可顯示數(shù)字圖像和/或視頻。顯示器150可包括透視顯示器。
在一些實施例中,包括網(wǎng)絡(luò)接口145、處理器146、存儲器147、相機148以及傳感器149的移動設(shè)備19的各組件可被集成在單芯片基片上。在一示例中,網(wǎng)絡(luò)接口145、處理器146、存儲器147、相機148、傳感器149可被集成成為片上系統(tǒng)(soc)。在其他實施例中,網(wǎng)絡(luò)接口145、處理器146、存儲器147、相機148和傳感器149可被集成在單個封裝中。
在一些實施例中,通過采用相機148、傳感器149,和運行在處理器146上的姿勢識別軟件,移動設(shè)備19可提供自然用戶界面(nui)。使用自然用戶界面,人的身體部位和移動可被檢測、解釋、以及用于控制計算應(yīng)用的各方面。在一個示例中,利用自然用戶界面的計算設(shè)備可檢測到某人已執(zhí)行了特定姿勢來控制計算設(shè)備。
聯(lián)網(wǎng)計算環(huán)境100可為一個或多個計算設(shè)備提供云計算環(huán)境。云計算指的是基于互聯(lián)網(wǎng)的計算,其中共享的資源、軟件和/或信息經(jīng)由互聯(lián)網(wǎng)(或其他全局網(wǎng)絡(luò))被按需提供給一個或多個計算設(shè)備?;谠谟嬎銠C網(wǎng)絡(luò)圖中使用的云圖,術(shù)語“云”可被用作對互聯(lián)網(wǎng)的比喻以將互聯(lián)網(wǎng)描繪成對其所表示的底層基礎(chǔ)設(shè)施的抽象。
在一個示例中,移動設(shè)備19包括向頭戴式顯示設(shè)備(hmd)的終端用戶提供增強現(xiàn)實環(huán)境或混合現(xiàn)實環(huán)境的頭戴式顯示設(shè)備。hmd可包括視頻透視和/或光學(xué)透視系統(tǒng)。終端用戶佩戴的光學(xué)透視hmd可允許(例如經(jīng)由透明透鏡)對現(xiàn)實世界環(huán)境的實際直接查看,并且同時可將虛擬對象的圖像投影到終端用戶的視野中,由此用虛擬對象來增強終端用戶所感知的現(xiàn)實世界環(huán)境。
通過利用hmd,終端用戶可佩戴著hmd在現(xiàn)實世界環(huán)境(例如,起居室或家具店)內(nèi)四處移動,并感知覆蓋有虛擬對象的圖像的現(xiàn)實世界的視圖。虛擬對象可以看起來保持與現(xiàn)實世界環(huán)境的相干空間關(guān)系(即,當終端用戶在現(xiàn)實世界環(huán)境中轉(zhuǎn)動他們的頭或移動時,顯示給該終端用戶的圖像可改變,使得虛擬對象看起來像被終端用戶感知的那樣存在于該現(xiàn)實世界環(huán)境內(nèi))。虛擬對象還可看起來相對于終端用戶的視點是固定的(例如,無論終端用戶如何在現(xiàn)實世界環(huán)境中轉(zhuǎn)動他們的頭或移動,總是出現(xiàn)在終端用戶視角的右上角的虛擬菜單)。在一個實施例中,現(xiàn)實世界環(huán)境的環(huán)境映射可由服務(wù)器15(即,在服務(wù)器側(cè))來執(zhí)行,而相機本地化可在移動設(shè)備19上(即,在客戶端側(cè))執(zhí)行。
在一些實施例中,移動設(shè)備(諸如移動設(shè)備19)可與云中的服務(wù)器(諸如服務(wù)器15)通信,并可提供與移動設(shè)備相關(guān)聯(lián)的服務(wù)器位置信息(例如,經(jīng)由gps坐標的移動設(shè)備的位置)和/或圖像信息(例如,與在移動設(shè)備的視野內(nèi)檢測到的對象有關(guān)的信息)。作為響應(yīng),服務(wù)器可基于提供給該服務(wù)器的位置信息和/或圖像信息向移動設(shè)備傳送一個或多個虛擬對象。在一個實施例中,移動設(shè)備19可指定用于接收一個或多個虛擬對象的特定文件格式,并且服務(wù)器15可向移動設(shè)備19傳送特定文件格式的文件內(nèi)包含的一個或多個虛擬對象。
在一些實施例中,移動設(shè)備(諸如移動設(shè)備19)可以包括提供包括虛擬內(nèi)容閱讀器的增強現(xiàn)實環(huán)境的hmd。虛擬內(nèi)容閱讀器可以包括在增強現(xiàn)實環(huán)境內(nèi)的虛擬對象,在該增強現(xiàn)實環(huán)境內(nèi)內(nèi)容可以由hmd的終端用戶閱讀。在一個實施例中,虛擬內(nèi)容閱讀器可以包括看起來相對于終端用戶的視點固定的虛擬對象(即頭部鎖定虛擬對象)。例如,無論終端用戶如何轉(zhuǎn)動他們的頭,虛擬內(nèi)容閱讀器可以出現(xiàn)在終端用戶的視點的左上角。在另一個實施例中,虛擬內(nèi)容閱讀器可以包括看起來維持在增強現(xiàn)實環(huán)境內(nèi)的相干空間關(guān)系的虛擬對象(即世界鎖定的虛擬對象)。例如,當終端用戶在增強現(xiàn)實環(huán)境內(nèi)轉(zhuǎn)動他們的頭或移動時,在hmd上顯示給該終端用戶的圖像可改變,由此虛擬內(nèi)容閱讀器看起來存在于增強現(xiàn)實環(huán)境內(nèi)的特定位置(例如墻上)處。
在一些實施例中,移動設(shè)備(諸如,移動設(shè)備19)可包括hmd,該hmd標識現(xiàn)實世界對象、從服務(wù)器獲得現(xiàn)實世界對象的模型、基于該模型確定虛擬代理對象的各維度、基于這些維度生成虛擬代理對象并隨后在增強現(xiàn)實環(huán)境內(nèi)顯示該虛擬代理對象。在一些情況下,虛擬代理對象的第一表面可與一個或多個對齊屬性相關(guān)聯(lián),使得該虛擬代理對象的第一表面可自動對齊到增強現(xiàn)實環(huán)境內(nèi)的特定對象或現(xiàn)實世界表面。在一個示例中,一旦虛擬代理對象的第一表面進入增強現(xiàn)實環(huán)境內(nèi)的墻壁的閾值距離內(nèi)(例如,在該墻壁的兩英尺內(nèi)),該虛擬代理對象的第一表面可自動對齊到該墻壁。
圖2a描繪了與第二移動設(shè)備5通信的移動設(shè)備19的一個實施例。移動設(shè)備19可包括透視hmd。如所描繪的,移動設(shè)備19經(jīng)由有線連接6與移動設(shè)備5通信。然而,移動設(shè)備19還可經(jīng)由無線連接與移動設(shè)備5通信。移動設(shè)備5可被移動設(shè)備19用來卸載計算密集的處理任務(wù)(例如,渲染虛擬對象),并將可被用來提供增強現(xiàn)實環(huán)境的虛擬對象信息和其他數(shù)據(jù)存儲在移動設(shè)備19上。移動設(shè)備5還可向移動設(shè)備19提供與移動設(shè)備5相關(guān)聯(lián)的運動和/或定向信息。在一個示例中,運動信息可包括與移動設(shè)備5相關(guān)聯(lián)的速度或加速度,并且定向信息可包括歐拉角,其提供包圍特定坐標系或參考坐標系的轉(zhuǎn)動信息。在一些情況中,移動設(shè)備5可包括運動和定向傳感器(諸如慣性測量單元(imu)),以便獲得與移動設(shè)備5相關(guān)聯(lián)的運動和/或定向信息。imu可包括三軸加速度計、三軸陀螺儀和三軸磁傳感器。移動設(shè)備5可使用imu確定慣性坐標系。慣性參考坐標系可包括指向北的x軸、指向東的y軸和向下指向地球的z軸。
在一個實施例中,移動設(shè)備(諸如移動設(shè)備5)可被定位成使得移動設(shè)備的定向相對于移動設(shè)備的終端用戶的身體保持固定(或基本上固定)。在一個示例中,移動設(shè)備可被定位在終端用戶所穿的褲子或短褲的后兜內(nèi)。在另一示例中,移動設(shè)備可被定位在終端用戶所穿的襯衫或外套的前兜內(nèi)。在另一示例中,移動設(shè)備可被綁或夾到繞終端用戶的手腕佩戴的帶子上。在這些情況下,移動設(shè)備相對于終端用戶的身體的定向可使用由移動設(shè)備生成的加速度計和磁力計數(shù)據(jù)來確定。移動設(shè)備可基于加速度計和磁力計數(shù)據(jù)生成重力向量即與地球表面正交的向量。重力向量可與從移動設(shè)備上的某點指向地面的向量對應(yīng)。在一個實施例中,虛擬圓柱的軸可與重力向量對應(yīng)。該軸可與同移動設(shè)備相交并平行于重力向量的線對應(yīng)。移動設(shè)備還可基于加速度計和磁力計數(shù)據(jù)生成北向量即與重力向量正交并指向北部方向的向量。在一些情況下,在校準步驟期間,移動設(shè)備可通過請求終端用戶面向北來確定面向前方的向量,并使其身體的前方與北向量對準。面向前方的向量可隨后相對于由移動設(shè)備生成的北東地(ned)坐標系移動。
圖2b描繪了hmd(諸如圖1的移動設(shè)備19)的一部分的一個實施例。僅描繪了hmd200的右側(cè)。hmd200包括右鏡腿202、鼻梁204、鏡片216、以及眼鏡框214。右鏡腿202包括與處理單元236通信的捕捉設(shè)備213(例如,前置相機和/或話筒)。捕捉設(shè)備213可包括用于記錄數(shù)字圖像和/或視頻的一個或多個相機,并可將視覺記錄傳送到處理單元236。一個或多個相機可捕捉色彩信息、ir信息、和/或深度信息。捕捉設(shè)備213還可包括用于記錄聲音的一個或多個話筒,并可將音頻記錄傳送到處理單元236。
右鏡腿202還包括生物測定傳感器220、眼睛跟蹤系統(tǒng)221、面向身體的相機222、耳機230、運動和定向傳感器238、gps接收器232、電源239、以及無線接口237,所有這些都與處理單元236通信。生物測定傳感器220可包括用于確定與hmd200的終端用戶的脈搏或心率相關(guān)聯(lián)的一個或多個電極,以及用于確定與hmd200的終端用戶相關(guān)聯(lián)的體溫的溫度傳感器。在一個實施例中,生物測定傳感器220包括壓著終端用戶太陽穴的脈搏速率測量傳感器。運動和定向傳感器238可以包括三軸磁力計、三軸陀螺儀、和/或三軸加速度計。在一個實施例中,運動和定向傳感器238可包括慣性測量單元(imu)。gps接收機可確定與hmd200相關(guān)聯(lián)的gps位置。處理單元236可以包括一個或多個處理器和用于存儲將要在所述一個或多個處理器上執(zhí)行的計算機可讀指令。存儲器還可存儲要在一個或多個處理器上執(zhí)行的其它類型的數(shù)據(jù)。
在一個實施例中,眼睛跟蹤系統(tǒng)221可包括一個或多個面向內(nèi)的相機。此一個或多個面向內(nèi)的相機可捕捉hmd的終端用戶的眼睛的圖像。在另一實施例中,眼睛跟蹤系統(tǒng)221可包括眼睛跟蹤照明源和相關(guān)聯(lián)的眼睛跟蹤圖像傳感器。在一個實施例中,眼睛跟蹤照明源可包括以大約預(yù)定ir波長或一定范圍的波長發(fā)射的一個或多個紅外(ir)發(fā)射器(諸如紅外發(fā)光二極管(led)或激光器(例如,vcsel))。在一些實施例中,眼睛跟蹤傳感器可包括用于跟蹤閃光位置的ir相機或ir位置敏感檢測器(psd)。關(guān)于眼睛跟蹤系統(tǒng)的更多信息可在2008年7月22提交的標題為“headmountedeyetrackinganddisplaysystem(頭戴式眼睛跟蹤和顯示系統(tǒng))”的美國專利7,401,920,以及2011年9月26日提交的標題為“integratedeyetrackinganddisplaysystem(集成眼睛跟蹤和顯示系統(tǒng))”的美國專利申請13/245,700中找到。
在一個實施例中,面向身體的相機222可包括一個或多個面向下的相機。此一個或多個面向下的相機可捕捉hmd的終端用戶的身體的一部分的圖像。例如,此一個或多個面向下的相機可捕捉終端用戶的軀干、胸部、腹部或骨盆區(qū)的圖像。終端用戶的身體的圖像可被用來確定終端用戶的身體相對于hmd的定向。在一個示例中,圖像處理技術(shù)可被應(yīng)用于終端用戶的身體的圖像以確定終端用戶的軀干相對于hmd面向的方向。
在一個實施例中,鏡片216可包括透視顯示器,處理單元236生成的圖像由此可被投影和/或顯示在透視顯示器上。捕捉設(shè)備213可被校準,使得捕捉設(shè)備213所捕捉的視野對應(yīng)于hmd200的終端用戶所看到的視野。耳機230可用于輸出與虛擬對象的投影圖像相關(guān)聯(lián)的聲音。在一些實施例中,hmd200可包括兩個或更多個前置相機(例如,每個鏡腿上一個相機),以便從與前置相機所捕捉的視野相關(guān)聯(lián)的立體信息中獲得深度。兩個或更多個前置相機還可包括3d、ir、和/或rgb相機。也可從利用來自運動技術(shù)的深度的單個相機中獲取深度信息。例如,可從單個相機獲取兩個圖像,這兩個圖像與在不同的時間點的、兩個不同的空間點相關(guān)聯(lián)。然后,給定與兩個不同空間點有關(guān)的位置信息的情況下,可執(zhí)行視差計算。
在一些實施例中,hmd200可使用注視檢測元件和與一個或多個人類眼睛元素(諸如角膜中心、眼球旋轉(zhuǎn)的中心、或瞳孔中心)有關(guān)的三維坐標系,來為終端用戶眼睛中的每只眼睛執(zhí)行注視檢測。注視檢測可被用來標識終端用戶正在關(guān)注視野內(nèi)的何處。注視檢測元件的示例可包括生成閃光的照明器和用于捕捉表示所生成的閃光的數(shù)據(jù)的傳感器。在一些情況中,角膜中心可以基于兩次閃光使用平面幾何來確定。角膜中心鏈接瞳孔中心和眼球的旋轉(zhuǎn)中心,這可被當作用于確定處于某種注視或觀看角度的終端用戶的眼睛的光軸的固定位置。
圖2c描繪了hmd2的一部分的一個實施例,其中延伸到注視點的注視向量用于對準遠瞳距(ipd)。hmd2是移動設(shè)備的一個示例,諸如圖1中的移動設(shè)備19。如所描繪的,注視向量180l和180r在遠離終端用戶的注視點處相交(即,當終端用戶正在看遙遠處的對象時,注視向量180l和180r不相交)?;趃ullstrand示意眼模型示出了每只眼睛的眼球160l、160r的眼球模型。每只眼球被建模成具有旋轉(zhuǎn)中心166的球體,并且包括被建模成具有中心164的球的角膜168。角膜168隨著眼球旋轉(zhuǎn),并且眼球的旋轉(zhuǎn)中心166可被當作固定點。角膜168覆蓋虹膜170,瞳孔162處于虹膜170的中心。每個角膜的表面172上是閃光174和176。
如圖2c所描繪的,傳感器檢測區(qū)域139(即分別是139l和139r)與眼鏡架115內(nèi)的每一顯示光學(xué)系統(tǒng)14的光軸相對準。在一個示例中,與該檢測區(qū)域相關(guān)聯(lián)的傳感器可包括能夠捕捉表示分別由鏡架115左側(cè)的照明器153a和153b生成的閃光174l和176l的圖像數(shù)據(jù)以及表示分別由鏡架115右側(cè)的照明器153c和153d生成的閃光174r和176r的數(shù)據(jù)的一個或多個相機。通過眼鏡架115中的顯示光學(xué)系統(tǒng)14l和14r,終端用戶的視野包括現(xiàn)實對象190、192和194以及虛擬對象182和184。
從旋轉(zhuǎn)中心166穿過角膜中心164到瞳孔162而形成的軸178包括眼睛的光軸。注視向量180也被稱為從中央凹穿過瞳孔中心162延伸的視線或視軸。在一些實施例中,光軸被確定,并且通過用戶校準來確定小型校正以獲得被選作注視向量的視軸。對于每一終端用戶,虛擬對象可被顯示設(shè)備顯示在不同的水平和垂直位置處的多個預(yù)先確定的位置中的每一位置處。在對象在每一位置處的顯示期間可以計算每一眼睛的光軸,并且光線被建模成從該位置延伸到用戶眼睛中??梢曰诒仨毴绾我苿庸廨S以與所建模的光線相對準來確定與水平和垂直分量的注視偏移角。從不同的位置處,與水平或垂直分量的平均注視偏移角可被選作要被應(yīng)用于每一計算出的光軸的小型校正。在一些實施例中,僅水平分量被用于注視偏移角校正。
如圖2c所描繪的,由于當注視向量180l和180r從眼球延伸到注視點處的視野中時這些注視向量變得更加靠近在一起,因此這些注視向量不是完全平行的。在每一顯示光學(xué)系統(tǒng)14處,注視向量180看起來與光軸相交,傳感器檢測區(qū)域139以這一交點為中心。在這一配置中,光軸與瞳孔間距(ipd)對準。在終端用戶看向正前方時,測得的ipd也被稱為遠ipd。
圖2d描繪了hmd2的一部分的一個實施例,其中延伸到注視點的注視向量用于對準近瞳距(ipd)。hmd2是移動設(shè)備的一個示例,諸如圖1中的移動設(shè)備19。如所描繪的,左眼的角膜168l向右側(cè)或朝向終端用戶的鼻子旋轉(zhuǎn),并且右眼的角膜168r向左側(cè)或朝向終端用戶的鼻子旋轉(zhuǎn)。兩個瞳孔正在注視終端用戶的特定距離內(nèi)的現(xiàn)實對象194。始自每只眼睛的注視向量180l和180r進入真實對象194所處的panum匯合區(qū)域195。panum匯合區(qū)域是像人類視覺那樣的雙眼觀察系統(tǒng)中的單視覺的區(qū)域。注視向量180l和180r的相交指示終端用戶正在看現(xiàn)實對象194。在這樣的距離處,隨著眼球向內(nèi)旋轉(zhuǎn),它們瞳孔之間的距離減少到近ipd。近ipd通常比遠ipd小約4毫米。近ipd距離準則(例如,在距終端用戶小于四英尺處的注視點)可用來將顯示光學(xué)系統(tǒng)14的ipd對準切換或調(diào)整成近ipd的對準。對于近ipd,每一顯示光學(xué)系統(tǒng)14可以朝向終端用戶的鼻子移動,使得光軸以及檢測區(qū)域139朝向鼻子移動幾毫米,如檢測區(qū)域139ln和139rn所表示的。關(guān)于為hmd的終端用戶確定ipd并由此調(diào)整顯示光學(xué)系統(tǒng)的更多信息可在2011年9月30日提交的題為“personalaudio/visualsystem(個人音頻/視頻系統(tǒng))”的美國專利申請?zhí)?3/250,878中找到。
圖2e描繪了hmd2的一部分的一個實施例,該hmd2具有包括凝視檢測元件的可移動顯示光學(xué)系統(tǒng)。表現(xiàn)為每只眼睛的透鏡的事物表示每只眼睛的顯示光學(xué)系統(tǒng)14(即14l和14r)。顯示光學(xué)系統(tǒng)包括用于將虛擬內(nèi)容與通過hmd的透鏡看到的實際直接現(xiàn)實世界視圖無縫地融合的透視透鏡和光學(xué)元件(例如,反射鏡、過濾器)。顯示光學(xué)系統(tǒng)14具有一般處于透視透鏡中心的光軸,其中光一般被校準來提供無失真視圖。例如,在眼睛護理專業(yè)人員使一副普通眼鏡適合于終端用戶的臉部時,該眼睛通常是適合的,使得該眼鏡在每一瞳孔與相應(yīng)鏡片的中心或光軸相對準的位置處落在終端用戶的鼻子上,從而通常使得校準光到達終端用戶的眼睛以得到清晰或無失真的視圖。
如所描繪的,至少一個傳感器的檢測區(qū)域139r、139l與其相應(yīng)顯示光學(xué)系統(tǒng)14r、14l的光軸相對準,使得檢測區(qū)域139r、139l的中心捕捉沿著該光軸的光。如果顯示光學(xué)系統(tǒng)14與終端用戶的瞳孔對準,則相應(yīng)傳感器134的每一檢測區(qū)域139與終端用戶的瞳孔相對準。檢測區(qū)域139的反射光經(jīng)由一個或多個光學(xué)元件被傳送到相機的實際圖像傳感器134,在該實施例中傳感器134由處于鏡架115內(nèi)部的虛線示出。在一些實施例中,傳感器134可包括用于捕捉終端用戶的眼睛或眼睛周圍的面部特征的圖像的圖像傳感器或rgb相機。其他面向內(nèi)的圖像傳感器也可與鏡架115集成以便捕捉與終端用戶相關(guān)聯(lián)的固定面部特征,諸如其鼻梁。
在一個實施例中,該至少一個傳感器134可以是可見光相機(例如,rgb相機或彩色相機)。在一個示例中,光學(xué)元件或光引導(dǎo)元件包括是部分透射且部分反射的可見光反光鏡??梢姽庀鄼C提供終端用戶的眼睛的瞳孔的圖像數(shù)據(jù),而ir光電探測器152捕捉作為頻譜的ir部分中的反射的閃光。如果使用可見光相機,則虛擬圖像的反射可以出現(xiàn)在該相機所捕捉的眼睛數(shù)據(jù)中。圖像過濾技術(shù)可被用于按需移除虛擬圖像反射。ir相機對眼睛上的虛擬圖像反射是不敏感的。
在另一個實施例中,至少一個傳感器134(即,134l和134r)是ir輻射可被定向到的ir相機或位置敏感檢測器(psd)。從眼睛反射的ir輻射可以來自照明器153、其他ir照明器(未示出)的入射輻射或者來自從眼睛反射的環(huán)境ir輻射。在一些情況中,傳感器134可以是rgb和ir相機的組合,并且光引導(dǎo)元件可包括可見光反射或轉(zhuǎn)向元件和ir輻射反射或轉(zhuǎn)向元件。在一些情況中,相機134可被嵌入在系統(tǒng)14的鏡片中。另外,可以應(yīng)用圖像過濾技術(shù)來將相機混合到用戶視野中以減輕對用戶的任何干擾。
如圖2e所描繪的,有四組照明器153,照明器153與光電檢測器152配對并被屏障154隔開以避免照明器153所生成的入射光與在光電檢測器152處接收到的反射光之間的干擾。為了在附圖中避免不必要的混亂,附圖標記就被示出了代表性的一對。每一照明器可以是生成大約預(yù)定波長的窄光束的紅外(ir)照明器。光電檢測器中的每一個可被選擇來捕捉大約該預(yù)定波長的光。紅外還可以包括近紅外。因為照明器或光電檢測器可能存在波長漂移或者關(guān)于波長的微小范圍是可接受的,所以照明器和光電檢測器可以具有與要生成或檢測的波長有關(guān)的容限范圍。在傳感器是ir相機或ir位置敏感檢測器(psd)的一些實施例中,光電檢測器可包括附加數(shù)據(jù)捕捉設(shè)備并且也可被用來監(jiān)視照明器的操作,例如波長漂移、波束寬度改變等。該光電檢測器還用作為傳感器134的可見光相機來提供閃光數(shù)據(jù)。
每一顯示光學(xué)系統(tǒng)14以及它面向每一眼睛的注視檢測元件的布置(例如,諸如相機134及其檢測區(qū)域139、照明器153以及光電檢測器152)可位于可移動內(nèi)部鏡架部分117l、117r上。在該示例中,顯示調(diào)整機構(gòu)包括具有附連到內(nèi)部鏡架部分117的傳動軸205的一個或多個馬達203,內(nèi)部鏡架部分117在由馬達203驅(qū)動的傳動軸205的引導(dǎo)和力量下在鏡架115內(nèi)從左向右滑動或反向滑動。在一些實施例中,一個馬達203可以驅(qū)動兩個內(nèi)部鏡架。
圖2f描繪了hmd2的一部分的一個替換實施例,該hmd2具有包括凝視檢測元件的可移動顯示光學(xué)系統(tǒng)。如所描繪的,每個顯示光學(xué)系統(tǒng)14被封裝在分開的鏡架部分115l、115r中。鏡架部分中的每一個可由馬達203分開地移動。在一些實施例中,此至少一個傳感器134可包括用于捕捉終端用戶的眼睛或眼睛周圍的面部特征的圖像的圖像傳感器或rgb相機。其他面向內(nèi)的圖像傳感器也可與鏡架115集成以便捕捉與終端用戶相關(guān)聯(lián)的固定面部特征,諸如其鼻梁。
圖3描繪了包括捕捉設(shè)備20和計算環(huán)境12的計算系統(tǒng)10的一個實施例。在一些實施例中,捕捉設(shè)備20和計算環(huán)境12可以集成在單個移動計算設(shè)備中。該單個集成移動計算設(shè)備可包括移動設(shè)備,諸如圖1中的移動設(shè)備19。在一個示例中,捕捉設(shè)備20和計算環(huán)境12可被集成在hmd中。在其它實施例中,捕捉設(shè)備20可與第一移動設(shè)備(諸如圖2a中的移動設(shè)備19)集成,而計算環(huán)境12可與和第一移動設(shè)備通信的第二移動設(shè)備(諸如圖2a中的移動設(shè)備5)集成。
在一個實施例中,捕捉設(shè)備20可包括用于捕捉圖像和視頻的一個或多個圖像傳感器。圖像傳感器可以包括ccd圖像傳感器或cmos圖像傳感器。在某些實施例中,捕捉設(shè)備20可包括圖像傳感器和/或ircmos圖像傳感器。捕捉設(shè)備20可包括圖像相機組件32。圖像相機組件32可包括可用來對捕捉區(qū)域的深度圖像進行捕捉的ir光組件34、深度相機36、以及rgb相機38。在一個示例中,捕捉設(shè)備20的ir光組件34可以將紅外光發(fā)射進入捕捉區(qū)域,然后可以使用傳感器,用圖像相機組件32內(nèi)的彩色和/或ir光傳感組件來檢測從捕捉區(qū)域中的一個或多個對象的表面反向散射的光。在一些實施例中,脈沖式紅外光可被使用,使得出射光脈沖和相應(yīng)的入射光脈沖之間的時間可被測得并被用來確定從捕捉設(shè)備20到捕捉區(qū)域中的一個或多個對象上的特定位置的物理距離。捕捉設(shè)備20還可包括用于產(chǎn)生準直光和/或用于散射光的光學(xué)器件(例如,用于傳播來自產(chǎn)生窄光束的ir光源的光的光學(xué)散射器)以照亮環(huán)境。
如圖3所描繪的,捕捉設(shè)備20可以包括一個或多個話筒40。該一個或多個麥克風40中的每一個都可包括可以接收聲音并將其轉(zhuǎn)換成電信號的換能器或傳感器。該一個或多個麥克風可包括麥克風陣列,其中一個或多個麥克風可以按預(yù)定布局排列。
捕捉設(shè)備20可以包括可以與圖像相機組件32可操作地通信的處理器42。處理器42可包括標準處理器、專用處理器、微處理器等。處理器42可以執(zhí)行指令,所述指令可以包括用于接收和分析圖像和/或確定是否已經(jīng)發(fā)生特定姿勢的指令(例如,用于控制或操縱虛擬對象的終端用戶姿勢)的指令。應(yīng)當理解,至少一些圖像分析和/或姿勢識別操作可以由諸如捕捉設(shè)備20之類的一個或多個捕捉設(shè)備內(nèi)所包含的處理器來執(zhí)行。
捕捉設(shè)備20可以包括存儲器44,該存儲器44可以存儲可以由處理器42執(zhí)行的指令以及由圖像相機組件32的光感測組件捕捉的圖像(或圖像的幀)。在一個示例中,存儲器44可包括隨機存取存儲器(ram)、只讀存儲器(rom)、高速緩存、閃存、非易失性存儲器或任何其它合適的存儲組件。如所描繪的,存儲器44可以是與圖像捕捉組件32和處理器42進行通信的分開的組件。在另一實施例中,存儲器44可被集成到處理器42和/或圖像捕捉組件32中。在其他實施例中,捕捉設(shè)備20的組件32、34、36、38、40、42和44中的部分或全部可被容納在單個外殼中。
捕捉設(shè)備20可經(jīng)由通信鏈路46與計算環(huán)境12進行通信。通信鏈路46可以是有線連接或諸如無線802.11b、g、a或n的無線連接。在一個實施例中,捕捉設(shè)備20可將由例如深度相機36和/或rgb相機38捕捉的圖像經(jīng)由通信鏈路46提供給計算環(huán)境12。
如圖3中所描繪的,計算環(huán)境12包括與應(yīng)用196通信的圖像和音頻處理引擎194。應(yīng)用196可包括操作系統(tǒng)應(yīng)用或諸如游戲應(yīng)用、消息收發(fā)應(yīng)用、或用于生成增強現(xiàn)實環(huán)境的應(yīng)用的其他計算應(yīng)用。圖像和音頻處理引擎194包括虛擬數(shù)據(jù)引擎197、對象和姿勢識別引擎190、結(jié)構(gòu)數(shù)據(jù)198、處理單元191和存儲器單元192,所有都彼此通信。圖像和音頻處理引擎194處理從捕捉設(shè)備20接收到的視頻、圖像和音頻數(shù)據(jù)。為了輔助對象的檢測和/或跟蹤,圖像和音頻處理引擎194可利用結(jié)構(gòu)數(shù)據(jù)198以及對象和姿勢識別引擎190。
虛擬數(shù)據(jù)引擎197處理虛擬對象,并記錄與在存儲器單元192中存儲的現(xiàn)實世界環(huán)境的各種映射有關(guān)的虛擬對象的位置和朝向。虛擬數(shù)據(jù)引擎還可向計算系統(tǒng)10的終端用戶呈現(xiàn)與供顯示的虛擬對象相關(guān)聯(lián)的圖像。在一些實施例中,計算系統(tǒng)10可使用從捕捉設(shè)備20獲得的圖像來相對于環(huán)境的3d圖確定對應(yīng)于這些圖像的六自由度(6dof)姿態(tài)。在一示例中,6dof姿態(tài)可包括與移動設(shè)備(例如hmd)在環(huán)境內(nèi)的位置和朝向相關(guān)聯(lián)的信息。6dof姿態(tài)可用于定位移動設(shè)備并生成虛擬對象的圖像,以使得這些虛擬對象看起來存在于增強現(xiàn)實環(huán)境內(nèi)的合適位置處。關(guān)于確定6dof姿態(tài)的更多信息可在題為“distributedasynchronouslocalizationandmappingforaugmentedreality(增強現(xiàn)實的分布式異步定位和映射)”的美國專利申請13/152,220中找到。關(guān)于執(zhí)行對移動設(shè)備的姿態(tài)估計和/或定位的更多信息可在題為“mobilecameralocalizationusingdepthmaps(使用深度圖像的移動相機定位)”的美國專利申請13/017,474中找到。
處理單元191可以包括用于執(zhí)行對象、面部和語音識別算法的一個或多個處理器。在一個實施例中,圖像和音頻處理引擎194可將對象識別和面部識別技術(shù)應(yīng)用于圖像或視頻數(shù)據(jù)。例如,對象識別可以用于檢測特定對象(例如hmd的終端用戶握持的鉛筆),并且面部識別可以用于檢測環(huán)境內(nèi)的特定人的面部。圖像和音頻處理引擎194可將音頻和語音識別技術(shù)應(yīng)用于音頻數(shù)據(jù)。例如,音頻識別可被用來檢測特定的聲音。待檢測的特定面部、語音、聲音和對象可被儲存在存儲器單元192中所包含的一個或多個存儲器中。處理單元191可執(zhí)行被儲存在存儲器單元192中的計算機可讀指令以執(zhí)行此處討論的過程。
圖像和音頻處理引擎194可以在執(zhí)行對象識別時利用結(jié)構(gòu)數(shù)據(jù)198。結(jié)構(gòu)數(shù)據(jù)198可包括關(guān)于要跟蹤的目標和/或?qū)ο蟮慕Y(jié)構(gòu)信息。例如,可以存儲人類的骨架模型以幫助識別身體部位(例如,手臂、手、和/或手指)。在另一示例中,結(jié)構(gòu)數(shù)據(jù)198可以包括關(guān)于一個或多個無生命對象的結(jié)構(gòu)信息以便幫助識別所述一個或多個無生命對象(例如鉛筆或指示筆)。
圖像和音頻處理引擎194還可在執(zhí)行姿勢識別時利用對象和姿勢識別引擎190。在一個示例中,對象和姿勢識別引擎190可以包括姿勢過濾器的集合,每個姿勢過濾器都包括關(guān)于可被執(zhí)行的姿勢的信息。對象和姿勢識別引擎190可將由捕捉設(shè)備20捕捉的數(shù)據(jù)與姿勢庫中的姿勢過濾器進行比較來標識用戶何時執(zhí)行了一個或多個姿勢。在一個示例中,圖像和音頻處理引擎194可以使用對象和姿勢識別引擎190來檢測計算系統(tǒng)10的終端用戶執(zhí)行的特定姿勢(例如,對象選擇姿勢)的執(zhí)行。在一個實施例中,對象和姿勢識別引擎190可利用機器學(xué)習分類技術(shù)。
圖4a-4c描繪了可從其生成虛擬代理對象并可在其中顯示虛擬代理對象的各種環(huán)境的示例。圖4a描繪了其中可安置一個或多個現(xiàn)實世界對象的環(huán)境400的一個實施例。如所描繪的,環(huán)境400包括包含桌子403和椅子404的三維現(xiàn)實世界空間。在一個實施例中,hmd在特定時間點的視野或由hmd在特定時間點捕捉到的現(xiàn)實世界環(huán)境可與圖4a中描繪的視圖相對應(yīng)。
圖4b描繪增強現(xiàn)實環(huán)境410的一個實施例,其中第一虛擬代理對象413已被適配在圖4a的桌子403上。第一虛擬代理對象413可包括三維對象(例如,矩形棱錐)。第一虛擬代理對象413包括處于第一維度的第一長度邊緣422,處于第二維度的第二高度邊緣423和處于第三維度的第三寬度邊緣424。第一虛擬代理對象413包括六個表面。第一虛擬代理對象413的第一表面417可被標識并分配為側(cè)表面(例如,圖4a中的桌子403的一側(cè))。第一表面417可被分配對齊屬性,使得每當?shù)谝惶摂M代理對象413被定位在增強現(xiàn)實環(huán)境內(nèi)的現(xiàn)實世界墻壁內(nèi)的閾值距離內(nèi)時,第一表面417對齊到該墻壁。在一個示例中,如果第一表面417在該墻壁的兩英尺內(nèi),則第一虛擬代理對象413可定向并對齊到該墻壁。在另一示例中,第一虛擬代理對象413的底部表面可基于圖4a中的桌子403的定向被標識為該桌子403的底部,并且在第一虛擬代理對象413的底部表面在地板的六英寸內(nèi)的情況下被分配對齊屬性,使得第一虛擬代理對象413的底部表面對齊到地板。
在一個實施例中,第一虛擬代理對象413的第一邊緣、第二邊緣和第三邊緣可由hmd基于與圖4a中的桌子403相關(guān)聯(lián)的邊界點來確定。在一個示例中,第一長度邊緣422可基于處于第一維度的與桌子403相對應(yīng)的點之間的最大距離來確定。與桌子403相對應(yīng)的點之間的最大距離可通過將圖像處理技術(shù)(諸如分段和對象識別)應(yīng)用于使用hmd獲得的彩色和/或深度圖像來確定。類似地,第二高度邊緣423可通過處理使用hmd捕捉到的彩色和/或深度圖像以及確定處于第二維度的與桌子403相對應(yīng)的點之間的最大距離來確定。第三寬度邊緣424可通過確定處于第三維度的與桌子403相對應(yīng)的點之間的最大距離來確定。
圖4c描繪增強現(xiàn)實環(huán)境410的一個實施例,在該實施例中,第二虛擬代理對象414已被適配在圖4a的椅子404上。第二虛擬代理對象414包括三維對象(例如,立方體)。第二虛擬代理對象414包括六個表面和八個空間點。第二虛擬代理對象414的第二表面432可被標識并分配為側(cè)表面(例如,圖4a中的椅子404的背側(cè))。第二表面432可被分配對齊屬性,使得每當?shù)诙摂M代理對象414被定位在增強現(xiàn)實環(huán)境內(nèi)的現(xiàn)實世界墻壁內(nèi)的閾值距離內(nèi)時,第二表面432對齊到該墻壁。在一個示例中,如果第二表面432在該墻壁的六英寸內(nèi),則第二虛擬代理對象414可定向并對齊到該墻壁。在另一示例中,第二虛擬代理對象414的底部表面可基于圖4a中的椅子404的定向被標識為該椅子404的底部,并且在第二虛擬代理對象414的底部表面在地板的一米內(nèi)的情況下被分配對齊屬性,使得第二虛擬代理對象414的底部表面對齊到地板。
在一個實施例中,第二虛擬代理對象414的維度可通過找出最佳地近似圖4a中的椅子404的尺寸的第二虛擬代理對象414的尺寸來確定。在一些情況下,第二虛擬代理對象414的維度可基于完全覆蓋圖4a中的椅子404的第二虛擬代理對象414的最小尺寸來確定。
在第一虛擬代理對象413和第二虛擬代理對象414已被生成后,它們可由hmd的終端用戶定位在不同的增強現(xiàn)實環(huán)境內(nèi)。在一個示例中,第一虛擬代理對象413和第二虛擬代理對象414可基于在家具店內(nèi)獲得的彩色和/或深度圖像來生成,并隨后由hmd的終端用戶定位和重新定位在與起居室相關(guān)聯(lián)的增強現(xiàn)實環(huán)境內(nèi)。在該情況下,hmd的終端用戶可以可視化在起居室包括圖4a中的桌子403和椅子404的情況下,該起居室看起來將是怎樣的。
圖5a是描述用于生成和顯示虛擬代理對象的方法的一個實施例的流程圖。在一個實施例中,圖5a的過程可由移動設(shè)備(諸如圖1中的移動設(shè)備19)來執(zhí)行。
在步驟502,標識在移動設(shè)備的視野內(nèi)的現(xiàn)實世界對象。該移動設(shè)備可包括hmd?,F(xiàn)實世界對象可由hmd的終端用戶使用手勢來標識,以標識出該現(xiàn)實世界對象。在步驟504中,基于現(xiàn)實世界對象的標識獲得三維模型。在一個實施例中,該三維模型可從服務(wù)器(諸如圖1中的服務(wù)器15)獲得。該三維模型可包括第一表面集合。該三維模型可包括例如具有六個表面的三維形狀。該三維模型可包括矩形棱柱、立方體、三角棱柱、正方棱錐、圓柱體、圓錐體或球體。
在步驟506,確定現(xiàn)實世界對象的一個或多個維度。在一個實施例中,該一個或多個維度可使用hmd來確定,其中該hmd確定現(xiàn)實世界對象在第一維度內(nèi)的第一最大跨度和現(xiàn)實世界對象在垂直于第一維度的第二維度內(nèi)的第二最大跨度。現(xiàn)實世界對象的一個或多個維度可使用由hmd捕捉到的彩色和/或深度圖像來確定。例如,彩色和/或深度圖像可被用于確定現(xiàn)實世界對象在第一維度內(nèi)的第一最大跨度以及現(xiàn)實世界對象在第二維度內(nèi)的第二最大跨度。在另一實施例中,一個或多個維度可通過基于現(xiàn)實世界對象的標識從服務(wù)器下載該一個或多個維度來確定。在一些情況下,現(xiàn)實世界對象可基于附連到該現(xiàn)實世界對象的ar標簽來標識。在其他情況下,現(xiàn)實世界對象可使用對象識別來標識以將現(xiàn)實世界對象分類為特定對象(例如,該現(xiàn)實世界對象是椅子還是桌子)。
在步驟508,使用該三維模型和該一個或多個維度生成虛擬代理對象。虛擬代理對象可通過將該三維模型縮放到該一個或多個維度來生成。在步驟510,標識三維模型的第一表面。第一表面可基于在步驟502標識出的現(xiàn)實世界對象的定向來標識。在一個示例中,第一表面可包括朝向地面定向的底部表面。在另一示例中,第一表面可包括與現(xiàn)實世界對象的一側(cè)(桌子或椅子的一側(cè))相關(guān)聯(lián)的側(cè)表面。在步驟512,基于現(xiàn)實世界對象的定向?qū)R屬性分配給第一表面。在一個示例中,如果第一表面與側(cè)表面相對應(yīng),則在第一表面進入增強現(xiàn)實環(huán)境內(nèi)的垂直墻壁的閾值距離內(nèi)的情況下,對齊屬性可迫使第一表面對齊到該垂直墻壁。在另一示例中,如果第一表面與底部表面相對應(yīng),則在第一表面進入增強現(xiàn)實環(huán)境內(nèi)的水平表面(例如,桌頂或地板)的閾值距離內(nèi)的情況下,對齊屬性可迫使第一表面對齊到該水平表面。在一些情況下,對齊屬性可迫使第一表面對齊到增強現(xiàn)實環(huán)境內(nèi)的成角度的表面(例如,成角度的墻壁)。成角度的表面可包括增強現(xiàn)實環(huán)境內(nèi)具有既不垂直也不水平的定向的表面。
在步驟514,獲得與虛擬代理對象在增強現(xiàn)實環(huán)境內(nèi)的放置相對應(yīng)的定位命令。在一個實施例中,定位命令可包括由該移動設(shè)備的終端用戶發(fā)出的語音命令。在另一實施例中,定位命令可包括由該移動設(shè)備的終端用戶執(zhí)行的手勢。在步驟516,基于該定位命令和對齊屬性確定虛擬代理對象在增強現(xiàn)實環(huán)境內(nèi)的位置。在步驟518,使用移動設(shè)備來渲染并顯示與虛擬代理對象相對應(yīng)的一個或多個圖像。該一個或多個圖像可使用hmd來顯示,使得虛擬代理對象表現(xiàn)為被世界鎖定在增強現(xiàn)實環(huán)境內(nèi)的該位置處。
圖5b是描述用于生成并顯示虛擬代理對象的方法的一個替換實施例的流程圖。在一個實施例中,圖5b的過程可由移動設(shè)備(諸如圖1中的移動設(shè)備19)來執(zhí)行。
在步驟522中,使用移動設(shè)備標識現(xiàn)實世界對象。該移動設(shè)備可包括hmd。現(xiàn)實世界對象可包括例如椅子、桌子、沙發(fā)、一件家具、繪畫或圖片幀。在步驟524,確定現(xiàn)實世界對象的高度、長度和寬度。在一個實施例中,可通過將對象識別技術(shù)、邊緣檢測技術(shù)、特征檢測技術(shù)和分段技術(shù)應(yīng)用于使用移動設(shè)備捕捉到的彩色和/或深度圖像來確定現(xiàn)實世界對象的高度、長度和寬度。在一個示例中,該高度可通過確定在垂直于地面的第一維度內(nèi)與現(xiàn)實世界對象相關(guān)聯(lián)的兩個點之間的最大距離來確定。在另一示例中,現(xiàn)實世界對象的寬度可通過確定在平行于地面的第二維度內(nèi)與現(xiàn)實世界對象相關(guān)聯(lián)的兩個點之間的最大距離來確定?,F(xiàn)實世界對象的長度可通過確定現(xiàn)實世界對象在與第二維度正交并與第一維度正交的第三維度內(nèi)的兩個點之間的最大距離來確定。
在一些情況下,現(xiàn)實世界對象的高度和寬度可使用hmd來確定,其中hmd將圖像處理技術(shù)應(yīng)用于彩色和/或深度圖像以確定現(xiàn)實世界對象在平行于地面的第一維度內(nèi)的第一最大跨度以及現(xiàn)實世界對象在與地面正交的第二維度內(nèi)的第二最大跨度?,F(xiàn)實世界對象在第一維度內(nèi)的第一最大跨度可包括寬度,并且現(xiàn)實世界對象在第二維度內(nèi)的第二最大跨度可包括高度。
在步驟526,確定最大表面數(shù)。在一些情況下,最大表面數(shù)可由移動設(shè)備的終端用戶設(shè)置。在步驟528,基于最大表面數(shù)來確定三維模型。在一個示例中,如果最大表面數(shù)包括六個表面,則三維模型可包括矩形棱柱。在另一示例中,如果最大表面數(shù)包括八個表面,則三維模型可包括六角棱柱。
在步驟530,使用三維模型以及在步驟524確定的現(xiàn)實世界對象的高度、長度和寬度來生成虛擬代理對象。虛擬代理對象可包括其中三維模型已被縮放成現(xiàn)實世界對象的高度、長度和寬度的虛擬對象。在步驟532,確定虛擬代理對象在增強現(xiàn)實環(huán)境內(nèi)的位置。在一個實施例中,虛擬代理對象的位置可基于由移動設(shè)備的終端用戶提供的定位命令來確定。定位命令可使用語音命令或手勢來提供。
在步驟534,基于虛擬代理對象在增強現(xiàn)實環(huán)境內(nèi)的位置來確定虛擬代理對象的透明程度。在一個實施例中,虛擬代理對象可利用幻象模式,使得每當虛擬代理對象不與增強現(xiàn)實環(huán)境內(nèi)的現(xiàn)實世界對象交互時虛擬代理對象表現(xiàn)為不透明,并且每當虛擬代理對象與增強現(xiàn)實環(huán)境內(nèi)的現(xiàn)實世界對象交互或重疊時虛擬代理對象表現(xiàn)為半透明或透明。在另一實施例中,如果虛擬代理對象會遮擋如由hmd的終端用戶查看到的增強現(xiàn)實環(huán)境內(nèi)的現(xiàn)實世界對象,則虛擬代理對象可變?yōu)椴糠滞该?。在步驟536,使用移動設(shè)備渲染并顯示與虛擬代理對象相對應(yīng)的一個或多個圖像。該一個或多個圖像被顯示為使得虛擬代理對象表現(xiàn)為被世界鎖定在增強現(xiàn)實環(huán)境內(nèi)的該位置處。在該情況下,隨著hmd的終端用戶在增強現(xiàn)實環(huán)境內(nèi)轉(zhuǎn)動他的頭或移動,在hmd上向該終端用戶顯示的該一個或多個圖像可改變,使得虛擬代理對象看起來存在于增強現(xiàn)實環(huán)境內(nèi)的該位置處。
所公開的技術(shù)的一個實施例包括與透視顯示器通信的一個或多個處理器。一個或多個處理器標識世界對象,并基于現(xiàn)實世界對象的標識獲得三維模型。一個或多個處理器確定現(xiàn)實世界對象在第一維度中的第一最大跨度并確定現(xiàn)實世界對象在與第一維度正交的第二維度中的第二最大跨度。一個或多個處理器通過基于第一最大跨度和第二最大跨度縮放三維模型來生成虛擬代理對象。一個或多個處理器確定虛擬代理對象在增強現(xiàn)實環(huán)境內(nèi)的位置,并渲染與虛擬代理對象相對應(yīng)的一個或多個圖像。透視顯示器顯示該一個或多個圖像,使得虛擬代理對象表現(xiàn)為被世界鎖定在增強現(xiàn)實環(huán)境內(nèi)的該位置處。
所公開的技術(shù)的一個實施例包括用于使用移動設(shè)備來生成并控制增強現(xiàn)實環(huán)境內(nèi)的虛擬代理對象的方法,該方法包括:標識在移動設(shè)備的視野內(nèi)的現(xiàn)實世界對象,基于該現(xiàn)實世界對象的標識獲得三維模型,以及確定該現(xiàn)實世界對象的一個或多個維度。確定一個或多個維度包括確定現(xiàn)實世界對象在第一維度中的第一最大跨度并確定現(xiàn)實世界對象在與第一維度正交的第二維度中的第二最大跨度。該方法進一步包括:使用該三維模型和該一個或多個維度生成虛擬代理對象,確定該虛擬代理對象在增強現(xiàn)實環(huán)境內(nèi)的位置,以及使用移動設(shè)備顯示與該虛擬代理對象相對應(yīng)的一個或多個圖像。該一個或多個圖像被顯示為使得虛擬代理對象表現(xiàn)為被世界鎖定在增強現(xiàn)實環(huán)境內(nèi)的該位置處。
所公開的技術(shù)的一個實施例包括獲得與現(xiàn)實世界對象相關(guān)聯(lián)的三維模型,并確定現(xiàn)實世界對象的一個或多個維度。確定一個或多個維度包括確定現(xiàn)實世界對象在第一維度中的第一最大跨度并確定現(xiàn)實世界對象在與第一維度正交的第二維度中的第二最大跨度。該方法進一步包括:使用該三維模型和該一個或多個維度生成虛擬代理對象;確定虛擬代理對象在增強現(xiàn)實環(huán)境內(nèi)的位置;基于虛擬代理對象在增強現(xiàn)實環(huán)境內(nèi)的位置檢測虛擬代理對象遮擋頭戴式顯示設(shè)備的視野內(nèi)的對象;響應(yīng)于檢測到虛擬代理對象遮擋頭戴式顯示設(shè)備的視野內(nèi)的對象,確定虛擬代理對象應(yīng)當變得部分透明;以及使用頭戴式顯示設(shè)備顯示與虛擬代理對象相對應(yīng)的一個或多個圖像。該一個或多個圖像被顯示為使得虛擬代理對象表現(xiàn)為被世界鎖定在增強現(xiàn)實環(huán)境內(nèi)的該位置處,并使得虛擬代理對象表現(xiàn)為部分透明。
圖6是移動設(shè)備8300(諸如圖1中的移動設(shè)備19)的一個實施例的框圖。移動設(shè)備可以包括已經(jīng)整合了無線接收機/發(fā)射機技術(shù)的膝上型計算機、袖珍計算機、移動電話、hmd、個人數(shù)字助理、以及手持式媒體設(shè)備。
移動設(shè)備8300包括一個或多個處理器8312以及存儲器8310。存儲器8310包括應(yīng)用8330和非易失性存儲8340。存儲器8310可以是任何種類的存儲器存儲介質(zhì)類型,包括非易失性和易失性存儲器。移動設(shè)備操作系統(tǒng)處理移動設(shè)備8300的不同操作,并可包含用于操作的用戶界面,如撥打和接聽電話呼叫、文本消息收發(fā)、檢查語音郵件等。應(yīng)用8330可以是任何種類的程序,如用于照片和/或視頻的相機應(yīng)用、地址簿、日歷應(yīng)用、媒體播放器、因特網(wǎng)瀏覽器、游戲、鬧鐘應(yīng)用、以及其它應(yīng)用。存儲器8310中的非易失性存儲組件8340可以包含諸如音樂、照片、聯(lián)系人數(shù)據(jù)、日程安排數(shù)據(jù)、以及其它文件之類的數(shù)據(jù)。
一個或多個處理器8312與透視顯示器8309進行通信。透視顯示器8309可顯示與現(xiàn)實世界環(huán)境相關(guān)聯(lián)的一個或多個虛擬對象。此一個或多個處理器8312還與下列各項通信:rf發(fā)射機/接收機8306,其又耦合到天線8302;紅外發(fā)射機/接收機8308;全球定位服務(wù)(gps)接收器8365;以及移動/定向傳感器8314,其可以包括加速度計和/或磁力計。rf發(fā)射機/接收機8308可以通過諸如
此一個或多個處理器8312控制無線信號的發(fā)射和接收。在發(fā)射模式期間,此一個或多個處理器8312向rf發(fā)射機/接收機8306提供來自話筒8322的語音信號,或其它數(shù)據(jù)信號。發(fā)射機/接收機8306通過天線8302來發(fā)射信號。響鈴器/振動器8316被用于用信號向用戶通知傳入呼叫、文本消息、日歷提醒、鬧鐘提醒或其他通知。在接收模式期間,rf發(fā)射機/接收機8306通過天線8302接收來自遠程站的語音信號或數(shù)據(jù)信號。所接收到的語音信號被提供給揚聲器8320,而接收到的其它數(shù)據(jù)信號被適當?shù)靥幚怼?/p>
另外,可以使用物理連接器8388來將移動設(shè)備8300連接到諸如ac適配器或加電對接底座之類的外部電源,以便對電池8304進行再充電。物理連接器8388還可被用作到外部計算設(shè)備的數(shù)據(jù)連接。該數(shù)據(jù)連接允許諸如將移動設(shè)備數(shù)據(jù)與另一設(shè)備上的計算數(shù)據(jù)進行同步等操作。
所公開的技術(shù)可用各種其它通用或?qū)S糜嬎阆到y(tǒng)環(huán)境或配置來操作。適合結(jié)合本技術(shù)中使用的公知的計算系統(tǒng)、環(huán)境和/或配置的示例包括,但不限于:個人計算機、服務(wù)器計算機、手持或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機頂盒、可編程消費電子產(chǎn)品、網(wǎng)絡(luò)pc、小型計算機、大型計算機、包含上述系統(tǒng)或設(shè)備中的任一個的分布式計算環(huán)境等。所公開的技術(shù)可在諸如程序模塊等由計算機執(zhí)行的計算機可執(zhí)行指令的通用上下文中描述。一般而言,如此處所述的軟件和程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)和其它類型的結(jié)構(gòu)。硬件或硬件和軟件的組合可以替代在此描述的軟件模塊。
出于本文檔的目的,說明書中提及的“一實施例”、“一個實施例”、“一些實施例”或“另一實施例”可被用于描述不同的實施例并且不一定指代同一實施例。
出于本文的目的,術(shù)語對象的“集合”指的是一個或多個對象的“集合”。
出于本文檔的目的,術(shù)語“基于”可讀作“至少部分地基于”。
出于本文檔的目的,在沒有附加上下文的情況下,使用諸如“第一”對象、“第二”對象和“第三”對象之類的數(shù)值項可能不暗示對象排序,但可改為用于標識目的以標識不同的對象。
盡管用結(jié)構(gòu)特征和/或方法動作專用的語言描述了本發(fā)明主題,但可以理解,所附權(quán)利要求書中定義的主題不必限于上述具體特征或動作。更確切而言,上述具體特征和動作是作為實現(xiàn)權(quán)利要求的示例形式公開的。