TW201346644A - 控制項展示 - Google Patents

控制項展示 Download PDF

Info

Publication number
TW201346644A
TW201346644A TW101139937A TW101139937A TW201346644A TW 201346644 A TW201346644 A TW 201346644A TW 101139937 A TW101139937 A TW 101139937A TW 101139937 A TW101139937 A TW 101139937A TW 201346644 A TW201346644 A TW 201346644A
Authority
TW
Taiwan
Prior art keywords
computing device
inputs
applications
application
computer readable
Prior art date
Application number
TW101139937A
Other languages
English (en)
Other versions
TWI560579B (en
Inventor
Brian J Ewanchuk
Lawrence Olson
Michael J Hillberg
Akhilesh Kaza
Jeremy B Gup
Austin M Lamb
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of TW201346644A publication Critical patent/TW201346644A/zh
Application granted granted Critical
Publication of TWI560579B publication Critical patent/TWI560579B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/038Indexing scheme relating to G06F3/038
    • G06F2203/0381Multimodal input, i.e. interface arrangements enabling the user to issue commands by simultaneous use of input devices of different nature, e.g. voice plus gesture on digitizer

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

描述了控制項展示技術。在一或多個實現中,由計算設備作出關於複數個控制項中的哪些對應於使用一或多個磁力計、照相機或麥克風偵測到的一或多個輸入的決定。決定的結果由計算設備展示給該計算設備執行的一或多個應用程式。

Description

控制項展示 相關申請案之交叉引用
本申請案根據專利法主張於2011年12月5日提出申請的標題為「Extensible Model to Control UI with Voice or Motion Sensors」之美國臨時申請案第61/567,026號之優先權權益,該美國臨時申請案以引用之方式整體併入本文。
本發明涉及控制項展示。
使用者能夠與計算設備進行互動的方式正在不斷增加。例如,與計算設備互動最初使用文字來執行。因此,使用者通常使用鍵盤輸入文字並查看計算設備同樣以文字方式的輸出。
該等技術隨後被發展到圖形化使用者介面,在其中使用者可與諸如滑鼠的游標控制設備互動。技術繼續發展,圖形化使用者介面被配置來辨識使用者作出的手勢以向計算設備提供輸入。例如,手勢可被用來選擇物件,與視訊遊戲互動等等。然而,該等技術一般上依賴於應用程式本身執行的操作,諸如辨識哪些動作對應於哪些手勢,並因此可能使得應用程式開發者對應用程式的編碼變得複雜。
描述了控制項展示技術。在一或多個實現中,由計算設備作出關於複數個控制項中的哪些對應於使用一或多個磁力計、照相機或麥克風偵測到的一或多個輸入的決定。決定的結果由計算設備展示給該計算設備執行的一或多個應用程式。
在一或多個實現中,系統由計算設備實現。該系統包括可在該計算設備的硬體上執行的一或多個應用程式以及至少部分使用該電腦設備的硬體實現的模組。該模組被配置來接收描述未使用觸摸而被偵測到的使用者互動的一或多個輸入,決定一或多個應用程式中的哪些是一或多個輸入的目標,將一或多個輸入轉換為可由被定為目標的應用程式消費的事件,並將該等事件展示給被定為目標的應用程式。
在一或多個實現中,一或多個電腦可讀取儲存媒體包括儲存於其上的指令,回應於由計算設備的執行,該指令使得計算設備實現作業系統,該作業系統被配置用來經由一或多個控制項的應用程式設計介面展示一或多個事件,該作業系統從接收自計算設備的一或多個照相機的輸入來標識該一或多個控制項。
提供本發明內容以便以簡化形式介紹將在以下具體實施方式中進一步描述的一些概念。本發明內容既不意慾標識要求保護的標的的關鍵特徵或必要特徵,亦不意慾用於說明決定要求保護的標的的範圍。
概覽
可以被用來與計算設備互動的輸入技術已經從通常使用鍵盤實現的文字輸入技術發展到可使用照相機擷取的手勢。然而,依賴於應用程式本身以辨識手勢並因此不可擴展的傳統技術可導致跨應用程式的雙重編碼等等。
描述了控制項展示技術。在一或多個實現中,可將模組結合為計算設備的作業系統的部分。該模組可被配置來處理輸入。該輸入可源自諸如磁力計、照相機、麥克風等各種輸入裝置。因此,在一些實例中該等輸入可被用來支援不涉及觸摸的自然使用者介面。輸入可被模組處理以向諸如事件的計算設備的應用程式展示,作為與一或多個控制項相關聯等等。這可被用來支援可擴展系統,並可如此做而同時維持系統一致性,例如,以使用者體驗不受損的方式可擴展。因此,模組可向應用程式提供此功能而不需要該應用程式「必須知曉」該等事件及/或控制項如何被實現,模組進一步論述可以相關以下圖找到。
在以下論述中,首先描述可用於採用本文述及之技術的示例環境。隨後描述技術和程序的示例圖示,該技術和程序可在示例環境中以及在其他環境中採用。因此,該示例環境並不限於執行示例技術和程序。同樣,該示例技術和程序並不限於在示例環境中的實現。
示例環境
圖1是示例實現中的可用於採用本文描述的技術的環境100的圖示。示例性環境100包括計算設備102的實例,計算設備102被示為通訊地耦合到顯示裝置104(例如,電視機)的遊戲控制台,但是計算設備102可能以各種其他方式來配置。例如,計算設備102可被配置為傳統電腦(例如,臺式個人電腦、膝上型電腦等)、行動站、娛樂設備、無線電話、平板電腦、小筆電等,如在圖6中進一步描述。因而,計算設備102的範圍可以是從具有充足記憶體和處理器資源的全資源設備(如個人電腦、遊戲控制台)到具有有限記憶體及/或處理資源的低資源設備(如傳統機上盒、掌上型遊戲控制台)。計算設備102亦可與使得計算設備102執行一或多個操作的軟體相關。
計算設備102亦被示為包括處理系統106和電腦可讀取儲存媒體的實例,在這一實例中為記憶體108。處理系統106不受形成處理系統106的材料或者其中利用的處理機制的限制。例如,處理系統106可包括半導體及/或電晶體(例如電子積體電路IC),諸如片上系統、CPU、功能方塊等。在此種上下文中,可執行指令可以是可電子地執行的指令。或者,用於處理系統106或其中的機制,以及由此用於計算設備或其中的機制可以包括但不限於,量子計算、光學計算、機械計算(例如,使用奈米技術)等。另外,儘管圖示單個記憶體108,但是可以採用各種類型和組合的記憶體,諸如隨機存取記憶體(RAM)、硬碟記憶體、可移除媒體記憶體以及其他類型的電腦可讀取媒體。
計算設備102亦被示為包括作業系統110。作業系統110被配置來將計算設備102的底層功能抽象給可在計算設備102上執行的應用程式112。例如,作業系統110可抽象計算設備102的處理系統106、記憶體108、網路、輸入/輸出,及/或顯示功能,使得應用程式112可被寫,而無需知曉該底層功能「如何」實現。例如,應用程式112可向作業系統110提供要被呈現並由顯示裝置104顯示的資料,而無需理解該呈現如何執行。作業系統110亦可表示各種其他功能,諸如管理計算設備102的使用者可導覽的檔案系統和使用者介面。
作業系統110亦被示為包括NUI輸入模組114,NUI輸入模組114可作為由作業系統110支援的輸入/輸出功能的部分而被包括。因此,NUI輸入模組114表示與計算設備102的輸入辨識及/或輸出供應相關的功能。例如,NUI輸入模組114可被配置來標識手勢並使得對應於手勢的操作被執行,等等。輸入可被偵測以供NUI輸入模組114以各種不同的方式來處理。
例如,作業系統110可被配置成經由與硬體設備(如所示出的控制器116)的觸摸互動來接收一或多個輸入。觸摸互動可涉及按下按鈕、移動操縱桿、跨追蹤墊的移動、使用顯示裝置104的觸控式螢幕(例如,偵測使用者的手118的手指或觸控筆),等等。觸摸輸入的辨識可被作業系統110利用來與由計算設備102輸出的使用者介面進行互動,諸如與遊戲、應用程式進行互動,瀏覽網際網路、改 變計算設備102的一或多個設置,等等。亦構想了涉及與設備的觸摸互動的各種其他硬體設備。此種硬體設備的實例包括游標控制設備(例如,滑鼠)、遙控器(例如,電視遙控器)、行動通訊設備(例如,被配置成控制計算設備102的一或多個操作的無線電話)以及涉及在使用者或物體一方上的觸摸的其他設備。
NUI輸入模組114可被作業系統110利用來支援自然使用者介面(NUI),自然使用者介面可辨識可能不涉及觸摸的互動。例如,計算設備102可包括NUI輸入裝置120。NUI輸入裝置120可按各種方式來配置以便偵測輸入而無需使用者觸摸特定設備,諸如經由使用話筒來辨識音訊輸入。例如,NUI輸入模組114可被配置成執行語音辨識以辨識特定話語(例如,口述命令),以及辨識提供該話語的特定使用者。
在另一實例中,NUI輸入裝置120可被配置成經由使用相機來支援對手勢、所呈現的物件、圖像的辨識等。例如,相機可被配置成包括多個鏡頭,使得各不同的觀察點可被擷取且由此決定深度。例如,不同的觀察點可被用來決定距NUI輸入裝置120的相對距離並且因而可被用來決定該相對距離的改變。各不同的觀察點可被NUI輸入模組114用作深度感知。該等圖像亦可被NUI輸入模組114用來提供各種其他功能,如(例如經由臉孔辨識)標識特定使用者、物件等的技術。
NUI輸入模組114可利用NUI輸入裝置120來執行骨架 映射連同對人體的特定點的特徵提取(例如,48個骨架點),以追蹤一或多個使用者(例如,同時追蹤四個使用者)來執行運動分析。例如,NUI輸入裝置120可擷取由NUI輸入模組114分析的圖像,來辨識使用者作出的一或多個運動,包括使用了什麼身體部分來作出該運動以及哪一使用者作出該運動。經由辨識使用者的手118的一或多個手指的定位和移動及/或辨識使用者的手118整體的移動來圖示實例。運動可被NUI輸入模組114標識為啟動對應的操作的手勢。
各種不同類型的手勢可被辨識,諸如從單個類型的輸入辨識的手勢(例如,運動手勢)以及包括多個類型的輸入的手勢,例如運動手勢和使用物件作出的物件手勢。因而,NUI輸入模組114可藉由辨識和利用輸入之間的區分來支援各種不同的姿勢技術。應當注意,藉由在自然使用者介面(NUI)的輸入之間進行區分,經由該等姿勢中的單獨每一個而變得可能的姿勢的數量亦增加。例如,儘管移動可能是相同的,但可使用不同類型的輸入來指示不同的手勢(或對於類似命令的不同參數)。因而,NUI輸入模組114可提供自然使用者介面,該自然使用者介面支援不涉及觸摸的各種使用者互動。
因此,儘管以下論述描述了輸入的具體實例,但是在實例中,不同類型的輸入亦可被使用,而不背離本發明的精神和範圍。此外,儘管在以下論述中的實例中手勢被示為使用NUI來輸入,但手勢可由各種不同的設備使用各種不 同的技術來輸入,諸如採用平板電腦的觸控式螢幕功能。
在一或多個實現中,NUI輸入模組114可被配置來展示處理來自NUI輸入裝置120的輸入的結果,用於一或多個應用程式112的消費。因此,在該實例中,應用程式112的開發者可存取利用此功能,而無需將該處理專門編碼為應用程式112本身的一部分。NUI輸入模組114對該功能的展示的進一步論述可結合以下圖找到。
圖2圖示了示例實現中的系統200,圖示NUI輸入模組114和應用程式112之間的通訊。在該實例中,NUI輸入模組114跟隨第三方可擴展模組來將(諸如來自NUI輸入模組120(例如聲音和圖像)的)感測器集成為用於構建NUI以供一或多個應用程式112使用的主流範例。
作為該的一部分,NUI輸入模組114可提供可由應用程式112使用的控制項202。例如,控制項202,可支援包括固定行為(canned behavior)的一組預設通用範例,控制項202實例包括磁性、運動資料、聲音命令等等。NUI輸入模組114亦可跟隨程式設計模組,該程式設計模組支援第三方可縮放性以及用於可被展示以支援諸如應用程式112的第三方的可縮放性的磁性和資料結構的演算法。
在一或多個實現中,NUI輸入模組114被配置來從一或多個輸入裝置(諸如如前述及之NUI輸入模組120的照相機及/或麥克風)接收輸入。NUI輸入模組114可隨後產生一組事件204,應用程式112可訂閱該組事件。例如,事件204可涉及使用照相機偵測到的運動,使用麥克風、磁 力計或計算設備102的其他感測器偵測到的聲音。
例如,作業系統110可將該等輸入路由到NUI輸入模組114。NUI輸入模組114可隨後決定應用程式112中的一或多個的當前狀態,例如應用程式當前被執行,「監聽」事件204,等等。從該狀態,NUI輸入模組114可決定輸入的目標,並因此將該輸入轉換為與目標(例如應用程式112中的一或多個)相容。
該等輸入可隨後以各種方式被展示給應用程式112,諸如與一個特定控制項202相關聯、作為事件204、經由應用程式設計介面、作為命令,等等。例如,事件204可被配置為對NUI輸入裝置120專用、作為鍵盤事件(例如,使得NUI輸入手勢被轉換為鍵盤輸入)等等。
為決定輸入要被如何轉換以與應用程式112相容,NUI輸入模組114可與應用程式112執行一或多個交握操作。例如,NUI輸入模組114可就應用程式的狀態與所指的執行時執行交握,以協商與應用程式112相容的結果。可被使用的資料點的實例與磁性、焦點、預定義手勢、應用程式狀態等等相關。
圖3將NUI輸入模組114的示例實現中的系統300圖示成向來自本機層的受管層展示控制項。儘管在該實例中描述了本機和受管,應當容易明白,亦構想了各種其他非受管實現。如所示,NUI輸入模組114被示為在本機層中執行,並且經由受管層展示控制項202,以供諸如應用程式112的目標消費。NUI輸入模組114被示為利用計算設備 102的各種功能來接收輸入、為彼等輸入決定目標,並如前所述展示結果。
例如NUI輸入模組114可利用NUI控制碼302、控制項組群行為304和控制項包體驗使用者介面(XUI)306,XUI306本身採用控制板308和內容播放機310。該等模組可被想成起居室體驗的部分。NUI輸入模組114亦可包括被用於決定的基礎的模組以及輸入的源,NUI輸入模組114實例被示為NUI語音庫312、NUI輸入庫314,以及音訊/視訊(AV)316。因此,NUI輸入模組114可使用該等模組來查看應用程式運行時的當前狀態、決定輸入的目標,並將輸入的目標轉換成經由控制項202,諸如經由新的(例如,基於運動)或傳統的(例如,鍵盤)事件的使用,展示在公共表面的範例。
存在NUI輸入模組114所支援的各種不同模式的可程式設計性。在第一模式中,NUI輸入模組114可輸出沒有被NUI輸入模組114處理的原始串流,並因此,應用程式開發者可使用該原始串流來開發沒有被NUI輸入模組114以其他方式支援的操作(例如,手勢)。第二模式被用來支援使用者介面中的控制項202以及其中的佈局。該模式可包括「烘烤在內」行為及/或可基於由NUI輸入模組114支援的設計規範被構建到應用程式112中。此外,NUI輸入模組114可支援試探法以決定如何配置NUI輸入模組114所計算的結果以供目標消費。如前面所描述的,這可以涉及在所指的應用程式運行時之間的交握,以協商結果 要被「如何」輸入。
示例程序
以下論述描述了可利用上述系統和設備來實現的各種技術。該等程序中每一程序的各態樣可用硬體、韌體、軟體、或所述者之組合來實現。程序被示為一組方塊,方塊指定由一或多個設備執行的操作,不一定僅限於所示出的用於由相應的方塊執行操作的順序。在以下論述的各部分中,將參考圖1的環境100和圖2和3的系統200-300。
圖4圖示了示例實現中的程序400,其中作出關於複數個控制項中的哪些對應於一或多個輸入的決定,決定的結果被展示給應用程式。由計算設備作出關於複數個控制項中的哪些對應於使用一或多個磁力計、照相機或麥克風偵測到的一或多個輸入的決定(方塊402)。例如,NUI輸入模組114可接收來自磁力計、照相機或麥克風的輸入。NUI輸入模組114可隨後決定哪些控制項202對應於該等輸入。可結合各種不同類型的控制項(諸如作為圖形化使用者介面的一部分而輸出的控制項)來使用該等輸入,以發起計算設備102的一或多個操作(例如,經由與應用程式112互動)等等。
決定的結果由計算設備展示給該計算設備執行的一或多個應用程式(方塊404)。例如,結果可標識控制項以及要執行的操作,例如,特定按鈕的按壓、滑塊控制項的移動、平掃、內容的選擇、「剪切和黏貼」等等。因此,NUI輸入模組114可展示各種功能,使得應用程式112的開發 者可充分利用該功能。亦構想了各種其他實例。
圖5圖示了示例實現中的程序500,其中事件被展示給應用程式,該應用程式是未使用觸摸而被偵測到的一或多個輸入的目標。接收描述未使用觸摸而被偵測到的使用者互動的一或多個輸入(方塊502)。例如,該使用者輸入可使用作為NUI輸入裝置120的一部分的照相機(例如深度感測照相機)或麥克風來偵測。亦可構想各種其他實例,諸如偵測計算設備102(例如磁力計)的朝向等等。
作出一或多個應用程式中的哪些被一或多個輸入定位目標的決定(方塊504)。如前所述,NUI輸入模組114可執行「交握」以決定應用程式112的狀態,並因此決定哪些應用程式112可用於接收事件202、應用程式112在「尋找」什麼事件等等。
一或多個輸入被轉換成可由被定為目標的應用程式消費的事件(方塊506)。繼續前面的實例,NUI輸入模組114可使用交握的結果來決定如何展示一或多個輸入202,例如哪些事件204、控制項202等等被應用程式112支援。隨後,例如經由應用程式設計介面,事件被展示給被定位目標的應用程式(方塊508)。如上所述亦可構想各種其他的實例。
示例系統和設備
圖6在600概括地圖示包括示例計算設備602的示例系統,該示例計算設備602表示可以實現此處描述的各個技術的一或多個計算系統及/或設備。計算設備602可以是, 例如,服務提供方的伺服器、與客戶端相關聯的設備(例如,客戶端設備)、片上系統及/或任何其他合適的計算設備或計算系統。NUI輸入模組114被示為計算設備102的部分,以示出該功能可以被併入各種各樣不同的計算設備102配置。該功能亦可經由使用多個設備等實現的系統600(例如「經由雲端」)來分發。
所示的示例計算設備602包括處理系統604、一或多個電腦可讀取媒體606以及相互通訊地耦合的一或多個I/O介面608。儘管未圖示,計算設備602可進一步包括系統匯流排或將各種元件相互耦合的其他資料和命令傳輸系統。系統匯流排可包括不同匯流排結構中的任一個或組合,諸如記憶體匯流排或記憶體控制器、周邊匯流排、通用序列匯流排及/或利用各種匯流排架構中的任一種的處理器或區域匯流排。亦構想了各種其他實例,諸如控制和資料線。
處理系統604表示使用硬體執行一或多個操作的功能。因此,處理系統604被示為包括可被配置為處理器、功能方塊等的硬體元件610。這可包括在作為特殊應用程式積體電路或使用一或多個半導體構成的其他邏輯裝置的硬體中的實現。硬體元件610不受形成硬體元件610的材料或者其中利用的處理機制的限制。例如,處理器可以由半導體及/或電晶體(例如,電子積體電路(IC))構成。在這一上下文中,處理器可執行指令可以是可電子地執行的指令。
電腦可讀取儲存媒體606被示為包括記憶體/儲存612。記憶體/儲存612表示與一或多個電腦可讀取媒體相關聯的記憶體/儲存容量。記憶體/儲存元件612可包括揮發性媒體(如隨機存取記憶體(RAM))及/或非揮發性媒體(如唯讀記憶體(ROM)、快閃記憶體、光碟、磁碟等等)。記憶體/儲存元件612可包括固定媒體(例如,RAM、ROM、固定硬碟等)以及可移除媒體(例如快閃記憶體、可移除硬碟、光碟等等)。電腦可讀取媒體606可以下文進一步描述的各種方式來配置。
輸入/輸出介面608表示允許使用者向計算設備602輸入命令和資訊的功能,並且亦允許使用各種輸入/輸出設備向使用者及/或其他元件或設備呈現資訊。輸入裝置的實例包括鍵盤、游標控制設備(例如,滑鼠)、麥克風、掃瞄器、觸摸功能(例如,電容性的或被配置來偵測實體接觸的其他感測器)、照相機(例如,可採用可見或諸如紅外頻率的不可見波長來將移動辨識為不包括觸摸的手勢),等等。輸出設備的實例包括顯示裝置(例如,監視器或投影儀)、揚聲器、印表機、網卡、觸覺回應設備,等等。因此,計算設備602可以下文進一步描述的各種方式來配置以支援使用者互動。
此處可以在軟體、硬體元件或程式模組的一般上下文中描述各種技術。一般而言,這種模組包括執行特定任務或實現特定抽象資料類型的常式、程式、物件、元件、組件、資料結構等等。本文使用的術語「模組」、「功能」和「元 件」一般表示軟體、韌體、硬體或所述者之組合。本文描述的技術的各特徵是平臺無關的,從而意味著該技術可在具有各種處理器的各種商用計算平臺上實現。
所描述的模組和技術的實現可以儲存在某種形式的電腦可讀取媒體上或經由某種形式的電腦可讀取媒體傳輸。電腦可讀取媒體可包括可由計算設備602存取的媒體。作為實例而非限制,電腦可讀取媒體可包括「電腦可讀取儲存媒體」和「電腦可讀取信號媒體」。
「電腦可讀取儲存媒體」可以指相對於僅信號傳輸、載波或信號本身而言,啟用對資訊的持久及/或非瞬態儲存的媒體及/或設備。由此,電腦可讀取儲存媒體是指非信號承載媒體。電腦可讀取儲存媒體包括以適合於儲存如電腦可讀取指令、資料結構、程式模組、邏輯元件/電路或其他資料等的方法或技術來實現的諸如揮發性和非揮發性、可移除和不可移除媒體及/或儲存裝置的硬體。該電腦可讀取儲存媒體的實例包括但不限於,RAM、ROM、EEPROM、快閃記憶體或其他記憶體技術、CD-ROM、數位多功能光碟(DVD)或其他光儲存、硬碟、磁帶盒、磁帶、磁碟儲存或其他磁儲存裝置或者可適用於儲存所需資訊並可由電腦存取的其他儲存裝置、有形媒體或製品。
「電腦可讀取信號媒體」可以指被配置為諸如經由網路向計算設備602的硬體傳輸指令的信號承載媒體。信號媒體通常用諸如載波、資料信號或其他傳輸機制等已調制資料信號來體現電腦可讀取指令、資料結構、程式模組或其 他資料。信號媒體亦包括任何資訊傳送媒體。術語「已調制資料信號」是指具有以在信號中編碼資訊的方式被設定或改變其一或多個特徵的信號。作為實例而非限制,通訊媒體包括有線媒體,諸如有線網路或直接線連接,以及無線媒體,諸如聲學、RF、紅外線和其他無線媒體。
如前面所述描述的,硬體元件610和電腦可讀取媒體606是以硬體形式表示模組、可程式設計設備邏輯及/或所實現的固定設備邏輯,硬體元件610和電腦可讀取媒體606可被某些實施例採用來實現此處描述的技術的至少某些態樣,諸如執行一或多個指令。硬體可包括積體電路或片上系統、特殊應用程式積體電路(ASIC)、現場可程式設計閘陣列(FPGA)、複雜可程式設計邏輯裝置(CPLD),和用矽或其他硬體實現的元件。在此上下文中,硬體可操作為經由指令及/或由硬體實現的邏輯來執行程式任務的處理設備,以及被用來儲存用於執行的指令的硬體(例如上面描述的電腦可讀取儲存媒體)。
前面的組合亦可被採用來實現在此描述的各種技術。因此,軟體、硬體,或可執行模組可被實現為一或多個指令及/或在某種形式的電腦可讀取儲存媒體上及/或由一或多個硬體元件610實現的邏輯。計算設備602可被配置成實現特定指令及/或對應於軟體及/或硬體模組的功能。因此,可由計算設備602執行為軟體的模組的實現可至少部分以硬體完成,例如,經由使用電腦可讀取儲存媒體及/或處理系統604的硬體元件610。指令及/或功能可以是一 或多個製品(例如,一或多個計算設備602及/或處理系統604)可執行/可操作的,以實現技術、模組,以及此處描述的實例。
如在圖6中進一步示出,示例系統600實現了用於當在個人電腦(PC)、電視機設備及/或行動設備上執行應用程式時的無瑕疵使用者體驗的普遍存在的環境。服務和應用程式在所有三個環境中基本相似地執行,以便當使用應用程式、玩視訊遊戲、看視訊等時在從一個設備轉換到下一設備時得到共同的使用者體驗。
在示例系統600中,多個設備經由中央計算設備互聯。中央計算設備可以是多個設備本端的,或者可以位於多個設備的遠端。在一個實施例中,中央計算設備可以是經由網路、網際網路或其他資料通訊鏈路連接到多個設備的一或多個伺服器電腦的雲端。
在一個實施例中,該互聯架構使得功能能夠跨多個設備遞送以向多個設備的使用者提供共同且無瑕疵的體驗。多個設備的每一個可具有不同的實體要求和能力,且中央計算設備使用平臺來使得為設備特製且又對所有設備共同的體驗能被遞送到設備。在一個實施例中,建立目標設備的類,且使體驗適應於設備的通用類。設備類可由設備的實體特徵、用途類型或其他共同特性來定義。
在各種實現中,計算設備602可採取各種不同的配置,諸如用於電腦614、行動設備616和電視機618用途。該等配置中的每一個包括可具有一般不同的構造和能力的 設備,並且因而計算設備602可根據不同的設備類中的一或多個來配置。例如,計算設備602可被實現為電腦類614設備,該電腦設備類包括個人電腦、桌上型電腦、多螢幕電腦、膝上型電腦、小筆電等。
計算設備602亦可被實現為移動類616設備,該移動類設備包括諸如行動電話、可攜式音樂播放機、可攜式遊戲裝置、平板電腦、多螢幕電腦等行動設備。計算設備602亦可被實現為電視機類618設備,該電視機類設備包括在休閒觀看環境中具有或連接到一般更大的螢幕的設備。該等設備包括電視機、機上盒、遊戲控制台等。
本文所描述的技術可由計算設備602的該等各種配置來支援,且不限於在本文描述的各具體實例。該功能亦可被全部或部分經由分散式系統的使用(諸如如下述及之經由平臺622通過「雲端」620)來實現。
雲端620包括及/或表示資源624的平臺622。平臺622抽象雲端620的硬體(如,伺服器)和軟體資源的底層功能。資源624可包括可在電腦處理在位於計算設備602遠端的伺服器上執行時使用的應用程式及/或資料。資源624亦可包括在網際網路上及/或經由諸如蜂巢或Wi-Fi網路之類的使用者網路上提供的服務。
平臺622可抽象資源和功能以將計算設備602與其他計算設備相連接。平臺622亦可用於抽象資源的縮放以向經由平臺622實現的資源624所遇到的需求提供對應的縮放級別。因此,在互聯設備的實施例中,本文描述的功能的 實現可分佈在系統600上。例如,該功能可部分地在計算設備602上以及經由抽象雲端620的功能的平臺622來實現。
結論
儘管已經用對結構特徵及/或方法動作專用的語言描述了本發明,但是應該理解,在所附請求項中定義的本發明不必限於述及之具體特徵或動作。相反,該等具體特徵和動作是作為實現所要求保護的本發明的示例形式而揭示的。
100‧‧‧環境
102‧‧‧計算設備
104‧‧‧顯示裝置
106‧‧‧處理系統
108‧‧‧記憶體
110‧‧‧作業系統
112‧‧‧應用程式
114‧‧‧NUI輸入模組
116‧‧‧控制器
118‧‧‧手
120‧‧‧NUI輸入裝置
200‧‧‧系統
202‧‧‧控制項
204‧‧‧事件
300‧‧‧系統
302‧‧‧NUI控制碼
304‧‧‧控制項組群行為
306‧‧‧XUI
308‧‧‧控制板
310‧‧‧內容播放機
312‧‧‧NUI語音庫
314‧‧‧NUI輸入庫
316‧‧‧音訊/視訊
400‧‧‧程序
402‧‧‧方塊
404‧‧‧方塊
500‧‧‧程序
502‧‧‧方塊
504‧‧‧方塊
506‧‧‧方塊
508‧‧‧方塊
600‧‧‧系統
602‧‧‧計算設備
604‧‧‧處理系統
606‧‧‧電腦可讀取媒體
608‧‧‧I/O介面
610‧‧‧硬體元件
612‧‧‧記憶體/儲存
614‧‧‧電腦
616‧‧‧行動設備
618‧‧‧電視機
620‧‧‧雲端
622‧‧‧平臺
624‧‧‧資源
參考附圖來描述詳細描述。在附圖中,元件符號最左邊的數位辨識該元件符號首次出現的附圖。在說明書和附圖的不同實例中使用相同的元件符號可指示相似或相同的項目。
圖1是示例實現中的可用於採用本文描述的技術的環境的圖示。
圖2圖示在NUI輸入模組和圖1的應用程式之間的示例系統通訊。
圖3將圖2的NUI輸入模組的示例實現中的系統圖示成向來自本機層的受管層展示控制項。
圖4是圖示了示例實現中的程序的流程圖,其中作出關於複數個控制項中的哪些對應於一或多個輸入的決定,決定的結果被展示給應用程式。
圖5是圖示了示例實現中的程序的流程圖,其中事件被展示給應用程式,該等應用程式是未使用觸摸而被偵測到的一或多個輸入的目標。
圖6圖示可被實現為參考圖1-3來描述的任何類型的可攜式及/或電腦設備以實現本文描述的技術的實施例的示例設備的各種元件。
100‧‧‧環境
102‧‧‧計算設備
104‧‧‧顯示裝置
106‧‧‧處理系統
108‧‧‧記憶體
110‧‧‧作業系統
112‧‧‧應用程式
114‧‧‧NUI輸入模組
116‧‧‧控制器
118‧‧‧手
120‧‧‧NUI輸入裝置

Claims (20)

  1. 一種方法,該方法包括以下步驟:由一計算設備決定複數個控制項中的哪些對應於使用一或多個磁力計、照相機或麥克風偵測到的一或多個輸入;及由該計算設備將該決定的一結果展示給由該計算設備執行的一或多個應用程式。
  2. 如請求項1述及之方法,其中該一或多個照相機被配置來執行深度感測。
  3. 如請求項1述及之方法,其中該一或多個輸入能夠由該計算設備辨識為一手勢,該手勢被配置來發起一操作,該操作對應於該所決定的結果的控制項。
  4. 如請求項1述及之方法,其中該結果作為一事件或命令被展示給該一或多個應用程式。
  5. 如請求項4述及之方法,其中該結果是一鍵盤事件。
  6. 如請求項1述及之方法,其中該決定包括查明該一或多個應用程式是該一或多個輸入的一目標,且該展示回應於該決定來執行。
  7. 如請求項6述及之方法,其中該決定包括將該一或多個輸入轉換成與該一或多個應用程式相容的該所決定的命令。
  8. 如請求項1述及之方法,其中該決定和該展示經由由該計算設備對作業系統的執行來完成。
  9. 如請求項1述及之方法,亦包括向該一或多個應用程式輸出該一或多個輸入。
  10. 如請求項9述及之方法,其中對該一或多個應用程式的該一或多個輸入的該輸出執行為一原始串流。
  11. 如請求項1述及之方法,該方法進一步包含在執行該決定及該展示之該作業系統及該一或多個應用程式之間執行一交握,該作業系統可使用該交握來決定如何將該結果展示給該一或多個應用程式。
  12. 一種由一計算設備實現的系統,該系統包括:能夠在該計算設備的硬體上執行的一或多個應用程式;及至少部分地使用該計算設備的該硬體實現的一模組,該模組被配置來接收描述未使用觸摸而被偵測到的使用者互動的一或多個輸入,決定該一或多個應用程式中的哪些是 該一或多個輸入的一目標,將該一或多個輸入轉換為可由該被定為目標的應用程式所消費的事件,並將該等事件展示給該等被定為目標的應用程式。
  13. 如請求項12述及之系統,其中該模組實施作為該計算設備之一作業系統之部份。
  14. 如請求項12述及之系統,其中該一或多個事件與一特定控制項相關。
  15. 如請求項12述及之系統,其中一或多個照相機偵測該一或多個輸入而不使用觸摸。
  16. 如請求項12述及之系統,其中一或多個麥克風偵測該一或多個輸入而不使用觸摸。
  17. 如請求項12述及之系統,其中該模組進一步設置以對該一或多個應用程式輸出該一或多個輸入作為原始串流。
  18. 一或多種電腦可讀取儲存媒體,該電腦可讀取儲存媒體包括儲存於其上的指令,回應於由一計算設備的執行,該指令使得該計算設備實現一作業系統,該作業系統被配置用來經由一或多個控制項的一應用程式設計介面展示一或多個事件,該作業系統從接收自該計算設備的一或多 個照相機的輸入來標識該一或多個控制項。
  19. 如請求項18述及之一或多種電腦可讀取儲存媒體,其中該等輸入描述一使用者作出之一或多個手勢,使用該一或多個照相機偵測該等手勢而不涉及觸摸。
  20. 如請求項18述及之一或多種電腦可讀取儲存媒體,其中該至少一個應用程式未設置為處理用以辨識該一或多個控制項的該等輸入。
TW101139937A 2011-12-05 2012-10-29 Control exposure TWI560579B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201161567026P 2011-12-05 2011-12-05
US13/410,888 US9250713B2 (en) 2011-12-05 2012-03-02 Control exposure

Publications (2)

Publication Number Publication Date
TW201346644A true TW201346644A (zh) 2013-11-16
TWI560579B TWI560579B (en) 2016-12-01

Family

ID=48524974

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101139937A TWI560579B (en) 2011-12-05 2012-10-29 Control exposure

Country Status (8)

Country Link
US (1) US9250713B2 (zh)
EP (1) EP2788836A4 (zh)
JP (1) JP2015501049A (zh)
KR (1) KR102086181B1 (zh)
CN (1) CN103077013B (zh)
HK (1) HK1182813A1 (zh)
TW (1) TWI560579B (zh)
WO (1) WO2013085777A1 (zh)

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US639476A (en) * 1899-05-23 1899-12-19 Albert Whisler Tire-valve inserter.
US6002808A (en) * 1996-07-26 1999-12-14 Mitsubishi Electric Information Technology Center America, Inc. Hand gesture control system
US6396476B1 (en) 1998-12-01 2002-05-28 Intel Corporation Synthesizing computer input events
US7688306B2 (en) * 2000-10-02 2010-03-30 Apple Inc. Methods and apparatuses for operating a portable device based on an accelerometer
US6964023B2 (en) * 2001-02-05 2005-11-08 International Business Machines Corporation System and method for multi-modal focus detection, referential ambiguity resolution and mood classification using multi-modal input
US8460103B2 (en) * 2004-06-18 2013-06-11 Igt Gesture controlled casino gaming system
US8745541B2 (en) 2003-03-25 2014-06-03 Microsoft Corporation Architecture for controlling a computer using hand gestures
KR100509913B1 (ko) 2003-06-02 2005-08-25 광주과학기술원 다중 형식 입력 장치 및 방법
US7661113B2 (en) 2006-09-28 2010-02-09 Sap Ag Method and system for data preparation and communication between software applications
US8436815B2 (en) 2007-05-25 2013-05-07 Microsoft Corporation Selective enabling of multi-input controls
TW200910178A (en) * 2007-08-29 2009-03-01 Inventec Corp Web browser with a page control axis and method for generating page control axis
KR100945132B1 (ko) 2008-06-05 2010-03-02 주식회사 넥슨 복수의 입력장치를 이용하는 어플리케이션의 조작계를변경하는 시스템 및 방법
KR101568128B1 (ko) * 2008-11-14 2015-11-12 삼성전자주식회사 모션 센서 기반의 ui 운용 방법 및 이를 이용한 단말기
US9662569B2 (en) * 2008-12-31 2017-05-30 Intel Corporation Sensor fusion to combine sensor input data from multiple devices into one input stream
US8704767B2 (en) * 2009-01-29 2014-04-22 Microsoft Corporation Environmental gesture recognition
CN102317977A (zh) * 2009-02-17 2012-01-11 奥美可互动有限责任公司 用于姿势识别的方法和系统
US9256282B2 (en) * 2009-03-20 2016-02-09 Microsoft Technology Licensing, Llc Virtual object manipulation
EP2427812A4 (en) 2009-05-08 2016-06-08 Kopin Corp REMOTE CONTROL OF A HOST APPLICATION THROUGH MOTION AND LANGUAGE COMMANDS
US9417700B2 (en) * 2009-05-21 2016-08-16 Edge3 Technologies Gesture recognition systems and related methods
US9159151B2 (en) * 2009-07-13 2015-10-13 Microsoft Technology Licensing, Llc Bringing a visual representation to life via learned input from the user
CN101840299A (zh) 2010-03-18 2010-09-22 华为终端有限公司 一种触摸操作方法、装置和移动终端
US9901828B2 (en) * 2010-03-30 2018-02-27 Sony Interactive Entertainment America Llc Method for an augmented reality character to maintain and exhibit awareness of an observer

Also Published As

Publication number Publication date
HK1182813A1 (zh) 2013-12-06
EP2788836A1 (en) 2014-10-15
CN103077013B (zh) 2016-08-17
TWI560579B (en) 2016-12-01
EP2788836A4 (en) 2015-04-29
KR20140108242A (ko) 2014-09-05
CN103077013A (zh) 2013-05-01
WO2013085777A1 (en) 2013-06-13
US9250713B2 (en) 2016-02-02
JP2015501049A (ja) 2015-01-08
KR102086181B1 (ko) 2020-03-06
US20130145380A1 (en) 2013-06-06

Similar Documents

Publication Publication Date Title
US11635928B2 (en) User interfaces for content streaming
TWI601128B (zh) 用於上下文切換的語音辨識之電腦實施方法及系統
US9720567B2 (en) Multitasking and full screen menu contexts
CN108369456B (zh) 用于触摸输入设备的触觉反馈
US20130198690A1 (en) Visual indication of graphical user interface relationship
US20150334334A1 (en) Systems and Methods for Remote Control of a Television
JP2017523515A (ja) アイコンサイズ変更
KR102331290B1 (ko) 강화된 대화형 텔레비전 경험
JP2017527908A (ja) パラメトリック慣性及びapi
KR20170054919A (ko) 응답 메시지를 추천하는 사용자 단말 장치 및 그 방법
JP2013529802A (ja) コンテンツジェスチャー
US20110304649A1 (en) Character selection
CN106796810B (zh) 在用户界面上从视频选择帧
TWI552791B (zh) 雷射二極體模式
KR20170042338A (ko) 혼합 뷰에의 제스처 기반 액세스
WO2017172550A1 (en) Ink in an electronic document
JP2017525044A (ja) 直接アクセスアプリケーション表現
RU2677582C2 (ru) Связывание аппарата с вычислительным устройством
US20130201095A1 (en) Presentation techniques
TW201346644A (zh) 控制項展示
KR20200137594A (ko) 모바일 장치 및 모바일 장치의 제어 방법
KR20160144445A (ko) 확장가능한 애플리케이션 표시, 마일스톤, 및 스토리라인
US20230415038A1 (en) Remote real-time game input aggregation