本技術(shù)涉及人工智能,尤其涉及一種定位建圖方法、裝置、機(jī)器人、存儲(chǔ)介質(zhì)和程序產(chǎn)品。
背景技術(shù):
1、隨著機(jī)器人技術(shù)的不斷發(fā)展,各式各樣的移動(dòng)型機(jī)器人已經(jīng)在人們的生活工作中普及,如掃地機(jī)器人、陪伴機(jī)器人、巡檢機(jī)器人等。機(jī)器人在移動(dòng)過(guò)程中,會(huì)基于即時(shí)定位建圖(simultaneous?localization?and?mapping,slam)技術(shù)進(jìn)行自主導(dǎo)航,slam的核心思想是同時(shí)進(jìn)行定位(估計(jì)機(jī)器人位姿)和建圖(構(gòu)建環(huán)境地圖),兩者相互依賴、相互優(yōu)化。在基于激光雷達(dá)的slam方案中,機(jī)器人通過(guò)旋轉(zhuǎn)機(jī)構(gòu)帶動(dòng)激光雷達(dá)勻速旋轉(zhuǎn),同時(shí)激光雷達(dá)的激光源以固定頻率發(fā)射脈沖線束來(lái)測(cè)距,實(shí)現(xiàn)激光雷達(dá)所在平面的掃描,激光雷達(dá)旋轉(zhuǎn)一周,就生成一幀點(diǎn)云數(shù)據(jù)(即雷達(dá)幀),機(jī)器人根據(jù)雷達(dá)幀進(jìn)行實(shí)時(shí)定位、建圖,使得機(jī)器人實(shí)現(xiàn)向目標(biāo)點(diǎn)的移動(dòng)。
2、在實(shí)際應(yīng)用過(guò)程中,移動(dòng)型機(jī)器人往往處于勻速或變速運(yùn)動(dòng)狀態(tài),當(dāng)機(jī)器人的運(yùn)動(dòng)速度和加速度比較大時(shí),機(jī)器人的定位建圖效果會(huì)變差。
技術(shù)實(shí)現(xiàn)思路
1、鑒于上述問(wèn)題,本技術(shù)提供了一種定位建圖方法、裝置、機(jī)器人、存儲(chǔ)介質(zhì)和程序產(chǎn)品,以提高機(jī)器人的定位建圖效果。具體方案如下:
2、本技術(shù)第一方面提供一種定位建圖方法,應(yīng)用于機(jī)器人,所述方法包括:
3、每采集到一個(gè)初始雷達(dá)幀,基于所述機(jī)器人的性能指標(biāo)確定目標(biāo)幀長(zhǎng)度;所述目標(biāo)幀長(zhǎng)度大于或等于所述初始雷達(dá)幀的長(zhǎng)度;所述性能指標(biāo)包括以下至少一種:表征所述機(jī)器人的運(yùn)動(dòng)能力的第一類指標(biāo),表征所述機(jī)器人的計(jì)算能力的第二類指標(biāo),表征所述機(jī)器人的定位能力的第三類指標(biāo);
4、獲得所述目標(biāo)幀長(zhǎng)度的目標(biāo)雷達(dá)幀;其中,所述目標(biāo)雷達(dá)幀為當(dāng)前采集到的所述初始雷達(dá)幀,或者,所述目標(biāo)雷達(dá)幀由當(dāng)前采集到的所述初始雷達(dá)幀,以及前一次采集到的初始雷達(dá)幀中的部分點(diǎn)構(gòu)成;
5、基于所述目標(biāo)雷達(dá)幀進(jìn)行定位、建圖。
6、在一種可能的實(shí)現(xiàn)中,所述第一類指標(biāo)包括:所述機(jī)器人的運(yùn)動(dòng)速度或加速度。
7、在一種可能的實(shí)現(xiàn)中,所述第二類指標(biāo)包括如下至少一項(xiàng):
8、所述機(jī)器人的處理器占用率、內(nèi)存占用率。
9、在一種可能的實(shí)現(xiàn)中,所述第三類指標(biāo)包括:所述機(jī)器人前一次定位的定位結(jié)果置信度。
10、在一種可能的實(shí)現(xiàn)中,所述目標(biāo)幀長(zhǎng)度在預(yù)設(shè)長(zhǎng)度范圍內(nèi);所述預(yù)設(shè)長(zhǎng)度范圍的最小值為所述初始雷達(dá)幀的長(zhǎng)度;
11、在所述性能指標(biāo)包括所述機(jī)器人的運(yùn)動(dòng)速度或加速度的情況下,所述目標(biāo)幀長(zhǎng)度在所述預(yù)設(shè)長(zhǎng)度范圍內(nèi)與所述運(yùn)動(dòng)速度或加速度正相關(guān);
12、在所述性能指標(biāo)包括所述機(jī)器人的處理器占用率的情況下,所述目標(biāo)幀長(zhǎng)度在所述預(yù)設(shè)長(zhǎng)度范圍內(nèi)與所述處理器占用率負(fù)相關(guān);
13、在所述性能指標(biāo)包括所述機(jī)器人的內(nèi)存占用率的情況下,所述目標(biāo)幀長(zhǎng)度在所述預(yù)設(shè)長(zhǎng)度范圍內(nèi)與所述內(nèi)存占用率負(fù)相關(guān);
14、在所述性能指標(biāo)包括所述機(jī)器人的定位結(jié)果置信度的情況下,所述目標(biāo)幀長(zhǎng)度在所述預(yù)設(shè)長(zhǎng)度范圍內(nèi)與所述定位結(jié)果置信度負(fù)相關(guān)。
15、在一種可能的實(shí)現(xiàn)中,所述基于所述機(jī)器人的性能指標(biāo)確定目標(biāo)幀長(zhǎng)度,包括:
16、基于所述性能指標(biāo),利用預(yù)設(shè)的長(zhǎng)度計(jì)算策略計(jì)算幀長(zhǎng)度;
17、根據(jù)計(jì)算得到的幀長(zhǎng)度與所述預(yù)設(shè)長(zhǎng)度范圍的關(guān)聯(lián)關(guān)系確定所述目標(biāo)幀長(zhǎng)度。
18、在一種可能的實(shí)現(xiàn)中,所述根據(jù)計(jì)算得到的幀長(zhǎng)度與所述預(yù)設(shè)長(zhǎng)度范圍的關(guān)聯(lián)關(guān)系確定所述目標(biāo)幀長(zhǎng)度,包括:
19、如果計(jì)算得到的幀長(zhǎng)度小于所述預(yù)設(shè)長(zhǎng)度范圍的最小值,確定所述目標(biāo)幀長(zhǎng)度為所述預(yù)設(shè)長(zhǎng)度范圍的最小值;
20、如果計(jì)算得到的幀長(zhǎng)度大于所述預(yù)設(shè)長(zhǎng)度范圍的最大值,確定所述目標(biāo)幀長(zhǎng)度為所述預(yù)設(shè)長(zhǎng)度范圍的最大值;
21、如果計(jì)算得到的幀長(zhǎng)度在所述預(yù)設(shè)長(zhǎng)度范圍內(nèi),確定所述目標(biāo)幀長(zhǎng)度為計(jì)算得到的幀長(zhǎng)度。
22、在一種可能的實(shí)現(xiàn)中,在基于所述機(jī)器人的性能指標(biāo)確定目標(biāo)幀長(zhǎng)度之前,還包括:
23、將采集到的初始雷達(dá)幀緩存到內(nèi)存隊(duì)列中;
24、所述獲得所述目標(biāo)幀長(zhǎng)度的目標(biāo)雷達(dá)幀,包括:
25、在所述內(nèi)存隊(duì)列中,從最后緩存到所述內(nèi)存隊(duì)列中的雷達(dá)幀開(kāi)始獲取所述目標(biāo)幀長(zhǎng)度的點(diǎn)云數(shù)據(jù)作為所述目標(biāo)雷達(dá)幀。
26、在一種可能的實(shí)現(xiàn)中,所述獲得所述目標(biāo)幀長(zhǎng)度的目標(biāo)雷達(dá)幀,包括:
27、如果所述目標(biāo)幀長(zhǎng)度等于所述初始雷達(dá)幀的長(zhǎng)度,所述目標(biāo)雷達(dá)幀為當(dāng)前采集到的所述初始雷達(dá)幀;
28、如果所述目標(biāo)幀長(zhǎng)度大于所述初始雷達(dá)幀的長(zhǎng)度,所述目標(biāo)雷達(dá)幀由當(dāng)前采集到的所述初始雷達(dá)幀,以及前一次采集到的初始雷達(dá)幀中的部分點(diǎn)構(gòu)成。
29、本技術(shù)第二方面提供一種定位建圖裝置,應(yīng)用于機(jī)器人,所述裝置包括:
30、自適應(yīng)幀長(zhǎng)確定模塊,用于每采集到一個(gè)初始雷達(dá)幀,基于所述機(jī)器人的性能指標(biāo)確定目標(biāo)幀長(zhǎng)度;所述目標(biāo)幀長(zhǎng)度大于或等于所述初始雷達(dá)幀的長(zhǎng)度;所述性能指標(biāo)包括以下至少一種:表征所述機(jī)器人的運(yùn)動(dòng)能力的第一類指標(biāo),表征所述機(jī)器人的計(jì)算能力的第二類指標(biāo);
31、獲得模塊,獲得所述目標(biāo)幀長(zhǎng)度的目標(biāo)雷達(dá)幀;其中,所述目標(biāo)雷達(dá)幀為當(dāng)前采集到的所述初始雷達(dá)幀,或者,所述目標(biāo)雷達(dá)幀由當(dāng)前采集到的所述初始雷達(dá)幀,以及前一次采集到的初始雷達(dá)幀中的部分點(diǎn)構(gòu)成;
32、定位建圖模塊,用于基于所述目標(biāo)雷達(dá)幀進(jìn)行定位、建圖。
33、本技術(shù)第三方面提供一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)可讀指令,當(dāng)所述計(jì)算機(jī)可讀指令在電子設(shè)備上運(yùn)行時(shí),使得所述電子設(shè)備實(shí)現(xiàn)上述第一方面或第一方面任一實(shí)現(xiàn)方式的定位建圖方法。
34、本技術(shù)第四方面提供一種機(jī)器人,包括激光雷達(dá)、至少一個(gè)處理器和與所述處理器連接的存儲(chǔ)器,其中:
35、所述激光雷達(dá)用于采集初始雷達(dá)幀;
36、所述存儲(chǔ)器用于存儲(chǔ)計(jì)算機(jī)程序;
37、所述處理器用于執(zhí)行所述計(jì)算機(jī)程序,以使所述電子設(shè)備能夠?qū)崿F(xiàn)上述第一方面或第一方面任一實(shí)現(xiàn)方式的定位建圖方法。
38、本技術(shù)第五方面提供一種計(jì)算機(jī)存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)承載有一個(gè)或多個(gè)計(jì)算機(jī)程序,當(dāng)所述一個(gè)或多個(gè)計(jì)算機(jī)程序被電子設(shè)備執(zhí)行時(shí),能夠使所述電子設(shè)備上述第一方面或第一方面任一實(shí)現(xiàn)方式的定位建圖方法。
39、借由上述技術(shù)方案,本技術(shù)提供的定位建圖方法、裝置、機(jī)器人、存儲(chǔ)介質(zhì)和程序產(chǎn)品,每采集到一個(gè)初始雷達(dá)幀,基于機(jī)器人的性能指標(biāo)確定目標(biāo)幀長(zhǎng)度;該目標(biāo)幀長(zhǎng)度大于或等于初始雷達(dá)幀的長(zhǎng)度,性能指標(biāo)包括以下至少一種:表征機(jī)器人的運(yùn)動(dòng)能力的第一類指標(biāo),表征機(jī)器人的計(jì)算能力的第二類指標(biāo);獲得目標(biāo)幀長(zhǎng)度的目標(biāo)雷達(dá)幀;其中,目標(biāo)雷達(dá)幀為當(dāng)前采集到的初始雷達(dá)幀,或者,目標(biāo)雷達(dá)幀由當(dāng)前采集到的初始雷達(dá)幀,以及前一次采集到的初始雷達(dá)幀中的部分點(diǎn)構(gòu)成;基于目標(biāo)雷達(dá)幀進(jìn)行定位、建圖。也就是說(shuō),本技術(shù)不再直接利用采集到的初始雷達(dá)幀進(jìn)行定位、建圖,而是根據(jù)機(jī)器人的性能指標(biāo)自適應(yīng)調(diào)整用于定位建圖的雷達(dá)幀的長(zhǎng)度,可以在一些情況下提高用于定位建圖的雷達(dá)幀的長(zhǎng)度,從而達(dá)到提高用于定位建圖的雷達(dá)幀的點(diǎn)云分辨率的效果,進(jìn)而提高機(jī)器人的定位精度和建圖效果。