基于人臉識別的移動機器人人機交互控制方法
【專利摘要】本發(fā)明公開了一種基于人臉識別的移動機器人人機交互控制方法,包括步驟:移動機器人通過體感傳感器實時偵測行進前方的視野內(nèi)是否有人;當檢測到視野內(nèi)有人時,對視野內(nèi)所有人進行追蹤,實時監(jiān)視被追蹤者的臉部動作和\或眼部動作;判斷被追蹤者的臉部動作和\或眼部動作是否符合第一授權(quán)條件;使符合第一授權(quán)條件的被追蹤者成為授權(quán)人,獲得移動機器人的控制權(quán)。如果機器人在安全距離內(nèi)沒有發(fā)現(xiàn)符合授權(quán)條件的授權(quán)人,它將以語音形式發(fā)出控制提醒信號。本發(fā)明采用臉部動作和\或眼部動作進行指令識別,識別準確率高計算迅速,不受電梯、工廠等擁擠嘈雜的環(huán)境限制,使得人機交互更自然準確,移動機器人應(yīng)用更廣泛、方便和安全。
【專利說明】
基于人臉識別的移動機器人人機交互控制方法
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及移動機器人領(lǐng)域,尤其涉及一種基于人臉識別的移動機器人人機交互控制方法。
【背景技術(shù)】
[0002]在復(fù)雜室內(nèi)環(huán)境中,如現(xiàn)代實驗室、運輸物流工廠等,移動機器人常用來替代人員執(zhí)行簡單、危險、重復(fù)性的任務(wù),以節(jié)省大量的人力資源成本。在流程控制特別繁瑣的室內(nèi)環(huán)境中,如在化學(xué)實驗室中,移動機器人的運用能減少科研人員接觸危險品的機會,不僅能夠保證實驗的準確性,而且能有效地降低事故發(fā)生幾率。
[0003]人機交互是移動機器人智能化的重要組成部分,如今,人類已經(jīng)從通過觸摸式,如鼠標、鍵盤、按鈕等媒介,對機器進行指令發(fā)送發(fā)展到通過各種傳感器(如聲音傳感器,紅外傳感器等)的運用給機器下達各種任務(wù)指令。微軟公司Kinect傳感器的出現(xiàn),使人機交互方式又邁出了一大步,基于Kinect傳感器開發(fā)的交互界面下,人身體本身就可以成為控制器。譬如,使用雙臂完成幾種姿勢來操控機器人完成任務(wù)(如申請?zhí)?01210267315.3公開了《一種雙臂機器人基于Kinect的人機交互方法》和申請?zhí)?01310327955.3公開了《基于kinect人體骨骼跟蹤控制的智能機器人人機交互方法》),但是這種應(yīng)用場景范圍非常受限。
[0004]例如:當機器人面對與雙手緊抱重物或手持物品的工作人員進行人機交互,或者機器人面對電梯里擠滿不同工作單位的人員時,該如何聽從指令;此外,還需要一些與特定的操作任務(wù)無關(guān)的手勢用于改變機器人的操作模式,這些都造成了操作任務(wù)的交流不自然。因此需要一種自然的容易被操作人員理解記憶的控制方法。
[0005]當然,我們也可以利用語音來進行操作(如申請?zhí)?01410057451.9公開了《一種基于單人手勢和語音信息的機器人人工導(dǎo)航方法》),但是如果在工廠里或者聲音嘈雜的實驗室環(huán)境下,移動機器人如何正確的接收并分析識別所下達的語音指令也是一個難題。
【發(fā)明內(nèi)容】
[0006]本發(fā)明目的在于提供一種基于人臉識別的移動機器人人機交互控制方法,以解決現(xiàn)有移動機器人指令識別應(yīng)用場景范圍受限的技術(shù)問題。
[0007]為實現(xiàn)上述目的,本發(fā)明提供了一種基于人臉識別的移動機器人人機交互控制方法,包括以下步驟:
[0008]S1:移動機器人通過體感傳感器實時偵測行進前方的視野內(nèi)是否有人;
[0009]S4:當檢測到視野內(nèi)有人時,對視野內(nèi)所有人進行追蹤,實時監(jiān)視被追蹤者的臉部動作和\眼部動作;
[0010]S5:判斷被追蹤者的臉部動作和\或眼部動作是否符合第一授權(quán)條件;
[0011 ] S9:使符合第一授權(quán)條件的被追蹤者成為授權(quán)人,獲得移動機器人的控制權(quán)。
[0012]優(yōu)選地,步驟S9完成后,方法還包括:
[0013]SI 1:實時監(jiān)視授權(quán)人的臉部動作和\或眼部動作,識別臉部動作和\或眼部動作所對應(yīng)的指令;
[0014]S12:根據(jù)指令的識別結(jié)果,移動機器人執(zhí)行指令對應(yīng)的操作,操作包括停止等待、按行走方向行走和按退避方向退避。
[0015]優(yōu)選地,步驟SI完成后,步驟S4進行之前,方法還包括:
[0016]S2:統(tǒng)計前方的視野內(nèi)的人數(shù);
[0017]步驟S2完成后,方法還包括:
[0018]S3:根據(jù)前方的視野內(nèi)的人數(shù)調(diào)節(jié)指令接收方式如下:
[0019]S301A:當前方的視野內(nèi)只有一人時,將第一授權(quán)條件設(shè)置為人眼睛閉合時長大于給定閾值;
[0020]S301B:當前方的視野內(nèi)多于一人時,按照人眼睛閉合時間線性增加調(diào)整第一授權(quán)條件。
[0021]優(yōu)選地,步驟SI中實時偵測行進前方的視野內(nèi)是否有人,實現(xiàn)方式包括:
[0022]SlOl:移動機器人通過體感傳感器實時獲取行進前方的彩色圖像集,并通過體感傳感器獲取人身體數(shù)據(jù)源;
[0023]步驟S2,包括以下步驟:
[0024]S201:當獲取到人身體數(shù)據(jù)源時,移動機器人計算與視野內(nèi)最近的人的距離是否大于預(yù)設(shè)的安全距離;
[0025]S202:當移動機器人與視野內(nèi)最近的人的距離大于預(yù)設(shè)的安全距離時,移動機器人統(tǒng)計體感傳感器前方扇形視野范圍內(nèi)的人數(shù);
[0026]S203:當移動機器人與視野內(nèi)最近的人的距離小于預(yù)設(shè)的安全距離時,停止等待接收指令,當停止等待接收指令時間超過預(yù)設(shè)值時,移動機器人發(fā)出控制提醒語音。
[0027]優(yōu)選地,步驟S4中,對視野內(nèi)所有人進行追蹤,包括:向視野內(nèi)所有人分配追蹤號;實時監(jiān)視被追蹤者的臉部動作和\眼部動作包括實時獲取追蹤號對應(yīng)人的所有單個眼睛或雙眼的控制信息。
[0028]優(yōu)選地,步驟S5包括以下步驟:
[0029]S501:記錄所有追蹤號下人的眼睛閉合狀態(tài)以及眼睛閉合的時間總長度,眼睛閉合狀態(tài)包括:僅左眼閉合、僅右眼閉合、雙眼閉合后左眼睜開和雙眼閉合后右眼睜開;
[0030]S502:判斷眼睛閉合的時間總長度是否大于給定閾值,給定閾值為2秒;
[0031]S503:當符合大于給定閾值的人數(shù)大于一人時,判斷是否雙眼閉合時間大于I秒;
[0032]S504:雙眼閉合時間大于I秒的人數(shù)仍大于一人時,判斷選擇距離機器人最近的準授權(quán)人符合第一授權(quán)條件。
[0033]優(yōu)選地,步驟S5完成后,方法還包括以下步驟:
[0034]S6:如果準授權(quán)人數(shù)為零,返回步驟S4;如果準授權(quán)人數(shù)為一人,判斷準授權(quán)人符合第一授權(quán)條件,進入步驟S9;如果人數(shù)大于一人,進入步驟S7;
[0035]S7:根據(jù)剩余準授權(quán)人的追蹤號,提取對應(yīng)眼睛閉合狀態(tài);選出眼睛閉合狀態(tài)為雙眼閉合的準授權(quán)人,保存追蹤號和眼睛閉合狀態(tài)數(shù)據(jù),進入步驟S8;如果沒有準授權(quán)人的眼睛閉合狀態(tài)為雙眼閉合,保留所有準授權(quán)人信息,進入步驟S8;
[0036]S8:如果準授權(quán)人數(shù)至此只有一人,那么進入步驟S9;如果大于一人,則讀取各自追蹤號下,人中心點在照相機空間下的三維坐標值,計算人中心點與體感傳感器原點的歐式距離;比較歐式距離大小,判斷選擇距離機器人最近的準授權(quán)人符合第一授權(quán)條件,并刪除其他的追蹤號,停止追蹤其他的準授權(quán)人。
[0037]優(yōu)選地,步驟S9完成后,方法還包括:
[0038]S10:判斷授權(quán)人是左眼閉合還是右眼閉合,根據(jù)判斷結(jié)果將機器人調(diào)整為對應(yīng)的人臉識別方式:
[0039]S1001A:根據(jù)授權(quán)人追蹤號下眼部狀態(tài)“左眼閉合”,移動機器人選擇第一指令識別方式識別授權(quán)人的臉部動作和\眼部動作所對應(yīng)的指令;
[0040]S1002B:根據(jù)授權(quán)人追蹤號下眼部狀態(tài)“右眼閉合”,移動機器人選擇第二指令識別方式識別授權(quán)人的臉部動作和\眼部動作所對應(yīng)的指令。
[0041 ]優(yōu)選地,第一指令識別方式和第二指令識別方式包括:人臉朝向識別、指令意圖分析、人臉轉(zhuǎn)向速度識別以及臉部特征向量的神經(jīng)網(wǎng)絡(luò)分類識別中的一種或者任意幾者的組入口 ο
[0042]優(yōu)選地,步驟Sll中,根據(jù)指令的識別結(jié)果之后,且移動機器人執(zhí)行指令對應(yīng)的操作前,移動機器人先對指令進行安全校驗,包括以下步驟:
[0043]SllOl:移動機器人先對指令結(jié)果的安全執(zhí)行校驗,如果指令可安全執(zhí)行,那么按指令方向和得出的角度方向進行移動;
[0044]S1102:如果指令不可執(zhí)行則移動機器人不移動僅原地等待。
[0045]本發(fā)明具有以下有益效果:
[0046]1、本發(fā)明的人臉識別的移動機器人的人機交互控制方法,采用臉部動作和\或眼部動作進行指令識別,識別準確率高計算迅速,使用方便,安全。
[0047]2、在優(yōu)選方案中,本發(fā)明的人臉識別的移動機器人的人機交互控制方法,引入利用眼部閉合狀態(tài)能區(qū)別一般的自然行為和控制指令行為,并且結(jié)合閉眼時間長短和各種閉眼組合方式可以有效地、方便地、直接地引導(dǎo)機器人接收正確的指令信息,同時也保證了控制指令的準確性和組合唯一性。由于眼部組合方式多樣性,因此可以賦予其更多的指令內(nèi)容,具有控制自然、高精度和實時性高的特點。
[0048]除了上面所描述的目的、特征和優(yōu)點之外,本發(fā)明還有其它的目的、特征和優(yōu)點。下面將參照附圖,對本發(fā)明作進一步詳細的說明。
【附圖說明】
[0049]構(gòu)成本申請的一部分的附圖用來提供對本發(fā)明的進一步理解,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中:
[0050]圖1是本發(fā)明優(yōu)選實施例的人臉識別的移動機器人的人機交互控制方法的流程示意圖;
[0051]圖2是本發(fā)明另一優(yōu)選實施例的人臉識別的移動機器人的人機交互控制方法的流程不意圖;
[0052]圖3是本發(fā)明另一優(yōu)選實施例的根據(jù)被追蹤人者的眼睛閉合狀態(tài)篩選準授權(quán)人的步驟流程示意圖。
【具體實施方式】
[0053]以下結(jié)合附圖對本發(fā)明的實施例進行詳細說明,但是本發(fā)明可以由權(quán)利要求限定和覆蓋的多種不同方式實施。
[0054]參見圖1,本發(fā)明的基于人臉識別的移動機器人人機交互控制方法,包括以下步驟:
[0055]S1:移動機器人通過體感傳感器實時偵測行進前方的視野內(nèi)是否有人;
[0056]S4:當檢測到視野內(nèi)有人時,對視野內(nèi)所有人進行追蹤,實時監(jiān)視被追蹤者的臉部動作和\或眼部動作;
[0057]S5:判斷被追蹤者的臉部動作和\或眼部動作是否符合第一授權(quán)條件;
[0058]S9:使符合第一授權(quán)條件的被追蹤者成為授權(quán)人,獲得移動機器人的控制權(quán)。
[0059]通過以上步驟,本發(fā)明采用臉部動作和\或眼部動作進行指令識別,識別準確率高計算迅速,不受電梯、工廠等擁擠嘈雜的環(huán)境限制,使得人機交互更自然準確,移動機器人應(yīng)用更廣泛、方便和安全。
[0060]在實際應(yīng)用中,參見圖2,在上述步驟的基礎(chǔ)上,本發(fā)明的基于人臉識別的移動機器人人機交互控制方法還可增加步驟進行優(yōu)化,優(yōu)化后的步驟如下:
[0061]S1:移動機器人通過體感傳感器(本實施例中采用微軟的Kinect傳感器)實時偵測行進前方的視野內(nèi)是否有人。實現(xiàn)方式如下:
[0062]SlOl:移動機器人通過體感傳感器實時獲取行進前方的彩色圖像集,并通過體感傳感器獲取人身體數(shù)據(jù)源。
[0063]S2:統(tǒng)計前方的視野內(nèi)的人數(shù)。包括以下步驟:
[0064]S201:當獲取到人身體數(shù)據(jù)源時,移動機器人計算與視野內(nèi)最近的人的距離是否大于預(yù)設(shè)的安全距離;
[0065]S202:當移動機器人與視野內(nèi)最近的人的距離大于預(yù)設(shè)的安全距離時,移動機器人統(tǒng)計體感傳感器前方扇形視野范圍內(nèi)的人數(shù);
[0066]S203:當移動機器人與視野內(nèi)最近的人的距離小于預(yù)設(shè)的安全距離時,即機器人處于安全距離外,停止等待接收指令,當停止等待接收指令時間超過預(yù)設(shè)值時,移動機器人發(fā)出控制提醒語音。
[0067]安全距離:對于移動運輸機器人,有時候執(zhí)行的是運輸危險化學(xué)物品,所以為了防止移動中的機器人與行人碰撞危險,有必要設(shè)定一個安全距離,也就是機器人與工作人員需保持的距離范圍。這個值原則上可以任意設(shè)置,但是考慮到Kinect傳感器的測量距離是
0.5m到Sm,因此這個值不能超過這個范圍,否則設(shè)置的值無效。所以安全區(qū)域就是指超出安全距離而又能被移動機器人檢測到的范圍。機器人會計算所有視野內(nèi)也就是傳感器測量到的所有人與機器人之間的距離,取最小距離值就是“移動機器人與視野內(nèi)最近的人的距離”,假設(shè)為A。預(yù)設(shè)的安全距離指預(yù)先設(shè)置的機器人需與周圍人保持的最小距離值,假設(shè)為B?!皺C器人處于安全距離外”是指當A小于B。也就是說,某人過于靠近移動中的機器人(當A小于B)機器人會原地停止等待接收指令,根據(jù)指令繼續(xù)直行前進,還是左右避讓前進等。如果在預(yù)設(shè)的最大停止等待接收時間內(nèi),仍然沒有找到授權(quán)人,那么機器人將主動以語音的形式發(fā)出控制提醒信號,提醒所有人要給出授權(quán)指令和移動指令。
[0068]S3:根據(jù)前方的視野內(nèi)的人數(shù)調(diào)節(jié)指令接收方式如下:
[0069]S301A:當前方的視野內(nèi)只有一人時,將第一授權(quán)條件設(shè)置為人眼睛閉合時長大于給定閾值;
[0070]S301B:當前方的視野內(nèi)多于一人時,按照人眼睛閉合時間線性增加調(diào)整第一授權(quán)條件。
[0071 ]當前方的視野內(nèi)多于一人時,使用單個體感傳感器時此處通常指人數(shù)為2-6人時,按照眼部閉合時間線性增加來調(diào)節(jié)所述第一授權(quán)條件。由于一個Kinect傳感器最多可以追蹤6個人,但是對于更多的人也可以通過增加傳感器數(shù)量簡單實現(xiàn)。本實施例使用三個傳感器安裝在機器人頂部,面朝三個方向圍城一個三角形形狀,這個機器人可以進行360度檢測,最多可以同時追蹤18個人。
[0072]S4:當檢測到視野內(nèi)有人時,對視野內(nèi)所有人進行追蹤,實時監(jiān)視被追蹤者的臉部動作和\或眼部動作;步驟S4中,對視野內(nèi)所有人進行追蹤,包括:向視野內(nèi)所有人分配追蹤號;實時監(jiān)視被追蹤者的臉部動作和\或眼部動作包括實時獲取追蹤號對應(yīng)人的所有眼部信息(包括單個眼睛或雙眼的控制信息)。
[0073]步驟S3和S4的順序可以互換。但是,無論是先調(diào)節(jié)指令接收方式或者先分配追蹤號之前都必須先進行人數(shù)判斷。知道人數(shù)后才知道要分配幾個追蹤號。另外,一個Kinect傳感器本身最多能追蹤6個人。如果人數(shù)較多,可以通過增加傳感器的數(shù)量提高追蹤人數(shù)。
[0074]S5:判斷被追蹤者的臉部動作和\或眼部動作是否符合第一授權(quán)條件。包括以下步驟:
[0075]S501:記錄所有追蹤號下人的眼睛閉合狀態(tài)以及眼睛閉合的時間總長度(也就是開始單眼閉合到雙眼全部睜開時之間的時間長度),眼睛閉合狀態(tài)包括:僅左眼閉合、僅右眼閉合、雙眼閉合后左眼睜開(可以理解為雙眼閉合+右眼閉合)和雙眼閉合后右眼睜開(可以理解為雙眼閉合+左眼閉合);
[0076]S502:判斷眼睛閉合的時間總長度是否大于給定閾值,給定閾值為2秒。2秒是通過具體實驗測試后得出的一個最優(yōu)的經(jīng)驗值。這個參數(shù)稱為控制競勝參數(shù),這個值在步驟2中會首先自動預(yù)設(shè),也可以根據(jù)實際情況手動調(diào)節(jié)。這個閾值不能設(shè)置的過低,如果過低比如低于2秒,由于人的眼睛是在不斷的自然眨眼中,過低的話,所有的自然眨眼(眼睛閉的時間很短)都會被視為該人員想要獲取控制權(quán)而給出的指令,實際上他沒有這個意圖。也就是要消除這個自然行為的影響,值越高越能健壯這個指令。但是如果過高,那么會影響使用人員的交互過程的舒適程度,不得不閉眼較長時間,并且這個時間過長的話,授權(quán)人本人也不好把握是否達到這個時間長度,進而影響了機器人接收下步指令內(nèi)容和分析內(nèi)容,也就是要消除刻意行為帶來的影響。比如,控制權(quán)獲取指令要求閉眼8秒,但是實際上閉眼了 10秒,那么接下來指令采集中有2秒是無效的內(nèi)容(頭部無動作,仍在閉眼),這會影響指令意圖的分析。相反,如果閉眼時間短,這個誤差就越小。因此,對于這個參數(shù)調(diào)節(jié),需要同時考慮自然行為影響和刻意行為的影響。
[0077]眼睛閉合的時間總長度(也就是開始單眼閉合到雙眼全部睜開時之間的時間長度)用于第一步篩選所有準授權(quán)人(即是有意圖想獲取控制權(quán)的所有人),篩選條件是眼睛閉合的時間總長度大于步驟2中設(shè)定的閾值(指令接收方式為眼睛閉合大于給定閾值,閾值大小由人數(shù)確定)。然后,如果這步篩選后剩余的準授權(quán)人數(shù)多于I人,也就是意味著要進一步篩選。
[0078]為了判斷這些狀態(tài),首先,我們對于每個追蹤號下,定義2個計數(shù)器:左眼是否閉合,右眼是否閉合。初始值都為O,如果哪只眼閉合那么相應(yīng)計數(shù)器值加I。也就是每獲取一幀,判斷哪只眼睛閉合,如果閉合相應(yīng)的計數(shù)器就加KKinect每秒采集30幀),閾值為2秒時(也就是控制權(quán)獲取方式為人眼閉合的時間長度),那么具體體現(xiàn)也就是Kinect采集60幀,計數(shù)器值為60時,判定為獲取控制權(quán)。然后,具體情形處理方式流程如圖3所示,具體流程如下:
[0079]獲取一個彩色圖像幀。獲取眼部狀態(tài)數(shù)據(jù),左眼是否閉合著?右眼是否閉合著?如果眼睛閉合著,那么在相應(yīng)的追蹤號下的相應(yīng)的計數(shù)器值加I,進入下一步。如果否,那么相應(yīng)計數(shù)器重置歸0,并回到第一步。判斷計數(shù)器是否大于給定的閾值,如果否,那么回第一步。如果是表示該追蹤號已經(jīng)眼睛閉合時長滿足給定要求,判定該人為準授權(quán)人。記錄保存這些準授權(quán)人的追蹤號和兩個計數(shù)器值。
[0080]S503:當符合大于給定閾值的人數(shù)大于一人時,判斷是否雙眼閉合時間大于I秒。第二步篩選條件是,判斷是否雙眼閉合時間大于I秒(I秒也是經(jīng)驗值)。根據(jù)追蹤號下的兩個計數(shù)器值可以判定該人的眼睛閉合狀態(tài),判定方法如下:假設(shè)給定閾值大小為a,檢測兩個計數(shù)器的值,如果左眼計數(shù)器值大于30且小于給定30a,那么眼睛閉合狀態(tài)為雙眼閉合左眼睜開,如果左眼計數(shù)器小于30,眼睛閉合狀態(tài)為右眼閉合,如果右眼計數(shù)器值大于30且小于給定30a,那么眼睛閉合狀態(tài)為雙眼閉合右眼睜開,如果右眼計數(shù)器小于30,眼睛閉合狀態(tài)為左眼閉合。如果有的準授權(quán)的眼睛閉合狀態(tài)判定為雙眼閉合模式(包括雙眼閉合后左眼睜開,雙眼閉合后右眼睜開),那么這些準授權(quán)人為進行第二輪準授權(quán)人篩選后勝利的人,保存追蹤號和眼睛閉合狀態(tài)數(shù)據(jù)。如果剩余人數(shù)仍然大于I人,需進行第三步篩選。如果沒有準授權(quán)的眼睛閉合狀態(tài)為雙眼閉合,那么表示此輪篩選沒有選出優(yōu)先級高的人,保留所有準授權(quán)人信息。
[0081 ] S504:雙眼閉合時間大于I秒的人數(shù)仍大于一人時,判斷選擇距離機器人最近的準授權(quán)人符合第一授權(quán)條件。第三部篩選方法是,在剩余的準授權(quán)人中選擇距離機器人最近的準授權(quán)人作為最終授權(quán)人。
[0082]S6:如果準授權(quán)人數(shù)為零,返回步驟S4;如果準授權(quán)人數(shù)為一人,判斷準授權(quán)人符合第一授權(quán)條件,進入步驟S9;如果人數(shù)大于一人,進入步驟S7;
[0083]S7:根據(jù)剩余準授權(quán)人的追蹤號,提取對應(yīng)眼睛閉合狀態(tài);選出眼睛閉合狀態(tài)為雙眼閉合的準授權(quán)人,保存追蹤號和眼睛閉合狀態(tài)數(shù)據(jù),進入步驟S8;如果沒有準授權(quán)人的眼睛閉合狀態(tài)為雙眼閉合,保留所有準授權(quán)人信息,進入步驟S8;
[0084]S8:如果準授權(quán)人數(shù)至此只有一人,那么進入步驟S9;如果大于一人,則讀取各自追蹤號下,人中心點在照相機空間下的三維坐標值,計算人中心點與體感傳感器原點的歐式距離;比較歐式距離大小,判斷選擇距離機器人最近的準授權(quán)人符合第一授權(quán)條件,并刪除其他的追蹤號,停止追蹤其他的準授權(quán)人。
[0085]S9:使符合第一授權(quán)條件的被追蹤者成為授權(quán)人,獲得移動機器人的控制權(quán)。
[0086]S10:判斷授權(quán)人是左眼閉合還是右眼閉合,根據(jù)判斷結(jié)果將機器人調(diào)整為對應(yīng)的人臉識別方式:
[0087]S1001A:根據(jù)授權(quán)人追蹤號下眼部狀態(tài)“左眼閉合”,移動機器人選擇第一指令識別方式識別授權(quán)人的臉部動作和\眼部動作所對應(yīng)的指令;
[0088]S1002B:根據(jù)授權(quán)人追蹤號下眼部狀態(tài)“右眼閉合”,移動機器人選擇第二指令識別方式識別授權(quán)人的臉部動作和\眼部動作所對應(yīng)的指令。
[0089]判斷授權(quán)人是左眼閉合還是右眼閉合的(如果是雙眼閉合后左眼睜開理解為右眼閉合方式,如果是雙眼閉合后右眼睜開理解為左眼閉合方式),根據(jù)閉合方式采用下一步的人臉識別算法。第一指令識別方式和第二指令識別方式包括:人臉朝向識別、指令意圖分析、人臉轉(zhuǎn)向速度識別以及臉部特征向量的神經(jīng)網(wǎng)絡(luò)分類識別中的一種或者任意幾者的組入口 ο
[0090]SI 1:實時監(jiān)視授權(quán)人的臉部動作和\或眼部動作,識別臉部動作和\或眼部動作所對應(yīng)的指令,根據(jù)指令的識別結(jié)果之后,且移動機器人執(zhí)行指令對應(yīng)的操作前,移動機器人先對指令進行安全校驗,包括以下步驟:
[0091]SllOl:移動機器人先對指令結(jié)果的安全執(zhí)行校驗,如果指令可安全執(zhí)行,那么按指令方向和得出的角度方向進行移動;
[0092]S1102:如果指令不可執(zhí)行則移動機器人不移動僅原地等待。
[0093]S12:根據(jù)指令的識別結(jié)果,移動機器人執(zhí)行指令對應(yīng)的操作,操作包括停止等待、按行走方向行走和按退避方向退避。
[0094]本發(fā)明采用人類社會中一種重要的交流媒介一一人臉,并以人臉中的兩個既準確又自然的參數(shù)一一人臉旋轉(zhuǎn)方向和人眼閉合狀態(tài)及他們的組合,智能地完成機器人各種交互行為控制。此外,Kinect傳感器本身擁有廉價而又優(yōu)越的硬件條件,如深度傳感器,紅外傳感器和普通攝像頭可以提供可達每秒30幀的1SOp高清圖像,這些高清圖像足夠可以應(yīng)付要求達到高識別率的人臉識別技術(shù)并且可以構(gòu)建清晰的人臉三維模型,通過人的臉部與眼部行為來對機器人獲取控制權(quán)和下達指令。本發(fā)明不同于普通的人臉識別方式,普通的人臉識別都是基于靜態(tài)單幀圖像處理或者只關(guān)注于臉部細微特征變化,雖然可以達到很高的人臉識別準確率,但是由于缺少基于臉部多特征混合所帶來的控制命令唯一性和無法避免臉部在人們正常交流中自然臉部行為的干擾,因此不能應(yīng)用于移動機器人諸如退避等人機交互的動態(tài)過程,本發(fā)明采用人眼部識別方式自然而且表達清晰。
[0095]—般的人臉識別方法去控制機器人,沒有引入控制權(quán)獲取這個階段,會導(dǎo)致機器人無法區(qū)別一般的自然行為和控制指令行為,也就是說,對于機器人視野內(nèi)人的隨意的頭部轉(zhuǎn)動也會誤認為是發(fā)出的指令,會導(dǎo)致最后碰撞事故的發(fā)生,而本發(fā)明引入的利用眼部閉合狀態(tài)解決了這個問題,并且結(jié)合閉眼時間長短和各種閉眼組合方式可以有效地、方便地、直接地弓I導(dǎo)機器人接收正確的指令信息。
[0096]本發(fā)明相比于其他臉部識別,由于眼部組合方式多樣性,因此可以賦予其更多的指令內(nèi)容。另外,通過眼部狀態(tài)識別和頭部轉(zhuǎn)動的組合方式實現(xiàn)的人臉識別控制機器人,可面向處于任何狀態(tài)的人群,包括正在交談的,手腳不變的,語言不通的等等,也不需要要求用戶佩戴任何額外設(shè)備。而在大多數(shù)開放文獻中提出的傳統(tǒng)面部或臉部識別,僅僅限制于識別人的五官(即眼鼻口等特征)的準確度,這些識別出的孤立信息參數(shù)是難以成為機器人交互控制指令的。此外,傳統(tǒng)人臉識別方法所識別出的五官狀態(tài)(如閉眼,閉口),也是僅僅限制于五官狀態(tài)的識別,也就是某個時間點的識別,而不是一種基于人臉的連續(xù)性狀態(tài)過程的識別,而本發(fā)明所述,采用了一系列連續(xù)動作的圖像集,并將采集到的各個圖像集的人臉和眼睛狀態(tài)參數(shù)及他們的不同組合方式轉(zhuǎn)化成實際的控制指令傳遞給機器人,不僅可以有效的區(qū)分人的自然行為,同時也保證了控制指令的準確性和組合唯一性。本專利提出的方法具有控制自然、高精度和實時性高的特點。
[0097]以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
【主權(quán)項】
1.一種基于人臉識別的移動機器人人機交互控制方法,其特征在于,包括以下步驟: S1:移動機器人通過體感傳感器實時偵測行進前方的視野內(nèi)是否有人; S4:當檢測到視野內(nèi)有人時,對視野內(nèi)所有人進行追蹤,實時監(jiān)視被追蹤者的臉部動作和\或眼部動作; S5:判斷所述被追蹤者的臉部動作和\或眼部動作是否符合第一授權(quán)條件; S9:使符合第一授權(quán)條件的被追蹤者成為授權(quán)人,獲得所述移動機器人的控制權(quán)。2.根據(jù)權(quán)利要求1所述的人機交互控制方法,其特征在于,所述步驟S9完成后,所述方法還包括: 511:實時監(jiān)視所述授權(quán)人的臉部動作和\或眼部動作,識別所述臉部動作和\或眼部動作所對應(yīng)的指令; S12:根據(jù)指令的識別結(jié)果,所述移動機器人執(zhí)行所述指令對應(yīng)的操作,所述操作包括停止等待、按行走方向行走和按退避方向退避。3.根據(jù)權(quán)利要求1或2所述的人機交互控制方法,其特征在于,所述步驟SI完成后,所述步驟S4進行之前,所述方法還包括: 52:統(tǒng)計前方的視野內(nèi)的人數(shù); 所述步驟S2完成后,所述方法還包括: 53:根據(jù)前方的視野內(nèi)的人數(shù)調(diào)節(jié)指令接收方式如下: S301A:當前方的視野內(nèi)只有一人時,將所述第一授權(quán)條件設(shè)置為人眼睛閉合時長大于給定閾值; S301B:當前方的視野內(nèi)多于一人時,按照人眼睛閉合時間線性增加調(diào)整所述第一授權(quán)條件。4.根據(jù)權(quán)利要求3所述的人機交互控制方法,其特征在于,所述步驟SI中實時偵測行進前方的視野內(nèi)是否有人,實現(xiàn)方式包括: SlOl:移動機器人通過體感傳感器實時獲取行進前方的彩色圖像集,并通過體感傳感器獲取人身體數(shù)據(jù)源; 所述步驟S2,包括以下步驟: S201:當獲取到人身體數(shù)據(jù)源時,移動機器人計算與視野內(nèi)最近的人的距離是否大于預(yù)設(shè)的安全距離; S202:當所述移動機器人與視野內(nèi)最近的人的距離大于預(yù)設(shè)的安全距離時,移動機器人統(tǒng)計體感傳感器前方扇形視野范圍內(nèi)的人數(shù); S203:當所述移動機器人與視野內(nèi)最近的人的距離小于預(yù)設(shè)的安全距離時,停止等待接收指令,當停止等待接收指令時間超過預(yù)設(shè)值時,移動機器人發(fā)出控制提醒語音。5.根據(jù)權(quán)利要求3所述的人機交互控制方法,其特征在于,所述步驟S4中,對視野內(nèi)所有人進行追蹤,包括:向視野內(nèi)所有人分配追蹤號;實時監(jiān)視被追蹤者的臉部動作和\或眼部動作包括實時獲取追蹤號對應(yīng)人的所有單個眼睛或雙眼的控制信息。6.根據(jù)權(quán)利要求5所述的人機交互控制方法,其特征在于,所述步驟S5包括以下步驟: S501:記錄所有追蹤號下人的眼睛閉合狀態(tài)以及眼睛閉合的時間總長度,所述眼睛閉合狀態(tài)包括:僅左眼閉合、僅右眼閉合、雙眼閉合后左眼睜開和雙眼閉合后右眼睜開; S502:判斷眼睛閉合的時間總長度是否大于給定閾值,所述給定閾值為2秒; S503:當符合大于給定閾值的人數(shù)大于一人時,判斷是否雙眼閉合時間大于I秒; S504:雙眼閉合時間大于I秒的人數(shù)仍大于一人時,判斷選擇距離機器人最近的準授權(quán)人符合第一授權(quán)條件。7.根據(jù)權(quán)利要求6所述的人機交互控制方法,其特征在于,所述步驟S5完成后,所述方法還包括以下步驟: S6:如果準授權(quán)人數(shù)為零,返回步驟S4;如果準授權(quán)人數(shù)為一人,判斷所述準授權(quán)人符合第一授權(quán)條件,進入步驟S9;如果人數(shù)大于一人,進入步驟S7; S7:根據(jù)剩余準授權(quán)人的追蹤號,提取對應(yīng)眼睛閉合狀態(tài);選出眼睛閉合狀態(tài)為雙眼閉合的準授權(quán)人,保存追蹤號和眼睛閉合狀態(tài)數(shù)據(jù),進入步驟S8;如果沒有準授權(quán)人的眼睛閉合狀態(tài)為雙眼閉合,保留所有準授權(quán)人信息,進入步驟S8; S8:如果準授權(quán)人數(shù)至此只有一人,那么進入步驟S9;如果大于一人,則讀取各自追蹤號下,人中心點在照相機空間下的三維坐標值,計算人中心點與體感傳感器原點的歐式距離;比較所述歐式距離大小,判斷選擇距離機器人最近的準授權(quán)人符合第一授權(quán)條件,并刪除其他的追蹤號,停止追蹤其他的準授權(quán)人。8.根據(jù)權(quán)利要求6所述的人機交互控制方法,其特征在于,所述步驟S9完成后,所述方法還包括: SlO:判斷所述授權(quán)人是左眼閉合還是右眼閉合,根據(jù)判斷結(jié)果將所述機器人調(diào)整為對應(yīng)的人臉識別方式: S1001A:根據(jù)授權(quán)人追蹤號下眼部狀態(tài)“左眼閉合”,移動機器人選擇第一指令識別方式識別授權(quán)人的臉部動作和\眼部動作所對應(yīng)的指令; S1002B:根據(jù)授權(quán)人追蹤號下眼部狀態(tài)“右眼閉合”,移動機器人選擇第二指令識別方式識別授權(quán)人的臉部動作和\眼部動作所對應(yīng)的指令。9.根據(jù)權(quán)利要求8所述的人機交互控制方法,其特征在于,所述第一指令識別方式和所述第二指令識別方式包括:人臉朝向識別、指令意圖分析、人臉轉(zhuǎn)向速度識別以及臉部特征向量的神經(jīng)網(wǎng)絡(luò)分類識別中的一種或者任意幾者的組合。10.根據(jù)權(quán)利要求2至9中任一項所述的人機交互控制方法,其特征在于,所述步驟Sll中,根據(jù)指令的識別結(jié)果之后,且所述移動機器人執(zhí)行所述指令對應(yīng)的操作前,所述移動機器人先對指令進行安全校驗,包括以下步驟: SllOl:移動機器人先對指令結(jié)果的安全執(zhí)行校驗,如果指令可安全執(zhí)行,那么按指令方向和得出的角度方向進行移動; SI 102:如果指令不可執(zhí)行則移動機器人不移動僅原地等待。
【文檔編號】G06F3/01GK105912120SQ201610230284
【公開日】2016年8月31日
【申請日】2016年4月14日
【發(fā)明人】劉輝, 李燕飛, 張雷, 張健
【申請人】中南大學(xué)