一種室內(nèi)定位方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明實(shí)施例涉及導(dǎo)航技術(shù),尤其涉及一種室內(nèi)定位方法及裝置。
【背景技術(shù)】
[0002]隨著電子技術(shù)和計算機(jī)技術(shù)的快速發(fā)展及機(jī)器人定位精度的不斷提高,智能移動機(jī)器人的應(yīng)用越來越廣泛。
[0003]目前,一種實(shí)現(xiàn)室內(nèi)導(dǎo)航的方式是預(yù)先在室內(nèi)布置無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn),以形成無線傳感器網(wǎng)絡(luò)。根據(jù)無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的數(shù)據(jù)構(gòu)建全局拓?fù)湟苿拥貓D。該方法需要預(yù)先鋪設(shè)相當(dāng)數(shù)量的無線傳感器,必然會增加投入的研發(fā)成本。并且,根據(jù)這種方式獲得的地圖必然會因缺少未設(shè)置傳感器位置的信息而不完整,進(jìn)而,無法為室內(nèi)導(dǎo)航提供精確的導(dǎo)航地圖。另一種實(shí)現(xiàn)室內(nèi)導(dǎo)航的方式是通過同步定位與地圖構(gòu)建(SLAM)技術(shù)描繪室內(nèi)環(huán)境,根據(jù)傳感器采集的數(shù)據(jù)對機(jī)器人的位姿進(jìn)行粗略計算,再結(jié)合SLAM算法進(jìn)行精細(xì)定位,實(shí)現(xiàn)機(jī)器人定位和導(dǎo)航。但是,由于采用SLAM算法將采集的環(huán)境數(shù)據(jù)與室內(nèi)整體環(huán)境數(shù)據(jù)進(jìn)行匹配需要進(jìn)行大量的迭代運(yùn)算,算法的時間復(fù)雜度較高,進(jìn)而不利于機(jī)器人實(shí)時定位。同時,SLAM算法自身在數(shù)據(jù)匹配過程中存在累計誤差,使定位精度和導(dǎo)航的準(zhǔn)確性均降低。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種室內(nèi)定位方法及裝置,以實(shí)現(xiàn)精準(zhǔn)定位的目的,降低SLAM算法在匹配上的時間復(fù)雜度及累計誤差。
[0005]第一方面,本發(fā)明實(shí)施例提供了一種室內(nèi)定位方法,包括:
[0006]確定估計位姿,根據(jù)已獲得的室內(nèi)地圖庫與所述估計位姿確定局部地圖庫;
[0007]將采集到的當(dāng)前幀激光雷達(dá)數(shù)據(jù)與上一幀激光雷達(dá)數(shù)據(jù)進(jìn)行匹配確定第一位姿;
[0008]在所述局部地圖庫中獲得與所述第一位姿的偏移量最小的位姿,將所述當(dāng)前幀激光雷達(dá)數(shù)據(jù)與所述偏移量最小的位姿對應(yīng)的激光雷達(dá)數(shù)據(jù)進(jìn)行匹配確定第二位姿;
[0009]將所述第一位姿與所述第二位姿中匹配誤差較小的一個位姿確定為精確位姿。
[0010]第二方面,本發(fā)明實(shí)施例還提供了一種室內(nèi)定位裝置,該裝置包括:
[0011]定位地圖確定單元,用于確定估計位姿,根據(jù)已獲得的室內(nèi)地圖庫與所述估計位姿確定局部地圖庫;
[0012]第一位姿確定單元,用于將采集到的當(dāng)前幀激光雷達(dá)數(shù)據(jù)與上一幀激光雷達(dá)數(shù)據(jù)進(jìn)行匹配確定第一位姿;
[0013]第二位姿確定單元,用于在所述局部地圖庫中獲得與所述第一位姿的偏移量最小的位姿,將所述當(dāng)前幀激光雷達(dá)數(shù)據(jù)與所述偏移量最小的位姿對應(yīng)的激光雷達(dá)數(shù)據(jù)進(jìn)行匹配確定第二位姿;
[0014]精確位姿確定單元,用于將所述第一位姿與所述第二位姿中匹配誤差較小的一個位姿確定為精確位姿。
[0015]本發(fā)明通過確定估計位姿,根據(jù)已獲得的室內(nèi)地圖庫與所述估計位姿確定局部地圖庫;將采集到的當(dāng)前幀激光雷達(dá)數(shù)據(jù)與上一幀激光雷達(dá)數(shù)據(jù)進(jìn)行匹配確定第一位姿;在所述局部地圖庫中獲得與所述第一位姿的偏移量最小的位姿,將所述當(dāng)前幀激光雷達(dá)數(shù)據(jù)與所述偏移量最小的位姿對應(yīng)的激光雷達(dá)數(shù)據(jù)進(jìn)行匹配確定第二位姿;將所述第一位姿與所述第二位姿中匹配誤差較小的一個位姿確定為精確位姿。本發(fā)明解決因SLAM算法的計算量大導(dǎo)致算法的時間復(fù)雜度較高的問題,以及,通過將第一位姿與第二位姿進(jìn)行比較,去掉匹配誤差較大的數(shù)據(jù),限制了SLAM算法自身的累計誤差,實(shí)現(xiàn)了快速精準(zhǔn)定位的目的。
【附圖說明】
[0016]圖1是本發(fā)明實(shí)施例一中的一種室內(nèi)定位方法的流程圖;
[0017]圖2是本發(fā)明實(shí)施例二中的一種室內(nèi)定位方法中數(shù)據(jù)處理示意圖;
[0018]圖3是本發(fā)明實(shí)施例三中的一種室內(nèi)定位裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0019]下面結(jié)合附圖和實(shí)施例對本發(fā)明作進(jìn)一步的詳細(xì)說明??梢岳斫獾氖?,此處所描述的具體實(shí)施例僅僅用于解釋本發(fā)明,而非對本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
[0020]實(shí)施例一
[0021]圖1為本發(fā)明實(shí)施例一提供的室內(nèi)定位方法的流程圖,本實(shí)施例可適用于快速精確定位機(jī)器人位置的情況,該方法可以由室內(nèi)定位裝置來執(zhí)行,具體包括如下步驟:
[0022]步驟110、確定估計位姿,根據(jù)已獲得的室內(nèi)地圖庫與所述估計位姿確定局部地圖庫。
[0023]其中,為了確定機(jī)器人在平面中的位置,建立二維平面坐標(biāo)系。以機(jī)器人在室內(nèi)環(huán)境中運(yùn)動的運(yùn)動起點(diǎn)作為坐標(biāo)原點(diǎn),以機(jī)器人開始運(yùn)動時的正前方作為X軸的正方向,即將與X軸重合的機(jī)器人位置的方向角記為0°,順時針方向?yàn)樨?fù),逆時針方向?yàn)檎瑠A角范圍是-180°至180°。通過設(shè)置于機(jī)器人上的測速編碼器及加速度計確定機(jī)器人的當(dāng)前位置(Xo,Yo),通過陀螺儀及電子羅盤確定機(jī)器人的當(dāng)前位置和室內(nèi)地圖庫原點(diǎn)(坐標(biāo)原點(diǎn))的連線與父軸正方向的夾角00,進(jìn)而,可以估計機(jī)器人的當(dāng)前位姿為%,¥(),0())。采用如陀螺儀及電子羅盤等同類傳感器采集數(shù)據(jù),進(jìn)行數(shù)據(jù)融合可以減少測量誤差。
[0024]在確定估計位姿之前,需要獲取室內(nèi)地圖庫。具體可以為控制機(jī)器人于室內(nèi)的運(yùn)動起點(diǎn)開始環(huán)繞室內(nèi)運(yùn)動一周,與此同時,通過機(jī)器人上設(shè)置的激光雷達(dá)按照預(yù)設(shè)的周期值周期性的發(fā)射激光雷達(dá)數(shù)據(jù),再通過機(jī)器人上設(shè)置的接收器接收反射回的激光雷達(dá)數(shù)據(jù)。機(jī)器人可以根據(jù)發(fā)射的激光雷達(dá)數(shù)據(jù)和反射回的激光雷達(dá)數(shù)據(jù)確定室內(nèi)輪廓,根據(jù)所述室內(nèi)輪廓繪制室內(nèi)地圖庫。
[0025]機(jī)器人根據(jù)上述估計的初始位姿與室內(nèi)地圖庫進(jìn)行匹配,確定所述初始位姿及其附近的坐標(biāo)點(diǎn)組成的局部地圖庫。具體可以是獲取室內(nèi)地圖庫中與所述估計位姿的距離偏移量不超過設(shè)定閾值的位姿,確定距離偏移量不超過設(shè)定閾值的各個位姿對應(yīng)的激光雷達(dá)數(shù)據(jù)。例如,估計初始位姿是(1111,2111,30°),選擇與初始位姿包括的位置分量的距離偏移量為(±0.5m,±0.5m)的坐標(biāo)點(diǎn)的激光雷達(dá)的數(shù)據(jù)組成局部估計地圖庫。
[0026]為了進(jìn)一步精準(zhǔn)確定局部地圖庫,將當(dāng)前采集的激光雷達(dá)數(shù)據(jù)與上述局部估計地圖庫中各個位姿對應(yīng)的激光雷達(dá)數(shù)據(jù)進(jìn)行匹配,根據(jù)各個位姿對應(yīng)的激光雷達(dá)數(shù)據(jù)中與所述當(dāng)前采集的激光雷達(dá)數(shù)據(jù)相匹配的激光雷達(dá)數(shù)據(jù)確定局部地圖庫。例如,機(jī)器人將當(dāng)前接收到的激光雷達(dá)數(shù)據(jù)依次與所述局部估計地圖庫中各個坐標(biāo)點(diǎn)對應(yīng)的激光雷達(dá)數(shù)據(jù)進(jìn)行匹配。在匹配誤差滿足設(shè)定規(guī)則時,確定當(dāng)前接收到的激光雷達(dá)數(shù)據(jù)與局部估計地圖庫中該坐標(biāo)點(diǎn)對應(yīng)的激光雷達(dá)數(shù)據(jù)匹配成功。相應(yīng)地,將匹配成功的該坐標(biāo)點(diǎn)確定為匹配坐標(biāo)點(diǎn),根據(jù)所有匹配坐標(biāo)點(diǎn)確定局部地圖庫,從而減少了同步定位與地圖構(gòu)建(SLAM)算法進(jìn)行匹配運(yùn)算的數(shù)據(jù)量,加快了匹配速度。
[0027]步驟120、將采集到的當(dāng)前幀激光雷達(dá)數(shù)據(jù)與上一幀激光雷達(dá)數(shù)據(jù)進(jìn)行匹配確定第一位姿。
[0028]機(jī)器人將采集到的當(dāng)前幀激光雷達(dá)數(shù)據(jù)與相鄰的上一幀激光雷達(dá)數(shù)據(jù)進(jìn)行匹配確定第一距離偏移量及第一角度偏移量。根據(jù)所述第一距離偏移量和第一角度偏移量調(diào)整所述上一幀雷達(dá)數(shù)據(jù)對應(yīng)的位姿確定第一位姿(XhY1J1)13在機(jī)器人圖像采樣精度足夠高的前提下,機(jī)器