本專利文獻要求于2013年11月27日提交的美國臨時專利申請No.61/909,998以及于2013年12月3日提交美國臨時專利申請NO.61/911,430的權益和優先權。前述專利申請的整體內容通過引用合并到本文獻的公開內容的一部分。
技術領域
本專利文獻涉及眼睛跟蹤及眼睛反應感測技術。
背景技術:
眼睛是視覺系統中復雜的解剖部件,其從周圍環境收集光,通過隔膜調節光的強度,通過可調節透鏡組件使光聚焦以形成圖像,將該圖像轉化成一組電信號,以及通過復雜的神經通路將這些信號發送至大腦,這些復雜的神經通路經由視神經將眼睛連接至視覺皮層和大腦的其他區域。眼睛能夠識別光的兩個方面的差異:亮度(基于光的發光)和顏色(基于光的波長)。視錐細胞是眼睛后部(即,視網膜)的一類光感受器,在明亮的光線下,視錐細胞能夠提供良好的視覺靈敏度和顏色視覺。視桿細胞是視網膜的外部區域中的高靈敏度光感受器,該視桿細胞用于為夜間視覺提供低照明條件下的光學信息以及在明亮的照明條件下為周圍視覺提供輔助。
眼睛是一種具有多種產生光學反射部分或部件的復雜結構。例如,眼睛反射的主要場景包括:從角膜發射的光的角膜反射,從虹膜反射的光的虹膜反射以及從視網膜反射的光的逆反射。這些反射會導致許多應用中出現不良影響,諸如,拍攝中出現紅眼效應,而同樣可以用于多種光學系統,例如,眼睛跟蹤設備。
技術實現要素:
本文公開了用于眼睛移動的光學感測及跟蹤的方法、系統及設備,包括用于實時檢測和跟蹤用戶的眼睛或雙眼對于設備的顯示屏(諸如,觸摸感測屏)的注視或瞄準。所公開的技術的實施例的示例包括基于所檢測到的用戶的眼睛或雙眼的注視或瞄準來在顯示屏上生成光標或指針,并且使用所生成的光標或指針來實現各種功能。這些可能的功能的示例包括選擇各種應用、文檔及用戶界面、激活這些應用、文檔及用戶界面或者與這些應用、文檔及用戶界面交互。所述選擇、激活或交互可以在設備上實現所期待的動作、操作或效果。在一些實施例中,眼睛注視跟蹤可以結合設備上的其他用戶輸入(諸如,一個或更多個可操作按鈕、開關或觸發器)一起使用。對顯示屏上的眼睛注視或瞄準的眼睛跟蹤和檢測可以用于指示光標的位置以執行多種功能來完成“眼睛鼠標”操作,而無需使用物理鼠標或指示器來控制鼠標在顯示屏上的移動或位置。在移動或手持設備中,該“眼睛鼠標”功能可以用于進行單手操作或者通過顯示器對多種操作和功能進行控制。
另外,還公開了方法、系統及設備,用于使用用戶眼睛的動態來分析并報告用戶對設備的顯示屏上的內容的反應。所公開的技術的實施例的示例可以包括使用與設備集成的眼睛感測模塊來獲得用戶眼睛動態數據,該用戶眼睛動態數據表示設備的顯示屏上的至少一項內容。用戶眼睛的動態數據至少包括用戶眼睛的移動和用戶瞳孔尺寸的變化。對所獲取的用戶眼睛動態數據進行分析以確定用戶對顯示屏上所顯示的內容的反應。
一方面,用于獲取用戶眼睛動態數據的設備包括用于呈現至少一項內容的顯示屏。該設備包括眼睛感測模塊,該眼睛感測模塊用于:當顯示屏上向用戶呈現所述至少一項內容時,獲取包括用戶眼睛移動的用戶眼睛動態數據。該設備包括與眼睛感測模塊連接的處理器。該處理器至少部分地基于所獲取的用戶眼睛動態數據來確定用戶對顯示屏上所呈現的至少一項內容的反應。
可以通過多種方式來實現該設備以包括一個或更多個以下特征。用戶眼睛動態數據可以包括用戶瞳孔尺寸的變化。設備可以包括用于獲取環境光狀況的、與處理器連接的環境光感測模塊。處理器可以至少部分地基于所獲得的用戶眼睛動態數據和環境光狀況來確定用戶對顯示屏上呈現的至少一項內容的反應。處理器與顯示屏連接以便于獲取顯示屏特征并且至少部分地基于所獲得的顯示屏特征和用戶眼睛動態數據來確定用戶對顯示屏上呈現的所述至少一項內容的反應,其中,顯示屏特征包括顯示亮度變化數據或顯示背光數據中的至少一項。設備可以包括用于獲取設備的運動參數、與處理器連接的至少一個運動傳感器。處理器可以至少部分地基于所獲得的用戶眼睛動態數據和運動參數來確定用戶對顯示屏上所呈現的所述至少一項內容的反應。設備包括移動設備。
另一方面,描述了一種用于確定用戶對顯示屏上所呈現的至少一項內容的反應的方法。該方法包括將至少一項內容呈現在設備的顯示屏上。方法包括:當至少一項內容被呈現在設備的顯示屏上時,通過與設備集成的眼睛感測模塊檢測用戶眼睛動態以獲得表示用戶眼睛移動或用戶瞳孔尺寸的變化的數據。方法包括將所獲得的用戶眼睛動態數據與顯示屏上所呈現的所述至少一項內容關聯以生成用戶反應數據。
可以通過多種方式來實現該方法以包括一個或更多個以下特征。該方法包括將所生成的用戶反應數據發送給服務器。服務器可以與提供所述至少一項內容的內容提供商關聯。方法可以包括從服務器接收至少部分地基于被發送至服務器的用戶反應數據所選擇的不同內容。該關聯可以包括將用戶瞳孔尺寸的增大與用戶對顯示屏上所呈現的所述至少一項內容越來越感興趣的指示關聯。該關聯可以包括將用戶眼睛移動的穩定性與用戶的注意力集中在顯示屏上所顯示的所述至少一項內容上的指示關聯。
另一方面,描述了一種用于提供用戶反應反饋信息的服務器。服務器包括處理器,該處理器用于:從多個用戶設備接收與被呈現給所述多個用戶設備的共同內容關聯的用戶反應數據;對與被呈現給多個用戶設備的共同內容關聯的用戶反應數據進行分析;基于對用戶對共同呈現的內容的反應的分析生成輸出;以及將所生成的輸出報告給提供共同呈現的內容的內容提供商。
可以通過多種方式實現服務器以包括一個或更多個以下特征。所生成的輸出可以包括統計結果。
另一方面,描述了一種用于眼睛跟蹤的設備。該設備包括光電探測器模塊。該設備包括兩組光源,這兩組光源被設置在設備上與光電探測器模塊的位置相關的相應位置處并且每組光源發射調制光。兩組光源所發射的相應的調制光是以大體上相同的調制頻率進行調制的并且彼此異相。作為兩組光源發射出調制光的響應,光電探測器模塊從用戶的眼睛接收包括至少部分逆反射光的回光。設備包括與光電探測器模塊和兩組光源連接的處理器,該處理器被配置為對來自光電探測器模塊的輸出信號進行處理以至少部分地基于所接收的部分逆反射光來確定用戶眼睛的位置和尺寸參數。在一些實施例中,設備可以包括兩組以上光源。
可以通過多種方式來實現該設備以包括一個或更多個以下特征。多組光源中的一組光源可以相對于兩組或更多組光源中任意組光源更靠近光電探測器模塊,使得:相對于兩組或更多組光源中任意組光源,光電探測器模塊所接收的部分逆反射光更大程度上取決于具有更近距離的一組光源所發射的調制光。設備可以包括位于光電探測器模塊前面的接收透鏡,該接收透鏡用于收集所接收的部分逆反射光并且將所收集的部分逆反射光引導至光電探測器模塊。一組光源可以被設置在接收透鏡的光軸附近,而其他組光源可以被設置成遠離接收透鏡的光軸。接收透鏡和所述兩組或更多組光源可以被設置成使得來自眼睛的、取決于多種光源中的一組光源所發射的調制光的所逆反射的光基本上投影到接收透鏡上,其中,來自眼睛的、取決于其他組光源所發射的調制光的逆反射基本上沒有投影到接收透鏡上。設備可以包括濾波電路,該濾波電路被通信地鏈接至光電探測器模塊以對光電探測器模塊的輸出信號進行過濾從而基于相應的調制光濾除背景光和散射光。當相應的調制光從用戶的面部或用戶面部的其他表面散射開時,散射光會被生成。取決于多組光源中的一組光源所發射的調制光的散射光相對于其他組光源所發射的調制光的散射光的相位差大體上為180°。濾波電路可以包括用于濾除背景光的帶通濾波器。所述兩組或更多組光源可以以大體上相同的波長發射相應的調制光。設備可以包括顯示界面。處理器可以基于所確定的位置參數確定用戶眼睛的注視位置,并且顯示界面可以在顯示界面上的所確定的注視位置處顯示光標。顯示界面與處理器的結合可以基于所更新的位置參數有效地調節光標。來自光電探測器模塊的輸出信號的強度可以與眼睛的逆反射的強度成比例,并且還可以與眼睛的瞳孔尺寸成比例。
另一方面,描述了一種基于用戶的注視控制光標的移動設備。該移動設備包括顯示界面,以及與顯示界面相鄰的表面區域。該移動設備包括用于發射第一調制光的第一組光源,該第一組光源位于表面區域的第一位置上。該移動設備包括用于發射第二調制光的第二組光源,該第二組光源位于表面區域的第二位置上。第一調制光和第二調制光大體上具有相同的調制頻率,并且第一調制光的調制相位與第二調制光的調制相位大體上彼此相反。第一組光源和第二組光源分別向用戶操作設備的用戶的眼睛發射第一調制光和第二調制光。移動設備包括光電探測器模塊,該光電探測器模塊用于接收回光,該回光包括來自用戶眼睛的、取決于第一組光源和第二組光源所發射的第一調制光和第二調制光的至少部分逆反射光。設備包括處理器,該處理器被通信地耦接至光電探測器模塊及第一組光源和第二組光源。處理器可以對來自光電探測器模塊的輸出信號進行處理以至少基于與第一調制光和第二調制光相對應的部分逆反射光來確定用戶眼睛的注視位置。顯示界面可以在所確定的注視位置處顯示光標。
可以通過多種方式來實現該方法以包括一個或更多個以下特征。顯示界面與處理器結合可以基于所更新的眼睛的注視位置來調節光標的位置。光電探測器模塊可以跟蹤移動設備與用戶眼睛之間的相對線性運動和旋轉運動,并且生成輸出信號,該輸出信號反映了相對線性運動和旋轉運動對注視位置的影響。來自光電探測器模塊的輸出信號的強度可以與眼睛的逆反射的強度成比例,并且可以與眼睛的瞳孔尺寸成比例。處理器可以對輸出信號進行處理以確定眼睛的瞳孔的尺寸。處理器可以對輸出信號進行處理以確定移動設備與用戶的眼睛之間的距離。移動設備可以包括設備外部;以及位于移動設備上的一個或更多個按鈕,所述一個或更多個按鈕用于在所顯示的光標位置處實現鼠標功能。所述一個或更多個按鈕可以設置在設備外部的左側、右側或背面。所述一個或更多個按鈕可以被顯示在顯示界面上。所述一個或更多個按鈕可以結合移動設備的現有按鈕進行操作。所述一個或更多個按鈕可以執行常規的鼠標的左擊、右擊、中間點擊功能。
另一方面,描述了一種用于在設備處跟蹤眼睛移動的方法。該方法包括:使用設備的第一組光源向用戶眼睛發射第一調制光,以及使用設備的第二組光源向用戶眼睛發射第二調制光。第一調制光和第二調制光大體上具有相同的調制頻率,并且第一調制光的調制相位與第二調制光的調制相位大體上彼此相反。該方法包括在設備的光電探測器模塊處接收回光,該回光包括取決于來自第一組光源的第一調制光和第二組光源的第二調制光的、來自用戶眼睛的至少部分逆反射光。該方法包括對所接收的回光進行過濾以濾除背景光和散射光。該方法包括對來自光電探測器模塊的輸出信號進行處理,以至少基于與第一組調制光源和第二組調制光源相對應的部分逆反射光來確定用戶眼睛的位置和尺寸參數。
可以通過多種方式來實現該方法以包括一個或更多個以下特征。取決于第一調制光的散射光相對于取決于第二調制光的散射光的相位差大體上為180°。處理輸出信號可以包括基于與第一組光源和第二組光源相對應的部分逆反射光之間的差值確定眼睛的位置參數和尺寸參數。該方法包括使用第一組光源和第二組光源發射可見光。該方法包括使用第一組光源和第二組光源發射紫外波長和紅外波長的調制光。該方法包括使用第一組光源和第二組光源發射不同波長的調制光并且校準第一組光源與第二組光源使得這兩組光源相匹配。該方法包括使用第一組光源和第二組光源發射具有相同調制頻率的光以執行自我消除探測。該方法包括:對來自光電探測器模塊的輸出信號進行處理,以至少基于與第一調制光和第二調制光相對應的部分逆反射光來確定用戶眼睛在設備的顯示屏上的注視位置;以及在顯示屏上的所確定的注視位置處顯示光標。該方法包括基于所更新的眼睛的注視信息持續地對光標在顯示界面上的位置進行調節。該方法包括使用第一組光源和第二組光源發射具有不同調制頻率的光以探測眼睛注視的方向。第一組光源和第二組光源以及光電探測器模塊可以位于設備的邊緣。所發射的第一調制光和第二調制光可以包括頻率與光電探測器模塊相關的閃爍的光,以便于增強眼睛信號探測并進一步濾除背景光。該方法包括:響應于眼睛注視方向的變化改變光標的位置;以及在設備上設置一個或更多個光標激活按鈕以激活光標從而在顯示屏上進行選擇、操作或交互。該方法包括:配置所述一個或更多個光標激活按鈕以在設備上提供附加控制功能。該方法包括:使用通過一個或更多個光標激活按鈕所接收的輸入,激活在跟蹤眼睛的同時探測用戶瞳孔尺寸變化的功能。該方法包括:基于通過一個或更多個光標所接收的輸入,探測眼睛注視方向的同時跟蹤眼睛移動。該方法包括:基于通過一個或更多個光標所接收的輸入,發送所發射的調制光中攜帶的數據并且接收所探測到的回光中攜帶的數據。該方法包括:對來自光電探測器模塊的輸出信號進行處理,以至少基于第一調制光和第二調制光相對應的部分逆反射光確定用戶眼睛在設備的顯示屏上的注視位置;以及使用所確定的用戶眼睛在顯示屏上的注視位置來探測用戶在按注視收費的廣告上的注視情況。該方法包括:對來自光電探測器模塊的輸出信號進行處理,以至少基于與第一調制光和第二調制光相對應的部分逆反射光確定用戶眼睛在設備的顯示屏上的注視位置;以及使用所確定的用戶眼睛在顯示屏上的注視位置來控制游戲應用中游戲。該方法包括:將于市場調研關聯的至少一項內容呈現到設備的顯示屏上;以及對所確定的用戶眼睛的位置參數和尺寸參數進行分析以確定用戶對顯示屏上所顯示的所述至少一項內容的反應;以及對所確定的用戶對所呈現的與市場調研關聯的所述至少一項內容的反應進行收集。該方法包括:對來自光電探測器模塊的輸出信號進行處理,以至少基于與第一調制光和第二調制光相對應的部分逆反射光確定用戶眼睛在設備的顯示屏上的注視位置;以及使用所確定的用戶眼睛在顯示屏上的注視位置來進行安全訪問或安全數據輸入。
附圖說明
圖1示出了人眼的解剖學的圖示。
圖2示出了視野的圖示。
圖3A和圖3B示出了眼睛的圖示和圖像,說明了當眼睛被光源照射時發生的三種發射。
圖4A示出了描繪采用了所公開的技術的、用于跟蹤眼睛的移動的示例性方法的步驟的過程圖。
圖4B示出了用于執行示例性眼睛跟蹤方法的用戶設備的示例性界面的示意性圖示。
圖5A示出了用戶設備中實現的、采用了所公開的技術的示例性眼睛跟蹤單元的框圖。
圖5B示出了圖4A所描繪的示例性方法的操作的圖示,該操作使用了眼睛和多個光源以及示例性移動設備的一個相機的逆反射。
圖6A示出了移動智能手機設備上實現的、采用了所公開的技術的示例性眼睛跟蹤設備的圖示。
圖6B示出了計算機檢測器或電視設備上實現的、采用了所公開的技術的示例性眼睛跟蹤設備的圖示。
圖7A示出了采用了所公開的技術的用于校準的、示例性眼睛跟蹤設備的圖示。
圖7B示出了采用了所公開的技術的示例性眼睛跟蹤設備的圖示,該示例性眼睛跟蹤設備用于通過探測眼睛的移動和/或眨眼來操作用戶設備以控制設備的功能。
圖8示出了示例性方法的過程圖,該示例性方法用于通過使用連續光發射來跟蹤眼睛的移動并且使用采用了所公開的技術的示例性跟蹤單元進行捕獲的方式來跟蹤眼睛的移動。
圖9示出了采用了所公開的技術的示例性眼睛跟蹤設備的圖示,該示例性眼睛跟蹤設備用于探測眼睛的移動和/或眨眼以控制設備的功能。
圖10示出了采用了所公開的技術的示例性眼睛跟蹤設備的圖示,該示例性眼睛跟蹤設備包括具有擋光板的單個傳感器組并且用于探測眼睛的移動和/或眨眼以控制設備的功能。
圖11A示出了用于描繪示例性眼睛鼠標設備的示例性傳感器表面上的示例性逆反射圖像的圖示,其中,所述圖像是根據示例性設備的用戶的眼睛所產生的逆反射光被探測到的。
圖11B示出了用于描繪當用戶眼睛移動時的示例性傳感器表面上的示例性逆反射圖像的圖示。
圖12示出了示例性方法的過程圖,該示例性方法用于跟蹤眼睛的移動并且使用所跟蹤的眼睛的移動來控制顯示屏上的鼠標標記。
圖13示出了采用了所公開的技術的示例性眼睛跟蹤傳感器的圖示,該示例性眼睛跟蹤傳感器具有調制照明光和探測單元。
圖14示出了用于探測經調制的眼睛跟蹤傳感器信號的示例性方法的過程圖。
圖15示出了采用了所公開的技術的具有調制照明光和探測單元的另一示例性眼睛跟蹤傳感器設備的圖示。
圖16示出了用于探測多個經調制的眼睛跟蹤傳感器信號的示例性方法的過程圖。
圖17示出了用于同時探測多個經調制的眼睛跟蹤傳感器信號的示例性方法的過程圖。
圖18A示出了示例性眼睛鼠標模塊的圖示,該示例性眼睛鼠標模塊包括眼睛傳感器機構和自我消除結構。
圖18B示出了與智能手機集成的示例性眼睛鼠標模塊的圖示。
圖19A示出了當兩組光源完全匹配時,具有自我消除結構的示例性眼睛鼠標模塊的仿真結果。
圖19B示出了當兩組光源相匹配但是存在少量差異時,具有自我消除結構的示例性眼睛鼠標模塊的仿真結果。
圖20A示出了當圖18A中的同軸光源和參考光源都接通時的示例性眼睛圖像的示意圖。
圖20B示出了當只有圖18A中的參考光源被探測到時的示例性眼睛圖像的示意圖。
圖20C顯示了用于示出跟蹤眼睛凝視點的示例性過程的流程圖。
圖21示出所提出的眼睛鼠標模塊的測距功能。
圖22示出了所提出的自我消除眼睛鼠標模塊的信號獲取過程的框圖。
圖23示出了用戶移動設備上所設計的示例性眼睛鼠標功能按鈕的圖示。
圖24示出了采用了所提出的眼睛鼠標技術的示例性目標應用的圖示。
圖25示出了示例性移動設備(諸如,智能手機)的圖示,該示例性移動設備具有用于收集用戶反應數據的集成眼睛感測模塊。
圖26示出了示例性移動設備(諸如,智能手機)的框圖,該示例性移動設備與眼睛感測模塊、環境光感測模塊以及運動感測模塊集成以生成用戶反應數據。
圖27示出了收集來自多個移動設備的用戶反應數據并對該用戶反應數據進行分析的數據流圖。
具體實施方式
所公開的技術的實施例的示例包括設備、系統及方法,所述系統、系統及方法用于:實時監視并跟蹤眼睛或雙眼在顯示屏上的瞄準的位置和移動;使用顯示屏上的眼睛瞄準和凝視來在顯示屏上放置并移動光標;以及通過設備上的物理觸發來使用光標選擇顯示屏上的對象、文檔、軟件或圖標、激活它,或者與其交互。
另一方面,所公開的技術提供了使用用戶眼睛的動態來分析并報告用戶對設備的顯示屏上的內容的反應。與設備集成的眼睛感測模塊被用于:當設備的顯示屏上呈現了一項或更多項內容時(例如,當用戶正在觀看設備的顯示屏時),測量用戶眼睛的動態數據。用戶眼睛的動態數據至少包括用戶眼睛的移動和用戶瞳孔尺寸的變化。對所測量的用戶眼睛的動態數據進行分析以確定用戶對顯示屏上所顯示的內容的反應。
圖1示出了人眼的解剖學的圖示。眼睛的外壁包括三種同心層。最外層包括角膜和鞏膜,其中,角膜是覆蓋作為眼睛的聚焦系統的虹膜和晶狀體的透明結構,以及鞏膜是形成眼睛的纖維的、保護性的最外層的不透明結構,并且鞏膜包括膠原和彈性纖維且還被稱為“眼白”。虹膜是眼睛中的薄的、圓形結構,虹膜包含有顏料(即,用于確定一個人眼睛的顏色)并且控制瞳孔的直徑和尺寸。瞳孔是虹膜中心處的可調節開口,該可調節開口能夠改變通過晶狀體進入眼睛的光的量。晶狀體是能夠折射光從而將所折射的光聚焦在視網膜的透明的、雙凸面結構。視網膜是眼睛背面的、具有多層神經元(光感受器細胞)的層狀結構,這些神經元通過突觸相互連接以接收所聚焦的光成為圖像,并且將該圖像轉換為電化學神經信號。視網膜的光感受器細胞包括視錐細胞(例如,光感受器細胞的6%)和視桿細胞(例如,光感受器細胞的94%),并且光感受器細胞主要位于沿著視網膜的外圍。視錐細胞集中在視網膜的中央區域(被稱為中央凹)。黃斑是鄰近視網膜的中心的橢圓形、高色素黃色斑點,并且包括中央凹、旁中央凹以及周圍中央凹。中央凹是眼睛中包括最高濃度視錐細胞的小坑,并且負責中央、高分辨率的視覺。脈絡膜是眼睛中的富含血管、向視網膜的最外層供血的區域。眼睛還包括液體,例如,位于角膜和虹膜之間的前區域中的水狀體,以及位于晶狀體后面的后部區域中的玻璃體。
視野通常被劃分為三種區域:中央凹區、旁中央凹區以及周圍視覺區。中央凹區提供了清晰的視覺;旁中央凹區預覽中央凹信息;以及周圍視覺區對閃爍的物體和突然的動作作出反應。例如,周圍視覺區域的敏銳度大約為中央凹區的敏銳度的15%至50%,并且對顏色的也較不敏感。
圖2示出了包括中央凹區、旁中央凹區以及周圍視覺區的視野的圖示,其具有這些區域可以看得見的示例性程度的視野。在人眼中,這三種視野區域是不均勻的。例如,在閱讀時,所謂的感知廣度(例如,有效視野的尺寸)為距離固定點左側3至4個字母間距并且距離固定點右側14至15個字母間距。又例如,視角為1°大致相當于3至4個字母間距。
眼睛自始至終都在移動,例如,甚至在睡覺期間也在移動。存在多種不同類型的眼睛移動,可以包括追蹤、顫動、旋轉、漂移以及掃視。對于人類而言,當看著一個場景時,眼睛會來回移動,而不具有固定的穩定性,從而定位在場景的所感興趣的部分以在思想上創建于場景相對應的三維地圖。例如,當掃描場景或閱讀頁面上的文字時,眼睛在頁面上閱讀文字的時候,眼睛生澀地做出掃視動作并且停頓幾次,同時非常迅速地在每次停頓之間移動。掃視是眼睛的快速移動或“跳”,其與注視相關。
掃視可以是雙眼沿著相同的方向快速、同時移動。
掃視會迅速發生(例如,時間間隔為40至120ms),快速移動(例如,速度高達600°/s,并且是沖擊式的,其中掃視的結束點不會在移動期間發生變化。人眼的掃視移動可能是因為例如為了分辨視覺中被探測到的物體的原因從而通過移動眼睛使得可以通過更高效地使用神經系統的視覺處理功能來以更高的分辨率感測場景中的一小部分。另一方面,視覺注視是在眼睛保持凝視在單個位置的情況。對于注視而言,眼睛是相對靜止的,并且被“固定”至某一點,例如,當閱讀單個字時。在視覺期間,場景的信息主要在注視期間被獲取。例如,注視持續時間可以在120至1000ms之間變化,例如,通常為200至600ms,并且典型的注視頻率為低于3Hz。
圖3A和圖3B示出眼睛的圖像和圖示,這兩個圖示說明了當眼睛被光源照射時所發生的三種反射。這三種類型的眼睛反射包括:從角膜反射的光的角膜反射,從虹膜反射的光的虹膜反射,以及從視網膜反射的光的逆反射。例如,如圖3A所示,角膜反射形成了一個小點;虹膜反射看起來很暗但是富有色彩;以及逆反射明亮且具有較強的方向依賴性。圖3B的圖示示出了反射光束311,該反射光束311是基于在眼睛的角膜上入射的入射光束310而通過角膜反射進行反射的;反射光束312,該發射光束312是基于穿過眼睛的角膜并且在虹膜上入射的入射光束310而通過虹膜反射進行反射的;以及反射光束313,該反射光束313是基于穿過眼睛的角膜和晶狀體并且在視網膜上入射的入射光束310而通過逆反射進行反射的。
眼睛跟蹤是對凝視點(一個人所看的地方)或眼睛相對于頭部的運動進行測量的過程。眼睛跟蹤設備及系統測量眼睛位置和眼睛移動。眼睛跟蹤已經用于臨床以及對醫療、認知研究以及心理學、認知語言學和產品設計中的視覺系統的研究中。
現有的眼睛跟蹤模式的一種示例包括基于視頻的眼睛跟蹤技術,例如,稱之為單點法。在該單點法中的這樣的傳統方法包括例如跟蹤眼球的單個可視特征,諸如,角膜緣(鞏膜和虹膜的邊界)和/或瞳孔。例如,攝像機可以觀察用戶眼睛之一。圖像處理軟件對視頻圖像進行分析并且追蹤所跟蹤的特征。基于校準,系統確定用戶目前正在看的位置。在這樣的系統中,不允許頭部移動,而且通常需要咬棒或頭枕。在基于視頻的眼睛跟蹤技術的可替代且相關的示例中,除了對眼睛的兩個特征(例如,角膜反射和瞳孔)進行跟蹤之外,執行了與前面所描述的單點法的示例大體上相同的思路。這樣的方法使用IR光(對于人眼不可見的)來產生角膜反射,并造成瞳孔變亮或變暗,這有助于系統從視頻圖像中識別出瞳孔。
每個這些示例性傳統方法都具有顯著的局限性和缺陷。例如,都需要要么安裝在地面上要么安裝在頭部的額外的設備上。同樣,這樣的方法也需要眼睛跟蹤系統或設備,但是這些眼睛跟蹤系統或設備不能集成到類似于智能手機或平板電腦的移動設備中。此外,這些常規的方法僅提供了非常有限的信息,例如,無論是通過亮瞳孔測量還是暗瞳孔測量提取的信息都是非常有限的,并且相關聯的軟件相當復雜且不可靠的。
所公開的技術提供了通過使用用戶界面與設備進行交互來進行眼睛移動的光學感測及跟蹤。在一些實施例中,可以將光學感測和跟蹤功能集成到設備中。例如,所公開的眼睛跟蹤技術可以與移動設備(例如,智能手機和平板電腦)和計算設備(例如,諸如計算機監視器)集成,以跟蹤操作員眼睛的位置、移動及閃爍狀態。所公開的技術可以基于注視和掃視的眼睛移動來使用來自眼睛的光的逆反射進行光學感測和眼睛跟蹤。
一方面,一種用于跟蹤眼睛移動的方法包括:使用與設備的光電探測器模塊(例如,相機)等距的多個(單個)光源朝向用戶的眼睛發射光;在光電探測器模塊處接收多個光源中的每個光源所發射的光的、從眼睛逆反射的至少部分逆反射;以及基于與多個光源相對應的至少部分逆反射的差值確定眼睛的位置參數。例如,設備可以包括但不限于,智能手機、平板電腦、照相機或攝像機、計算機監視器或便攜式計算機。在一些實施例中,例如,當用戶的頭部相對于例如設備移動時,可以實現該方法。在該方法的一些實施例中,例如,多個(三種)光源可以發射具有不同顏色、不同波長和/或不同調制頻率的彩色光,例如,其中,彩色光可以包括紅色光、綠色光、藍色光、黃色光或上述項的任何組合。例如,在該方法的一些實施例中,所發射的光可以包括紅外光。此外,例如,所發射的光可以包括閃爍光,該閃爍光的頻率與光電探測器模塊(例如,相機)的幀速率有關。例如,在一些實施例中,該方法還包括在使用示例性相機處所接收到的至少部分逆反射來探測眼睛的眨動。此外,該方法還包括將所探測到的眨動處理成數據,以及,在一些實施例中,該方法還包括將該數據用作設備的至少一個功能的輸入數據。
圖4A示出了用于描繪采用了本公開技術的、用于跟蹤眼睛的移動的示例性方法400的流程圖。該方法400包括(402)朝向用戶的眼睛發射來自多個相應光源的多種(三種)類型的光的過程,其中,這三種光源相對于用戶設備的光電探測器模塊(例如,相機)等間距。例如,該過程可以使用一個相機來實現,其中,這三種光源以相等的距離偏離于相機。
該方法包括(404)使用示例性相機接收三種光源中的每個所發射的三種類型的光的、從眼睛逆反射的至少部分逆反射的過程。例如,距離被配置為使得相機能夠從所有的光源接收至少部分逆反射。
此外,三種光源可以發射相同或不同顏色的彩色光,或在其他示例中,為了避免刺激用戶,發射紅外光。在一些示例中,如圖4B所示出的,光源可以是彩色發光二極管(LED),圖4B示出了用于執行示例性眼睛跟蹤方法的用戶設備的示例性界面的示意圖。例如,可以選取示例性LED來發射特定的RGB顏色以與相機傳感器上的濾色器相匹配。示例性LED可以是紅外LED。示例性彩色或紅外LED可以按照與相機視頻幀同步的順序接通。此外,例如,三種光源可以發射時域上的閃爍光,然而,應當注意的是,閃爍光會降低數據速率。
返回至圖4A,該方法包括(406)確定眼睛的位置參數(諸如,眼睛所觀看的方向或者眼睛在空間中的位置)的過程。
例如,通過計算三種逆反射(例如,與三種光源相對應的至少部分逆反射)的差值,可以確定眼睛移動的方向和其他參數。
在一些示例中,確定眼睛和眼睛移動的方向、定位和/或其他位置參數可以包括下述項。
所公開的方法對眼睛的距離和頭部移動并不敏感,從而提供了可靠的眼睛跟蹤解決方案。該眼睛跟蹤器還可以容易地可靠地探測到操作員的眼睛眨動,其中,眨眼信息可以被處理為數據并且作為設備的輸入。例如,智能手機的操作傾向于在距離為1至2英尺的位置處。所公開的方法可以在多種距離和角度(例如,包括0.1°至0.25°)下的頭部自由精度工作,并且包括0.02°均方根的頭部自由分辨率。
所公開的方法可以被實現為依次或同時跟蹤用戶的雙眼的移動。
圖5A示出了在用戶設備599上實現的眼睛跟蹤單元或設備500的框圖,例如,該用戶設備可以是,但不限定于,智能手機、平板電腦、照相機或攝像機、計算機監視器,或便攜式計算機。
眼睛跟蹤單元500包括相對于設備599的相機504彼此等距的三個光源501、502和503。眼睛跟蹤單元500包括耦合至存儲單元506的處理單元505。例如,存儲器單元506可以包括處理器可執行代碼,其中,當處理單元505執行處理器可執行代碼時,該處理器可執行代碼配置眼睛跟蹤單元500執行各種操作,諸如,接收例如來自相機504的信息,命令和/或數據;對信息和數據進行處理,以及向另一實體(例如,光源501,502和503和/或相機504,或用戶設備599)發送或提供信息/數據或命令。例如,在一些實施例中,存儲單元506可以被配置為磁盤或固態硬盤(SSD)存儲單元。
在一些實施例中,眼睛跟蹤單元或裝置500可以使用用戶設備599的處理單元和/或存儲單元。
圖5B示出了圖4A所描述的示例性方法的操作的圖示,該操作使用了眼睛和多個光源以及用戶設備599(例如,智能手機)的相機的逆反射。圖5B的圖示示出了基于光源501所產生的入射光束510a和光源502所產生的510b通過逆反射所反射的相應的反射光束513a和513b。入射光束510a和510b的光路徑包括穿過眼睛的角膜和晶狀體并且在視網膜上進行入射。在視網膜上入射的光可以被視網膜逆反射,使得逆反射光的光路徑再次穿過晶狀體和角膜并且直接指向它的來源,如逆反射光束513a和513b所示。逆反射光束513a和513b可以通過相機504進行捕獲。例如,如圖5B的示例性圖示中的逆反射光560所示,一些逆反射光可以被直接地引導遠離用戶設備599。再例如,如圖所示,所發射的光的一部分可以從虹膜發射稱為虹膜反射570。
圖6A示出了移動智能手機設備698上實現的眼睛跟蹤設備500的圖示。
圖6B示出了在計算機監視器或電視設備699上實現的眼睛跟蹤設備500的圖示。
在其他示例中,所公開的眼睛跟蹤技術可以實現在頭戴式顯示器(HUD)設備(諸如,谷歌眼鏡)中。
例如,在一些實施例中,眼睛跟蹤單元500包括顯示屏515,該顯示屏515被配置為位于用戶設備599內部、光源501、502和503以及相機504所在的同一側。該顯示屏515可以通信地耦接至處理單元505和/或存儲單元506。例如,顯示屏515可以用戶設備599所固有的顯示屏。
圖7A示出了眼睛跟蹤單元500中的顯示屏515的示例性配置的圖示,該顯示屏可以用于校準眼睛跟蹤單元500。例如,顯示了固定位置標記516,其中,校準操作包括用戶一次只集中觀看一個高亮標記并且推壓用戶設備599的選擇按鈕。可以將固定的位置標記516移動至顯示屏515上的多個位置,示例性地,在屏幕的四個角和中央,其中,激活標記表示為紅色。例如,固定位置標記516可以多次示出并且被示出在待顯示的多個位置處以進行校準操作。
圖7B示出了眼睛跟蹤單元500的圖示,該眼睛跟蹤單元500包括顯示屏515并且可操作在各種應用中的任意一種應用中,其中,眼睛移動用作其中實現有眼睛跟蹤單元500的用戶設備599的輸入數據。例如,眼睛跟蹤單元500可以探測用戶所執行的操作過程中的用戶眼睛的位置參數,這些用戶所執行的操作過程包括但不限于:直觀地選擇顯示屏515上的按鈕、圖標或文本來執行用戶設備599(諸如,智能手機或平板電腦等)的程序。此外,例如,所公開的眼睛跟蹤技術可以使用眼睛跟蹤單元500所探測的眼睛眨動并且利用類似于眼睛移動數據的眨眼數據來激活用戶設備599的應用功能。
圖8示出了示例性方法800的過程圖,該示例性方法800用于通過使用連續光發射并且使用跟蹤單元500進行捕獲的方式來跟蹤眼睛的移動。該方法包括:從光源501(諸如,LED1)發射第一光(802),以及使用相機504捕獲第一視頻幀中的、第一發射光的通過眼睛逆反射的逆反射的圖像(804)。該方法包括:從光源502(諸如,LED2)發射第二光(806),以及使用相機504捕獲第二視頻幀中的、第二發射光的通過眼睛逆反射的逆反射的圖像(808)。該方法包括:從光源503(諸如,LED3)發射第三光(810),以及使用相機504捕獲第三視頻幀中的、第三發射光的通過眼睛逆反射的逆反射的圖像(812)。第一視頻幀、第二視頻幀以及第三視頻幀可以被包括在幀集合(例如,幀集合數據1或{S1}))中(800)(814)。該方法包括使用{Si}中的第一視頻幀、第二視頻幀以及第三視頻幀來計算眼睛在某時刻的位置以發射三種光以捕獲三種視頻幀(816)。該方法可以包括重復該過程(例如,n次)以生成多個連續的幀集合{S}n(818)。
該方法還包括探測眼睛眨動并且將所探測到的眨眼用作數據用于跟蹤單元500的宿主的設備(820)。例如,當用戶的眼睛眨動時,所逆反射的光將消失,這將通過多幀數據集被探測到,并且這是用作探測眼睛眨動的特征。例如,可以對多幀數據集{Sn}進行處理以確定眨眼事件的發生、眨眼事件的頻率、眨眼的速度、眨眼的持續時間(例如,眼睛閉了多長時間),以及哪個眼睛在眨動(例如,左眼眨動或右眼眨動或雙眼眨動)。這些都可以作為輸入數據以影響裝置的功能(例如,智能手機或計算機的機器狀態)。
圖9示出使用了所公開的技術的示例性眼睛跟蹤設備,該示例性眼睛跟蹤設備包括具有棱鏡的單個傳感器組并且用于探測眼睛移動和/或眨動以控制設備的功能。在一些實施例中,示例性眼睛跟蹤設備可操作為“眼睛鼠標”。在該示例中,示例性眼睛跟蹤設備可以包括偏振光束分離器1,該偏振光束分離器1被光學地耦接至微透鏡3,其中,微透鏡3位于或定位在偏振光束分離器1與帶通濾波器35之間以光學地濾除進入光電探測器模塊33的光。示例性眼睛跟蹤設備可以包括光源(例如,近紅外LED11),該光源可以以特定的頻率或多個特定的頻率進行調制,其中,光源11被光學地耦接至線性偏振器13,而線性偏振器13被光學地耦接至偏振光束分離器1,以發送來自設備的、可以被用戶眼睛逆反射的探測光(例如,LED輻射光束15)。光電檢測器模塊33可以被構造成包括光電探測器敏感陣列25以探測進入模塊33的輸入光,該輸入光可以包括例如通過用戶眼睛逆反射的光,該通過用戶眼睛逆反射的光通過帶通濾波器35進行過濾。例如,如圖9所示,光電檢測器敏感陣列25對圖像點29處的、對應于用戶的右眼18的逆反射光束21的光以及圖像點27處的、對應于用戶的左眼19的逆反射光束23的光進行探測。示例性眼睛眼睛跟蹤設備可以包括處理單元,該處理單元被通信地耦接至光電探測器模塊33,以將光電探測器敏感陣列25上所光電探測到的信號處理為數據。該處理單元可以包括通用處理器,該通用處理器與存儲單元耦接以存儲原始數據和經處理的數據。該處理單元可以被配置為執行方法以基于所探測到的逆反射光信號數據來跟蹤眼睛移動并且控制用戶設備的功能(例如,包括改變用戶設備的顯示)。在示例性眼睛跟蹤設備的一些實施例中,用戶設備的包括處理器和存儲單元的處理單元用于執行所公開的技術中的數據處理方法。
圖10示出了采用了所公開的技術的示例性眼睛跟蹤(眼睛鼠標)設備,該示例性眼睛跟蹤設備包括具有擋光板的單個傳感器組并且用于探測眼睛移動和/或眨動以控制設備的功能。在該示例中,示例性眼睛跟蹤設備可以包括光源(例如,近紅外LED11),該光源可以以特定的頻率或多個特定的頻率進行調制,其中,光源11被光學地耦接至線性偏振器13,以發送來自設備的、可以被用戶眼睛逆反射的探測光(例如,LED輻射光束15)。示例性眼睛跟蹤設備可以包括線性(接收)偏振器41,該線性偏振器41被光學地耦接至微透鏡3并且被配置為靠近光源11和線性(發送)偏振器13但是通過擋光壁或擋光板45與光源11和線性(發送)偏振器13隔開。示例性光跟蹤設備的帶通濾波器35被配置在微透鏡3的后面以光學地對進入光電探測器模塊33的光進行過濾。光電檢測器模塊33可以被構造成包括光電探測器敏感陣列25以探測進入模塊33的輸入光,該輸入光可以包括例如通過用戶眼睛逆反射的光,該通過用戶眼睛逆反射的光通過帶通濾波器35進行過濾。例如,如圖9所示,光電檢測器敏感陣列25對圖像點29處的、對應于用戶的右眼18的逆反射光束21的光以及圖像點27處的、對應于用戶的左眼19的逆反射光束23的光進行探測。示例性眼眼睛蹤設備可以包括處理單元,該處理單元被通信地耦接至光電探測器模塊33,以將光電探測器敏感陣列25上所光電探測到的信號處理為數據。該處理單元可以包括通用處理器,該通用處理器與存儲單元耦接以存儲原始數據和經處理的數據。該處理單元可以被配置為執行方法以基于所探測到的逆反射光信號數據來跟蹤眼睛移動并且控制用戶設備的功能(例如,包括改變用戶設備的顯示)。在示例性眼睛跟蹤設備的一些實施例中,用戶設備的包括處理器和存儲單元的處理單元用于執行所公開的技術中的數據處理方法。
圖11A示出了用于描繪示例性眼睛鼠標設備的示例性傳感器表面1104(例如,大體上類似于光電探測器敏感陣列25)上的示例性逆反射圖像1100和1102(諸如,圖9和圖10中所示的逆反射圖像)的圖示,其中,所述圖像是根據示例性設備的用戶的眼睛所產生的逆反射光被探測到的。圖11B示出了用于描繪當用戶眼睛移動時的示例性傳感器表面上的示例性逆反射圖像1106和1108的圖示,使得能夠通過使用示例性設備的處理單元將圖像差生成為跟蹤信號。
圖12示出了示例性方法1200的過程圖,該示例性方法1200用于跟蹤眼睛的移動并且使用所跟蹤的眼睛的移動來控制顯示屏上的鼠標標記。該示例性方法可以包括(1202)朝向用戶眼睛發射來自一個或更多個光源的光的過程,所述一個或更多個光源被配置在包括采用了本公開技術的眼睛跟蹤設備的用戶設備中。用戶設備可以包括但不限于:智能手機、平板電腦、照相機或攝像機、計算機監視器或便攜式計算機。該方法可以包括(1204)在用戶設備中的使用了所公開的技術的眼睛跟蹤設備中的光電探測器模塊處接收一個或更多個光源所發射的逆反射光的過程,其中,所述逆反射光是通過用戶的眼睛(例如,左眼、右眼和/或雙眼)進行逆反射的。該方法可以包括(1206)利用采取了所公開的技術的眼睛跟蹤設備中的處理單元或用戶設備中現有的處理單元來基于所接收/探測的逆反射光確定眼睛移動的位置和/或方向的過程。在一些實施例中,確定眼睛移動的位置和/或方向的過程可以包括(1208)根據所確定的移動的位置和/或方向來控制用戶設備的功能(例如,包括在用戶設備的顯示屏上拖拽標記(例如,鼠標標記)或者改變顯示屏)。當視點與鼠標標記不重疊使,該方法可以包括(1210)通過邏輯操作使視點與鼠標標記重新對準。
圖13示出了采用了所公開的技術的示例性眼睛跟蹤傳感器1300的圖示,該示例性眼睛跟蹤傳感器1300具有調制照明光和探測單元。示例性眼睛跟蹤傳感器設備1300可以包括用于向用戶發射調制光1304的光源(例如,LED光源)1302。示例性眼睛跟蹤傳感器設備1300可以包括一個或更多個擋光設備1306(諸如,壁或擋板),所述一個或更多個擋光設備1306被配置或設置成靠近光源1302以阻擋來自光源1302的光從而防止光照射/照亮示例性眼睛跟蹤傳感器設備的圖像傳感器。示例性眼睛跟蹤傳感器設備1300可以包括成像光學器件1308(例如,一個或更多個微透鏡)用于接收光并將光輸入到設備1300中,其中,成像光學器件1308可以被配置或設置成靠近擋光壁1306(例如,防止從光源單元1302發射的光直接進入成像光學器件1308)。示例性眼睛跟蹤傳感器設備1300可以包括光電探測器陣列1312用于探測所發射的、通過成像光學器件1308的光。在該示例性眼睛跟蹤傳感器設備1300的實施例中,光源1302被配置或設置成發射調制光1304(例如,按照一個或多個頻率),該調制光1304可以通過眼睛被逆反射1310并且經由示例性眼睛跟蹤傳感器設備1300的成像光學器件1308通過光電探測器陣列1312接收。例如,光電檢測器陣列1312可以被配置為包括像素和解調電路,以便于將光源所發射的具有調制頻率或多個調制頻率的光與沒有任何調制的其他光(例如,諸如周圍環境中的環境光1314)區分開。在一些實施例中,示例性眼睛跟蹤傳感器設備可以被通信地耦接至用戶設備的處理單元。
圖14示出了用于探測經調制的眼睛跟蹤傳感器信號的示例性方法(1400)的過程圖。該示例性方法(1400)可以包括:(1402)從采用了所公開的技術的眼睛跟蹤傳感器設備(例如,眼睛跟蹤傳感器設備1300),諸如,圖13所示的眼睛跟蹤傳感器設備1300中的發光單元(例如,發光單元1302)發射具有固定調制的光(例如,LED光)的過程。該示例性方法(1400)可以包括:(1404)對包括了解調電路中所包含的像素的光電探測器陣列處的經調制的光進行探測的過程。該方法1400可以包括:(1406)對所探測到的調制光進行解調制的過程,其中,僅對解調制的信號進行記錄和存儲(例如,在存儲器中,該存儲器可以被配置在解調制電路中),并且不具有解調制頻率的光被濾除。該方法(1400)可以包括使用例如與解調制電路耦接的掃描讀取電路或者解調制電路中所包含的掃描讀取電路來針對每個像素讀取所存儲的信號。
圖15示出了采用了所公開的技術的具有調制照明光和探測單元的另一示例性眼睛跟蹤傳感器設備1500的圖示。圖15中的示例性眼睛跟蹤傳感器設備1500可以包括多個光源單元1502和1504(例如,LED光源#1和LED光源#2),用于朝用戶發射多個調制光1506和1508(例如,調制光#1和調制光#2)。示例性眼睛跟蹤傳感器設備1500可以包括一個或更多個擋光設備1510(諸如,壁或擋板),所述一個或更多個擋光設備1510被配置或設置成靠近光源1502以阻擋來自光源1504的光從而防止光照耀/照亮示例性眼睛跟蹤傳感器設備的圖像傳感器。示例性眼睛跟蹤傳感器設備1500可以包括成像光學器件1512(例如,一個或更多個微透鏡)用于接收光并將光輸入到設備1500中,其中,成像光學器件1512可以被配置或設置成靠近擋光壁1510,從而防止多個光源單元所發射的光1506和1508直接地進入成像光學器件1512)。示例性眼睛跟蹤傳感器設備1500可以包括光電探測器陣列1518,該光電探測器陣列1518用于探測發射通過成像光學器件1512的光。在該示例性眼睛跟蹤傳感器設備1500的實施例中,多個光源1502和1504被配置或設置成發射多個調制光1506和1508(例如,按照一個或多個頻率),該調制光1304可以通過眼睛被逆反射1514和1516并且經由示例性眼睛跟蹤傳感器設備1500的成像光學器件1512通過光電探測器陣列1518接收。例如,光電檢測器陣列1518可以被配置為包括像素和解調電路,以便于將多個光源1502和1504所發射的具有調制頻率或多個調制頻率的光射線或光束1506和1508與沒有任何調制的其他光(例如,諸如周圍環境中的環境光)區分開。在一些實施例中,示例性眼睛跟蹤傳感器設備1500可以被通信地耦接至用戶設備的處理單元。
圖16示出了用于探測多個經調制的眼睛跟蹤傳感器信號的示例性方法(1600)的過程圖。該示例性方法(1600)可以包括:(1602)從采用了所公開的技術的眼睛跟蹤傳感器設備(諸如,圖15所示)的第一發光源(例如,LED光源)發射具有固定調制的第一光束(例如,LED光)的過程。該示例性方法(1600)可以包括:(1604)對包括了解調制電路中所包含的像素的光電探測器陣列處的第一調制光束進行探測的過程。該方法可以包括:(1606)對所探測到的第一調制光進行解調制的過程,其中,僅對解調制的信號進行記錄和存儲(例如,在存儲器中,該存儲器可以被配置在解調制電路中),并且不具有第一解調制頻率(多個頻率)的光被濾除。該方法(1600)可以包括:(1608)使用例如與解調制電路耦接的掃描讀取電路或者解調制電路中所包含的掃描讀取電路來針對每個像素來讀取所存儲的、與第一調制光相對應的信號(信號S1)的過程。該示例性方法(1600)可以包括:(1610)采用了所公開的技術的眼睛跟蹤傳感器設備(諸如,圖15所示)的第二發光源(例如,LED光源)發射具有固定調制的第二光束(例如,LED光)的過程。該示例性方法(1600)可以包括:(1612)對包括了解調制電路中所包含的像素的光電探測器陣列處的第二調制光束進行探測的過程。該方法可以包括:(1614)對所探測到的第二調制光進行解調制的過程,其中,僅對解調制的信號進行記錄和存儲(例如,在存儲器中,該存儲器可以被配置在解調制電路中),并且不具有第二解調制頻率(多個頻率)的光被濾除。該方法(1600)可以包括:(1616)使用例如與解調制電路耦接的掃描讀取電路或者解調制電路中所包含的掃描讀取電路來針對每個像素讀取所存儲的、與第二調制光相對應的信號的過程。對于每個像素的、與第一調制光和第二調制光相對應的信號(S1和S2)可以結合在一起用于計算眼睛的位置和移動(1618)。該方法(1600)可以包括按順序(如圖16所示)或者同時(如圖17所示)執行示例性第一調制光和示例性第二調制光的發射、探測和解調制以及讀取過程。
圖17示出了用于同時探測多個經調制的眼睛跟蹤傳感器信號的示例性方法(1700)的過程圖。例如,發射不同波長的光的兩種不同的光源被用于發射(1702)具有不同波長的兩種光,例如,其中,第一光源發射波長大于850nm的光,例如,在一些示例中,光的波長為940nm,以及,其中,第二光源發射波長小于850nm的光,例如,在一些示例中,光的波長為780nm。例如,可以使用示例性波長,因為眼睛晶體對于不同的波長具有不同的吸收率,然而,人類的皮膚和其他背景對于這兩種波長的吸收率沒有任何差異。該方法(1700)包括:(1704)使用光電探測陣列探測器(例如,具有包含在解調電路的像素的一個光電探測陣列探測器)以探測兩個光源所發射的光。具有包含在解調電路的像素的光電探測陣列探測器對所探測到的、來自兩種光源的調制光進行解調制;記錄兩種不同的調制信號(例如,信號S1和S2)以及濾除沒有被調制的環境光(1706)。通過對信號S1和S2進行比較,可以進一步濾除背景信號。該方法(1700)可以包括(1708)使用例如與解調制電路耦接的掃描讀取電路或者解調制電路中所包含的掃描讀取電路來針對每個像素來讀取所存儲的、與第一調制光和第二調制光相對應的信號的過程。對于每個像素的、與第一調制光和第二調制光相對應的信號(S1和S2)可以結合在一起用于計算眼睛的位置和移動(1710)。在其他實施例中,兩種光源可以具有相同的波長和/或相同的調制頻率并且具有良好定義的相位差(諸如,相位差為π),使得處理器可以處理信號以提取眼睛位置或移動的信息。
功能類似于普通鼠標,所提出的“眼睛鼠標”模塊通過跟蹤并探測用戶的眼睛凝視來控制顯示器上的計算機光標。在一些實施例中,當用戶輕輕地旋轉或移動移動設備、或者轉動或移動他/她的頭部,或者在旋轉/移動頭部的同時旋轉/移動移動設備時,光標被連續地或主動地移動至用戶所期待的位置處。因此,在這樣的應用中,用戶可以認為移動設備是普通鼠標。
當對與移動設備集成的眼睛鼠標模塊進行操作時,移動設備上的光源(是眼睛鼠標模塊的一部分)可以向用戶投射光。來自用戶眼睛的逆反射光返回至光源,同時進行了少量的發散。然而,用戶的臉部和其他表面可以將來自光源的光散射并且所散射的光可以返回至光源。假設眼睛瞳孔孔徑的直徑為3mm,并且面部和其他表面的總面積大約為眼睛瞳孔面積的5000倍。該示例表示返回至光源的光的僅1/5000是有用的,它代表了探測有用信號所存在的嚴重問題。在一些實施例中,眼睛鼠標被配置具有自我消除結構以消除由于面部和其他物體表面的散射所造成的背景信號,使得當操作眼睛鼠標時,僅可以跟蹤眼睛或類似的光學器件。
圖18A示出了示例性眼睛鼠標模塊1800的圖示,該示例性眼睛鼠標模塊1800包括眼睛傳感器機構和自我消除結構。注意,眼睛鼠標模塊1800通常位于包括顯示屏的設備上。在該示例性實施例中,眼睛鼠標模塊1800中的兩組光源被用于探測眼睛瞳孔。更具體地,第一組光源1804被設置成靠近接收傳感器1810和透鏡1808的軸線。光源1804可以被稱之為“同軸光源”。其他組光源1806被設置遠離透鏡1808的軸線。光源1806可以被稱之為“參考光源”。通過參考光源1806與透鏡1808之間的距離可以被設置成大約5mm。于是,將來自光源1804和1806的光束朝向用戶投射。第一組光源1804和第二組光源1806中的每個都可以包括單個光源(諸如,LED)或多個光源(諸如,多個LED)。
當用戶用手握住包括眼睛鼠標模塊的設備時,被投射到眼睛瞳孔上的光能顯著地小于(例如,只有約1/5000)被投射到用戶的面部1812或其他表面(諸如,用戶的肩膀)的光能。在光源位于孔的中心的情況下,來自用戶眼睛的逆反射光可以分布在有限的區域(例如,在600mm距離處的大約10mm直徑孔區域)內。從面部或其他表面散射的光通常被分布在較大的區域,如果使用了朗伯散射模型,這可以通過半球體來描述。從面部和其他表面散射的光通常分布到更大的區域,其可以由一個半地球如果使用來描述(例如,2πR2或251000至2262000mm2)。注意,當接收透鏡1808的孔小于逆反射光束尺寸時,逆反射光與散射光之間的比值通常僅為0.64至5.8。這種的低比率表示傳感器1810具有多個元件。例如,當傳感器具有N個探測器元件時,眼睛圖像位置處的比值可以提高N倍。
圖18A所示的設計提供了一種在不增加傳感器元件的數量的情況下提高了眼睛探測對比度的技術。在特定的實施例中,兩組光源1804和1806可以具有相同的波長并且大體上相同的空間功率分布。這可以通過調節光源1804和1806的驅動電流來實現。
兩組光源1804和1806可以使用大體上相同的頻率和相同的調制深度來調制。然而,在兩組光源上所執行的調制的相位差為-180°。注意,從人臉和其他散射表面接收到的散射光包括兩組光源1804和1806的散射光。由于的調制相位差為-180°,來自這兩組光源的散射光大體上相互抵消,并且散射光的剩余部分構成生成DC信號的穩定電源。
在一些實施例中,DC-抑制濾波器電路用于濾除這些高DC比率信號。此外,來自光源1804和1806的逆反射光通常具有非常小的發散角,并且如圖18A所述的配置使得傳感器1810能夠從同軸光源1804接收更多的逆反射光。結果是,所接收到的AC信號主要來自同軸光源1804的逆反射光。這個結果被稱為“自我消除”。
再次參考圖18A,來自傳感器1810的輸出信號被耦合至眼睛鼠標模塊的處理單元1814,該處理單元1814可操作成運行程序以處理傳感器1810所生成的AC信號以確定用戶眼睛在顯示器1816上的凝視點。例如,處理單元1814可以基于與同軸光源1804和參考光源1806相對應的逆反射光來確定凝視點。在一些實施例中,處理單元1814可以主要地基于與同軸光源1804相對應的逆反射光確定凝視點。于是,處理單元1810可以基于所確定的凝視點在顯示器1816上顯示光標或者更新顯示器1816上的光標顯示。注意,當眼睛鼠標模塊持續地或主動地跟蹤顯示器1816與用戶眼睛1802之間的相對移動(包括線性和旋轉)時,處理單元基于眼睛凝視的變化點持續地或主動地更新光標在顯示器1816上的位置。
圖18B示出了與智能手機1822集成的示例性眼睛鼠標模塊1820的圖示,該示例性眼睛鼠標模塊1820基于所確定的用戶1828的凝視點將光標1824顯示在顯示屏1826上。
圖19A示出了當兩組光源完全匹配時,具有自我消除結構的示例性眼睛鼠標模塊的仿真結果。在該實施例中,這兩組完全匹配的光源具有相同的強度、相同的調制輪廓和相反的相位。此外,來自臉面和其他表面的散射光大多數是可以通過濾波電路濾除的DC輸出。結果是,所探測到的AC信號分量大體上對應于眼睛。據觀察,面部和其他散射面會引起探測光噪聲增大41%。相對于來自環境背景光的噪聲而言,探測光噪聲通常可以忽略不計。
圖19B示出了當兩組光源相匹配但是存在少量差異時,具有自我消除結構的示例性眼睛鼠標模塊的仿真結果。在該示例中,這兩組光源的強度具有2%的差異,并且調制相位差為178°而不是180°。仿真結果表明,這樣的設計信號背景對比度提高了25倍,或者信噪比提高了18倍。
注意,使用圖19A和圖19B所示的設計,通過針對光源的輸出和環境光強度對所接收到的AC信號分量進行校準可以方便且可靠地探測到瞳孔尺寸的變化。更具體地,逆反射信號強度變化可以用來通過測量所接收到的逆反射信號的強度或者直接地對瞳孔圖像所占用的傳感器元件的數量進行計數來確定瞳孔尺寸的變化。此外,所接收到的逆反射信號還可以用來確定一個人是否正在看著屏幕以及這個人正在看屏幕上的哪個區域。
注意,系統并不需要對兩個幀進行比較以濾除背景從而生成眼睛跟蹤信號。實際上,眼睛跟蹤信號是通過傳感器1810實時生成的。這是非常有用的,尤其是在緩慢幀速率感測期間非常有用。
此外,所提出的眼睛鼠標結構可以降低對具有因子18或更高的探測器元件的數量的需求。例如,相對于使用直接探測而不具有自我消除設備的40×80傳感器而言,具有自我消除眼睛鼠標模塊的10×20傳感器能夠達到更好的效果。
圖20A示出了當圖18A中的同軸光源和參考光源都接通時的示例性眼睛圖像2000的示意圖。注意,瞳孔2002是明亮的。瞳孔2002內的右側上的亮點2004表示圖18A所示的同軸光源1804的角膜反射圖像,而左側上的亮點2006表示圖18A所示的參考光源1806的角膜反射圖像。因為來自角膜表面2008的反射光具有較寬的發散角并且共軸光源1804和參考光源1806彼此接近,所以,在同軸光源1804的照射下以及在參考光源1806的照射下,圖18A中的傳感器1810接收角膜表面2008所反射的光能具有相同的比例。所以,在同軸光源1804的照射下以及在參考光源1806的照射下,圖18A中的傳感器1810接收角膜表面2008所反射的光能具有相同的比例。換句話說,眼睛鼠標傳感器不能分辨兩組光源的角膜反射,除非傳感器的分辨率相當高。由于具有自我消除設計,其中,兩個角膜反射具有相反的相位,因此,角膜反射的貢獻可以被消除。類似于角膜反射消除,還可以將來自其他光滑表面(例如,眼鏡架表面)的反射的影響消除。因此,圖18A所示的眼睛鼠標的自我消除設計顯著地改善了眼睛瞳孔探測。在良好校準的眼睛鼠標傳感器模塊中,AC信號強度直接地反映與眼睛瞳孔尺寸成比例的眼睛逆反射強度。
圖20B示出了當只有圖18A中的參考光源1806被探測到時的示例性眼睛圖像2010的示意圖。在這種情況下,瞳孔區域2002是暗的。圖18A所示的參考光源1806的角膜反射圖像2006成為可探測的。可以通過斷開同軸光源1804或者通過以不同的頻率對兩組光源進行調制來實現這種情況,使得可以在不用頻帶下進行探測。
圖20C顯示了用于示出跟蹤眼睛凝視點的示例性過程(2020)的流程圖。基于圖18A,20A和20B的上下文對過程(2020)進行描述。可以通過接通同軸光源和參考光源二者來開始該過程(2020),所調制的這兩種光源具有相同的輪廓(例如,相同的頻率和深度)但是具有大體上相反的相位(2022)。眼睛瞳孔位置和尺寸被測量(2024)。一旦測量出眼睛瞳孔位置,眼睛鼠標傳感器可以聚焦在探測器元件附件以探測參考光源1806的角膜反射圖像2006。更具體地,該過程可以斷開同軸光源或以不同的頻率對兩組光源進行調制(2026)。該過程可以包括測量參考光源的角膜反射圖象光點位置(2028)。該過程可以包括將參考光源的角膜反射圖像光點位置與眼睛瞳孔中心的位置進行比較(2030)。眼睛瞳孔中心與角膜反射圖像點之間的偏移量提供了有關眼睛凝視方向的信息。該過程還可以分析眼睛凝視點。圖18A中的傳感器1810上的雙眼的兩個圖像之間的距離提供了校準眼睛凝視方向的衡量測度。
圖21示出所提出的眼睛鼠標模塊的測距功能。通過眼睛的逆反射光,所提出的眼睛鼠標模塊可以實現3D探測功能。更具體地,光傳感器與用于眼睛之間的范圍或距離可以通過比較相移來進行測量。注意,所接收的逆反射光2100相對于朝向用戶的眼睛發射的探測光2010具有時間延遲。眼睛鼠標模塊中的處理器可以通過測量所發送的光信號和所接收的光信號之間的相位延遲來測量傳感器與用戶眼睛之間的距離。注意,所確定的范圍或距離信息可以與顯示器中的二維平面中所確定的凝視點結合來生成三維眼睛跟蹤數據。
圖22示出了所提出的自我消除眼睛鼠標模塊的示例性信號獲取過程2200的框圖。如圖22所見,同軸光源和參考光源生成調制光(2202)。同軸光源和基準光源的光束被朝向用戶臉部投射(2204)。在自我消除眼睛鼠標模塊中的傳感器(即,多元件探測器)接收所返回的光(2206)。傳感器中的電路濾除DC分量并且解調制且放大AC分量。環境背景光和面部散射光二者都被抑制。然后,(2208)的眼睛跟蹤信號被生成。在對信號進行分析后,將獲得眼睛瞳孔的位置、瞳孔尺寸以及凝視方向。鼠標光標被顯示在移動設備的屏幕上(2010)。當移動設備被旋轉或移動時,或者當用戶的頭部旋轉或移動時,光標連續地或主動地被調整到用戶所期望的新位置。這種自我消除眼睛鼠標模塊功能大體上與計算機系統所廣泛使用的普通光學鼠標類似。同時,眼睛瞳孔尺寸的變化,和/或眨眼頻率與屏幕框內容的變化也被檢測到以產生用戶的反應信息(2012)。這些信息可以為游戲開發者、廣告企業和心理學研究者和其他感興趣的團體所使用。
圖23示出了用戶移動設備上所設計的示例性眼睛鼠標功能按鈕的圖示。在所示的示例中,眼睛鼠標功能的按鈕2302,2304和2306被設計上的用戶移動設備2308的左側。這些按鈕可以被指定分別具有普通鼠標的左、右擊以及中間點擊的功能。再例如,眼睛鼠標功能鍵2310、2312和2314被設計在移動設備2308的右側,并且被指定分別具有普通鼠標的左、右擊以及中間點擊的功能。在又一示例中,眼睛鼠標功能的按鈕2316和2318被設計在移動設備2308的前面屏幕2320上。此外,在移動設備2308的前面有向用戶發射調制光并且探測來自用戶嚴禁的逆反射的光源1804和1806以及光學透鏡1808。在又一示例中,眼睛鼠標功能鍵2322、2324和2326被設計在移動設備2308的背面并且被指定分別具有常規鼠標的左、右擊以及中間點擊的功能。然而,在一些實施例中,眼睛鼠標按鈕與移動設備的現有按鈕共享。
圖24示出了采用了所提出的眼睛鼠標技術的示例性目標應用的圖示。所提出的眼睛鼠標設計具有尺寸非常小、高分辨率、低成本以及低功耗的特點。例如,示例性眼睛鼠標設計可以具有這樣小的尺寸,比如,寬度大約為2mm、厚度為4mm以及長度為6mm。諸如,所提出的眼睛鼠標模塊可以容易地被集成到小型移動終端(諸如,智能手機、平板電腦、便攜式計算機等)中。此外,所提出的眼睛鼠標易于使用,因為:(1)用戶不需要在他/她的手上佩戴任何額外的工具;(2)其能夠允許進行單手操作;以及(3)可以進行眨眼操作(作為確認/選擇)。注意,所提出的眼睛鼠標不需要進行校正,因此,感覺就像普通的光學鼠標一樣。例如,眼睛鼠標還可以開發成具有通話功能,使得眼睛鼠標能夠在多個移動終端之間發送和接收數據,而不會將信號泄露給不相關的用戶。因為上述獨特的特征,所提出的眼睛鼠標技術適合于廣泛的應用。
例如,眼睛鼠標可以用作普通鼠標2400,并且可以用于打電腦游戲2404。眼睛鼠標的眼睛凝視探測功能可以用于按凝視收費的廣告2410。再例如,眼睛鼠標的通孔尺寸探測可以用于收集對于廣告管理、游戲開發等有用的消費者反應數據。
在一個示例中,眼睛鼠標可以用于安全訪問2408。更具體地,當用戶通過他/她的眼睛移動眼睛鼠標時,光源和傳感器探測器獲取可以用于生成密碼的用戶眼睛視網膜反射屬性。在另一示例中,眼睛鼠標被用于安全打字。更具體地,當用戶使用眼睛打出字母時,附近的人不會知道用戶所選擇的字母。眼睛鼠標還可以用于心理學研究2406。更具體地,可以將所設計的一系列問題、圖片或視頻呈現給用戶,并且眼睛鼠標傳感器測量用于眼睛對這些問題、圖片或視頻的反應。所采集的信息可以幫助心理學家調查用戶的真實想法。
再例如,眼睛鼠標可以用于娛樂2404,諸如,尋找間諜相機。在另一示例中,使用所配備的光源和傳感器探測器,所提出的眼睛鼠標可以用于在其他配備由同種類型的眼睛鼠標之間發送和接收數據。此外,所提出的這種眼睛鼠標技術還可以找到提供給不能使用普通鼠標和鍵盤的殘疾人的應用,作為控制計算機鼠標的替代方案。
移動設備(諸如,智能手機)作為內容遞送工具越來越受到大多數用戶的歡迎,并且內容可以包括文本消息、文件、圖片、視頻或上述所有項的組合。當用戶查看屏幕上所顯示的內容時,能夠收集用戶對所顯示的內容的反饋是有利的。所公開的技術的實施例可以利用移動設備中的傳感器模塊和移動設備中的處理能力,并且與基于云的服務器通信以實時且基于統計地提供集成系統,該集成系統能夠監控、分析并報告用戶對內容的反應。
如上所述,所提出的用戶反應系統可以使用眼睛跟蹤和感測模塊(或者“眼睛感測模塊”)。該眼睛感測模塊可以集成在移動設備的前屏上以提供用于眼睛移動和瞳孔尺寸變化的測量。圖25示出了示例性移動設備2500(諸如,智能手機)的圖示,該示例性移動設備2500具有用于收集用戶反應數據的集成眼睛感測模塊2502。在一些實施例中,設備2500上的眼睛感測模塊2502可以在用戶查看顯示屏2504時捕獲用于眼睛動態數據。例如,用戶對正在查看的內容感興趣時,用戶的瞳孔尺寸會變大,而當用戶對正在查看的內容不感興趣時,用戶的瞳孔尺寸尺寸會變小。此外,如果屏幕上出現了用戶感興趣的新內容時,用戶的瞳孔尺寸會突然變大。眼睛感測模塊2502可以定期地捕獲眼睛動態信息,例如,以至少30幀/秒的視頻速率。通常,可以以等于或大于智能手機屏幕更新速率的幀速率來執行數據捕獲。根據每一幀傳感器數據,所提出的用戶反應系統可以獲取如下信息:沿著水平和垂直方向上的前一幀的用戶瞳孔尺寸變化以及前一幀的用戶瞳孔位置的變化。
注意,由于用戶瞳孔尺寸變化被用于對用戶對內容的反應進行分析,因此,需要對同樣會影響用戶瞳孔尺寸的環境光變化和顯示屏背光變化。當環境光增強時,瞳孔尺寸通常會變小,并且,如果內容屏幕亮度增大,則用戶瞳孔將變小。在圖25中,移動設備2500還包括環境光傳感器模塊2506。在一些實施例中,傳感器模塊2502基于用戶眼睛的移動捕獲具有關于顯示器上的信息的用戶反應數據,并且將數據發送至設備2500上的應用處理器。同時,設備2500中的處理器還接收來自環境光傳感器模塊2506的數據。處理器中的專用程序可以使用環境光傳感器模塊2506所收集的環境光變化數據來校正眼睛感測模塊2502所測量的瞳孔尺寸變化。此外,處理器還可以使用根據顯示屏的所顯示的內容亮度變化數據和根據與設備集成的背光模塊的顯示背光數據來調節眼睛感測模塊2502數據,以獲得對由于用戶對所顯示的內容的反應所造成的瞳孔尺寸進行更精確地測量。
在一些實施例中,當移動設備2500還與移動傳感器(諸如,加速度傳感器和陀螺儀傳感器)集成時,設備2500的處理器還可以接收同時收集的移動傳感器數據。這樣的數據提供了用戶對內容的反應的附加信息。當眼睛感測模塊被內置在移動設備內時,眼睛感測模塊中的所觀察到的用戶眼睛的移動會受到設備自身移動的影響。因此,所提出的系統還可以包括程序,該程序包括接收來自內置的移動傳感器的數據以使用設備移動數據(諸如,設備移動的速度)來校正眼睛感測模塊2502所測量的用戶眼睛移動數據。移動傳感器可以包括3D加速度傳感器和3D陀螺儀傳感器。該校正可以涉及使用成像感測應用所使用的移動校正和穩定技術。
圖26示出了示例性移動設備2600(諸如,智能手機)的框圖,該示例性移動設備2600與眼睛感測模塊2602、環境光感測模塊2604、運動感測模塊2606以及顯示屏和背光模塊2608集成以生成用戶反應數據。如圖26所示,移動設備2600使用應用處理器2610以收集來自眼睛感測模塊2602、環境光感測模塊2604、移動感測模塊2606的測量數據。應用處理器2610還可以通過圖形處理器2612收集來自顯示屏和背光模塊2608的數據,圖形處理器2612監視顯示器背光設置變化和顯示器內容亮度變化。應用處理器2610可以結合所接收到的來自多個這些來源的數據來計算真實地反映用戶對屏幕上所顯示的內容的反應的用戶瞳孔尺寸變化和用戶眼睛移動變化參數。于是,應用處理器2610可以將所計算出的用戶反應數據發送至通信模塊2614,該通信模塊2614可以將用戶反應數據通過網絡2616(諸如,互聯網)發送至服務器2618。服務器2618包括多個軟件部件,這些軟件部件包括用于與用戶設備和其他服務器(諸如,內容提供商)連通并交換數據的(無線和/或有線)網絡適配器。服務器2618還包括處理器,該處理器用于對接收自用戶設備的數據(例如,用戶反應數據)進行處理或分析。服務器2618還包括用于存儲多種數據(例如,用戶反應數據和用戶反應數據的分析)的存儲設備。此外,服務器2618包括用于執行與用戶設備和其他服務器通信并交換數據的多種功能的恰當的軟件。
圖27是示出了收集來自多個移動設備的用戶反應數據并對該用戶反應數據進行分析的數據流圖。多個移動設備2702和2704可以例如使用它們之間的無線連接通過云網絡服務2706將可以與顯示內容信息結合的、多個用戶的經處理的眼睛感測模塊數據(即,用戶反應數據)發送至數據庫服務器2708。于是,數據庫服務器2708對所收集的信息進行分析。數據庫服務器2708可以是顯示內容提供商的服務器,或者可以是獨立服務商的服務器,該數據庫服務器2708收集來自大量群體的用戶反應信息,并且將用戶對于不同內容的反應的數據的統計分析提供給應用服務器(即,內容提供商)2710,該應用服務器2710對多種內容進行分發。該數據流路徑顯示為自從用戶到應用服務器2710的實線2712、2714、2716以及2718。
在一些實施例中,還可以將用戶反應數據直接地發送給應用服務器2710,繞過數據庫服務器2708,并且直接由應用服務器進行分析。該數據流路徑顯示為從網絡服務2706到應用服務器2710的虛線2720。在一些實施例中,應用服務器2710使用所分析的數據來針對每個單獨的用戶調整內容以引起目標用戶更為理想的反應。該數據流路徑顯示為從應用服務器2710到多個移動設備2702和2704的實線2722、2724和2726。因此,使用所描述的用戶反應反饋系統,內容提供商可以基于用于對先前所查看的內容的反應針對每個用戶調整所遞送的內容。
本說明書中所述的主題與功能性操作的實施可以在數字電路或者在包括本專利文獻中所公開的結構及其結構性等同物的計算機軟件、固件或硬件中實現或者在這些中的一個或多個的組合中實現。本說明書中描述的主題的實施例可以實現為一個或多個計算機程序產品,即在有形非易失性計算機可讀介質上編碼的、供數據處理設備執行或者用于控制該數據處理設備的操作的計算機程序指令的一個或更多個模塊。計算機可讀介質可以是機器可讀存儲設備、機器可讀存儲基板、存儲器設備或者其一個或多個的組合。術語“數據處理裝置”包含了用于處理數據的所有裝置、設備和機器,例如包括可編程處理器、計算機、或多處理器或計算機。除了硬件,所述裝置還可以包含為所討論的計算機程序創建執行環境的代碼,例如組成處理器固件、協議棧、數據庫管理系統、操作系統或它們中的一個或多于一個的組合的代碼。
計算機程序(也公知為程序、軟件、軟件應用、腳本或代碼)可以由任意形式的編程語言編寫,包括編譯語言或解釋語言,說明性語言或過程語言,并且該計算機程序可以任意形式部署,包括部署為單獨的程序或模塊、組件、子例程,或者適于在計算環境中使用的其他單元。程序可以被存儲在保持其它程序或數據的文件(例如,存儲在標記語言文檔中的一個或多個腳本)的一部分、專用于正討論的程序的單個文件或者多個協調文件(例如,存儲一個或多個模塊、子程序或部分代碼的文件)中。計算機程序可以被部署成,在一臺計算機上或者一個位置上或分布在多個位置上并由通信網絡互連的多臺計算機上執行。
可以通過一個或多個可編程處理器來完成本說明書中描述的過程和邏輯流程,該可編程處理器通過在輸入數據上運行并生成輸出來執行一個或多個計算機程序以完成所述功能。這些處理和邏輯流還可由專用邏輯電路(例如,FPGA(現場可編程門陣列)或ASIC(專用集成電路))來執行,并且裝置也可被實現成專用邏輯電路(例如,FPGA(現場可編程門陣列)或ASIC(專用集成電路))。
例如,適于執行計算機程序的處理器包括通用和專用微處理器以及任何類型的數字計算機中的任何一個或多個處理器。通常,處理器將接受來自只讀存儲器或者隨機訪問存儲器或者兩者的指令和數據。計算機的主要元件是用于執行指令的處理器以及用于存儲指令和數據的一個或多個存儲設備。計算機還將包括一個或多個用于存儲數據的大容量存儲設備,如磁盤、磁光盤或光盤,或可操作地聯接以便從一個或多個用于存儲數據的大容量存儲設備,如磁盤、磁光盤或光盤接收數據或向其傳送數據,或者既從其接收數據又向其傳送數據。然而,計算機也可以不需要這種設備。適于存儲計算機程序指令和數據的計算機可讀介質包括所有形式的非易失性存儲器、介質和存儲裝置,例如包括:例如EPROM、EEPROM和閃存裝置的半導體存儲裝置。處理器和存儲器能夠由專用邏輯電路來補充,或者與專用邏輯電路結合。
盡管本申請包括許多細節,但是這不應被解釋為對于要求保護的或任意發明的范圍的研制,而應被解釋為對于可具體為特定發明的特定實施例的特征的描述。在本申請中,多個單獨實施例的情況下描述的特定特征也可在單一實施例中組合實現。相反,在單一實施例的情況下描述的各種特征也可單獨或按照任何適當的子組合在多個實施例中實現。此外,盡管特征可如上描述為在特定組合中并甚至像初始要求保護的那樣進行作用,但是來自要求保護的組合的一個或更多個特征在一些情況下可從該組合中脫離,并且要求保護的組合中的一個或更多個特征在一些情況下可從該組合中脫離,并且要求保護的組合針對子組合或子組合的變形。
類似地,盡管圖中按照特定順序描繪了操作,但是這不應理解為按照所示特定順序或連續順序執行這些操作,或要求執行所有圖示的操作,以實現所期望的結果。此外,本申請中所描述的上述實施例中的各種系統組件的分離不應理解為所有實施例都要求這樣的分離。
盡管僅對少量實施例和示例進行了描述,但是基于本專利文獻所描述和說明的內容可以做出其他實現、改進和變型。