本發(fā)明涉及即時定位與地圖構(gòu)建方法和設(shè)備,更具體地說,涉及基于會話的、能夠?qū)崿F(xiàn)可持續(xù)即時定位與地圖構(gòu)建的方法和設(shè)備。
背景技術(shù):即時定位與地圖構(gòu)建(SimultaneousLocalizationandMapping,SLAM)是目前在機器人定位方面的熱門研究課題。所謂SLAM就是將移動機器人定位與環(huán)境地圖創(chuàng)建融為一體,即機器人在運動過程中根據(jù)自身位姿估計和傳感器對環(huán)境的感知構(gòu)建增量式環(huán)境地圖,同時利用該地圖實現(xiàn)自身的定位。然而,由于存儲容量和計算性能的限制,自開發(fā)式移動機器人在不丟棄其自身數(shù)據(jù)的情況下,不能在未知的、開放環(huán)境中長時間進行SLAM。針對該問題,一種可能的解決方案是:機器人局部地進行SLAM,而不分發(fā)其結(jié)果用于長期使用,例如在項目Turtle和PR1/PR2上采用的WillowGarage/Google’sRGB-DSLAM。但是,該方案的缺點在于,由于硬件的限制,單個機器人開發(fā)大區(qū)域的能力也受限。另一種可能的解決方案是:機器人與本地或聯(lián)網(wǎng)的存儲器合作地進行SLAM,其中在所述存儲器中存儲包括多組地圖數(shù)據(jù)的環(huán)境地圖。每一組地圖數(shù)據(jù)均與環(huán)境中的一點處獲得的觀測相關(guān)聯(lián)(例如,參見歐洲專利申請:EP2256574A1)。但是,基本上,該方案仍然是單會話機制,盡管它將SLAM存儲器分割為多個功能塊。它解決了地圖存儲的問題,但是隨著地圖數(shù)據(jù)的組數(shù)的不斷增加,不能提高機器人的計算性能。
技術(shù)實現(xiàn)要素:鑒于以上情形,期望提供新的即時定位與地圖構(gòu)建方法和設(shè)備,其使得機器人基于會話在未知環(huán)境中進行SLAM,從而只要電源允許,則能夠虛擬地實現(xiàn)無限的任務(wù)持續(xù)時間和范圍。該方法也被稱為可持續(xù)的SLAM或基于會話的SLAM。根據(jù)本發(fā)明實施例的一個方面,提供了一種信息處理方法,應(yīng)用于一個或者多個可移動電子設(shè)備中,所述可移動電子設(shè)備被用于一未知環(huán)境的即時定位與地圖構(gòu)建;其特征在于,所述方法包括如下步驟:所述可移動電子設(shè)備向宿主端發(fā)送會話請求;所述可移動電子設(shè)備在所述未知環(huán)境中移動并進行所述即時定位與地圖構(gòu)建,獲得并存儲數(shù)據(jù);當滿足第一預(yù)定條件時,所述可移動電子設(shè)備向所述宿主端發(fā)送所述數(shù)據(jù);當滿足第二預(yù)定條件時,所述可移動電子設(shè)備向所述宿主端發(fā)送下一個會話請求,結(jié)束本次會話并清空所述數(shù)據(jù)。優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,所述第一預(yù)定條件是指接收到所述宿主端發(fā)送的數(shù)據(jù)更新請求。優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,所述第一預(yù)定條件是指計時器被觸發(fā)。優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,所述會話與所述下一個會話存在時間重疊。優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,在所述清空所述數(shù)據(jù)的步驟之前,所述可移動電子設(shè)備將所述會話時段內(nèi)的尚未發(fā)送給所述宿主端的所述數(shù)據(jù)繼續(xù)發(fā)送給所述宿主端。優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,所述第二預(yù)定條件是指由于所述可移動電子設(shè)備的硬件配置限制,除非清空所述數(shù)據(jù),否則所述可移動電子設(shè)備無法再繼續(xù)進行所述即時定位與地圖構(gòu)建。優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,所述數(shù)據(jù)至少包括以下數(shù)據(jù)中的一種或者多種:所述可移動電子設(shè)備的運動軌跡、所述可移動電子設(shè)備的運動軌跡姿態(tài)、當前已構(gòu)建的地圖信息。優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,所述可移動電子設(shè)備與所述宿主端之間通過無線網(wǎng)絡(luò)建立會話以及進行數(shù)據(jù)傳輸優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,所述宿主端與Internet連接。優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,所述宿主端為計算機。優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,所述宿主端將接收到的所有所述數(shù)據(jù)進行處理整合,直到所述未知環(huán)境的地圖被構(gòu)建完成。根據(jù)本發(fā)明實施例的另一個方面,提供了一種信息處理方法,應(yīng)用于一宿主端中,所述宿主端與一個或者多個可移動電子設(shè)備配合,被用于一未知環(huán)境的即時定位與地圖構(gòu)建;其特征在于,所述方法包括如下步驟:所述宿主端等待所述可移動電子設(shè)備發(fā)送的會話請求;所述宿主端接受所述會話請求;所述宿主端接收所述可移動電子設(shè)備發(fā)送來的與所述即時定位與地圖構(gòu)建相關(guān)的數(shù)據(jù);所述宿主端存儲并處理所述數(shù)據(jù)。優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,所述可移動電子設(shè)備在所述未知環(huán)境中移動并進行所述即時定位與地圖構(gòu)建,從而獲得并所述數(shù)據(jù)。優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,在所述宿主端接受所述會話請求的步驟之后以及所述宿主端接收所述可移動電子設(shè)備發(fā)送來的所述數(shù)據(jù)的步驟之前,進一步包括所述宿主端向所述可移動電子設(shè)備發(fā)送一數(shù)據(jù)更新請求的步驟。優(yōu)選地,在根據(jù)本發(fā)明實施例的信息處理方法中,所述宿主端處理所述數(shù)據(jù)的步驟包括:整合所接收到的所有所述數(shù)據(jù),以完成所述未知環(huán)境的地圖構(gòu)建。根據(jù)本發(fā)明實施例的又一個方面,提供了一種可移動電子設(shè)備,用于一未知環(huán)境的即時定位與地圖構(gòu)建;其特征在于,所述設(shè)備包括:會話發(fā)送單元,用于向宿主端發(fā)送會話請求;即時定位與地圖構(gòu)建單元,用于在所述未知環(huán)境中移動并進行所述即時定位與地圖構(gòu)建,獲得并存儲數(shù)據(jù);數(shù)據(jù)傳輸單元,用于當滿足第一預(yù)定條件時,向所述宿主端發(fā)送所述數(shù)據(jù);會話結(jié)束單元,用于當滿足第二預(yù)定條件時,結(jié)束本次會話并清空所述數(shù)據(jù)。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,所述第一預(yù)定條件是指所述數(shù)據(jù)傳輸單元接收到所述宿主端發(fā)送的數(shù)據(jù)更新請求。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,進一步包括計時器,并且其中所述第一預(yù)定條件是指計時器被觸發(fā)。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,當滿足第二預(yù)定條件時,所述會話發(fā)送單元向宿主端發(fā)送下一個會話請求,并且所述會話與所述下一個會話之間存在時間重疊。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,所述數(shù)據(jù)傳輸單元在所述會話結(jié)束單元清空所述數(shù)據(jù)之前,將所述會話時段內(nèi)的尚未發(fā)送給所述宿主端的所述數(shù)據(jù)繼續(xù)發(fā)送給所述宿主端。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,所述第二預(yù)定條件是指由于所述可移動電子設(shè)備的硬件配置限制,除非清空所述數(shù)據(jù),否則所述可移動電子設(shè)備無法再繼續(xù)進行所述即時定位與地圖構(gòu)建。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,所述數(shù)據(jù)至少包括以下數(shù)據(jù)中的一種或者多種:所述可移動電子設(shè)備的運動軌跡、所述可移動電子設(shè)備的運動軌跡姿態(tài)、當前已構(gòu)建的地圖信息。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,所述可移動電子設(shè)備與所述宿主端之間通過無線網(wǎng)絡(luò)建立會話以及進行數(shù)據(jù)傳輸。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,所述宿主端與Internet連接。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,所述宿主端為計算機。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,所述宿主端將接收到的所有所述數(shù)據(jù)進行處理整合,直到所述未知環(huán)境的地圖被構(gòu)建完成。根據(jù)本發(fā)明實施例的再一個方面,提供了一種信息處理設(shè)備,其作為宿主端,與一個或者多個可移動電子設(shè)備配合,用于一未知環(huán)境的即時定位與地圖構(gòu)建;其特征在于,所述設(shè)備包括如下步驟:會話接收單元,用于等待所述可移動電子設(shè)備發(fā)送的會話請求,并接受所述會話請求;數(shù)據(jù)接收單元,用于接收所述可移動電子設(shè)備發(fā)送來的與所述即時定位與地圖構(gòu)建相關(guān)的數(shù)據(jù);存儲單元,用于存儲所述數(shù)據(jù);以及處理單元,用于處理所述數(shù)據(jù)。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,所述可移動電子設(shè)備在所述未知環(huán)境中移動并進行所述即時定位與地圖構(gòu)建,從而獲得并所述數(shù)據(jù)。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,進一步包括更新請求發(fā)送單元,用于在接受所述會話請求之后以及接收所述可移動電子設(shè)備發(fā)送來的所述數(shù)據(jù)的步驟之前,向所述可移動電子設(shè)備發(fā)送一數(shù)據(jù)更新請求。優(yōu)選地,在根據(jù)本發(fā)明實施例的設(shè)備中,所述處理單元整合所接收到的所有所述數(shù)據(jù),以完成所述未知環(huán)境的地圖構(gòu)建。通過根據(jù)本發(fā)明實施例的即時定位與地圖構(gòu)建方法和設(shè)備,可以連續(xù)地進行SLAM,而無需永久地丟失所發(fā)現(xiàn)的地圖。另外,機器人可以重復(fù)使用其自身的SLAM結(jié)果和其他機器人在不同會話中獲取的SLAM結(jié)果。在此基礎(chǔ)之上,建立大區(qū)域的3D地圖變得可行。宿主端可以存儲基于會話、由不同機器人獲取的地圖,并將它們集合成連續(xù)的地圖。附圖說明圖1是示出了在可移動電子設(shè)備端進行的信息處理方法的過程的流程圖;圖2是示出了在宿主端進行的信息處理方法的過程的流程圖;圖3是示出了用于一未知環(huán)境的即時定位與地圖構(gòu)建的可移動電子設(shè)備的配置的框圖;以及圖4是示出了作為宿主端的信息處理設(shè)備的配置的框圖。具體實施方式下面將參照附圖對本發(fā)明的各個優(yōu)選的實施方式進行描述。提供以下參照附圖的描述,以幫助對由權(quán)利要求及其等價物所限定的本發(fā)明的示例實施方式的理解。其包括幫助理解的各種具體細節(jié),但它們只能被看作是示例性的。因此,本領(lǐng)域技術(shù)人員將認識到,可對這里描述的實施方式進行各種改變和修改,而不脫離本發(fā)明的范圍和精神。而且,為了使說明書更加清楚簡潔,將省略對本領(lǐng)域熟知功能和構(gòu)造的詳細描述。在本發(fā)明中,基于會話的即時定位與地圖構(gòu)建系統(tǒng)包括一個宿主端(如,計算機)以及一個或多個可移動電子設(shè)備(如,機器人)端。其中,宿主端主要負責數(shù)據(jù)存儲和后期處理,而可移動電子設(shè)備端主要負責未知環(huán)境中的短期SLAM。所述可移動電子設(shè)備與所述宿主端之間通過無線網(wǎng)絡(luò)建立會話以及進行數(shù)據(jù)傳輸。當然,可替代地,宿主端和可移動電子設(shè)備均可以與諸如Internet之類的網(wǎng)絡(luò)連接。宿主端和可移動電子設(shè)備端協(xié)同操作,從而實現(xiàn)長時間、大范圍的即時定位與地圖構(gòu)建。在下文中,首先參照圖1描述在可移動電子設(shè)備端進行的信息處理方法。如圖1所示,所述方法包括如下步驟:首先,在步驟S101,可移動電子設(shè)備向宿主端發(fā)送會話請求。然后,在步驟S102,可移動電子設(shè)備在未知環(huán)境中移動并進行即時定位與地圖構(gòu)建,獲得并存儲數(shù)據(jù)。所述數(shù)據(jù)至少包括以下數(shù)據(jù)中的一種或者多種:所述可移動電子設(shè)備的運動軌跡、所述可移動電子設(shè)備的運動軌跡姿態(tài)、當前已構(gòu)建的地圖信息。接下來,在步驟S103,判斷是否滿足第一預(yù)定條件。如果滿足第一預(yù)定條件,則處理進行到步驟S104。在步驟S104,可移動電子設(shè)備向所述宿主端發(fā)送在步驟S102中獲得的數(shù)據(jù)。例如,這里所述的第一預(yù)定條件是指接收到所述宿主端發(fā)送的數(shù)據(jù)更新請求。當然,可替代地,這里所述的第一預(yù)定條件也可以是指計時器被觸發(fā)。例如,可移動電子設(shè)備可以每隔預(yù)定時段向宿主端進行SLAM更新。另一方面,如果在步驟S103確定不滿足第一預(yù)定條件,則處理返回到步驟S102,并繼續(xù)進行SLAM。在步驟S104之后,處理進行到步驟S105。在步驟S105,判斷是否滿足第二預(yù)定條件。如果滿足第二預(yù)定條件,則處理進行到步驟S106。在步驟S106,所述可移動電子設(shè)備將所述會話時段內(nèi)的尚未發(fā)送給所述宿主端的所述數(shù)據(jù)繼續(xù)發(fā)送給所述宿主端。然后,處理進行到步驟S107。在步驟S107,可移動電子設(shè)備向宿主端發(fā)送下一個會話請求,結(jié)束本次會話并清空所述數(shù)據(jù)。例如,這里所述的第二預(yù)定條件是指由于所述可移動電子設(shè)備的硬件配置限制,除非清空所述數(shù)據(jù),否則所述可移動電子設(shè)備無法再繼續(xù)進行所述即時定位與地圖構(gòu)建。優(yōu)選地,對于同一個可移動電子設(shè)備,所述會話與所述下一個會話存在時間重疊。具體來說,當下一個會話剛開始的預(yù)定時段內(nèi),前一個會話仍未結(jié)束。這樣可以確保兩個連續(xù)場景中不會出現(xiàn)較大的偏差,保證最終全局地圖的準確度。需要指出的是,在根據(jù)本發(fā)明的系統(tǒng)中,多個可移動電子設(shè)備可以同時操作,其分別對應(yīng)于與宿主端進行的一個會話,并且其中的一個可移動電子設(shè)備可以啟動多次會話。在各個會話中,可移動電子設(shè)備向宿主端傳送數(shù)據(jù),宿主端將接收到的所有數(shù)據(jù)進行處理整合,直到未知環(huán)境的地圖被構(gòu)建完成。接下來,將參照圖2描述在宿主端進行的信息處理方法。如圖2所示,所述方法包括如下步驟:首先,在步驟S201,宿主端等待可移動電子設(shè)備發(fā)送的會話請求。然后,在步驟S202,在存在這樣的會話請求時,宿主端接受所述會話請求。接著,在步驟S203,宿主端接收所述可移動電子設(shè)備發(fā)送來的與所述即時定位與地圖構(gòu)建相關(guān)的數(shù)據(jù)。這里的數(shù)據(jù)是通過可移動電子設(shè)備在所述未知環(huán)境中移動并進行所述即時定位與地圖構(gòu)建而獲得的。最后,在步驟S204,所述宿主端存儲并處理所述數(shù)據(jù)。具體來說,宿主端處理數(shù)據(jù)的步驟包括:整合所接收到的所有所述數(shù)據(jù),以完成所述未知環(huán)境的地圖構(gòu)建。當然,除了可移動電子設(shè)備傳送SLAM數(shù)據(jù)的實施方式之外,宿主端也可以主動請求獲取SLAM數(shù)據(jù)。也就是說,作為一種替代的實施例方式,在所述宿主端接受所述會話請求的步驟S202之后以及所述宿主端接收所述可移動電子設(shè)備發(fā)送來的所述數(shù)據(jù)的步驟S203之前,還可以進一步包括步驟S205。在步驟S205,所述宿主端向所述可移動電子設(shè)備發(fā)送一數(shù)據(jù)更新請求。在圖2中,以虛線框示出步驟S205,表示該步驟并非必要步驟。在上文中,已經(jīng)參照圖1和圖2描述了在根據(jù)本發(fā)明的系統(tǒng)中分別應(yīng)用于可移動電子設(shè)備端和宿主端的信息處理方法。接下來,將參照圖3和圖4描述在根據(jù)本發(fā)明的系統(tǒng)中包括的可移動電子設(shè)備和宿主端的具體配置。圖3是示出了用于一未知環(huán)境的即時定位與地圖構(gòu)建的可移動電子設(shè)備的配置的框圖。如圖3所示,可移動電子設(shè)備300包括會話發(fā)送單元301、即時定位與地圖構(gòu)建單元302、數(shù)據(jù)傳輸單元303和會話結(jié)束單元304。會話發(fā)送單元301用于向宿主端發(fā)送會話請求。即時定位與地圖構(gòu)建單元302用于在所述未知環(huán)境中移動并進行所述即時定位與地圖構(gòu)建,獲得并存儲數(shù)據(jù)。所述數(shù)據(jù)至少包括以下數(shù)據(jù)中的一種或者多種:所述可移動電子設(shè)備的運動軌跡、所述可移動電子設(shè)備的運動軌跡姿態(tài)、當前已構(gòu)建的地圖信息。數(shù)據(jù)傳輸單元303用于當滿足第一預(yù)定條件時,向所述宿主端發(fā)送所述數(shù)據(jù)。其中如上文中所述,這里所述的第一預(yù)定條件是指數(shù)據(jù)傳輸單元303接收到所述宿主端發(fā)送的數(shù)據(jù)更新請求。當然,可替代地,可移動電子設(shè)備300還可以進一步包括計時器305。圖3中以虛線框示出計時器305,以表示其非必要部件。在這種情況下,所述第一預(yù)定條件可以是指計時器305被觸發(fā)。會話結(jié)束單元304用于當滿足第二預(yù)定條件時,結(jié)束本次會話并清空所述數(shù)據(jù)。當滿足第二預(yù)定條件時,所述會話發(fā)送單元向宿主端發(fā)送下一個會話請求,并且所述會話與所述下一個會話之間存在時間重疊。另外,數(shù)據(jù)傳輸單元303在會話結(jié)束單元304清空所述數(shù)據(jù)之前,將所述會話時段內(nèi)的尚未發(fā)送給所述宿主端的所述數(shù)據(jù)繼續(xù)發(fā)送給所述宿主端。如上文中所述,這里的第二預(yù)定條件是指由于所述可移動電子設(shè)備的硬件配置限制,除非清空所述數(shù)據(jù),否則所述可移動電子設(shè)備無法再繼續(xù)進行所述即時定位與地圖構(gòu)建。接下來,將參照圖4描述根據(jù)本發(fā)明實施例系統(tǒng)中包括的宿主端的配置的框圖。如圖4所示,作為宿主端的信息處理設(shè)備400與一個或者多個可移動電子設(shè)備(為了便于圖示,圖4中僅示出了一個可移動電子設(shè)備)配合,用于一未知環(huán)境的即時定位與地圖構(gòu)建。設(shè)備400包括會話接收單元401、數(shù)據(jù)接收單元402、存儲單元403和處理單元404。會話接收單元401用于等待所述可移動電子設(shè)備發(fā)送的會話請求,并接受所述會話請求。數(shù)據(jù)接收單元402用于接收所述可移動電子設(shè)備發(fā)送來的與所述即時定位與地圖構(gòu)建相關(guān)的數(shù)據(jù)。存儲單元403用于存儲所述數(shù)據(jù)。所述數(shù)據(jù)是通過可移動電子設(shè)備在所述未知環(huán)境中移動并進行所述即時定位與地圖構(gòu)建而獲得的。處理單元404用于處理所述數(shù)據(jù)。如上文中所述,具體來說,處理單元404整合所接收到的所有所述數(shù)據(jù),以完成所述未知環(huán)境的地圖構(gòu)建。另外,設(shè)備400還可以進一步包括更新請求發(fā)送單元405,用于在接受所述會話請求之后以及接收所述可移動電子設(shè)備發(fā)送來的所述數(shù)據(jù)的步驟之前,向所述可移動電子設(shè)備發(fā)送一數(shù)據(jù)更新請求。由于可移動電子設(shè)備300和作為宿主端的信息處理設(shè)備400的操作完全與之前所述的信息處理方法對應(yīng),因此為了簡明起見,這里對其具體細節(jié)不再贅述。在上文中,已經(jīng)參照附圖描述根據(jù)本發(fā)明實施例的即時定位與地圖構(gòu)建系統(tǒng)和方法。由于本發(fā)明的方案基于回話進行,因此可以在存儲容量和計算性能兩個方面都得到改進,適于長時間、大范圍的地圖構(gòu)建和定位。需要說明的是,在本說明書中,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括......”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。最后,還需要說明的是,上述一系列處理不僅包括以這里所述的順序按時間序列執(zhí)行的處理,而且包括并行或分別地、而不是按時間順序執(zhí)行的處理。通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的硬件平臺的方式來實現(xiàn),當然也可以全部通過軟件來實施?;谶@樣的理解,本發(fā)明的技術(shù)方案對背景技術(shù)做出貢獻的全部或者部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如ROM/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例或者實施例的某些部分所述的方法。以上對本發(fā)明進行了詳細介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。