專利名稱:用戶界面呈現(xiàn)和交互的制作方法
技術領域:
本發(fā)明涉及與用戶界面進行交互的技木。
背景技術:
計算機技術使得人類能夠以各種方式與計算機進行交互。一種這樣的交互可在人類使用諸如鼠標、跟蹤墊和游戲控制器之類的各種輸入設備來啟動計算設備的用戶界面上的按鈕時發(fā)生
發(fā)明內(nèi)容
在此公開了涉及用戶界面中用戶經(jīng)由深度相機與其進行交互的按壓式和/或拉取式用戶界面元素的各種實施例。例如,所公開的ー個實施例提供計算設備,該計算設備被配置成向顯示器提供包括ー個或多個交互式用戶界面元素的用戶界面的圖像;從深度相機接收包括人類目標的場景的ー個或多個深度圖像;以及,向顯示器提供人類目標的部分作為位于用戶界面內(nèi)的光標的呈遞(rendering),并且也向顯示器提供光標投射到交互式用戶界面元素中的一個或多個上的陰影的呈遞。計算設備還被配置成將人類目標的手的移動轉換成光標,使得人類目標的手的移動導致所選的交互式用戶界面元素經(jīng)由該光標的相應啟動。提供本發(fā)明內(nèi)容以便以簡化形式介紹將在以下具體實施方式
中進ー步描述的ー些概念。本發(fā)明內(nèi)容并不_在標識所要求保護主題的關鍵特征或必要特征,也不_在用于限制所要求保護主題的范圍。此外,所請求保護的主題不限于解決在本公開的任一部分中提及的任何或所有缺點的實現(xiàn)。
圖I示出了根據(jù)本發(fā)明的實施例的用戶界面的使用環(huán)境。圖2示意性地示出根據(jù)本發(fā)明的實施例的用骨架數(shù)據(jù)來建模所觀察的場景中的人類目標。圖3示出了交互式用戶界面元素的ー實施例,并且還示出了光標手與該交互式用戶界面元素相間隔的一實施例。圖4示出圖3的光標手與交互式用戶界面元素相接觸。圖5示出了圖3的光標手正與圖3的實施例的交互式用戶界面元素進行交互。圖6示出了用戶界面空間中用于經(jīng)由用戶界面光標將陰影投射在用戶界面上的虛擬照明安排的一實施例的示意性圖示。圖7示出了用戶界面空間中用于經(jīng)由用戶界面光標將陰影投射在用戶界面上的虛擬照明安排的另一個實施例的示意性圖示。圖8示出了描繪操作用戶界面的方法的一實施例的流程圖。圖9示出了計算系統(tǒng)的ー實施例的框圖。
具體實施例方式圖I示出了計算設備102,該計算設備102可以用于玩各種不同的游戲、播放ー個或多個不同的媒體類型、和/或控制或操縱非游戲應用和/或操作系統(tǒng)。圖I還示出了諸如電視機或計算機監(jiān)視器之類的可用于向用戶呈現(xiàn)游戲視覺和/或其他輸出圖像的顯示設備104。作為使用計算設備102的ー個示例,顯示設備104可用于以由深度相機112所獲得的人類目標110的手108的圖像的呈遞的形式來可視地呈現(xiàn)如圖I所示的用戶界面光標106。在這個示例中,人類目標110經(jīng)由手108的移動來控制光標手106。通過這種方式,人類目標110可例如通過按壓和/或拉取諸如按鈕(其中之一被示為按鈕114)之類的交互式元素來與用戶界面113進行交互。在一些實施例中,其中人類跟蹤系統(tǒng)可跟蹤手指移動,人類目標110可能能夠控制光標手106的各個手指的移動。為了幫助人類目標110將手108的運動更直觀地轉換成光標手106,計算設備102可被配置成呈遞光標手106在用戶界面113上的一個或多個陰影116以提供與光標手106相對于按鈕的位置有關的深度和位置信息。參考圖9更詳細地討論了深度相機112。盡管在此是在光標處于通過目標玩家的深度圖像來呈遞的手的形式的上下文中公開的,但應該理解光標可采用任何其他合適的形式,并且可跟蹤或建模任何其他合適的身體部位,諸如大腿(例如,針對以斜靠的身體位置來玩的游戲)或人類目標的其他部位。此外,在一些實施例中,根據(jù)本發(fā)明,可將人類目標的身體的較大部位的呈遞以及其陰影顯示為用戶界面中的光標和光標陰影。這可幫助例如向人類目標提供他們需要向前邁步以與用戶界面元素進行交互的反饋。正如手的陰影可幫助用戶確定他們手的位置一樣,投射整個身體的陰影可幫助用戶調(diào)整他們身體的位置。此外,這種陰影可出于審美的理由而被投射。另外,在一些實施例中,也可將人類目標正拿著的物體呈遞為光標的一部分。此外,在一些實施例中,光標可具有更多的概念形式,諸如箭頭或其他簡單的形狀。人類目標110在此被示為所觀察的場景內(nèi)的游戲玩家。經(jīng)由深度相機112來跟蹤人類目標110,使得人類目標110的移動可被計算設備102解釋成可用于移動光標手106以選擇和啟動用戶界面元素以及可用于影響計算設備102正執(zhí)行的游戲或其他程序的控制。換言之,人類目標Iio可使用他或她的移動來控制游戲。 深度相機112還可用于將目標移動解釋成游戲領域之外的操作系統(tǒng)和/或應用控制。操作系統(tǒng)和/或應用的基本上任何可控方面都可以由人類目標110的移動來控制。圖I中所示出的場景是作為示例來提供的,但并不意味著以任何方式進行限制。相反,所示出的場景g在展示可以在不背離本公開的范圍的情況下應用于各種各樣不同的應用的一般概念。此處描述的方法和過程可以結合到各種不同類型的計算系統(tǒng)。圖I示出了計算設備102、顯示設備104和深度相機112形式的非限制性示例。以下參考圖9更詳細地描述這些組件。圖2顯示了簡明的處理流水線,其中圖I的人類目標110被建模成虛擬骨架(或人類目標110的其他表示,諸如化身),該虛擬骨架可用于呈遞要在顯示設備104上顯示和/或用作用于控制游戲、應用和/或操作系統(tǒng)的其他方面的控制輸入的光標手106的圖像??梢岳斫猓c圖2中所描繪的那些步驟相比,處理流水線可包括附加的步驟和/或替換步驟,而不背離本發(fā)明的范圍。還應當注意,一些實施例可只從深度圖像建模骨架的一部分。此外,一些實施例可利用諸如手跟蹤或甚至只是運動跟蹤之類的跟蹤系統(tǒng)以用于如此處所描述的用戶界面交互。如圖2所示,人類目標110可通過深度相機112來成像。深度相機112可為每ー像素確定所觀察的場景中的表面相對于深度相機的深度。在不偏離本公開的范圍的情況下,可以使用基本上任何深度尋·找(depth finding)技術。參考圖9更詳細地討論了示例深度尋找技木。 為每個像素確定的深度信息可用于生成深度圖204。這樣的深度圖204可采用任何合適的數(shù)據(jù)結構的形式,包括但不限于包括所觀察的場景的每個像素的深度值的矩陣。在圖2中,深度圖204被示意性地示為人類目標110的輪廓的像素化網(wǎng)格。這ー 例示是出于理解簡明的目的、而不是出于技術準確性的目的??梢岳斫?,深度圖一般包括所有像素(不僅是對人類目標20進行成像的像素)的深度信息,并且深度相機112的視角不會得到圖2中所描繪的輪廓。虛擬骨架202可從深度圖204導出,以提供人類目標110的機器可讀表示。換言之,從深度圖204導出虛擬骨架202以對人類目標110建模。虛擬骨架202可以按任何合適的方式從深度圖204中導出。例如,在某些實施例中,可將ー個或多個骨架擬合算法應用于深度圖204。應該理解,本發(fā)明與任何合適的骨架建模技術兼容。虛擬骨架202可包括多個關節(jié),每ー關節(jié)對應于人類目標110的一部分。在圖2中,虛擬骨架202被示為具有多個關節(jié)的線條畫。應該理解,這種圖示是出于理解簡明的目的,而不是出于技術準確性的目的。根據(jù)本發(fā)明的虛擬骨架可包括基本上任何數(shù)量的關節(jié),每個關節(jié)都可與基本上任何數(shù)量的參數(shù)(例如三維關節(jié)位置、關節(jié)旋轉、對應身體部位的身體姿勢(例如手張開、手合上等)等)相關聯(lián)。應當理解,虛擬骨架可采取如下數(shù)據(jù)結構的形式該數(shù)據(jù)結構包括多個骨架關節(jié)中的每個關節(jié)的ー個或多個參數(shù)(例如包含每個關節(jié)的X位置、y位置、z位置和旋轉的關節(jié)矩陣)。在一些實施例中,可使用其他類型的虛擬骨架(例如線框、ー組形狀圖元等等)。虛擬骨架202可用于在顯示設備104上將光標手106的圖像呈遞為人類目標110的手108的視覺表示。由于虛擬骨架202對人類目標110建摸,并且對光標手106的呈遞是基于虛擬骨架202的,因此光標手106用作人類目標110的實際手的可視數(shù)字表示。由此,光標手106在顯示設備104上的移動反映人類目標110的移動。此外,可從第一人稱視點或近第一人稱視野(例如,從在某種程度上在實際的第一人稱視角后面的視角)顯示光標手106,使得光標手106具有與人類目標110的手類似或相同的方向。這可幫助人類目標110更直觀和更容易地操縱光標手106。盡管本發(fā)明是在骨架映射的上下文中公開的,但是應當理解,可使用人類目標的運動和深度跟蹤的任何其他合適的方法。此外,應當理解,如此處所用的“第一人稱視角”、“第一人稱視野”之類的術語表示其中被呈遞為光標的身體部位的方向靠近或匹配該用戶的身體部位從用戶的視角而言的方向的任何視角。如以上參考圖I所提到的,光標手106的陰影可被呈遞在用戶界面113上以提供與光標手106相對于按鈕114或其他交互式用戶界面元素的位置有關的深度和位置信息。與其他基于跟蹤的3D用戶界面相比,陰影的使用與對人類目標110的實際手108的圖像的呈遞相結合可便利于人類目標與用戶界面的交互。例如,與經(jīng)由深度相機的用戶界面或其他此類的基于人類跟蹤的3D用戶界面進行交互的ー個困難涉及向用戶提供足夠的與輸入設備和虛擬界面間的映射有關的空間反饋。為使這種交互更直觀地發(fā)生,用戶擁有真實世界中的移動如何映射成屏幕上交互設備的移動的精確思維模型是有用的。此外,向用戶顯示有關光標手在哪里與交互式元素相關的反饋是有用的,該反饋可能是描繪在2D屏幕上的困難信息。最后,用戶界面提供與用來與屏幕上的物體進行接洽的用戶動作的特性有關的視覺線索是有用的。將通過人類目標的骨架數(shù)據(jù)或其他表示所呈遞的光標的使用與由該光標投射在用戶界面控件上的陰影的呈遞相結合可幫助解決這些問題。例如,通過根據(jù)人類目標自身的手移動、形狀、姿態(tài)等來建模光標手的移動、形狀、姿態(tài)和/或其他方面,用戶可直觀地控制光標手。同樣,通過將光標手的一個或多個陰影投射在用戶界面控件上,向用戶提供了與光標手相對于用戶界面控件的位置有關的反饋。例如,當用戶將光標手移近或移離用戶界面的交互式元素時,一個或多個陰影可相應地與手會聚或分離,由此提供了位置和深度反饋,并且還提示用戶可通過用光標手接觸控件以例如按壓、拉取或以其他方式啟動控件來與控件進行交互。
相反,利用深度相機輸入來操作用戶界面的其他方法可能無法解決這些顧慮。例如,呈現(xiàn)用戶界面的ー個潛在方法可以是將用戶目標的三維運動映射至ニ維屏幕空間。然而,犧牲第三個輸入維度可減少與用戶界面的潛在交互性的范圍和效率,并且還可將把三維運動轉換成所期望的ニ維響應的嚴重思想負擔施加于用戶,由此潛在地増加了目標化用戶界面控件的困難。由此,用戶可發(fā)現(xiàn)在沒有通過光標手的使用并結合陰影的呈遞所提供的反饋的情況下維持與用戶界面元素的接洽是困難的。例如,嘗試按壓用戶界面按鈕的用戶可發(fā)現(xiàn)光標會由干與手移動如何被映射成用戶界面動作有關的模糊性而滑離用戶界面元素。同樣,在三維輸入被映射至三維用戶界面的情況下,用戶在手遮蔽按鈕時可經(jīng)歷深度感知問題,該問題存在與手在從眼睛到按鈕的線路上的位置有關的模糊性。這可導致用戶無法目標化用戶界面元素。以三維運動來作出用戶輸入的困難的部分可由于在將身體運動轉換成ニ維或三維用戶界面響應時可施加的多于ー個思維模型的存在而發(fā)生。例如,在ー個模型中,可通過將來自深度相機的光線投影到屏幕平面上并縮放坐標平面以使其相互匹配來確定用戶界面光標的位置。在這個模型中,用戶通過使手或其他操縱器沿著屏幕平面的法線移動來執(zhí)行三維用戶輸入(例如,具有按壓和/或拉取分量的用戶輸入)。在另ー模型中,可將手相對于肩部的轉動俯仰和轉動偏航映射至屏幕平面。在這種徑向模型中,用戶通過直接從肩部到用戶界面元素的按壓而非垂直于屏幕的按壓來執(zhí)行三維用戶輸入。在這兩種模型的任ー個中,使用戶在沒有除光標運動以外的反饋的情況下執(zhí)行三維用戶輸入是困難的。因此,用戶的手的圖像作為光標的呈遞并結合光標手的陰影的投射可提供允許用戶隱式地推斷這些模型中的哪ー個是正確的有價值的反饋,并且因此便于作出這些輸入。圖3-5示出了當光標手106移向并接觸按鈕114時用戶界面113的外觀。盡管單個光標手被示出正與按鈕114進行交互,但是應當理解,在一些實施例中兩個或更多個手可同時與按鈕114交互,這取決于存在多少用戶以及所呈現(xiàn)的用戶界面的特性。首先,圖3示出了光標手106與按鈕相間隔。在這種配置中,陰影116在按鈕114的表面上從光標手106橫向移位,由此提供了光標手106正懸浮在哪個按鈕114上有關的視覺反饋,以及與光標手106和按鈕114間的間隔有關的視覺反饋。這可幫助用戶免于啟動不期望的按鈕。接著,圖4顯示了光標手106正接觸按鈕,但按鈕114尚未被按下。如所示的,陰影116和光標手106已會聚在按鈕114的表面上,因此提供了與這些元素間的間隔的改變有關的反饋。在所描繪的實施例中,顯示了單個陰影,但是應當理解,可由光標手106投射兩個或更多個陰影,如以下將更詳細的描述的。接著,圖5示出了光標手106按下了按鈕114。在光標手106接合按鈕114吋,按鈕114可被示為正被逐漸地按壓到屏幕之中,由此提供了按鈕正被接合的連續(xù)視覺反饋。此外,部分地壓下按鈕也向用戶提供了關于將按壓物體以繼續(xù)/完成啟動的方向的視覺反饋。這可幫助減少用戶在接合期間“滑離”按鈕114的機會。此外,用戶可通過成功執(zhí)行這類輸入而獲得信心,該信心可幫助用戶更快地完成輸入以及執(zhí)行將來的輸入。光標手106和按鈕114間的碰撞檢測可通過從骨架跟蹤數(shù)據(jù)所確定的手模型的點 云(例如,定義用戶的手的形狀的點的x、y、z像素位置)或者以任何其他合適的方式來執(zhí)行。盡管圖3-5描繪了可按壓的用戶界面按鈕,但是應當理解,可使用具有垂直于顯示設備104的屏幕的平面的任何合適的移動分量的任何合適的交互式用戶界面元素,包括但不限于可按壓和/或可拉取元素。此外,盡管在圖3-5中將光標手描繪成用戶的手的實線呈遞,但是應當理解,可使用任何其他合適的呈遞。例如,可通過以下方式將光標手描繪成條紋呈遞通過使用戶的手的點云中的水平點行和垂直點列連接、通過使點云的行和列連接以形成柵格呈遞、通過顯示在點云的姆一點處的點精靈(point sprite)、通過體素(voxel)呈遞或以任何其他合適的方式。如上所提到的,任何合適數(shù)量的光標手的陰影可用于顯示位置和深度數(shù)據(jù)。例如,在一些實施例中可使用單個陰影,然而在其他實施例中可使用兩個或更多個陰影。此外,可通過定位在相對于光標手和/或交互式用戶界面元素的任何合適的角度和/或距離的任何ー種或多種合適類型的虛擬光源來生成陰影。例如,圖6示出了如由虛擬點光源600和602引起的兩個陰影的生成的示意性描繪。這些光源可被配置為模仿室內(nèi)照明。光標手106由以標記為方框的“手”來示意性地示出,其表示例如表示人類目標手的點云。如所示出的,取決于光標手106的位置,虛擬點光源602和604可處于距光標手106的不同距離處和/或相對于光標手106的不同角度處。當光標手106在用戶界面內(nèi)移動時,這可有助于提供附加的位置信息。用于從光標手106生成一個或多個陰影的虛擬光源可被配置成模仿熟悉的照明條件,以便于用戶對陰影的直觀理解。例如,圖6的實施例可模仿室內(nèi)的懸吊照明,諸如起居室照明。圖7示出另ー個虛擬照明示意圖,其中一個虛擬點光源700和一個虛擬定向光源702模仿懸吊光和來自窗ロ的陽光??梢岳斫?,圖6和7的實施例是出于不例的目的而呈現(xiàn)的,并且不g在以任何方式進行限制。圖8示出了描繪操作用戶界面的方法800的一實施例的流程圖。應該理解,方法800可被實現(xiàn)為存儲在可移動或不可移動的計算機可讀存儲介質上的計算機可讀可執(zhí)行指令。方法800包括在802處,向顯示設備提供或在其上顯示包括ー個或多個交互式元素的用戶界面的圖像。如804處所指示的,交互式用戶界面元素可包括具有垂直于顯示屏幕的平面的運動分量的按壓式和/或拉取式元素,或者可提供任何其他合適的反饋。接著,在806處,方法800包括接收三維輸入,諸如包括人類目標的場景的深度圖像。然后,方法800包括,在808處,向顯示設備提供并在其上顯示人類目標的手作為位于用戶界面內(nèi)的光標手的呈遞??墒褂萌魏魏线m的呈遞,包括但不限于網(wǎng)格呈遞810、條紋呈遞812、體素呈遞813、點精靈呈遞814、實心呈遞815等。方法800接著包括在816處,向顯示設備提供并在其上顯示光標手投射在用戶界面元素上的陰影的呈遞。如818處所指示的,在一些實施例中可顯示多個陰影,而在其他實施例中可顯示單個陰影??山?jīng)由如820處所指示的虛擬定向光、由822處所指示的虛擬點源光或以任何其他合適的方式來生成陰影。
接著,方法800包括在824處,將人類目標手的移動轉換成光標手朝著所選用戶界面元素的移動。隨著人類目標手的移動的繼續(xù),方法800包括在826處,由于光標手、陰影和用戶界面元素間的幾何關系,在光標手更移近所選用戶界面元素時,顯示光標手與光標手的一個或多個陰影的會聚,并在828處,經(jīng)由光標手移動用戶界面元素或導致用戶界面元素的其他合適的響應啟動。在一些實施例中,可將以上所描述的方法和過程捆綁到包括一個或多個計算機的計算系統(tǒng)。具體而言,此處所述的方法和過程可被實現(xiàn)為計算機應用、計算機服務、計算機API、計算機庫、和/或其他計算機程序產(chǎn)品。圖9示意性示出了可以執(zhí)行上述方法和過程之中的一個或多個的非限制性計算系統(tǒng)900。以簡化形式示出了計算系統(tǒng)900。應當理解,可使用基本上任何計算機架構而不背離本公開的范圍。在不同的實施例中,計算系統(tǒng)900可以采取大型計算機、服務器計算機、臺式計算機、膝上型計算機、平板計算機、家庭娛樂計算機、網(wǎng)絡計算設備、移動計算設備、移動通信設備、游戲設備等等的形式。計算系統(tǒng)900可包括邏輯子系統(tǒng)902、數(shù)據(jù)保持子系統(tǒng)904、顯示子系統(tǒng)906和/或捕捉設備908。計算系統(tǒng)可任選地包括未示出在圖9中的組件,并且/或者示出在圖9中的某些組件可以是未被整合到計算系統(tǒng)中的外圍組件。邏輯子系統(tǒng)902可包括被配置為執(zhí)行ー個或多個指令的ー個或多個物理設備。例如,邏輯子系統(tǒng)可被配置為執(zhí)行ー個或多個指令,該ー個或多個指令是ー個或多個應用、月艮務、程序、例程、庫、對象、組件、數(shù)據(jù)結構、或其它邏輯構造的部分。可實現(xiàn)此類指令以執(zhí)行任務、實現(xiàn)數(shù)據(jù)類型、變換ー個或多個設備的狀態(tài)、或以其他方式得到所需結果。邏輯子系統(tǒng)可包括被配置成執(zhí)行軟件指令的一個或多個處理器。另外地或替換地,邏輯子系統(tǒng)可包括被配置成執(zhí)行硬件或固件指令的一個或多個硬件或固件邏輯機器。邏輯子系統(tǒng)的處理器可以是單核或多核,且在其上執(zhí)行的程序可被配置為并行或分布式處理。邏輯子系統(tǒng)可以任選地包括遍布兩個或更多設備的獨立組件,所述設備可遠程放置和/或被配置為進行協(xié)同處理。該邏輯子系統(tǒng)的ー個或多個方面可被虛擬化并由以云計算配置進行配置的可遠程訪問的聯(lián)網(wǎng)計算設備執(zhí)行。數(shù)據(jù)保持子系統(tǒng)904可包括ー個或多個物理的、非瞬時的設備,這些設備被配置成保持數(shù)據(jù)和/或可由該邏輯子系統(tǒng)執(zhí)行的指令,以實現(xiàn)此處描述的方法和過程。在實現(xiàn)這樣的方法和過程時,可以變換數(shù)據(jù)保持子系統(tǒng)904的狀態(tài)(例如,以保持不同的數(shù)據(jù))。數(shù)據(jù)保持子系統(tǒng)904可包括可移動介質和/或內(nèi)置設備。數(shù)據(jù)保持子系統(tǒng)904可以包括光學存儲器設備(例如,⑶、DVD、HD-DVD、藍光盤等)、半導體存儲器設備(例如,RAM、EPROM, EEPROM等)和/或磁存儲器設備(例如,硬盤驅動器、軟盤驅動器、磁帶驅動器、MRAM等)。數(shù)據(jù)保持子系統(tǒng)904可包括具有以下特性中的ー個或多個特性的設備易失性、非易失性、動態(tài)、靜態(tài)、讀/寫、只讀、隨機存取、順序存取、位置可尋■址、文件可尋■址、以及內(nèi)容可尋址。在某些實施例中,可以將邏輯子系統(tǒng)902和數(shù)據(jù)保持子系統(tǒng)904集成到一個或更多個常見設備中,如專用集成電路或片上系統(tǒng)。圖9還示出以可移動計算機可讀存儲介質910形式的數(shù)據(jù)保持子系統(tǒng)的一方面,可移動計算機可讀存儲介質可用于存儲和/或傳輸可執(zhí)行以實現(xiàn)本文描述的方法和過程的數(shù)據(jù)和/或指令。可移動計算機可讀存儲介質910可以采?、恰VD、HD-DVD、藍光盤、EEPROM和/或軟盤等形式??梢悦靼祝瑪?shù)據(jù)保持子系統(tǒng)904包括ー個或多個物理的、非瞬時的設備。相反,在一些實施例中,本文描述的指令的各方面可以按暫態(tài)方式通過不由物理設備在至少有限持續(xù)時間期間保持的純信號(例如電磁信號、光信號等)傳播。此外,與本發(fā)明有關的數(shù)據(jù)和/或其他形式的信息可以通過純信號傳播。 術語“模塊”可用于描述被實現(xiàn)來執(zhí)行ー個或多個特定功能的計算系統(tǒng)900的一個方面。在某些情況下,可通過邏輯子系統(tǒng)902執(zhí)行由數(shù)據(jù)保持子系統(tǒng)904所保持的指令來實例化這ー模塊。應該理解,可從相同的應用、代碼塊、對象、例程、和/或功能實例化不同模塊和/或引擎。同樣,在某些情況下,可通過不同的應用、代碼塊、對象、例程、和/或功能來實例化相同的模塊和/或引擎。如此處所述,計算系統(tǒng)900包括深度圖像分析模塊912,該深度圖像分析模塊912被配置成跟蹤人類在固定的、世界空間坐標系中的世界空間姿態(tài)。術語“姿態(tài)”指人類的位置、方向、身體安排等。如此處所述,計算系統(tǒng)900包括交互模塊914,該交互模塊914被配置成用可移動的、界面空間坐標系來建立虛擬交互區(qū),該可移動的、界面空間坐標系跟蹤人類并相對于固定的、世界空間坐標系移動。如此處所述,計算系統(tǒng)900包括變換模塊916,該變換模塊916被配置成將在固定的、世界空間坐標系中定義的位置變換成在可移動的、界面空間坐標系中定義的位置。計算系統(tǒng)900還包括顯示模塊918,該顯示模塊918被配置成輸出顯示信號,該顯示信號用于在與可移動的、界面空間坐標系中定義的位置相對應的桌面空間坐標處顯示界面元素。計算系統(tǒng)900包括用戶界面模塊917,該模塊917被配置成將光標在用戶界面中的移動轉換成涉及界面元素的動作。作為非限制性示例,用戶界面模塊917可分析光標相對于用戶界面的按壓和/或拉取元素的移動,以確定何時這些按鈕要被移動。顯示子系統(tǒng)906可用于呈現(xiàn)由數(shù)據(jù)保持子系統(tǒng)904所保持的數(shù)據(jù)的可視表示。由于此處所描述的方法和過程改變由數(shù)據(jù)保持子系統(tǒng)保持的數(shù)據(jù),并由此變換數(shù)據(jù)保持子系統(tǒng)的狀態(tài),因此同樣可以變換顯示子系統(tǒng)906的狀態(tài)以在視覺上表示底層數(shù)據(jù)中的改變。作為ー個非限制性示例,可通過顯示子系統(tǒng)906以響應于用戶在物理空間中的移動而在虛擬桌面中改變位置的界面元素(例如,光標)的形式來反映此處描述的目標識別、跟蹤和分祈。顯示子系統(tǒng)906可包括利用基本上任何類型的技術的ー個或多個顯示設備,包括但不限于ニ維顯示器,諸如電視機、監(jiān)視器、移動設備、仰視(heads-up)顯示器等,并包括三維顯示器,諸如三維電視機(例如,用戴在眼睛上的附件來顯示)、虛擬現(xiàn)實眼鏡或其他戴在頭上的顯示器等??蓪⑦@些顯示設備與邏輯子系統(tǒng)902和/或數(shù)據(jù)保持子系統(tǒng)904 —起組合在共享封裝中,或這些顯示設備可以是如圖I所示的外圍顯示設備。計算系統(tǒng)900還包括被配置成獲得ー個或多個目標的深度圖像的捕捉設備908。捕捉設備908可被配置成通過任何合適的技術(例如飛行時間、結構化光、立體圖像等)捕捉具有深度信息的視頻。這樣,捕捉設備908可包括深度相機(諸如圖I的深度相機112)、攝像機、立體攝像機、和/或其他合適的捕捉設備。例如,在飛行時間分析中,捕捉設備908可以向目標發(fā)射紅外光,然后使用傳感器來檢測從目標的表面反向散射的光。在一些情況下,可以使用脈沖式紅外光,其中可以測量出射光脈沖和相應的入射光脈沖之間的時間并將該時間用于確定從該捕捉設備到目標上的特定位置的物理距離。在一些情況下,出射光波的相位可以與入射光波的相位相比較以確定相移,并且該相移可以用于確定從該捕捉設備到目標上的特定位置的物理距離。在另ー示例中,飛行時間分析可用于通過經(jīng)由諸如快門式光脈沖成像之類的技術分析反射光束隨時間的強度,來間接地確定從該捕捉設備到目標上的特定位置的物理距離。 在另ー示例中,捕捉設備908可利用結構化光分析來捕捉深度信息。在這樣的分析中,圖案化光(即被顯示為諸如網(wǎng)格圖案或條紋圖案之類的已知圖案的光)可以被投影到目標上。在目標的表面上,該圖案可能變成變形的,并且可以分析該圖案的這種變形以確定從該捕捉設備到目標上的特定位置的物理距離。在另ー示例中,捕捉設備可以包括從不同的角度查看目標的兩個或更多個物理上分開的相機,以獲得視覺立體數(shù)據(jù)。在這些情形中,可分解可視立體數(shù)據(jù)以生成深度圖像。在其他實施例中,捕捉設備908可利用其他技術來測量和/或計算深度值。此外,捕捉設備908可以將計算出的深度信息組織為“Z層”,即與從深度相機沿其視線延伸到觀察者的Z軸垂直的層。在某些實施例中,可將兩個或更多個像機整合到ー個集成捕捉設備中。例如,可將深度像機和攝像機(例如RGB攝像機)整合到共同的捕捉設備中。在某些實施例中,可協(xié)同使用兩個或更多個分開的捕捉設備。例如,可使用深度像機和分開的攝像機。當使用攝像機吋,該攝像機可用于提供目標跟蹤數(shù)據(jù)、對目標跟蹤進行糾錯的確認數(shù)據(jù)、圖像捕捉、面部識別、對手指(或其他小特征)的高精度跟蹤、光感測和/或其他功能。在其他實施例中,可使用兩個分開的深度傳感器。要理解,至少ー些目標分析和跟蹤操作可以由ー個或多個捕捉設備的邏輯機來執(zhí)行。捕捉設備可以包括被配置成執(zhí)行ー個或多個目標分析和/或跟蹤功能的ー個或多個板載處理単元。捕捉設備可包括固件以幫助更新這樣的板上處理邏輯。計算系統(tǒng)900可任選地包括諸如控制器920和控制器922之類的ー個或多個輸入設備。輸入設備可被用于控制計算系統(tǒng)的操作。在游戲的上下文中,諸如控制器920和/或控制器922之類的輸入設備可被用于控制游戲的那些不是通過這里所述的目標識別、跟蹤和分析方法和過程來控制的方面。在某些實施例中,諸如控制器920和/或控制器922之類的輸入設備可包括可用于測量控制器在物理空間中的移動的加速計、陀螺儀、紅外目標/傳感器系統(tǒng)等中的ー個或多個。在某些實施例中,計算系統(tǒng)可任選地包括和/或利用輸入手套、鍵盤、鼠標、跟蹤墊、軌跡球、觸摸屏、按鈕、開關、撥盤、和/或其他輸入設備。如將理解的,目標識別、跟蹤和分析可被用于控制或擴充游戲或其他應用的常規(guī)上由諸如游戲控制器之類的輸入設備所控制的方面。在某些實施例中,這里所述的目標跟蹤可被用作對其他形式的用戶輸入的完全替代,而在其他實施例中,這種目標跟蹤可被用于補充一個或多個其他形式的用戶輸入。應該理解,此處所述的配置和/或方法在本質上是示例性的,并且,由于可能存在多個變體,所以這些特定實施例或示例不具有限制意義。本文中所述的具體例程或方法可表示任意數(shù)量的處理策略中的ー個或多個。由此,所示的各個動作可按所述的順序執(zhí)行、按其他順序執(zhí)行、并行地執(zhí)行、或者在某些情況下被省略。同樣,可改變上述過程的次序。本公開的主題包括各種過程、系統(tǒng)和配置的所有新穎和非顯而易見的組合和子組 合,和此處所公開的其他特征、功能、動作、和/或特性、以及其任何和全部等效物。
權利要求
1.ー種計算系統(tǒng)(900),包括 邏輯子系統(tǒng)(902);以及 數(shù)據(jù)保持子系統(tǒng)(904),它包括存儲于其中的可由所述邏輯子系統(tǒng)執(zhí)行的指令以 向顯示器提供(802)包括ー個或多個交互式用戶界面元素(804)的用戶界面的圖像; 從深度相機接收(806)包括人類目標的場景的ー個或多個深度圖像; 向所述顯示器提供(808)所述人類目標的部分作為位于所述用戶界面內(nèi)的光標的呈遞,并且還向所述顯示器提供(816)所述光標投射在所述交互式用戶界面元素中的ー個或多個上的陰影的呈遞;以及 將所述人類目標的手的移動轉換(828)成所述光標,使得所述人類目標的手的移動導致所選的交互式用戶界面元素經(jīng)由所述光標的相應啟動。
2.如權利要求I所述的計算設備,其特征在于,所述指令還可被執(zhí)行來在所述光標朝著所述所選的交互式用戶界面元素移動時,顯示所述光標與所述光標在所述所選的交互式用戶界面元素上的陰影的會聚。
3.如權利要求I所述的計算設備,其特征在于,所述指令還可被執(zhí)行來在所述陰影在由虛擬點光源和虛擬定向光源中的一個或多個引起時呈遞所述陰影。
4.如權利要求I所述的計算設備,其特征在于,所述指令還可被執(zhí)行來以通過所述人類目標的手的深度圖像來呈遞的手的形式來顯示所述光標。
5.如權利要求I所述的計算設備,其特征在于,所述指令還可被執(zhí)行來向ニ維顯示器和三維顯示器中的ー個或多個提供所述用戶界面的圖像、光標手和陰影。
6.如權利要求I所述的計算設備,其特征在于,所述指令還可被執(zhí)行來將所述人類目標的手的移動轉換成所述光標,使得所述人類目標的手的移動導致所述光標手接觸所述所選的交互式用戶界面元素,并且顯示所述所選的交互式用戶界面元素的相應按壓和/或拉取移動。
7.在包括計算設備、顯示器和深度相機的計算系統(tǒng)中,ー種操作用戶界面的方法(800),所述方法包括 在所述顯示器上顯示(802)包括一個或多個按壓式和/或拉取式用戶界面元素(804)的用戶界面的圖像; 從所述深度相機接收(806)包括人類目標的場景的ー個或多個深度圖像; 顯示所述人類目標的手作為位于所述用戶界面內(nèi)的光標手的呈遞(808),并且還顯示(816)所述光標手投射在所述按壓式和/或拉取式用戶界面元素中的ー個或多個上的陰影的呈遞; 將所述人類目標的手的移動轉換(824)成所述光標手,使得所述人類目標的手的移動被顯示(826)成所述光標手朝著所選的按壓式和/或拉取式用戶界面元素的運動以及所述光標手與所述光標手在所述所選的按壓式和/或拉取式用戶界面元素上的陰影的會聚;以及 在所述光標手接觸所述所選的按壓式和/或拉取式用戶界面元素之后,顯示(828)所述所選的按壓式和/或拉取式用戶界面元素的按壓和/或拉取移動。
8.如權利要求7所述的方法,其特征在于,還包括顯示所述光標手的多個陰影的呈遞。
9.如權利要求8所述的方法,其特征在于,還包括顯示多個手作為多個光標手的呈遞。
10.如權利要求7所述的方法,其特征在于,還包括將所述光標手顯示成如下各項中的ー個或多個網(wǎng)格呈遞、條紋呈遞、體素呈遞和所述人類目標的手的點云的點精靈呈遞。
全文摘要
本發(fā)明涉及用戶界面呈現(xiàn)和交互。公開了涉及用戶界面中用戶經(jīng)由深度相機與其進行交互的按壓式和/或拉取式用戶界面元素的各種實施例。一個實施例提供計算設備,該計算設備被配置成顯示包括一個或多個交互式用戶界面元素的用戶界面的圖像;從深度相機接收包括人類目標的場景的一個或多個深度圖像;從深度相機接收包括人類目標的場景的一個或多個深度圖像;以及,顯示人類目標的部分作為位于用戶界面內(nèi)的光標的呈遞,并且還向顯示器提供光標投射在交互式用戶界面元素中的一個或多個上的陰影的呈遞。計算設備還被配置成將人類目標手的移動轉換成光標,使得人類目標手的移動導致所選的交互式用戶界面元素經(jīng)由該光標的相應啟動。
文檔編號G06F3/01GK102693006SQ20121004455
公開日2012年9月26日 申請日期2012年2月24日 優(yōu)先權日2011年2月25日
發(fā)明者J·安德森, R·福布斯 申請人:微軟公司