本發(fā)明涉及智能機器人領(lǐng)域,尤其涉及一種應(yīng)用于智能機器人的多模態(tài)交互方法及系統(tǒng),
背景技術(shù):
隨著智能機器人產(chǎn)品的逐漸普及,更多的智能機器人走進家庭,成為孩子的玩伴和大人的管家。
在現(xiàn)有技術(shù)中,智能機器人在與用戶進行多模態(tài)交互的過程中,一般是通過語音識別技術(shù)來識別用戶的語音指令,再根據(jù)指令內(nèi)容執(zhí)行相應(yīng)的多模態(tài)輸出。這種交互方式較為單調(diào),而且對于某些情況特殊的用戶,語音方式較為不便,從而無法滿足用戶日益增長的體驗需求。
因此,亟需提供一種新型的多模態(tài)交互方法,能夠提高用戶體驗,滿足用戶需求。
技術(shù)實現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題之一是需要提供一種能夠采用手勢識別的技術(shù)與用戶進行多模態(tài)交互的方法及系統(tǒng)。
為了解決上述技術(shù)問題,本申請的實施例首先提供了一種應(yīng)用于智能機器人的多模態(tài)交互方法,包括:圖像獲取步驟,獲取包含執(zhí)行手勢動作的手部的深度圖像和灰度圖像;姿態(tài)分類解析步驟,對深度圖像和灰度圖像進行處理,解析出手勢動作所表示的姿態(tài)和具備的屬性;以及多模態(tài)輸出步驟,根據(jù)解析結(jié)果,執(zhí)行與手勢動作對應(yīng)的多模態(tài)輸出指令。
優(yōu)選地,在姿態(tài)分類解析步驟中,對深度圖像和灰度圖像進行圖像處理,根據(jù)預(yù)設(shè)的手勢姿態(tài)分類庫確定手勢動作的姿態(tài);判斷該手勢動作是否具備靜態(tài)屬性,在該手勢動作對應(yīng)的姿態(tài)不屬于靜止手勢范圍內(nèi),則進一步判斷該手勢動作是否具有滑動屬性。
優(yōu)選地,在判斷手勢動作是否具有滑動屬性的步驟中,記錄當前手部在背景圖像中所處的位置和當前圖像獲取時刻,并將該位置記為起點;若在有效時間段內(nèi),捕捉到另一包含執(zhí)行相同手勢動作的手部的圖像,且手部在同一背景圖像的位置與所述起點之間具有有效距離,則確定該手勢動作具有滑動屬性。
優(yōu)選地,在姿態(tài)分類解析步驟中,對經(jīng)過預(yù)處理后的深度圖像進行直方圖統(tǒng)計,找出圖像中的手部輪廓,并根據(jù)手部輪廓獲取矩形框;在經(jīng)過所述矩形框提取出的灰度圖像內(nèi)構(gòu)建多個比例尺度的滑動窗口,獲取圖像不同區(qū)域的特征值;根據(jù)獲取的特征值,從預(yù)設(shè)的手勢姿態(tài)分類庫中確定手勢動作的姿態(tài)。
另一方面,本發(fā)明實施例還提供了一種應(yīng)用于智能機器人的多模態(tài)交互系統(tǒng),包括:圖像獲取單元,其用于獲取包含執(zhí)行手勢動作的手部的深度圖像和灰度圖像;姿態(tài)分類解析單元,其用于對深度圖像和灰度圖像進行處理,解析出手勢動作所表示的姿態(tài)和具備的屬性;以及多模態(tài)輸出單元,其用于根據(jù)解析結(jié)果,執(zhí)行與手勢動作對應(yīng)的多模態(tài)輸出指令。
優(yōu)選地,所述姿態(tài)分類解析單元進一步包括,姿態(tài)確定子單元,其用于對深度圖像和灰度圖像進行圖像處理,根據(jù)預(yù)設(shè)的手勢姿態(tài)分類庫確定手勢動作的姿態(tài);屬性確定子單元,其用于判斷該手勢動作是否具備靜態(tài)屬性,在該手勢動作對應(yīng)的姿態(tài)不屬于靜止手勢范圍內(nèi),則進一步判斷該手勢動作是否具有滑動屬性。
優(yōu)選地,所述屬性確定子單元進一步用于:記錄當前手部在背景圖像中所處的位置和當前圖像獲取時刻,并將該位置記為起點;若在有效時間段內(nèi),捕捉到另一包含執(zhí)行相同手勢動作的手部的圖像,且手部在同一背景圖像的位置與所述起點之間具有有效距離,則確定該手勢動作具有滑動屬性。
優(yōu)選地,所述姿態(tài)確定子單元進一步用于:對經(jīng)過預(yù)處理后的深度圖像進行直方圖統(tǒng)計,找出圖像中的手部輪廓,并根據(jù)手部輪廓獲取矩形框;在經(jīng)過所述矩形框提取出的灰度圖像內(nèi)構(gòu)建多個比例尺度的滑動窗口,獲取圖像不同區(qū)域的特征值;根據(jù)獲取的特征值,從預(yù)設(shè)的手勢姿態(tài)分類庫中確定手勢動作的姿態(tài)。
與現(xiàn)有技術(shù)相比,上述方案中的一個或多個實施例可以具有如下優(yōu)點或有益效果:
本發(fā)明實施例的方法或系統(tǒng)通過獲取包含執(zhí)行手勢動作的手部的深度圖像和灰度圖像,對深度圖像和灰度圖像進行處理,解析出手勢動作所表示的姿態(tài)和具備的屬性,并且根據(jù)解析結(jié)果,執(zhí)行與手勢動作對應(yīng)的多模態(tài)輸出指令,能夠?qū)崿F(xiàn)采用手勢識別的方式與用戶進行多模態(tài)交互,提高了用戶體驗。
本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明的技術(shù)方案而了解。本發(fā)明的目的和其他優(yōu)點可通過在說明書、權(quán)利要求書以及附圖中所特別指出的結(jié)構(gòu)和/或流程來實現(xiàn)和獲得。
附圖說明
附圖用來提供對本申請的技術(shù)方案或現(xiàn)有技術(shù)的進一步理解,并且構(gòu)成說明書的一部分。其中,表達本申請實施例的附圖與本申請的實施例一起用于解釋本申請的技術(shù)方案,但并不構(gòu)成對本申請技術(shù)方案的限制。
圖1是根據(jù)本發(fā)明實施例的應(yīng)用于智能機器人的多模態(tài)交互方法的流程示意圖。
圖2是根據(jù)本發(fā)明實施例的對手勢動作進行姿態(tài)和屬性的解析的流程示意圖。
圖3是根據(jù)本發(fā)明實施例的采集手勢動作數(shù)據(jù)和模型訓(xùn)練的流程示意圖。
圖4是根據(jù)本發(fā)明實施例的應(yīng)用于智能機器人的多模態(tài)交互系統(tǒng)4的結(jié)構(gòu)框圖。
具體實施方式
以下將結(jié)合附圖及實施例來詳細說明本發(fā)明的實施方式,借此對本發(fā)明如何應(yīng)用技術(shù)手段來解決技術(shù)問題,并達成相應(yīng)技術(shù)效果的實現(xiàn)過程能充分理解并據(jù)以實施。本申請實施例以及實施例中的各個特征,在不相沖突前提下可以相互結(jié)合,所形成的技術(shù)方案均在本發(fā)明的保護范圍之內(nèi)。
另外,附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行。并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
圖1是根據(jù)本發(fā)明實施例的應(yīng)用于智能機器人的多模態(tài)交互方法的流程示意圖。下面參考圖1來說明該方法的各個步驟。
首先,在步驟S110中,獲取包含執(zhí)行手勢動作的手部的深度圖像和灰度圖像。
具體地,智能機器人通過自身的深度攝像頭獲取包含執(zhí)行手勢動作的手部的圖像,從而接收來自用戶的手勢表達信號。相比一些現(xiàn)有技術(shù),本例不需要獲取RGB圖像,取而代之的是直接獲取深度圖像和灰度圖像,這樣能夠縮短數(shù)據(jù)的傳輸時間且能夠加速處理算法。然而,不使用RGB圖像就無法通過膚色來提取手部,因此,在本步驟中使用雙目攝像頭來輔助判斷手部位置,再利用手部的灰度圖像來判斷手的具體位置和姿態(tài)。
需要說明的是,雙目攝像頭是一種能夠產(chǎn)生并輸出深度圖像的傳感器形式的攝像頭,由兩個普通灰度相機組成,通過檢測兩個相機同一物體或者同一目標歸屬的像素點的成像面的位差來判斷該物體的距離。深度圖像是通過某種傳感器來檢測前方每個像素點或者許多細分區(qū)域距離傳感器的距離的圖像,而灰度圖像是相較于RGB圖像,只具有黑白色、且每個像素的值范圍在0~255之間的圖像。
其次,在步驟S120中,對深度圖像和灰度圖像進行處理,解析出手勢動作所表示的姿態(tài)和具備的屬性。
通過雙目攝像頭采集到的圖像一般都具有噪聲,噪聲影響圖像處理的輸入、采集、處理的各個環(huán)節(jié)以及輸出結(jié)果的全過程,特別是在圖像的采集和輸入階段對噪聲的抑制是十分關(guān)鍵的問題,若輸入伴有較大的噪聲,則必然影響處理全過程及輸出的結(jié)果。因此,需要對采集到的深度圖像和灰度圖像進行高斯和中值濾波等濾波處理。
圖2是根據(jù)本發(fā)明實施例的對手勢動作進行姿態(tài)和屬性解析的流程示意圖。如圖2所示,首先對經(jīng)過預(yù)處理后的深度圖像進行直方圖統(tǒng)計,找出圖像中的手部輪廓,并根據(jù)手部輪廓獲取矩形框。具體地,對濾波后的深度圖像在256個像素單位上進行分布統(tǒng)計,在從高像素到低像素的方向?qū)ふ业谝粋€大于設(shè)定閾值的高峰,在深度圖像中僅留下高峰左右3個像素閾(共7個像素閾)的像素,即確定為手部區(qū)域。找出所有輪廓,留下最大輪廓,測算外接矩形生成圖層蒙版,提取出灰度圖像中在該矩形內(nèi)的部分像素。然后,在經(jīng)過矩形框提取出的灰度圖像內(nèi)構(gòu)建多個比例尺度的滑動窗口,獲取圖像不同區(qū)域的特征值。具體來說,在通過矩形框提取出的灰度圖內(nèi)構(gòu)建多個比例尺度的滑動窗口,比例尺度例如可以為0.95^n,n=1,2,3……,通過各個比例尺度不同的滑動窗口獲取不同區(qū)域的方向梯度直方圖(Histogram of Oriented Gradient,HOG)特征。HOG特征是一種在計算機視覺和圖像處理中用來進行物體檢測的特征描述子,它是通過計算和統(tǒng)計圖像局部區(qū)域的梯度方向直方圖來構(gòu)成的特征。接著,根據(jù)獲取的特征值,從預(yù)設(shè)的手勢姿態(tài)分類庫中確定手勢動作的姿態(tài)。具體地,將獲取的HOG特征值輸入至預(yù)先進行模型訓(xùn)練得到的分類器中,分類器通過篩選輸出可能分類和對應(yīng)投票(信任度),找出所有投票值最大的分類,并將該投票值與某設(shè)定閾值進行比較,若該投票值大于該閾值則認定為分類準確,輸出手勢動作對應(yīng)的姿態(tài)分類,若小于該閾值則認定為無目標。
需要說明的是,該分類器(手勢姿態(tài)分類庫)事先需要通過如圖3所示的流程圖來獲取。如圖3所示,在步驟S310中,先要采集各種類別的手勢數(shù)據(jù),例如手掌向前指向、豎大拇指、握拳等手勢的數(shù)據(jù)。本步驟中根據(jù)要識別的手勢,采集相關(guān)訓(xùn)練樣本,提取出僅包含手部的圖像。
然后在步驟S320中,從這些提取的手部圖像的手勢數(shù)據(jù)中提取出HOG特征,采取的方式可以與步驟S120中獲取HOG特征的相類似,此處不再贅述。隨后,在步驟S130中,對這些HOG特征進行SVM分類器訓(xùn)練獲得模型。最終,在步驟S140中,對這些分類模型進行存儲得到適用于本發(fā)明實施例的分類器。
在確定了手勢動作對應(yīng)的姿態(tài)后,判斷該手勢動作所具備的屬性。首先判斷該手勢動作是否具備靜態(tài)屬性,即該手勢動作對應(yīng)的姿態(tài)是否屬于預(yù)先設(shè)定的靜止手勢范圍內(nèi),若是則確定該手勢動作具備靜態(tài)屬性。
在該手勢動作對應(yīng)的姿態(tài)不屬于靜止手勢范圍內(nèi),則進一步判斷該手勢動作是否具有滑動屬性。需要說明的是,滑動手勢應(yīng)該具有起點和終點,也可以稱為觸發(fā)點,因此可以依據(jù)在有效時間段內(nèi)手在不同觸發(fā)點來判斷此時手是否完成一次滑動手勢,若上次的觸發(fā)在起點,此次觸發(fā)在終點,則認定有一個有效滑動手勢形成。例如,手勢為從左往右揮動,通過在有效時間段內(nèi)實時采集包含手勢動作在內(nèi)的圖像,對每一圖像進行上面步驟S120的處理,對比在該有效時間段內(nèi)兩個手勢動作在同一背景圖像中的位置,若存在差異,則確定為滑動手勢。
再次參考圖2,在判斷手勢動作是否具有滑動屬性的步驟中,記錄當前手部在背景圖像中所處的位置和當前圖像獲取時刻,并將該位置記為起點,若在有效時間段內(nèi),捕捉到另一包含執(zhí)行相同手勢動作的手部的圖像,且手部在同一背景圖像的位置與起點之間具有有效距離,則確定該手勢動作具有滑動屬性。
接下來,在步驟S130中,根據(jù)解析結(jié)果,執(zhí)行與手勢動作對應(yīng)的多模態(tài)輸出指令。
具體地,根據(jù)解析結(jié)果查找與該結(jié)果對應(yīng)的多模態(tài)輸出指令。例如,若手勢動作為從左至右揮動手部,該手勢動作對應(yīng)的多模態(tài)輸出指令是讓機器人播放下一首曲目,則向機器人輸出“播放下一首歌曲”的指令以使機器人播放下一首。若手勢動作為手掌向前指向,該手勢動作對應(yīng)的是讓機器人暫停播放當前曲目,則向機器人輸出“暫停播放”的多模態(tài)輸出指令以使機器人停止播放音樂。除此之外,多模態(tài)輸出指令還可以是與機器人硬件相關(guān)的執(zhí)行指令,例如驅(qū)動機器人臂部的電機動作,完成機器人揮臂的多模態(tài)輸出。
另外,本發(fā)明實施例還公開了一種多模態(tài)交互系統(tǒng)。圖4是根據(jù)本發(fā)明實施例的應(yīng)用于智能機器人的多模態(tài)交互系統(tǒng)4的結(jié)構(gòu)框圖。
如圖4所示,該多模態(tài)交互系統(tǒng)4包括圖像獲取單元410、姿態(tài)分類解析單元420和多模態(tài)輸出單元430。
圖像獲取單元410,其用于獲取包含執(zhí)行手勢動作的手部的深度圖像和灰度圖像。
姿態(tài)分類解析單元420,其與圖像獲取單元410連接,用于對深度圖像和灰度圖像進行處理,解析出手勢動作所表示的姿態(tài)和具備的屬性。姿態(tài)分類解析單元420進一步包括姿態(tài)確定子單元421和屬性確定子單元422。
姿態(tài)確定子單元421,其用于對深度圖像和灰度圖像進行圖像處理,根據(jù)預(yù)設(shè)的手勢姿態(tài)分類庫確定手勢動作的姿態(tài)。姿態(tài)確定子單元421在確定手勢動作的姿態(tài)時進一步對經(jīng)過預(yù)處理后的深度圖像進行直方圖統(tǒng)計,找出圖像中的手部輪廓,并根據(jù)手部輪廓獲取矩形框;在經(jīng)過矩形框提取出的灰度圖像內(nèi)構(gòu)建多個比例尺度的滑動窗口,獲取圖像不同區(qū)域的特征值;根據(jù)獲取的特征值,從預(yù)設(shè)的手勢姿態(tài)分類庫中確定手勢動作的姿態(tài)。
屬性確定子單元422,其用于判斷該手勢動作是否具備靜態(tài)屬性,在該手勢動作對應(yīng)的姿態(tài)不屬于靜止手勢范圍內(nèi),則進一步判斷該手勢動作是否具有滑動屬性。
屬性確定子單元422進一步在判斷手勢動作是否具有滑動屬性時,記錄當前手部在背景圖像中所處的位置和當前圖像獲取時刻,并將該位置記為起點;若在有效時間段內(nèi),捕捉到另一包含執(zhí)行相同手勢動作的手部的圖像,且手部在同一背景圖像的位置與所述起點之間具有有效距離,則確定該手勢動作具有滑動屬性。
多模態(tài)輸出單元430,其與姿態(tài)分類解析單元420連接,用于根據(jù)解析結(jié)果,執(zhí)行與手勢動作對應(yīng)的多模態(tài)輸出指令。
具體地,多模態(tài)輸出單元430根據(jù)解析結(jié)果查找與該結(jié)果對應(yīng)的多模態(tài)輸出指令。例如,若手勢動作為從左至右揮動手部,該手勢動作對應(yīng)的多模態(tài)輸出指令是讓機器人播放下一首曲目,則向機器人輸出“播放下一首歌曲”的指令以使機器人播放下一首。若手勢動作為手掌向前指向,該手勢動作對應(yīng)的是讓機器人暫停播放當前曲目,則向機器人輸出“暫停播放”的多模態(tài)輸出指令以使機器人停止播放音樂。除此之外,多模態(tài)輸出指令還可以是與機器人硬件相關(guān)的執(zhí)行指令,例如驅(qū)動機器人臂部的電機動作,完成機器人揮臂的多模態(tài)輸出。
本發(fā)明實施例的方法或系統(tǒng)通過獲取包含執(zhí)行手勢動作的手部的深度圖像和灰度圖像,對深度圖像和灰度圖像進行處理,解析出手勢動作所表示的姿態(tài)和具備的屬性,并且根據(jù)解析結(jié)果,執(zhí)行與手勢動作對應(yīng)的多模態(tài)輸出指令,能夠?qū)崿F(xiàn)采用手勢識別的方式與用戶進行多模態(tài)交互,提高了用戶體驗。
本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
雖然本發(fā)明所揭露的實施方式如上,但所述的內(nèi)容只是為了便于理解本發(fā)明而采用的實施方式,并非用以限定本發(fā)明。任何本發(fā)明所屬技術(shù)領(lǐng)域內(nèi)的技術(shù)人員,在不脫離本發(fā)明所揭露的精神和范圍的前提下,可以在實施的形式上及細節(jié)上作任何的修改與變化,但本發(fā)明的專利保護范圍,仍須以所附的權(quán)利要求書所界定的范圍為準。
本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,所述的程序可以存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,包括以上實施例的部分或全部步驟,所述的存儲介質(zhì),如:ROM/RAM、磁碟、光盤等。