机器人智能分区方法、装置、机器人及存储介质与流程
未命名
07-12
阅读:101
评论:0
1.本发明属于机器人技术领域,尤其涉及一种机器人智能分区方法、装置、机器人及计算机可读存储介质。
背景技术:
2.机器人、拖地机器人、洗地机器人等清洁机器人是用于自动完成清扫工作的智能设备。例如家用清洁机器人,机器人在进行首次清扫时,会边清扫边对住家环境建立工作地图,符合一定条件时,会基于工作地图信息,对住家环境的房间进行自动分区。
3.具体地,现有技术中,机器人在对住家环境完成全局清扫后,在以下情况会进行整张工作地图的自动分区:(1)此前该住家环境工作地图未进行过分区;(2)在清扫的过程中,有未知区域的产生,此处的未知区域指的是工作地图中新增的一片或多片区域。
4.现有的自动分区方法主要是针对整张地图进行重新分区,导致存在如下问题:(1)对于同一住家环境,若环境中相比此前有物体搬动,此时地图只有局部变化,工作地图不会进行分区,会致使用户图形界面出现异常显示,如空白色块等,影响用户体验;(2)对于同一住家环境,在进行整张工作地图分区时,因为工作地图的局部变化,导致原有分区被打乱,进而使得用户针对该工作地图预先设置的机器人的吸力、喷水流量等工作参数失效。
技术实现要素:
5.第一方面,本发明提供一种机器人智能分区方法,旨在解决现有技术的机器人自动分区对已经分好的区进行重新分区,使得前后两次分区不一致,进而导致用户设置的机器人扫地工作参数失效的问题。
6.本发明实施例是这样实现的,一种机器人智能分区方法,所述方法包括:
7.获取机器人最近一次工作完成后的slam地图,并与分区地图进行比对,得到清扫区域中多出的至少一个新增区域的区域属性,以及新增区域的相邻区域的区域编号;
8.针对每一新增区域,判断所述区域属性是否符合预置的第一条件且所述区域编号是否符合预置的第二条件;
9.当判断所述区域属性符合所述第一条件且所述区域编号符合所述第二条件时,对新增区域进行局部分区。
10.更进一步地,所述对新增区域进行局部分区的步骤,包括:
11.获取所述slam地图中对应所述新增区域的局部地图数据,识别出所述局部地图数据中的线段;
12.判断所述线段的第一端是否与其他线段有交点,且距离所述线段的第二端的预设范围内是否有交点;
13.当判断所述线段的第一端与其他线段有交点时,且距离所述线段的第二端的预设范围内无交点时,将所述线段向所述第二端一侧延长,并在遇到障碍物后停止延长,得到所述新增区域的门槛线;
14.根据所述门槛线对所述新增区域进行区域填充,并更新至所述分区地图中。
15.更进一步地,识别出所述局部地图数据中的线段的步骤包括:
16.对所述局部地图数据做二值化处理,按照直线识别模型识别出二值化处理后所述局部地图数据中的线段。
17.更进一步地,所述针对每一新增区域,判断所述区域属性是否符合预置的第一条件且所述区域编号是否符合预置的第二条件的步骤之后,还包括:
18.当判断区域属性不符合所述第一条件或者所述区域编号不符合第二条件时,将新增区域与相邻区域合并,并更新所述分区地图。
19.第二方面,本发明提供一种机器人智能分区装置,所述装置包括:
20.新增区域获取模块,用于获取机器人最近一次工作完成后的slam地图,并与分区地图进行比对,得到清扫区域中多出的至少一个新增区域的区域属性,以及新增区域的相邻区域的区域编号;
21.第一判断模块,用于针对每一新增区域,判断所述区域属性是否符合预置的第一条件且所述区域编号是否符合预置的第二条件;
22.局部分区模块,用于当判断所述区域属性符合所述第一条件且所述区域编号符合所述第二条件时,对新增区域进行局部分区。
23.更进一步地,所述局部分区模块包括:
24.线段识别子模块,用于获取所述slam地图中对应所述新增区域的局部地图数据,识别出所述局部地图数据中的线段;
25.第一判断子模块,用于判断所述线段的第一端是否与其他线段有交点,且距离所述线段的第二端的预设范围内是否有交点;
26.门槛识别子模块,用于当判断所述线段的第一端与其他线段有交点时,且距离所述线段的第二端的预设范围内无交点时,将所述线段向所述第二端一侧延长,并在遇到障碍物后停止延长,得到所述新增区域的门槛线;
27.区域填充子模块,用于根据所述门槛线对所述新增区域进行区域填充,并更新至所述分区地图中。
28.更进一步地,所述局部分区模块还包括:
29.新增区域编号子模块,用于当判断所述线段的第一端与其他线段有交点,且距离所述线段的第二端的预设范围内有交点时,根据所述分区地图的编号规则给所述新增区域配置唯一区域编号并更新至所述分区地图中。
30.更进一步地,线段识别子模块包括:
31.线段识别单元,用于对所述局部地图数据做二值化处理,按照直线识别模型识别出二值化处理后所述局部地图数据中的线段。
32.第三方面,本发明提供一种机器人,所述机器人包括上述的机器人智能分区装置。
33.第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行上述的机器人智能分区方法。
34.本发明提供的机器人智能分区方法,通过获取机器人完成工作的slam地图,与分区地图进行比对,得到新增区域的区域属性和相邻区域的区域编号,判断区域属性和区域编号是否分别符合第一条件和第二条件,若是则进行智能分区。对于已经设置过机器人扫
地工作参数的环境地图,当环境发生变化时,无需较大程度地重置地图分区,避免了用户针对该环境地图设置的机器人扫地工作参数失效,提升了机器人的智能化水平,用户体验优秀。
附图说明
35.图1是本发明实施例提供的机器人智能分区方法的流程图;
36.图2是本发明实施例提供的机器人智能分区方法的又一流程图;
37.图3是本发明实施例提供的机器人智能分区装置的模块示意图;
38.图4是本发明实施例提供的机器人智能分区方法一个实施例识别出新增区域的地图示意图;
39.图5是本发明实施例提供的机器人智能分区方法一个实施例进行局部分区后的地图示意图。
具体实施方式
40.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
41.在本发明中如涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
42.本发明提供的机器人智能分区方法,对于已经设置过机器人扫地工作参数的环境地图,当环境发生变化时,无需较大程度地重置地图分区,避免了用户针对该环境地图设置的机器人扫地工作参数失效,提升了机器人的智能化水平,用户体验优秀。
43.实施例一
44.请参阅图1-2,是本发明提供的机器人智能分区方法的流程示意图,为了便于说明,仅示出了与本发明实施例相关的部分,该机器人智能分区方法包括:
45.步骤s10,获取机器人最近一次工作完成后的slam地图,并与分区地图进行比对,得到清扫区域中多出的至少一个新增区域的区域属性,以及新增区域的相邻区域的区域编号;
46.机器人智能分区方法应用于无需人员操作控制的自动机器人。
47.其中,在本发明实施例中,slam(simultaneous localization and mapping,即时定位与地图构建),slam相关技术在机器人领域的应用可以表现为,将一个机器人放入未知环境中的未知位置,在运动过程中通过重复观测到的地图特征(例如,墙角、屋内摆设等)定位自身位置和姿态,再根据自身位置增量式的构建地图,从而达到同时定位和地图构建的目的。slam地图所指的即为机器人通过上述过程完成一次清扫后所构建的环境地图。构建slam地图的一个目的在于使得机器人在进行清扫工作时,能够按照规划的路径无障碍物地
覆盖环境地图的所有区域。
48.可选地,以家用清洁机器人为例,机器人工作的场景为家庭住房,家庭住房一般由多个房间或厅堂构成,各个房间与厅堂之间由墙体或屋内摆设隔离,并开设有门洞以实现相互连通,对于机器人来说,各个房间或厅堂的环境参数不相同,因此需要适配不同的扫地工作参数,例如,清扫浴室时需要适配较强的除湿功能,清扫厨房时,则需要适配清除油污功能。因此,机器人通常根据环境地图进行分区,用户可以根据分区的结果,结合具体的清洁需要,配置机器人的扫地工作参数,以实现快捷、高效的清扫。本发明实施例中,分区地图所指的即为根据环境地图进行分区生成的地图数据。
49.在本发明实施例中,用户可以通过与机器人交互按照环境地图已经分好的区域,进行机器人扫地工作参数的配置,交互可以通过应用程序实现,具体为设备终端上所安装的应用程序,其中,该设备终端可以为智能终端、智能平板、遥控器等,其设备终端的应用程序可与机器人,或与机器人通信的云端服务器进行通信。
50.可选地,通过将slam地图与分区地图进行比对,可以得到清扫区域中多出的至少一个新增区域的区域属性,slam地图是机器人通过实际执行清扫工作同步构建得到的,包含环境中的未知区域,可通行区域,不可通行区域。而分区地图是将上一次清扫后slam地图按照房间格局进行分割后的栅格地图,每个栅格上都填写该位置所属的房间编号,当前slam地图上的可通行区域若无对应的房间编号,则该区域是上次清扫遗留的未知区域。通过对比slam地图和分区地图上同一位置的映射值,获取新增区域。例如:slam地图的映射值:0代表未知区域,1代表可通行区域,2代表不可通行区域,分区地图映射值:0-253代表房间编号,254代表未知区域,255代表不可通行区域。某区域slam地图上的映射值为1,若分区地图上的映射值为255或者254,则表示该区域为新增区域,若分区地图上的映射值为0-253(房间编号),则表示该区域不是新增区域。
51.其中,区域属性包括但不限于新增区域的长、宽、面积等表征新增区域区别性的属性,在此不做限定。需要说明的是,为了准确地划定新增区域,以缩小误差,减少运算量,可以设置尽可能多的区域属性。
52.通常,新增区域更多地位于各个有明确物理界限的分区(例如不同的房间)之间,将相邻分区连通的区域。
53.步骤s20,针对每一新增区域,判断所述区域属性是否符合预置的第一条件且所述区域编号是否符合预置的第二条件;
54.其中,本发明实施例中,判断是否符合第一条件可以通过将得到的新增区域的区域属性的具体数值与一个或一组预先设定的同一属性的阈值进行比较,若新增区域的区域属性大于该阈值,则判定为符合第一条件,继续第二条件的判断;而若新增区域的区域属性小于该阈值,则判定为不符合第一条件,执行步骤s21。
55.如前所述,判断是否符合第一条件可以通过将得到的新增区域的区域属性的具体数值与一个或一组预先设定的同一属性的阈值进行比较,其中,若新增区域的区域属性小于该阈值,则判定为不符合第一条件。
56.可以理解,新增区域的区域属性小于该阈值表明该新增区域所在环境地图中所占据的比例较小,可以将其与相邻区域进行合并,这样,无需改动原有的分区,避免导致用户预置的机器人扫地工作参数失效,同时对机器人完成清扫工作无影响。
57.本发明实施例中,判断是否符合第二条件可以通过比对与新增区域相邻的各个区域的编号是否一致,若新增区域的相邻区域编号一致,则判定为不符合第二条件,执行步骤s21。若区域属性符合第一条件且区域编号符合第二条件,执行步骤s30。
58.在一些实施例中,当判断区域属性不符合所述第一条件或者所述区域编号不符合第二条件时,执行步骤s21。
59.步骤s21,将新增区域与相邻区域合并,并更新所述分区地图。
60.如前所述,判断是否符合第二条件可以通过比对与新增区域相邻的各个区域的编号是否一致,其中,若新增区域的相邻区域编号一致,则判定为不符合第二条件。
61.可以理解,新增区域的相邻区域编号一致,则表明该新增区域的相邻区域具有相同的属性,对于机器人来说,可以采用相同的扫地工作参数对其清扫,因此,可以将该新增区域与其相邻区域进行合并,这样,无需改动原有的分区,避免导致用户预置的机器人扫地工作参数失效,同时对机器人完成清扫工作无影响。
62.步骤s30,对新增区域进行局部分区。
63.其中,本发明实施例中,进行第一条件和第二条件的判断可以看作是对原分区地图变化部分的识别和确认,其一个目的在于尽量提高确定度,缩小误差,减少运算量,过滤无需分区的区域,并将无需分区的新增区域并入相邻区域。
64.当新增区域通过第一条件和第二条件的判断时,表明该新增区域已不存在可以并入相邻区域的部分,因此,可以对新增区域进行局部分区。
65.在一些可能的实施例中,请参考图4,在图4中,不同区域设置有不同的编号,示例性地,以数字编号为例,其中,区域编号为0、1、2的区域为分区地图中已知区域,在清扫完成一遍后,多出图中
①
、
②
和
③
这三个区域部分,即
①
、
②
和
③
这三个区域就是新增区域。
66.示例性地,以第一条件为面积大于设定阈值,以及第二条件为相邻区域的编号不同为例,新增区域
①
的相邻区域包括编号1和编号255,其中,编号1可以看成是房间,编号255可以看成是墙壁,则新增区域
①
的相邻区域的区域编号满足第二条件,但是新增区域
①
面积太小,达不到设定阈值,因此不满足第一条件,可以将新增区域
①
与编号1区域合并。
67.新增区域
②
的面积大于设定阈值,满足第一条件,但是新增区域
②
被区域2包围,导致新增区域
②
的相邻区域编号相同,不满足第二条件,所以新增区域
②
与相邻区域(图4中编号为2的区域)合并,在实际实施过程中,可以将新增区域
②
填充跟相邻区域(图4中编号为2的区域)一样的颜色实现合并。
68.另外,新增区域
③
的面积足够大,满足第一条件,且新增区域
③
的相邻区域的编号不同,同时满足第二条件,则新增区域
③
就需要局部分区。
69.示例性地,局部分区后新增区域最终分区效果如图5所示,图5相比图4新增两个分区,分别是由新增区域
③
分区得到的编号为3和4两个分区,而新增区域
①
和新增区域
②
则分别并入到分区1和分区2中。在实际实施过程中,可以将各个分区填充跟相邻区域不同的颜色,以示区别。
70.本发明实施例提供的机器人智能分区方法,通过获取机器人完成清扫的slam地图,与分区地图进行比对,得到新增区域的区域属性和相邻区域的区域编号,判断区域属性和区域编号是否符合第一条件和第二条件,进而根据判断结果对新增区域进行智能分区。对于已经设置过机器人扫地工作参数的环境地图,当环境发生变化时,无需较大程度地重
置地图分区,避免了用户针对该环境地图设置的机器人扫地工作参数失效,提升了机器人的智能化水平,用户体验优秀。
71.实施例二
72.请参阅图1-2,是本发明提供的一种机器人智能分区方法的流程示意图,为了便于说明,仅示出了与本发明实施例相关的部分,其中本发明实施例二与实施例一的流程大抵相同,为简要描述,本发明实施例未提及之处,可参考实施例一中相应内容,该机器人智能分区方法中,对新增区域进行局部分区的步骤,包括:
73.步骤s31,获取slam地图中对应新增区域的局部地图数据,识别出局部地图数据中的线段;
74.本发明实施例提供对新增区域进行局部分区的一种方式,根据获取的新增区域的局部地图数据,可以进一步识别其中的线段,其中,本发明实施例中,局部地图中的线段可以看做是各个房间的墙体。
75.可选地,识别出局部地图数据中的线段可以通过对所述局部地图数据做二值化处理,按照直线识别模型识别出二值化处理后所述局部地图数据中的线段。
76.具体的,对局部地图数据做二值化处理包括下述步骤:
77.a、将局部地图数据转化为预设图片格式的图片,预设图片格式可选用现有图片格式。
78.b、获取图片中每个像素的像素值,判断图片中每个像素的像素值是否大于预设像素值。
79.c、若像素的像素值大于预设像素值,则将对应像素的颜色设置为第一颜色。若像素的像素值不大于预设像素值,则将对应像素的颜色设置为第二颜色。其中第一颜色表示室内的空白区域,第二颜色为室内墙体和障碍物的区域。作为选择,第一颜色为白色,第二颜色为黑色。
80.本实施例通过二值化处理将室内地图转换为仅包含第一颜色和第二颜色的图片,然后通过直线识别模型识别出二值化处理后局部地图数据中的线段可以看成是将第一颜色和第二颜色交界线识别为线段。
81.步骤s32,判断线段的第一端是否与其他线段有交点,且距离线段的第二端的预设范围内是否有交点;
82.在实施时,线段的第一端与其他线段有交点,可以看成线段所映射的墙体和其他线段映射的墙体相交,意味着交点为两侧墙体的交界处的墙角。当然,在其他实施例中,交点不局限于上述的两侧墙交界的墙角,线段还可以看成是其他物体,例如衣橱、屏风等,在此不做限定。
83.步骤s33,当线段的第一端与其他线段有交点的同时,距离线段的第二端的预设范围内无交点时,将线段向第二端一侧延长,并在遇到障碍物后停止延长,得到新增区域的门槛线。
84.可以理解,当判断距离线段的第二端的预设范围内有交点时,可以将该线段等同于步骤s31中识别的线段进行后续处理,亦即,该线段可直接视为各个分区的界线。
85.步骤s34,根据门槛线对新增区域进行区域填充,并更新至分区地图中。
86.根据映射新增区域的门槛线对新增区域进行填充,最终生成新增局部分区。
87.具体的,各个线段及其门槛线可以共同视为前述的分区界线。
88.线段之间有交点,则可表示该交点连接了两个墙体;进一步地,对于第一端与其他线段有交点的线段,再判断距离线段的第二端的预设范围内是否有交点,若无交点,则表示该墙体开设有门洞等连通区域,此时,将线段向第二端一侧延长,并在遇到障碍物后停止延长,得到门槛线,该门槛线可以表示门槛;识别墙体,并划定门槛之后,新增区域被分隔为若干区域,每个区域的边界均为由线段及其门槛线围成的闭合图形,每个区域都可以看作是一个房间,将房间进行编号或者填充不同的颜色即可与相邻房间进行区分。
89.可以理解,通过在原有的分区地图的基础上对新增区域进行填充更新新增局部区域,形成新的分区地图,这样可以不用太大改动原有的分区地图,尽量不破坏用户设置的扫地工作参数,以满足用户的清洁需求。
90.可以理解,对于一个单独的分区,可以根据分区地图的编号规则给新增区域配置唯一区域编号并更新至分区地图中,分区地图中每个独立的分区都对应设置有唯一的区域编号。
91.本发明实施例提供的机器人智能分区方法,通过识别新增区域的线段,并通过划定线段的门槛线将新增区域分为若干封闭区域,每个封闭区域均可视为一个房间,将房间进行编号或者填充不同的颜色即可与相邻房间进行区分,分区方式快捷高效,准确率高,适配性广泛,提升机器人的使用体验,分区结果更新至分区地图中,尽量保持原有分区结果,不破坏用户设置的扫地机工作参数,进而提升用户体验。
92.实施例三
93.参见图3,是本发明实施例提供的机器人智能分区装置的模块示意图,为了便于说明,仅示出了与本发明实施例相关的部分,本实施例中,机器人智能分区装置包括:
94.新增区域获取模块100,用于获取机器人最近一次工作完成后的slam地图,并与分区地图进行比对,得到清扫区域中多出的至少一个新增区域的区域属性,以及新增区域的相邻区域的区域编号;
95.第一判断模块200,用于针对每一新增区域,判断所述区域属性是否符合预置的第一条件且所述区域编号是否符合预置的第二条件;
96.局部分区模块300,用于当判断区域属性符合所述第一条件且所述区域编号符合第二条件时,对新增区域进行局部分区。
97.机器人智能分区方法应用于无需人员操作控制的自动机器人。
98.其中,在本发明实施例中,slam(simultaneous localization and mapping,即时定位与地图构建),slam相关技术在机器人领域的应用可以表现为,将一个机器人放入未知环境中的未知位置,在运动过程中通过重复观测到的地图特征(例如,墙角、屋内摆设等)定位自身位置和姿态,再根据自身位置增量式的构建地图,从而达到同时定位和地图构建的目的。slam地图所指的即为机器人通过上述过程完成一次清扫后所构建的环境地图。构建slam地图的一个目的在于使得机器人在进行清扫工作时,能够按照规划的路径无障碍物地覆盖环境地图的所有区域。
99.可选地,以家用清洁机器人为例,机器人工作的场景为家庭住房,家庭住房一般由多个房间或厅堂构成,各个房间与厅堂之间由墙体或屋内摆设隔离,并开设有门洞以实现相互连通,对于机器人来说,各个房间或厅堂的环境参数不相同,因此需要适配不同的扫地
工作参数,例如,清扫浴室时需要适配较强的除湿功能,清扫厨房时,则需要适配清除油污功能。因此,机器人通常根据环境地图进行分区,用户可以根据分区的结果,结合具体的清洁需要,配置机器人的扫地工作参数,以实现快捷、高效的清扫。本发明实施例中,分区地图所指的即为根据环境地图进行分区生成的地图数据。
100.在本发明实施例中,用户可以通过与机器人交互按照环境地图已经分好的区域,进行机器人扫地工作参数的配置,交互可以通过应用程序实现,具体为设备终端上所安装的应用程序,其中,该设备终端可以为智能终端、智能平板、遥控器等,其设备终端的应用程序可与机器人,或与机器人通信的云端服务器进行通信。
101.可选地,通过将slam地图与分区地图进行比对,可以得到清扫区域中多出的至少一个新增区域的区域属性,slam地图是机器人通过实际执行清扫工作同步构建得到的,包含环境中的未知区域,可通行区域,不可通行区域。而分区地图是将上一次清扫后slam地图按照房间格局进行分割后的栅格地图,每个栅格上都填写该位置所属的房间编号,当前slam地图上的可通行区域若无对应的房间编号,则该区域是上次清扫遗留的未知区域。通过对比slam地图和分区地图上同一位置的映射值,获取新增区域。例如:slam地图的映射值:0代表未知区域,1代表可通行区域,2代表不可通行区域,分区地图映射值:0-253代表房间编号,254代表未知区域,255代表不可通行区域。某区域slam地图上的映射值为1,若分区地图上的映射值为255或者254,则表示该区域为新增区域,若分区地图上的映射值为0-253(房间编号),则表示该区域不是新增区域。
102.其中,区域属性包括但不限于新增区域的长、宽、面积等表征新增区域区别性的属性,在此不做限定。需要说明的是,为了准确地划定新增区域,以缩小误差,减少运算量,可以设置尽可能多的区域属性。
103.通常,新增区域更多地位于各个有明确物理界限的分区(例如不同的房间)之间,将相邻分区连通的区域。
104.其中,本发明实施例中,判断是否符合第一条件可以通过将得到的新增区域的区域属性的具体数值与一个或一组预先设定的同一属性的阈值进行比较,若新增区域的区域属性大于该阈值,则判定为符合第一条件,继续第二条件的判断;而若新增区域的区域属性小于该阈值,则判定为不符合第一条件。
105.如前所述,判断是否符合第一条件可以通过将得到的新增区域的区域属性的具体数值与一个或一组预先设定的同一属性的阈值进行比较,其中,若新增区域的区域属性小于该阈值,则判定为不符合第一条件。
106.可以理解,新增区域的区域属性小于该阈值表明该新增区域所在环境地图中所占据的比例较小,可以将其与相邻区域进行合并,这样,无需改动原有的分区,避免导致用户预置的机器人扫地工作参数失效,同时对机器人完成清扫工作无影响。
107.本发明实施例中,判断是否符合第二条件可以通过比对与新增区域相邻的各个区域的编号是否一致,若新增区域的相邻区域编号一致,则判定为不符合第二条件。若区域属性符合第一条件且区域编号符合第二条件,对新增区域进行局部分区。
108.在一些实施例中,当判断区域属性不符合所述第一条件或者所述区域编号不符合第二条件时,将新增区域与相邻区域合并,并更新所述分区地图。
109.如前所述,判断是否符合第二条件可以通过比对与新增区域相邻的各个区域的编
号是否一致,其中,若新增区域的相邻区域编号一致,则判定为不符合第二条件。
110.可以理解,新增区域的相邻区域编号一致,则表明该新增区域的相邻区域具有相同的属性,对于机器人来说,可以采用相同的扫地工作参数对其清扫,因此,可以将该新增区域与其相邻区域进行合并,这样,无需改动原有的分区,避免导致用户预置的机器人扫地工作参数失效,同时对机器人完成清扫工作无影响。
111.其中,本发明实施例中,进行第一条件和第二条件的判断可以看作是对原分区地图变化部分的识别和确认,其一个目的在于尽量提高确定度,缩小误差,减少运算量,过滤无需分区的区域,并将无需分区的新增区域并入相邻区域。
112.当新增区域通过第一条件和第二条件的判断时,表明该新增区域已不存在可以并入相邻区域的部分,因此,可以对新增区域进行局部分区。
113.在一些可能的实施例中,请参考图4,在图4中,不同区域设置有不同的编号,示例性地,以数字编号为例,其中,区域编号为0、1、2的区域为分区地图中已知区域,在清扫完成一遍后,多出图中
①
、
②
和
③
这三个区域部分,即
①
、
②
和
③
这三个区域就是新增区域。
114.示例性地,以第一条件为面积大于设定阈值,以及第二条件为相邻区域的编号不同为例,新增区域
①
的相邻区域包括编号1和编号255,其中,编号1可以看成是房间,编号255可以看成是墙壁,则新增区域
①
的相邻区域的区域编号满足第二条件,但是新增区域
①
面积太小,达不到设定阈值,因此不满足第一条件,可以将新增区域
①
与编号1区域合并。
115.新增区域
②
的面积大于设定阈值,满足第一条件,但是新增区域
②
被区域2包围,导致新增区域
②
的相邻区域编号相同,不满足第二条件,所以新增区域
②
与相邻区域(图4中编号为2的区域)合并,在实际实施过程中,可以将新增区域
②
填充跟相邻区域(图4中编号为2的区域)一样的颜色实现合并。
116.另外,新增区域
③
的面积足够大,满足第一条件,且新增区域
③
的相邻区域的编号不同,同时满足第二条件,则新增区域
③
就需要局部分区。
117.示例性地,局部分区后新增区域最终分区效果如图5所示,图5相比图4新增两个分区,分别是由新增区域
③
分区得到的编号为3和4两个分区,而新增区域
①
和新增区域
②
则分别并入到分区1和分区2中。在实际实施过程中,可以将各个分区填充跟相邻区域不同的颜色,以示区别。
118.本发明实施例提供的机器人智能分区方法,通过获取机器人完成清扫的slam地图,与分区地图进行比对,得到新增区域的区域属性和相邻区域的区域编号,判断区域属性和区域编号是否符合第一条件和第二条件,进而根据判断结果对新增区域进行智能分区。对于已经设置过机器人扫地工作参数的环境地图,当环境发生变化时,无需较大程度地重置地图分区,避免了用户针对该环境地图设置的机器人扫地工作参数失效,提升了机器人的智能化水平,用户体验优秀。
119.实施例四
120.请参阅图3,是本发明实施例提供的机器人智能分区装置的模块示意图,为了便于说明,仅示出了与本发明实施例相关的部分,本实施例中,机器人智能分区装置的局部分区模块300还包括:
121.线段识别子模块301,用于获取slam地图中对应新增区域的局部地图数据,识别出局部地图数据中的线段;
122.第一判断子模块302,用于判断线段的第一端是否与其他线段有交点,且距离线段的第二端的预设范围内是否有交点;
123.门槛识别子模块303,用于当判断判断线段的第一端与其他线段有交点,且距离线段的第二端的预设范围内无交点时,将线段向所述第二端一侧延长,并在遇到障碍物后停止延长,得到新增区域的门槛线。
124.区域填充子模块304,用于根据门槛线对新增区域进行区域填充,并更新至所述分区地图中。
125.本发明实施例提供对新增区域进行局部分区的一种方式,易于理解的是,本发明实施例中,地图数据获取子模块的功能可以看作是为进一步进行线段识别子模块的线段识别功能做铺垫性工作,如前所述,根据获取的新增区域的局部地图数据,可以进一步识别其中的线段,其中,本发明实施例中,局部地图中的线段可以看做是各个房间的墙体。
126.可以理解,当判断距离线段的第二端的预设范围内有交点时,可以将该线段等同于线段识别子模块识别的线段进行后续处理,亦即,该线段可直接视为各个分区的界线。
127.各个线段及其门槛线可以共同视为前述的分区界线。
128.线段之间有交点,则可表示该交点连接了两个墙体;进一步地,对于第一端与其他线段有交点的线段,再判断距离线段的第二端的预设范围内是否有交点,若无交点,则表示该墙体开设有门洞等连通区域,此时,将线段向第二端一侧延长,并在遇到障碍物后停止延长,得到门槛线,该门槛线可以表示门槛;识别墙体,并划定门槛之后,新增区域被分隔为若干区域,每个区域的边界均为由线段及其门槛线围成的闭合图形,每个区域都可以看作是一个房间,将房间进行编号或者填充不同的颜色即可与相邻房间进行区分。
129.可以理解,通过在原有的分区地图的基础上更新新增局部区域,形成新的分区地图,这样可以不用太大改动原有的分区地图,尽量不破坏用户设置的扫地工作参数,以满足用户的清洁需求。
130.更进一步地,线段识别子模块301包括:
131.线段识别单元,用于对所述局部地图数据做二值化处理,按照直线识别模型识别出二值化处理后所述局部地图数据中的线段。
132.在一些可能的实施例中,局部分区模块300可以只用于当判断区域编号符合第二条件时,对新增区域进行局部分区,例如上述的区域填充子模块304,用于根据门槛线对新增区域进行区域填充,生成新增局部区域。本技术提供的机器人智能分区装置还可以包括区域合并总模块400,用于将新增局部区域与相邻区域合并,最终生成一张完整的分区地图。可以理解,通过在原有的分区地图的基础上更新新增局部区域,形成新的分区地图,这样可以不同太大改动原有的分区地图,尽量不破坏用户设置的扫地工作参数,以满足用户的清洁需求。
133.实施例五
134.请参阅图3,是本发明提供的机器人智能分区装置的模块示意图,为了便于说明,仅示出了与本发明实施例相关的部分,本实施例中,机器人智能分区装置还包括:
135.第一区域合并模块201,用于当判断区域属性不符合所述第一条件或者所述区域编号不符合第二条件时时,将新增区域与相邻区域合并,并更新所述分区地图。
136.如前所述,判断是否符合第一条件可以通过将得到的新增区域的区域属性的具体
数值与一个或一组预先设定的同一属性的阈值进行比较,其中,若新增区域的区域属性小于该阈值,则判定为不符合第一条件。
137.可以理解,新增区域的区域属性小于该阈值表明该新增区域所在环境地图中所占据的比例较小,可以将其与相邻区域进行合并,这样,无需改动原有的分区,避免导致用户预置的机器人扫地工作参数失效,同时对机器人完成清扫工作无影响。
138.如前所述,判断是否符合第二条件可以通过比对与新增区域相邻的各个区域的编号是否一致,其中,若新增区域的相邻区域编号一致,则判定为不符合第二条件。
139.可以理解,新增区域的相邻区域编号一致,则表明该新增区域与其与相邻区域具有相同的属性,对于机器人来说,可以采用相同的扫地工作参数对其清扫,因此,可以将该新增区域与其相邻区域进行合并,这样,无需改动原有的分区,避免导致用户预置的机器人扫地工作参数失效,同时对机器人完成清扫工作无影响。
140.实施例六
141.本实施例提供一种机器人,机器人包括如上述的实施例三到五任一所描述说明的机器人智能分区装置。
142.实施例七
143.本实施例提供一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所述的机器人智能分区方法步骤。所述可读存储介质,如:rom/ram、磁碟、光盘等。
144.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元或模块完成,即将存储装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施方式中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。
145.本领域技术人员可以理解,图3中示出的组成结构并不构成对本发明的机器人智能分区装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,而图1-2中的机器人智能分区方法亦采用图3中所示的更多或更少的部件,或者组合某些部件,或者不同的部件布置来实现。本发明所称的单元、模块等是指一种能够被所述机器人智能分区装置中的处理器(图未示)所执行并功能够完成特定功能的一系列计算机程序,其均可存储于所述机器人智能分区装置的存储设备(图未示)内。
146.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
技术特征:
1.一种机器人智能分区方法,其特征在于,所述方法包括:获取机器人最近一次工作完成后的slam地图,并与分区地图进行比对,得到清扫区域中多出的至少一个新增区域的区域属性,以及新增区域的相邻区域的区域编号;针对每一新增区域,判断所述区域属性是否符合预置的第一条件且所述区域编号是否符合预置的第二条件;当判断所述区域属性符合所述第一条件且所述区域编号符合所述第二条件时,对新增区域进行局部分区。2.如权利要求1所述的机器人智能分区方法,其特征在于,所述对新增区域进行局部分区的步骤,包括:获取所述slam地图中对应所述新增区域的局部地图数据,识别出所述局部地图数据中的线段;判断所述线段的第一端是否与其他线段有交点,且距离所述线段的第二端的预设范围内是否有交点;当判断所述线段的第一端与其他线段有交点,且距离所述线段的第二端的预设范围内无交点时,将所述线段向所述第二端一侧延长,并在遇到障碍物后停止延长,得到所述新增区域的门槛线;根据所述门槛线对所述新增区域进行区域填充,并更新至所述分区地图中。3.如权利要求2所述的机器人智能分区方法,其特征在于,所述识别出所述局部地图数据中的线段的步骤包括:对所述局部地图数据做二值化处理,按照直线识别模型识别出二值化处理后所述局部地图数据中的线段。4.如权利要求1所述的机器人智能分区方法,其特征在于,所述针对每一新增区域,判断所述区域属性是否符合预置的第一条件且所述区域编号是否符合预置的第二条件的步骤之后,还包括:当判断区域属性不符合所述第一条件或者所述区域编号不符合第二条件时,将新增区域与相邻区域合并,并更新所述分区地图。5.一种机器人智能分区装置,其特征在于,包括:新增区域获取模块,用于获取机器人最近一次工作完成后的slam地图,并与分区地图进行比对,得到清扫区域中多出的至少一个新增区域的区域属性,以及新增区域的相邻区域的区域编号;第一判断模块,用于针对每一新增区域,判断所述区域属性是否符合预置的第一条件且所述区域编号是否符合预置的第二条件;局部分区模块,用于当判断所述区域属性符合所述第一条件且所述区域编号符合所述第二条件时,对新增区域进行局部分区。6.如权利要求5所述的机器人智能分区装置,其特征在于,所述局部分区模块包括:线段识别子模块,用于获取所述slam地图中对应所述新增区域的局部地图数据,识别出所述局部地图数据中的线段;第一判断子模块,用于判断所述线段的第一端是否与其他线段有交点,且距离所述线段的第二端的预设范围内是否有交点;
门槛识别子模块,用于当判断所述线段的第一端与其他线段有交点,且距离所述线段的第二端的预设范围内无交点时,将所述线段向所述第二端一侧延长,并在遇到障碍物后停止延长,得到所述新增区域的门槛线;区域填充子模块,用于根据所述门槛线对所述新增区域进行区域填充,并更新至所述分区地图中。7.如权利要求6所述的机器人智能分区装置,其特征在于,所述线段识别子模块包括:线段识别单元,用于对所述局部地图数据做二值化处理,按照直线识别模型识别出二值化处理后所述局部地图数据中的线段。8.如权利要求5所述的机器人智能分区装置,其特征在于,所述装置还包括:第一区域合并模块,用于当判断区域属性不符合所述第一条件或者所述区域编号不符合第二条件时时,将新增区域与相邻区域合并,并更新所述分区地图。9.一种机器人,其特征在于,包括如权利要求5-8中任一项所述的机器人智能分区装置。10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-4中任意一项所述方法的步骤。
技术总结
本发明适用于机器人技术领域,提供一种机器人智能分区方法、装置、机器人及存储介质,该方法包括:获取机器人最近一次工作完成后的slam地图,并与分区地图进行比对,得到清扫区域中多出的至少一个新增区域的区域属性,以及新增区域的相邻区域的区域编号;针对每一新增区域,判断区域属性是否符合预置的第一条件且区域编号是否符合预置的第二条件;当判断区域属性符合第一条件且区域编号符合第二条件时,对新增区域进行局部分区。本发明解决了现有技术的机器人自动分区对已经分好的区进行重新分区,使得前后两次分区不一致,导致用户设置的机器人扫地工作参数失效的问题。的机器人扫地工作参数失效的问题。的机器人扫地工作参数失效的问题。
技术研发人员:李仙 付丽娜
受保护的技术使用者:深圳拓邦股份有限公司
技术研发日:2023.03.21
技术公布日:2023/7/7
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
