本发明涉及到机器人,具体而言,涉及到一种基于拓扑结构的全区域覆盖方法、装置、设备及介质。
背景技术:
1、随着智能扫地机器人的逐步普及,以及人们对生活质量的要求的不断提高,智能家居逐渐出现在人们的日常生活中,其中,尤其具有代表性的清扫机器人越来越受人们的喜爱。扫地机器人因为需要清理指定环境内的所有区域,因此需要优化的全覆盖路线来保证高效完成清扫任务。现有的扫地机器人由于地图探索先后顺序以及房间结构的限定等关系,不一定每次都能完成全区域覆盖的清扫,有时需要对区域进行补扫,降低了清扫机器人的路径规划效率和区域清扫效率。
技术实现思路
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、构建模块:用于根据所述清扫区域的先后关系,逐步构建拓扑关系结构;
36、清扫模块:用于基于所述拓扑关系结构,依次确定所述清扫区域的清扫顺序,并控制扫地机完成全区域覆盖清扫。
37、本申请还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
38、本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
39、在本申请中提供一种基于拓扑结构的全区域覆盖方法、装置、设备及介质,首先获取首个清扫区域,并控制扫地机完成所述首个清扫区域内的覆盖;当所述首个清扫区域完成覆盖后,获取所述首个清扫区域对应的待清扫区域信息;基于扫地机当前的位置以及所述待清扫区域信息,获取下一清扫区域;根据所述清扫区域的先后关系,逐步构建拓扑关系结构;基于所述拓扑关系结构,依次确定所述清扫区域的清扫顺序,并控制扫地机完成全区域覆盖清扫,以便机器人有针对性的高效完成全覆盖清扫工作,显著提升覆盖效率和提高清扫效率。
1.一种基于拓扑结构的全区域覆盖方法,其特征在于,所述方法包括:
2.根据权利要求1所述的一种基于拓扑结构的全区域覆盖方法,其特征在于,所述基于扫地机当前的位置以及所述待清扫区域信息,获取下一清扫区域,包括:
3.根据权利要求1所述的一种基于拓扑结构的全区域覆盖方法,其特征在于,所述基于扫地机当前的位置以及所述待清扫区域信息,获取下一清扫区域,包括:
4.根据权利要求1所述的一种基于拓扑结构的全区域覆盖方法,其特征在于,所述清扫区域的先后关系,包括:
5.根据权利要求4所述的一种基于拓扑结构的全区域覆盖方法,其特征在于,所述基于所述拓扑关系结构,依次确定所述清扫区域的清扫顺序,并控制扫地机完成全区域覆盖清扫,包括:
6.根据权利要求4所述的一种基于拓扑结构的全区域覆盖方法,其特征在于,所述基于所述拓扑关系结构,依次确定所述清扫区域的清扫顺序,并控制扫地机完成全区域覆盖清扫,包括:
7.根据权利要求1所述的一种基于拓扑结构的全区域覆盖方法,其特征在于,所述获取首个清扫区域,并控制扫地机完成所述首个清扫区域内的覆盖的步骤之后,包括:
8.一种基于拓扑结构的全区域覆盖装置,其特征在于,包括:
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述基于拓扑结构的全区域覆盖方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述基于拓扑结构的扫地机全区域覆盖的方法的步骤。