本發明涉及人機交互技術領域,具體涉及一種有限的用戶自定義手勢語義的手勢知識庫創建方法。
背景技術:
人機交互是指人與計算機之間使用某種對話語言,以一定的交互方式,為完成確定任務的人與計算機之間的信息交換過程。主要體現在兩個層面,一個是機器界面是否易于用戶理解與操作,用戶通過人機交互界面與機器交流,并進行操作。小如收音機的播放按鍵,大至飛機上的儀表板、或是發電廠的控制室。人機交互界面的設計要包含用戶對系統的理解(即心智模型),那是為了系統的可用性或者用戶友好性。另外一個層面,即機器如何理解用戶意圖,機器理解用戶有多個方面,本發明主要針對的是用戶手勢操作,通過攝像頭捕捉用戶的手勢,識別用戶手勢語義并進行反饋。
通過攝像頭捕捉用戶手勢并判斷用戶意圖有一定準確性問題,有時候會出現歧義,有時候會被干擾。如果對相關手勢進行訓練,存進知識庫,有利于機器捕捉到類似的手勢時的識別幾率。
機器識別用戶手勢并判斷用戶意圖,對于用戶來說,還存在一個問題,即用戶必須要去學習程序員預先設置好的手勢,除了學習成本高之外,還往往手勢不符合用戶操作習慣,導致用戶手勢跟預先的設定好的手勢不一樣,機器無法識別。本發明提出用戶自定義的手勢規則設計解決了這個問題。用戶可以根據自己的操作習慣設定手勢規則,設定觸發手勢命令的初始狀態,中間狀態以及結束狀態,提高了手勢被機器識別的幾率。
技術實現要素:
針對現有技術的不足,本發明的目的在于提供一種有限的用戶自定義手勢語義的手勢知識庫創建方法,以提高手勢識別的便利性和準確性。
為了實現上述目的,本發明采取的技術方案是:
一種有限的用戶自定義手勢語義的手勢知識庫創建方法,包括步驟:
確定手勢動作,提取手勢動作特征點并進行機器訓練,對訓練后的手勢動作分配ID編號并存入手勢知識庫,每一個手勢動作都有一個唯一的ID編號;
人機交互環境下,以ID編號調用手勢知識庫中的手勢動作并賦予手勢語義,同時設計手勢動作的邏輯規則;
用戶通過自定義的手勢動作及其邏輯規則與人機交互系統進行交互。
本發明有限的用戶自定義手勢語義的手勢知識庫創建方法,先創建手勢知識庫,再設計人機交互系統手勢邏輯規則框架,按照人機交互系統手勢規則設定手勢的初始狀態,中間狀態以及結束狀態并賦予整個行為以語義,從而,用戶可以通過自定義的手勢與人機交互系統進行交互。當用戶執行一個手勢操作后,系統可以預測用戶下來可能有幾個可能的意圖,當用戶手勢操作一個個執行完畢,直到一個行為完成,一個完整的邏輯判斷就會執行,即響應用戶的操作,機器進行反饋,完成完整的人機交互。
附圖說明
圖1為本發明有限的用戶自定義手勢語義的手勢知識庫創建方法的流程示意圖;
圖2為手指抓取三角形物體、旋轉物體以及抓取手勢的的示意圖;
圖3為一個旋轉的手勢語義設計示意圖;
圖4為用戶設置自定義手勢的流程示意圖;
圖5為用戶設定自定義手勢的界面示意圖;
圖6為人機交互系統探測用戶手勢的示意圖;
圖7為人機交互的流程示意圖。
具體實施方式
下面結合具體實施方式對本發明作進一步的說明。
本發明用戶手勢的創建方法,如圖1所示,包括步驟:
步驟s101、確定手勢基本單元,提取手勢特征,對基本單元進行訓練,按照ID編號存入手勢知識庫。
比如,抓取這個手勢,根據這些手部動作,提取5個關鍵特征點,分別是:拇指尖、食指尖、掌心、拇指與食指之間的凹點以及手內所包含的中空區。如圖2所示。對這個手勢進行訓練之后,存進手勢知識庫,知識庫具有自學習,獨立,以及可擴展的良好特性。知識庫獨立但支持人機交互系統,提供ID編號等接口供人機交互系統調用。手勢知識庫包含一些比較常見的抓取,移動,旋轉,放大放小等手勢集。手勢庫設計成一個公用包,可以應用于不同的人機交互系統,比如手勢穿衣系統可以以ID編號的方式調用知識庫里面的抓取,移動等手勢。而汽車發動機裝配系統可以調用里面的抓取,移動,旋轉,放大放小等手勢。
步驟s102、設計人機交互系統手勢邏輯規則框架。
手勢邏輯規則框架,包括:位移,角度,幅度,時序等等。構建規則框架,允許用戶通過設定幾個拐點來觸發某種命令。比如角度從多少到多少表示旋轉操作,人機交互系統從而判斷用戶執行旋轉的意圖,給予反饋。如圖3所示是一個旋轉的手勢語義設計,根據旋轉的動作特點,定義手勢初始位置R0(xR0,yR0),當手勢位置改變后R1(xR1,yR1).物體的位置為RC(xRc,yRc),那么∠R0RcR1滿足
如果yR1>yR0,表示順時針旋轉,反之,則為逆時針旋轉。中間狀態:當∠R0RcR1旋轉到中間的角度時為中間狀態;結束狀態:當∠R0RcR1旋轉一定的角度到結束狀態,旋轉命令觸發。
步驟s103、用戶根據自身操作習慣,調用手勢知識庫的手勢,按照人機交互系統手勢規則設定手勢的初始狀態,中間狀態以及結束狀態并賦予整個行為以語義。
相同的手勢在不同的系統中可能語義不同,如揮手,可能是再見的意思,也可能是不要的意思。
比如用戶要執行“下一頁”這個功能,用戶可以根據位移的規則設置初始狀態x<0,中間狀態X=0,結束狀態X>0,系統根據捕捉用戶手勢,當用戶手勢完成了這3個狀態,人機交互系統即執行“下一頁”功能。圖4所示表示用戶設置自定義手勢的流程,圖5為用戶設定自定義手勢的界面圖。用戶設定完自定義手勢,將保存與人機交互系統,而不是知識庫,因為知識庫是獨立的,用戶只能讀取,用戶不能修改。
步驟s104、用戶通過自定義手勢與人機交互系統進行交互。
人機交互系統探測到用戶的手勢,如圖6所示,當用戶執行一個手勢操作后,系統可以預測用戶接下來可能有幾個可能的意圖,比如探測到用戶的抓取手勢,用戶下一步可能會移動物體,也可能會旋轉物體,或者放大放小物體,這種方法的好處就是可以一定程度上預測用戶的意圖。如圖7所示,當用戶手勢操作一個個執行完畢,直到一個行為完成,一個完整的邏輯判斷就會執行,即響應用戶的操作,機器進行反饋,完成完整的人機交互。
“有限”的意義體現在,手勢訓練這一塊仍然由程序員完成,用戶沒法自定義,因為這一塊屬于專業的知識。“用戶自定義”體現在,用戶可以選擇手勢進行語義設定,可以選擇手勢組織成一定的規則以形成命令。
手勢知識庫的手勢動作是沒有語義的,當被調入人機交互系統中時,用戶才賦予手勢語義,才能進行人機交互。
上列詳細說明是針對本發明可行實施例的具體說明,該實施例并非用以限制本發明的專利范圍,凡未脫離本發明所為的等效實施或變更,均應包含于本案的專利范圍中。