本發(fā)明涉及機(jī)器人領(lǐng)域,具體涉及一種用于機(jī)器人的交互輸出方法以及機(jī)器人。
背景技術(shù):
隨著機(jī)器人技術(shù)的不斷發(fā)展,智能機(jī)器人的越來越多的被應(yīng)用到人類日常的生產(chǎn)生活中。尤其的,在家庭室內(nèi)或辦公場所中,服務(wù)型機(jī)器人扮演越來越重要的角色。
服務(wù)型機(jī)器人的主要應(yīng)用方向是理解用戶需求并且以滿足用戶需求為目標(biāo)自動(dòng)完成復(fù)雜的指令。在大部分的應(yīng)用場合中,用戶需求集中在對(duì)特定的目標(biāo)物體進(jìn)行操作,例如“拿一瓶可樂過來”。這就需要機(jī)器人能夠定位特定的目標(biāo)物體并根據(jù)定位信息執(zhí)行匹配的操作。
在現(xiàn)有技術(shù)中,雖然可以通過多種技術(shù)手段實(shí)現(xiàn)對(duì)特定的目標(biāo)物進(jìn)行定位。但是,相較于其他應(yīng)用操作,執(zhí)行定位操作時(shí)需要消耗較高的數(shù)據(jù)采集、數(shù)據(jù)處理量;尤其的,隨著定位精度的提高,其消耗的數(shù)據(jù)采集、數(shù)據(jù)處理量更是成倍增加。這就使得快速、精準(zhǔn)的定位操作需要較高水平的硬件支撐,在硬件水平受限的情況下,不僅需要較長的定位時(shí)間,而且很難保證定位精度。
由于現(xiàn)有技術(shù)的定位操作存在的上述局限性,因此現(xiàn)有技術(shù)中的服務(wù)機(jī)器人或是成本高昂,不利于機(jī)器人的推廣普及;或是在有定位需求時(shí)反應(yīng)遲鈍,大大限制了機(jī)器人的應(yīng)用范圍,降低了用戶體驗(yàn)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供了一種用于機(jī)器人的交互輸出方法,所述方法包括:
獲取多模態(tài)交互輸入數(shù)據(jù);
判斷回應(yīng)所述多模態(tài)交互輸入數(shù)據(jù)是否需要進(jìn)行物體定位;
當(dāng)需要進(jìn)行物體定位時(shí)確定需要進(jìn)行定位的目標(biāo)物體;
從已保存的地圖數(shù)據(jù)中提取與所述目標(biāo)物體相關(guān)聯(lián)的位置信息;
結(jié)合所述位置信息生成并輸出回應(yīng)所述多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)交互輸出。
在一實(shí)施例中,所述方法還包括:
識(shí)別物體并判斷對(duì)應(yīng)所述物體的位置信息是否已被保存到所述地圖數(shù)據(jù)中;
當(dāng)對(duì)應(yīng)所述物體的位置信息尚未保存時(shí),將所述物體的位置信息以及所述物體的標(biāo)簽關(guān)聯(lián)保存入所述地圖數(shù)據(jù)中。
在一實(shí)施例中,所述方法還包括:
驗(yàn)證所述地圖數(shù)據(jù)中保存的所述位置信息所對(duì)應(yīng)的位置是否存在對(duì)應(yīng)物體;
當(dāng)所述位置信息所對(duì)應(yīng)的位置不存在對(duì)應(yīng)物體時(shí)更新所述地圖數(shù)據(jù)。
在一實(shí)施例中,將所述物體的位置以及所述物體的標(biāo)簽關(guān)聯(lián)保存入所述地圖數(shù)據(jù)中,其中:
當(dāng)不存在所述物體的標(biāo)簽時(shí),輸出獲取所述物體的標(biāo)簽的多模態(tài)輸出數(shù)據(jù);
解析用戶針對(duì)所述多模態(tài)輸出數(shù)據(jù)的回應(yīng),獲取所述物體的標(biāo)簽。
在一實(shí)施例中,結(jié)合所述位置信息生成并輸出回應(yīng)所述多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)交互輸出,其中,所述多模態(tài)交互輸出為根據(jù)所述當(dāng)前目標(biāo)物體的位置進(jìn)行路徑規(guī)劃并導(dǎo)航,實(shí)現(xiàn)回應(yīng)多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)交互輸出;
其中,
當(dāng)所述目標(biāo)物體對(duì)應(yīng)多個(gè)位置信息時(shí),采用距離當(dāng)前位置最近的位置信息。
本發(fā)明還提出了一種智能機(jī)器人,所述機(jī)器人包括:
輸入獲取模塊,其配置為獲取多模態(tài)交互輸入數(shù)據(jù);
定位請(qǐng)求判定模塊,其配置為判斷響應(yīng)所述多模態(tài)交互輸入數(shù)據(jù)是否需要進(jìn)行物體定位;
目標(biāo)物確認(rèn)模塊,其配置為當(dāng)需要進(jìn)行物體定位時(shí)確定需要進(jìn)行定位的目標(biāo)物體;
地圖存儲(chǔ)模塊,其配置為保存地圖數(shù)據(jù);
位置獲取模塊,其配置為從所述地圖數(shù)據(jù)中提取與所述目標(biāo)物體相關(guān)聯(lián)的位置信息;
輸出模塊,其配置為結(jié)合所述位置信息生成并輸出響應(yīng)所述多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)交互輸出。
在一實(shí)施例中,所述機(jī)器人還包括用于構(gòu)造所屬地圖數(shù)據(jù)的記錄模塊,其中,所述記錄模塊包括:
識(shí)別單元,其配置為識(shí)別物體;
位置信息保存確認(rèn)單元,其配置為判斷所述識(shí)別單元識(shí)別出的物體所對(duì)應(yīng)的位置信息是否已被保存到所述地圖數(shù)據(jù)中;
信息紀(jì)錄單元,其配置為當(dāng)所述圖像識(shí)別單元識(shí)別出的物體所對(duì)應(yīng)的位置信息尚未保存到所述地圖數(shù)據(jù)中時(shí)將所述物體的位置信息以及所述物體的屬性特征描述關(guān)聯(lián)保存入所述地圖數(shù)據(jù)中。
在一實(shí)施例中,所述機(jī)器人還包括用于驗(yàn)證所述地圖數(shù)據(jù)中所述位置信息是否有效的驗(yàn)證模塊,其中,所述驗(yàn)證模塊包括:
識(shí)別單元,其配置為識(shí)別物體;
位置信息驗(yàn)證單元,其配置為基于所述識(shí)別單元的識(shí)別結(jié)果判斷所述位置信息對(duì)應(yīng)的位置是否存在該位置信息對(duì)應(yīng)的物體;
地圖數(shù)據(jù)更新單元,其配置為當(dāng)所述位置信息對(duì)應(yīng)的位置不存在該位置信息對(duì)應(yīng)的物體時(shí),更新所述地圖數(shù)據(jù)。
在一實(shí)施例中,所述信息紀(jì)錄單元包括:
詢問單元,其配置為當(dāng)不存在所述物體的屬性特征描述時(shí),輸出獲取所述物體的屬性特征描述的多模態(tài)輸出數(shù)據(jù);
獲取單元,其配置為解析用戶針對(duì)所述多模態(tài)輸出數(shù)據(jù)的回應(yīng),獲取所述物體的屬性特征描述。
在一實(shí)施例中,所述輸出模塊配置為根據(jù)所述當(dāng)前目標(biāo)物體的位置進(jìn)行路徑規(guī)劃并導(dǎo)航,實(shí)現(xiàn)回應(yīng)多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)交互輸出;
其中,所述輸出模塊還配置為當(dāng)所述當(dāng)前目標(biāo)物體對(duì)應(yīng)多個(gè)位置信息時(shí),采用距離當(dāng)前位置最近的位置信息。
根據(jù)本發(fā)明的方法,可以簡單快速的獲取指定物體的位置信息以實(shí)現(xiàn)響應(yīng)當(dāng)前多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)交互輸出。相較于現(xiàn)有技術(shù),本發(fā)明的方法硬件需求低、反應(yīng)迅速,不僅可以有效控制機(jī)器人成本,而且可以大大提高機(jī)器人交互輸出的反應(yīng)速度,增強(qiáng)機(jī)器人的用戶體驗(yàn)。
本發(fā)明的其它特征或優(yōu)點(diǎn)將在隨后的說明書中闡述。并且,本發(fā)明的部分特征或優(yōu)點(diǎn)將通過說明書而變得顯而易見,或者通過實(shí)施本發(fā)明而被了解。本發(fā)明的目的和部分優(yōu)點(diǎn)可通過在說明書、權(quán)利要求書以及附圖中所特別指出的步驟來實(shí)現(xiàn)或獲得。
附圖說明
附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實(shí)施例共同用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的限制。在附圖中:
圖1是根據(jù)本發(fā)明一實(shí)施例的方法流程圖;
圖2~圖5是根據(jù)本發(fā)明實(shí)施例的方法的部分流程圖;
圖6是根據(jù)本發(fā)明一實(shí)施例的機(jī)器人系統(tǒng)結(jié)構(gòu)簡圖;
圖7和圖8是根據(jù)本發(fā)明一實(shí)施例的機(jī)器人系統(tǒng)部分結(jié)構(gòu)簡圖。
具體實(shí)施方式
以下將結(jié)合附圖及實(shí)施例來詳細(xì)說明本發(fā)明的實(shí)施方式,借此本發(fā)明的實(shí)施人員可以充分理解本發(fā)明如何應(yīng)用技術(shù)手段來解決技術(shù)問題,并達(dá)成技術(shù)效果的實(shí)現(xiàn)過程并依據(jù)上述實(shí)現(xiàn)過程具體實(shí)施本發(fā)明。需要說明的是,只要不構(gòu)成沖突,本發(fā)明中的各個(gè)實(shí)施例以及各實(shí)施例中的各個(gè)特征可以相互結(jié)合,所形成的技術(shù)方案均在本發(fā)明的保護(hù)范圍之內(nèi)。
隨著機(jī)器人技術(shù)的不斷發(fā)展,智能機(jī)器人的越來越多的被應(yīng)用到人類日常的生產(chǎn)生活中。尤其的,在家庭室內(nèi)或辦公場所中,服務(wù)型機(jī)器人扮演越來越重要的角色。
服務(wù)型機(jī)器人的主要應(yīng)用方向是理解用戶需求并且以滿足用戶需求為目標(biāo)自動(dòng)完成復(fù)雜的指令。在大部分的應(yīng)用場合中,用戶需求集中在對(duì)特定的目標(biāo)物體進(jìn)行操作,例如“拿一瓶可樂過來”。這就需要機(jī)器人能夠定位特定的目標(biāo)物體并根據(jù)定位信息執(zhí)行匹配的操作。
在現(xiàn)有技術(shù)中,雖然可以通過多種技術(shù)手段實(shí)現(xiàn)對(duì)特定的目標(biāo)物進(jìn)行定位。但是,相較于其他應(yīng)用操作,執(zhí)行定位操作時(shí)需要消耗較高的數(shù)據(jù)采集、數(shù)據(jù)處理量;尤其的,隨著定位精度的提高,其消耗的數(shù)據(jù)采集、數(shù)據(jù)處理量更是成倍增加。這就使得快速、精準(zhǔn)的定位操作需要較高水平的硬件支撐,在硬件水平受限的情況下,不僅需要較長的定位時(shí)間,而且很難保證定位精度。
由于現(xiàn)有技術(shù)的定位操作存在的上述局限性,因此現(xiàn)有技術(shù)中的服務(wù)機(jī)器人或是成本高昂,不利于機(jī)器人的推廣普及;或是在有定位需求時(shí)反應(yīng)遲鈍(定位精度需求越高,反應(yīng)越遲鈍),大大限制了機(jī)器人的應(yīng)用范圍,降低了用戶體驗(yàn)。
針對(duì)上述問題,本發(fā)明提出了一種用于機(jī)器人的交互輸出方法。在實(shí)際的交互應(yīng)用場景中,機(jī)器人獲取并解析多模態(tài)交互輸入數(shù)據(jù),然后生成并輸出用于回應(yīng)多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)交互輸出。在此過程中,為了實(shí)現(xiàn)多模態(tài)交互數(shù)據(jù)的輸出,在某些情況下機(jī)器人需要獲取目標(biāo)物體的定位信息(在現(xiàn)有技術(shù)中,此時(shí)就需要機(jī)器人執(zhí)行定位操作)。在本發(fā)明一實(shí)施例中,在機(jī)器人需要獲取目標(biāo)物體的定位信息時(shí),并不是直接按照常規(guī)的定位操作流程為目標(biāo)物體進(jìn)行定位,而是調(diào)用預(yù)先保存的物體位置信息。由于數(shù)據(jù)調(diào)用操作并不需要消耗較高的數(shù)據(jù)采集、數(shù)據(jù)處理量;并且需要消耗較高數(shù)據(jù)采集、數(shù)據(jù)處理量的定位操作是在之前的空閑時(shí)間中預(yù)先執(zhí)行的,其并不會(huì)影響當(dāng)前的數(shù)據(jù)采集以及數(shù)據(jù)處理;因此機(jī)器人生成并輸出多模態(tài)交互輸出的反應(yīng)速度就被大大提高。
接下來基于附圖詳細(xì)描述根據(jù)本發(fā)明實(shí)施例的方法的詳細(xì)流程,附圖的流程圖中示出的步驟可以在包含諸如一組計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)系統(tǒng)中執(zhí)行。雖然在流程圖中示出了各步驟的邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
如圖1所示,在一實(shí)施例中,機(jī)器人首先獲取多模態(tài)交互輸入數(shù)據(jù)(步驟S100),然后解析多模態(tài)交互輸入數(shù)據(jù),生成并輸出回應(yīng)多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)輸出(步驟S101)。
具體的,在步驟S100中,機(jī)器人獲取到的多模態(tài)交互輸入數(shù)據(jù)可以是直接來自于用戶輸入,也可以是針對(duì)交互環(huán)境的數(shù)據(jù)采集。在步驟S101中,機(jī)器人的交互輸出是基于預(yù)設(shè)的交互策略,針對(duì)交互輸入采取的交互回應(yīng)。
例如在一應(yīng)用場景中,用戶直接命令機(jī)器人去拿一罐可樂(直接的用戶輸入),機(jī)器人執(zhí)行命令(交互策略是執(zhí)行用戶的命令)去拿一罐可樂。在另一應(yīng)用場景中,機(jī)器人檢測(cè)用戶行為,發(fā)現(xiàn)用戶在地板上睡著了(針對(duì)交互環(huán)境的數(shù)據(jù)采集),如果交互策略是用戶在地板上睡著時(shí)需要給他蓋毛毯,那么機(jī)器人拿來毛毯蓋在用戶身上;如果交互策略是用戶在地板上睡著時(shí)需要叫醒用戶,那么機(jī)器人叫醒用戶。
在步驟S101的執(zhí)行過程中,判斷回應(yīng)多模態(tài)交互輸入數(shù)據(jù)是否需要進(jìn)行物體定位(步驟S110)。
例如在上面的舉例中,用戶直接命令機(jī)器人去拿一罐可樂的情況下,機(jī)器人執(zhí)行命令去拿一罐可樂,拿可樂這一操作的執(zhí)行需要明確可樂的具體位置,因此需要進(jìn)行物體定位。在另一應(yīng)用場景中,如果交互策略是用戶在地板上睡著時(shí)需要叫醒用戶,那么當(dāng)用戶在地板上睡著時(shí),機(jī)器人就會(huì)判斷回應(yīng)當(dāng)前的多模態(tài)交互輸入數(shù)據(jù)(用戶在地板上睡著)不需要進(jìn)行物體定位(叫醒用戶這一行為不需要進(jìn)行物體定位);如果交互策略是用戶在地板上睡著時(shí)需要蓋毛毯,機(jī)器人檢測(cè)用戶行為,發(fā)現(xiàn)用戶在地板上睡著了,由于拿毛毯這一操作的執(zhí)行需要明確毛毯的具體位置,因此需要進(jìn)行物體定位。
當(dāng)不需要定位時(shí)采用其他交互回應(yīng)策略生成并輸出多模態(tài)交互輸出(例如上邊舉例中機(jī)器人直接叫醒用戶)(步驟S111)。
當(dāng)需要進(jìn)行物體定位時(shí)首先確定需要進(jìn)行定位的目標(biāo)物體(步驟S120);然后從已保存的地圖數(shù)據(jù)中提取與目標(biāo)物體相關(guān)聯(lián)的位置信息(例如上述舉例中可樂的位置信息或是毛毯的位置信息)(步驟S130);最后結(jié)合提取出的位置信息生成并輸出回應(yīng)多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)交互輸出(步驟S140)(拿可樂或是拿毛毯)。具體的,在步驟S140中,根據(jù)步驟S130所確定的位置信息進(jìn)行路徑規(guī)劃/導(dǎo)航,從而生成并輸出回應(yīng)多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)交互輸出。
在圖1所示的步驟中,以數(shù)據(jù)采集量數(shù)據(jù)處理量相對(duì)較小的步驟S120以及S130替代了現(xiàn)有技術(shù)中的定位操作,本質(zhì)上將現(xiàn)有技術(shù)中需要及時(shí)執(zhí)行的定位操作放到其他空閑時(shí)段預(yù)先執(zhí)行。這樣在當(dāng)前的處理流程中就不會(huì)被定位操作所需的大數(shù)據(jù)采集量以及大數(shù)據(jù)處理量所影響,從而大大減少了當(dāng)前的處理流程的處理耗時(shí),加快了機(jī)器人的反應(yīng)速度,提高了機(jī)器人的用戶體驗(yàn)。
進(jìn)一步的,在一實(shí)施例中,地圖數(shù)據(jù)中包含相互關(guān)聯(lián)的物體的屬性特征描述(標(biāo)簽)以及該物體在空間場景中的位置信息(例如空間坐標(biāo))(至少包含一個(gè)屬性特征描述以及對(duì)應(yīng)的位置信息)。在步驟S130中,利用步驟S120所確定的目標(biāo)物體在地圖數(shù)據(jù)中進(jìn)行匹配搜索,搜索與目標(biāo)物體匹配的屬性特征描述從而確定關(guān)聯(lián)保存的位置信息。
具體的,在地圖數(shù)據(jù)中,物體的屬性特征描述以及位置信息可以是一一對(duì)應(yīng)的。以一具體應(yīng)用場景為例,地圖數(shù)據(jù)包含兩個(gè)對(duì)應(yīng)關(guān)系,其分別是“蘋果、區(qū)域1”以及“可樂、區(qū)域2”;其中“蘋果”和“可樂”分別是兩個(gè)物體的屬性特征描述(標(biāo)簽),“區(qū)域1”以及“區(qū)域2”則分別是兩個(gè)物體在空間場景中所處的位置信息。
當(dāng)用戶命令“拿可樂過來”時(shí),機(jī)器人在回應(yīng)該命令時(shí)判斷需要對(duì)可樂進(jìn)行定位。接下來通過對(duì)“可樂”在地圖數(shù)據(jù)中的匹配搜索獲取標(biāo)簽“可樂”,進(jìn)而確定關(guān)聯(lián)“可樂”的位置信息“區(qū)域2”;根據(jù)“區(qū)域2”進(jìn)行路徑規(guī)劃以及導(dǎo)航,移動(dòng)到可樂附近并拿起可樂,然后將可樂拿到用戶處。
進(jìn)一步的,在實(shí)際的應(yīng)用場景中,多個(gè)同類的物體可能會(huì)分別位于空間場景的多個(gè)不同位置處。因此,在地圖數(shù)據(jù)中,同一屬性特征描述也可以關(guān)聯(lián)多個(gè)不同的位置信息。例如,在一應(yīng)用場景中,3罐可樂分別位于區(qū)域2、區(qū)域3以及區(qū)域4;在地圖數(shù)據(jù)中,其關(guān)聯(lián)保存為“可樂、區(qū)域2、區(qū)域3、區(qū)域4”。
進(jìn)一步,在步驟S130中,針對(duì)目標(biāo)物體提取到的位置信息可能是多個(gè)。針對(duì)這種情況,在一實(shí)施例中,當(dāng)目標(biāo)物體對(duì)應(yīng)多個(gè)位置信息時(shí),采用距離當(dāng)前位置最近的位置信息執(zhí)行步驟S140。在另一實(shí)施例中,當(dāng)目標(biāo)物體對(duì)應(yīng)多個(gè)位置信息時(shí),則首先向用戶發(fā)起詢問,由用戶確認(rèn)采用哪一個(gè)位置信息。
在圖1所示步驟中,關(guān)鍵步驟之一在于從已保存的地圖數(shù)據(jù)中提取與目標(biāo)物體相關(guān)聯(lián)的位置信息(步驟S130)。該步驟的實(shí)現(xiàn)前提是當(dāng)前已保存有包含位置信息的地圖數(shù)據(jù)。因此,本發(fā)明還提出了記錄位置信息以創(chuàng)建地圖數(shù)據(jù)的方法。在一實(shí)施例中,當(dāng)機(jī)器人來到新的環(huán)境中時(shí),機(jī)器人識(shí)別新環(huán)境中的每個(gè)物體,關(guān)聯(lián)保存物體的屬性特征描述以及位置信息以構(gòu)成地圖數(shù)據(jù)。這樣預(yù)先將當(dāng)前空間場景中的所有物體位置進(jìn)行記錄以便之后進(jìn)行在此空間場景內(nèi)的定位交互輸出。
如圖2所示,在一實(shí)施例中,當(dāng)機(jī)器人所處的場景發(fā)生轉(zhuǎn)換(步驟S200)后首先判斷針對(duì)當(dāng)前所處的空間場景是否存在已保存的地圖數(shù)據(jù)(步驟S210)。如果已存在,則不構(gòu)造新的地圖數(shù)據(jù),暫時(shí)待機(jī)(步驟S211)。如果針對(duì)當(dāng)前的空間場景不存在對(duì)應(yīng)的地圖數(shù)據(jù),則識(shí)別當(dāng)前空間場景中的物體(步驟S220),獲取物體的屬性特征描述(步驟S221)以及位置信息(步驟S222);關(guān)聯(lián)保存屬性特征描述以及位置信息以構(gòu)造地圖數(shù)據(jù)(步驟S230)。
進(jìn)一步的,考慮到空間場景中的物體可能會(huì)發(fā)生變化(例如被取走物體、新添物體或是改變?cè)形矬w的位置),因此,在一實(shí)施例中,機(jī)器人(隨機(jī)或者按照固定頻率)會(huì)對(duì)所處的空間場景中的物體進(jìn)行位置信息識(shí)別更新。
如圖3所示,在一實(shí)施例中,機(jī)器人識(shí)別當(dāng)前空間場景中的物體(識(shí)別一個(gè)物體)(步驟S300),判斷識(shí)別出的物體的位置信息是否已被保存(記錄)到地圖數(shù)據(jù)中(步驟S310),如果已被保存,則返回步驟S300,識(shí)別下一個(gè)物體。
如果當(dāng)前識(shí)別出的物體的位置信息尚未保存,則說明該物體是新加入當(dāng)前空間場景的物體或者是原有物體被挪到了當(dāng)前的新位置。此時(shí),將該物體的屬性特征描述以及位置信息關(guān)聯(lián)保存如地圖數(shù)據(jù)中(步驟S320)。
進(jìn)一步的,在一實(shí)施例中,在步驟S310中需要首先判斷當(dāng)前物體的屬性特征描述是否已存在于已保存的地圖數(shù)據(jù)中,如果不存在,則說明此物體的位置信息從來沒有被記錄過(是新加入當(dāng)前空間場景的物體)。
當(dāng)當(dāng)前物體的屬性特征描述已存在于已保存的地圖數(shù)據(jù)中時(shí),繼續(xù)判斷該屬性特征描述在地圖數(shù)據(jù)中關(guān)聯(lián)的位置信息是否與實(shí)際空間場景中該物體的位置信息一致。當(dāng)兩者一致時(shí),該物體的位置信息就是已保存過的。如果不一致,則說明已保存的位置信息是在其他位置上的同類物體的位置信息(新加入當(dāng)前空間場景的物體與已保存位置信息的物體同類,具有相同的屬性特征描述)或者當(dāng)前位置上的物體是其他位置上的原有物體移動(dòng)過來的。在這種情況下,當(dāng)前的物體的位置信息還尚未保存。
具體的,如圖4所示,在一實(shí)施例中,機(jī)器人在當(dāng)前的空間場景中首先識(shí)別物體(步驟S400),獲取物體標(biāo)簽(步驟S410),判斷獲取到的物體標(biāo)簽是否存在于已保存的地圖數(shù)據(jù)中(步驟S420)。如果不存在,則獲取該物體的位置信息(步驟S460),將物體標(biāo)簽與位置信息關(guān)聯(lián)保存入地圖數(shù)據(jù)中(步驟S450)。
如果已保存的地圖數(shù)據(jù)中存在該物體標(biāo)簽,則獲取該物體的位置信息(步驟S430),判斷該位置信息是否與已保存的地圖數(shù)據(jù)中的位置信息一致(步驟S440),如果一致,則識(shí)別下一個(gè)物體(返回步驟400)。如果不一致,則將物體標(biāo)簽與位置信息關(guān)聯(lián)保存入地圖數(shù)據(jù)中(步驟S450)。
進(jìn)一步的,在實(shí)際環(huán)境中,一個(gè)空間場景內(nèi)會(huì)存在很多不同種類的物體,受限于機(jī)器人的識(shí)別硬件以及用于物品識(shí)別的數(shù)據(jù)庫,機(jī)器人可能會(huì)遇到無法進(jìn)行識(shí)別的物體,僅能確認(rèn)物體的位置,但是無法識(shí)別獲取該物體準(zhǔn)確的屬性特征描述(標(biāo)簽)。針對(duì)這種情況,在一實(shí)施例中,當(dāng)機(jī)器人無法確認(rèn)物體的準(zhǔn)確屬性特征描述(標(biāo)簽)時(shí)(例如圖2所示的步驟S221中),向用戶發(fā)起主動(dòng)詢問,輸出獲取物體的屬性特征描述的多模態(tài)輸出數(shù)據(jù),解析用戶針對(duì)多模態(tài)輸出數(shù)據(jù)的回應(yīng),從用戶處獲取物體的屬性特征描述(標(biāo)簽)。
進(jìn)一步的,在一實(shí)施例中,當(dāng)機(jī)器人無法識(shí)別獲取物體準(zhǔn)確的屬性特征描述時(shí),則判定該物體尚未被記錄。例如在圖4所示的流程中,如果在步驟S400中機(jī)器人無法識(shí)別獲取物體準(zhǔn)確的屬性特征描述,則在步驟S410中向用戶發(fā)起詢問獲取物體的屬性特征描述并跳到步驟S460獲取位置信息(不需要執(zhí)行步驟S420)。
上述圖3以及圖4的流程主要針對(duì)新加入當(dāng)前空間場景的物體以及被挪動(dòng)位置的物體進(jìn)行記錄,本質(zhì)上是為地圖數(shù)據(jù)添加新的記錄。但是,當(dāng)空間場景中的原有物體被移動(dòng)后(移出該空間場景或移到空間場景中的新位置),其在地圖數(shù)據(jù)中對(duì)應(yīng)的記錄就無效了,如果不進(jìn)行地圖場景的更新,無效信息勢(shì)必會(huì)影響之后的定位效果以及多模態(tài)交互輸出的實(shí)現(xiàn)。
因此,在本發(fā)明一實(shí)施例中,機(jī)器人在空閑狀態(tài)下(隨機(jī)或者按照固定頻率)驗(yàn)證地圖數(shù)據(jù)中保存的位置信息所對(duì)應(yīng)的位置是否存在對(duì)應(yīng)物體(驗(yàn)證記錄是否有效);當(dāng)位置信息所對(duì)應(yīng)的位置不存在對(duì)應(yīng)物體時(shí)更新地圖數(shù)據(jù)(刪除或修改對(duì)應(yīng)的記錄)。
具體的,如圖5所示,機(jī)器人從已保存的地圖數(shù)據(jù)中提取已保存的位置信息(步驟S500),判斷在當(dāng)前的空間場景中與提取出的位置信息對(duì)應(yīng)的位置上是否有物體存在(步驟S510),如果沒有物體存在,則說明與記錄對(duì)應(yīng)的物體已經(jīng)被移動(dòng),該記錄無效,此時(shí)刪除相關(guān)記錄(刪除對(duì)應(yīng)的位置信息以及與物體標(biāo)簽的關(guān)聯(lián)關(guān)系)(步驟S560)。
如果該位置上存在物體,則識(shí)別獲取該物體的物體標(biāo)簽(步驟S520),從地圖數(shù)據(jù)中提取與該位置信息關(guān)聯(lián)的物體標(biāo)簽(步驟S530),判斷識(shí)別獲取到的物體標(biāo)簽與提取的物體標(biāo)簽是否一致(步驟S540)。如果一致,則說明該記錄有效,提取下一條位置信息(返回步驟S500)。如果不一致,則說明該記錄無效,修改與該位置信息關(guān)聯(lián)的物體標(biāo)簽(將地圖數(shù)據(jù)中與該位置信息關(guān)聯(lián)的物體標(biāo)簽替換為從當(dāng)前空間場景中識(shí)別獲取的物體標(biāo)簽)(步驟S550)。
在實(shí)際應(yīng)用場合中,由于一個(gè)空間場景內(nèi)會(huì)存在很多不同種類的物體,如果針對(duì)所有的物體進(jìn)行位置信息的預(yù)先記錄勢(shì)必導(dǎo)致最后獲取的地圖數(shù)據(jù)具有較高的數(shù)據(jù)量。并且,在實(shí)際應(yīng)用中,并不是空間場景內(nèi)的物體都會(huì)作為機(jī)器人的操作執(zhí)行對(duì)象,即,對(duì)于機(jī)器人而言,空間場景內(nèi)有很多物體是可以無視的,機(jī)器人以后的多模態(tài)交互輸出不會(huì)涉及到這些物體。
具體的,如圖6所示,在機(jī)器人識(shí)別物體的過程中,首先指定一個(gè)物體(步驟S610),判斷該物體是否屬于預(yù)先限定的目標(biāo)物體范圍(步驟S620),如果屬于,則繼續(xù)進(jìn)行識(shí)別(步驟S630),如果不屬于,則停止識(shí)別(步驟S640),無視該物體,將識(shí)別目標(biāo)轉(zhuǎn)到下一個(gè)物體(步驟S650)。
綜上,根據(jù)本發(fā)明的方法,可以簡單快速的獲取指定物體的位置信息以實(shí)現(xiàn)響應(yīng)當(dāng)前多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)交互輸出。相較于現(xiàn)有技術(shù),本發(fā)明的方法硬件需求低、反應(yīng)迅速,不僅可以有效控制機(jī)器人成本,而且可以大大提高機(jī)器人交互輸出的反應(yīng)速度,增強(qiáng)機(jī)器人的用戶體驗(yàn)。
基于本發(fā)明的方法,本發(fā)明還提出了一種智能機(jī)器人。如圖6所示,在一實(shí)施例中,機(jī)器人包括:
輸入獲取模塊600,其配置為獲取多模態(tài)交互輸入數(shù)據(jù);
輸出模塊610,其配置為生成并輸出響應(yīng)多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)交互輸出;
定位請(qǐng)求判定模塊620,其配置為判斷響應(yīng)所述多模態(tài)交互輸入數(shù)據(jù)(生成并輸出多模態(tài)交互輸出)是否需要進(jìn)行物體定位;
目標(biāo)物確認(rèn)模塊630,其配置為當(dāng)需要進(jìn)行物體定位時(shí)確定需要進(jìn)行定位的目標(biāo)物體;
地圖存儲(chǔ)模塊640,其配置為保存地圖數(shù)據(jù);
位置獲取模塊650,其配置為從地圖存儲(chǔ)模塊640保存的地圖數(shù)據(jù)中提取與目標(biāo)物確認(rèn)模塊630確認(rèn)的目標(biāo)物體相關(guān)聯(lián)的位置信息。
輸出模塊610還配置為結(jié)合位置信息生成并輸出響應(yīng)所述多模態(tài)交互輸入數(shù)據(jù)的多模態(tài)交互輸出。
進(jìn)一步的,在一實(shí)施例中,機(jī)器人還包括用于記錄位置信息的記錄模塊。如圖7所示,記錄模塊700包括:
識(shí)別單元701,其配置為識(shí)別物體;
位置信息保存確認(rèn)單元702,其配置為判斷識(shí)別單元701識(shí)別出的物體所對(duì)應(yīng)的位置信息是否已被保存到地圖存儲(chǔ)模塊710中保存的地圖數(shù)據(jù)中;
信息紀(jì)錄單元703,其配置為當(dāng)圖像識(shí)別單元識(shí)別出的物體所對(duì)應(yīng)的位置信息尚未保存到地圖數(shù)據(jù)中時(shí)將物體的位置信息以及物體的屬性特征描述關(guān)聯(lián)保存入地圖數(shù)據(jù)中。
進(jìn)一步的,在一實(shí)施例中,機(jī)器人還包括用于驗(yàn)證地圖數(shù)據(jù)中位置信息是否有效的驗(yàn)證模塊。如圖8所示,驗(yàn)證模塊800包括:
識(shí)別單元801,其配置為識(shí)別物體;
位置信息驗(yàn)證單元802,其配置為基于識(shí)別單元801的識(shí)別結(jié)果判斷地圖存儲(chǔ)模塊810中保存的地圖數(shù)據(jù)中位置信息對(duì)應(yīng)的位置是否存在該位置信息對(duì)應(yīng)的物體;
地圖數(shù)據(jù)更新單元803,其配置為當(dāng)位置信息對(duì)應(yīng)的位置不存在該位置信息對(duì)應(yīng)的物體時(shí),更新地圖存儲(chǔ)模塊810中保存的地圖數(shù)據(jù)。
進(jìn)一步的,在一實(shí)施例中,如圖7所示,信息紀(jì)錄單元703包括:
詢問單元704,其配置為當(dāng)不存在物體的屬性特征描述時(shí),輸出獲取物體的屬性特征描述的多模態(tài)輸出數(shù)據(jù);
獲取單元705,其配置為解析用戶針對(duì)多模態(tài)輸出數(shù)據(jù)的回應(yīng),獲取物體的屬性特征描述。
進(jìn)一步的,針對(duì)多個(gè)同樣的物體分散在不同的位置的情況,在一實(shí)施例中,輸出模塊還配置為當(dāng)當(dāng)前目標(biāo)物體對(duì)應(yīng)多個(gè)位置信息時(shí),采用距離當(dāng)前位置最近的位置信息。
雖然本發(fā)明所公開的實(shí)施方式如上,但所述的內(nèi)容只是為了便于理解本發(fā)明而采用的實(shí)施方式,并非用以限定本發(fā)明。本發(fā)明所述的方法還可有其他多種實(shí)施例。在不背離本發(fā)明實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本發(fā)明做出各種相應(yīng)的改變或變形,但這些相應(yīng)的改變或變形都應(yīng)屬于本發(fā)明的權(quán)利要求的保護(hù)范圍。