本申請實施例涉及機器人,尤其涉及一種懸崖邊界確定方法、機器人及計算機可讀存儲介質。
背景技術:
1、掃地機器人在跌落臺或者樓梯邊緣沿邊(沿墻)時,地檢傳感器可檢測到前方的懸崖區域,掃地機會后退,逆時針旋轉90度,往前走一小段距離后停止,順時針旋轉90度,往前走,如果繼續檢測到懸崖,繼續后退重復以上動作,直至探索完整個懸崖的邊界,比如樓梯、跌落臺的邊緣,繼續之前的正常清掃。
2、這種通過地檢一次次檢測前方是否有懸崖,直到把所有的懸崖邊界檢測完整的方式存在以下缺陷:一方面,該探索方式耗時長,每次往前走只能判斷正前方的一個位置點是否有懸崖。如果懸崖邊緣特別長,探索的時間會加長。另一方面,容易重復探索某個位置,掃地機器人在跌落臺上,掃地機器人探索過程漏掉了一小段區域沒有發現懸崖,后續掃地機清掃時,會回到該位置再次進行探索,從而花費更多的懸崖邊界確認時間。
技術實現思路
1、本申請實施例的一個目的旨在提供一種懸崖邊界確定方法、機器人及計算機可讀存儲介質,以解決相關技術提供的掃地機器人在探索懸崖邊界時容易出現的耗時長、同一位置重復探索的技術問題。
2、在第一方面,本申請實施例提供一種懸崖邊界確定方法,包括:
3、探索環境邊界并構建環境地圖,所述環境地圖包括基于懸崖地形特征提取的多個懸崖邊界點,基于懸崖地形的至少兩個相鄰探索動作之間的行進距離被配置為大于預設單位行進步長;
4、對所有所述懸崖邊界點進行聚類,以得到至少一個聚類集合;
5、根據各個所述聚類集合確定所述環境地圖上的懸崖邊界缺失區域;
6、對所述懸崖邊界缺失區域填充所述懸崖邊界點。
7、可選地,所述對所有所述懸崖邊界點進行聚類包括:
8、以任務邊界點為錨點,在預設搜索范圍內搜索鄰近邊界點,所述任務邊界點為被選取的未被標記的其中一個所述懸崖邊界點,所述鄰近邊界點為處于所述預設搜索范圍內未被標記的其它所述懸崖邊界點;
9、若搜索到所述鄰近邊界點,將所述任務邊界點添加至聚類容器并標記,以所述鄰近邊界點作為新的所述任務邊界點繼續搜索;
10、若未搜索到所述鄰近邊界點,將所述任務邊界點添加至所述聚類容器并標記,完成一次聚類,并基于所述聚類容器內的所有所述懸崖邊界點建立對應的所述聚類集合,然后從未標記的所有所述懸崖邊界點中選取新的所述任務邊界點,直至所有所述懸崖邊界點被標記。
11、可選地,所述以任務邊界點為錨點,在預設搜索范圍內搜索鄰近邊界點包括:
12、以所述任務邊界點為錨點,在第一預設搜索范圍內搜索所述鄰近邊界點;
13、若在所述第一預設搜索范圍內未搜索到鄰近邊界點,則依次擴大搜索范圍繼續搜索,直至在第二預設搜索范圍內發現所述鄰近邊界點或在最大預設搜索范圍內確認不存在所述鄰近邊界點。
14、可選地,所述根據各個所述聚類集合確定所述環境地圖上的懸崖邊界缺失區域包括:
15、獲取目標聚類集合中每相鄰兩個所述懸崖邊界點在所述環境地圖上的連接線段,所述至少一個所述聚類集合中的每一個依次作為所述目標聚類集合;
16、確定每個所述連接線段內缺失的坐標點,以得到所述懸崖邊界缺失區域。
17、可選地,所述獲取目標聚類集合中每相鄰兩個所述懸崖邊界點在所述環境地圖上的連接線段包括:
18、根據所述目標聚類集合中的各個所述懸崖邊界點得到在所述環境地圖上的擬合特征;
19、建立匹配所述擬合特征幾何方向的排序規則,所述排序規則用于確定每個所述連接線段的獲取順序;
20、基于所述排序規則,先后獲取目標聚類集合中每相鄰兩個所述懸崖邊界點在所述環境地圖上的連接線段。
21、可選地,所述根據所述目標聚類集合中的各個所述懸崖邊界點得到在所述環境地圖上的擬合特征包括:
22、對所述目標聚類集合中的所述懸崖邊界點采用最小二乘法獲得對應的擬合線;
23、根據所述目標聚類集合中所述懸崖邊界點確定所述擬合線的邊界,以得到對應的擬合線段;
24、將所述擬合線段疊加至所述環境地圖中,以得到所述目標聚類集合的所述擬合特征。
25、可選地,在對所述懸崖邊界缺失區域填充所述懸崖邊界點之后,還包括:
26、確定滿足相鄰條件的每兩個所述擬合特征的延長線交點,所述相鄰條件為兩個所述擬合特征存在延長線交點,并且兩者之間的距離小于或等于預設閾值;
27、根據所述延長線交點確定對應的兩個所述擬合特征之間的預測懸崖邊界;
28、對所述延長線交點及所述預測懸崖邊界填充所述懸崖邊界點。
29、可選地,所述確定滿足相鄰條件的每兩個所述擬合特征的延長線交點包括:
30、判斷任意兩個所述擬合特征的端點之間的曼哈頓距離是否小于或等于所述預設閾值;
31、若所述曼哈頓距離小于或等于所述預設閾值,則確定兩個所述擬合特征滿足所述相鄰條件并獲取兩個所述擬合特征對應的延長線交點;
32、若所述曼哈頓距離大于所述預設閾值,則確定兩個所述擬合特征未滿足所述相鄰條件。
33、在第二方面,本申請實施例提供一種機器人,包括存儲器及處理器,所述存儲器連接至所述處理器,所述處理器用于執行存儲在所述存儲器中的一個或多個計算機程序,所述處理器在執行所述一個或多個計算機程序時,使得所述機器人實現如上述任一項所述的懸崖邊界確定方法。
34、在第三方面,本申請實施例提供一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機程序,所述計算機程序包括程序指令,所述程序指令當被處理器執行時使所述處理器執行如上述任一項所述的懸崖邊界確定方法。
35、本申請實施例可以實現如下技術效果:機器人首先探索環境邊界,構建環境地圖。環境地圖中包含基于懸崖地形特征提取的多個懸崖邊界點。機器人在完成一次探索任務后,提取已探索得到的懸崖邊界點,并對其進行聚類處理,以在環境地圖上得到懸崖邊界缺失區域,并對懸崖邊界區域進行填充,以得到完整的懸崖邊界數據。
1.一種懸崖邊界確定方法,其特征在于,包括:
2.根據權利要求1所述的懸崖邊界確定方法,其特征在于,所述對所有所述懸崖邊界點進行聚類包括:
3.根據權利要求2所述的懸崖邊界確定方法,其特征在于,所述以任務邊界點為錨點,在預設搜索范圍內搜索鄰近邊界點包括:
4.根據權利要求1所述的懸崖邊界確定方法,其特征在于,所述根據各個所述聚類集合確定所述環境地圖上的懸崖邊界缺失區域包括:
5.根據權利要求4所述的懸崖邊界確定方法,其特征在于,所述獲取目標聚類集合中每相鄰兩個所述懸崖邊界點在所述環境地圖上的連接線段包括:
6.根據權利要求1所述的懸崖邊界確定方法,其特征在于,所述根據所述目標聚類集合中的各個所述懸崖邊界點得到在所述環境地圖上的擬合特征包括:
7.根據權利要求6所述的懸崖邊界確定方法,其特征在于,在對所述懸崖邊界缺失區域填充所述懸崖邊界點之后,還包括:
8.根據權利要求7所述的懸崖邊界確定方法,其特征在于,所述確定滿足相鄰條件的每兩個所述擬合特征的延長線交點包括:
9.一種機器人,其特征在于,包括存儲器及處理器,所述存儲器連接至所述處理器,所述處理器用于執行存儲在所述存儲器中的一個或多個計算機程序,所述處理器在執行所述一個或多個計算機程序時,使得所述機器人實現如權利要求1-8任一項所述的懸崖邊界確定方法。
10.一種計算機可讀存儲介質,其特征在于,所述計算機可讀存儲介質存儲有計算機程序,所述計算機程序包括程序指令,所述程序指令當被處理器執行時使所述處理器執行如權利要求1-8任一項所述的懸崖邊界確定方法。