清洁机器人及其分区识别方法与流程

文档序号:30241324发布日期:2022-06-01 23:54阅读:147来源:国知局
清洁机器人及其分区识别方法与流程

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.进一步,在分区完成之后,通过比较各个分区的大小,并根据各个分区的大小关系,确定每一个分区的房间类型,以使清洁机器人能够根据不同的房间类型选择相应的清洁模式,从而按照选择的清洁模式对相应的分区进行清洁作业。
附图说明
40.下面参照附图来描述本公开的部分实施例,附图中:
41.图1是本公开第一实施例中分区识别方法的步骤流程图;
42.图2是本公开的一个待分区区域的平面示意图;
43.图3是本公开第二实施例中分区识别方法的部分步骤流程图;
44.图4是图2中待分区区域的分区效果示意图;
45.图5是本公开第四实施例中清洁机器人的结构示意图。
46.附图标记列表:
47.1、清洁机器人;2、凸点;3、第一卧室;4、卫生间;5、第二卧室;6、厨房;7、客厅。
具体实施方式
48.本领域技术人员应当理解的是,下文所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,该一部分实施例旨在用于解释本公开的技术原理,并非用于限制本公开的保护范围。基于本公开提供的实施例,本领域普通技术人员在没有付出创造性劳动的情况下所获得的其它所有实施例,仍应落入到本公开的保护范围之内。
49.本公开的清洁机器人可以是扫地机器人、拖地机器人、扫吸拖一体机器人等任意可行的清洁机器人。
50.在本公开的第一实施例中:
51.如图1所示,本实施例清洁机器人的分区识别方法,包括:
52.步骤s110,获取环境地图,并确定该环境地图的外围轮廓上的凸点。
53.其中,环境地图可以采用任意可行的方式获得,例如通过slam(同步定位与导航)技术对待分区环境进行地图构建,从而获得环境地图。或者,接收用户通过手机、平板等设备发送的环境地图。
54.进一步,环境地图的外围轮廓也可以采用任意可行的方式获得。例如,先对环境地图进行高斯滤波、图像二值化处理。再对环境地图进行形态学的开操作、闭操作,以降低环境地图的图像噪声。进而通过边缘检测算法确定环境地图的外围轮廓;优选地,边缘检测算法为canny。然后再通过多边形拟合算法简化外围轮廓。优选地,多边形拟合算法为道格拉斯-普克算法。
55.再进一步,外围轮廓上的凸点指代的是外围轮廓上向内侧凸出的轮廓点,如图2中所示的凸点2。
56.在本实施例中,确定环境地图的外围轮廓上的凸点,包括:
57.步骤s111,提取外围轮廓上的所有轮廓点。
58.其中,外围轮廓是由一个一个的轮廓点构成。
59.步骤s112,针对每一轮廓点,确定该轮廓点至与该轮廓点相邻的上一轮廓点的第一向量,以及与该轮廓点相邻的下一轮廓点至该轮廓点的第二向量。
60.具体地,对环境地图建立平面坐标系,优选地,使平面坐标系的坐标原点位于环境地图的左下方,然后,确定每一个轮廓点的平面坐标。假设,相邻的三个轮廓点为p1(x1,y1)、p2(x2,y2)、p3(x3,y3),则p1到p2的向量v
12
为(x
2-x1,y
2-y1),p2到p3的向量v
23
为(x
3-x2,y
3-y2)。
61.需要说明的是,p1、p2和p3表示的仅是3个轮廓点之间的相邻关系,以便于本领域技术人员的理解,并不是序列号为1、2、3的轮廓点。实际上本领域技术人员也可以将p1写成pi,将p2写成p
(i+1)
,将p3写成p
(i+2)
。其中,i为自然数。
62.步骤s113,计算第一向量与第二向量的叉乘。
63.计算公式为:v
12
*v
23
=(x
2-x1)*(y
3-y2)

(x
3-x2)*(y
2-y1)
64.将所有轮廓点相应的向量依次代入该公式,并计算出相应的向量叉积。
65.步骤s114,如果叉乘结果小于零,则将该轮廓点确定为凸点。
66.具体地,当v
12
*v
23
《0时,轮廓点p2为凸点。
67.重复步骤s142至步骤s114,直至遍历完所有的轮廓点,并选择性地对所有的凸点构建序列。
68.步骤s120,从前述外围轮廓的凸点中,确定距离属于预设房门宽度的两个凸点。
69.其中,预设房门宽度可以是一个数值范围,也可以是一组数值的集合。但,无论是该数值范围,还是该数值的集合,都涵盖了目前市场上所有门的宽度值,并且该数值范围的上限对应目前市场上宽度最大的门,该数值范围的下限对应目前市场上宽度最下的门,该数值的集合包括多个标准的门宽数值。例如,该数值范围为[50cm,120cm],该数值的集合为{50cm,60cm,80cm,90cm,100cm,120cm}。
[0070]
作为示例一,如果对所有的凸点构建了序列,则可以按照序列的先后顺序,选择在序列上相邻的两个凸点,并计算该两个凸点之间的直线距离,进而判断直线距离是否在预设数值范围内。需要说明的是,由于同一个凸点可能与其前面的一个凸点分别位于门的两侧,也可能与其后面的一个凸点分别位于门的两侧,所以同一个凸点至少需要被计算两次,并判断相应的直线距离是否在预设数值范围。
[0071]
作为示例二,每一次都从所有的凸点中,任意选取两个凸点,然后计算该两个凸点之间的直线距离,进而判断直线距离是否在预设数值范围。由于某一个凸点可能与其他任意一个凸点分别位于门的两侧,所以每一个凸点都需要与其他所有的凸点计算一次直线距离,并判断相应的直线距离是否在预设数值范围。
[0072]
步骤s130,确定该两个凸点,以及该两个凸点之间的外围轮廓的轮廓点所构成的几何图形。
[0073]
其中,该几何图形为边界闭合的图形。具体地,该几何图形可以采用下列方式之一构成。
[0074]
方式一:由前述两个凸点之间的连线,以及依次分布在该两个凸点之间的轮廓点的连线直接构成。换句话说,如果两个凸点中的一个为pi,另一个为pj,则该两个凸点之间的轮廓点为p
(i+1)
、p
(i+2)
……
p
(j-2)
、p
(j-1)
。其中,i<j,并且i和j均是自然数。该几何图形由pi与pj之间连线,以及pi、p
(i+1)
、p
(i+2)
……
p
(j-2)
、p
(j-1)
和pj构成。
[0075]
由此可见,此种方式构成的几何图形的形状受限于该部分外围轮廓所围成的区域的形状,换句话说,如果该部分外围轮廓所围成的区域为矩形,则该几何图形为矩形;如果该部分外围轮廓所围成的区域为矩形,则该几何图形为梯形;如果该部分外围轮廓所围成的区域为三角形,则该几何图形为三角形。
[0076]
方式二:该几何图形可以由该两个凸点,以及依次分布在该两个凸点之间的轮廓点的最小外接矩形构成。相比于方式一,本方式的几何图形始终为矩形,不再受限于相应部分外围轮廓所围成的区域的形状。
[0077]
步骤s140,判断前述几何图形是否满足预设的房间尺寸条件。
[0078]
其中,预设的房间尺寸条件包括以下条件之一或任意组合:
[0079]
条件一,几何图形的边长大于预设的边长阈值;
[0080]
条件二,几何图形的面积大于预设的面积阈值;
[0081]
条件三,几何图形的长宽比小于预设的长宽比阈值;此条件下的几何图形为矩形。
[0082]
其中,该边长阈值可以是任意可行的数值,优选地,边长指代的是周长,该边长阈值是表示房间周长的一个数值,例如4米、5.2米、6米、7.3米等。该面积阈值可以是任意可行的数值,优选地,该面积阈值是表示房间面积的一个数值,例如2m2、3.6m2、12m2、18.9m2等。该长宽比阈值可以是任意可行的数值,优选地,该面积阈值是表示房间长宽比的一个数值,例如3:1、2:1.1、1.3:1、5:3等。
[0083]
步骤s150,如果满足预设的房间尺寸条件,则将前述几何图形围成的区域划分为一个分区。
[0084]
基于前文的描述,本领域技术人员能够理解的是,本实施例通过确定环境地图的外围轮廓,进而确定该外围轮廓上的凸点,进而再从外围轮廓的凸点中确定距离属于预设房门宽度的两个凸点,,从而判定该两个凸点之间具有门。因此,本公开的清洁机器人能够自动识别到待分区环境中的门。进一步,通过确定该两个凸点、该两个凸点之间外围轮廓的轮廓点所构成的几何图形,并在判定该几何图形满足预设的尺寸要求时,再将该几何图形围成的区域划分为一个分区,避免了因该两个凸点不在实际门框的两侧时,而导致的错误分区。因此,本公开的清洁机器人不仅可以在环境地图上识别出符合门宽距离的两个凸点,而且还通过判断几何图形是否满足预设的尺寸要求,剔除了因错误而识别到的门的干扰,提升了分区的可靠性。
[0085]
进一步,在步骤s140之后,本实施例的分区识别方法还包括与步骤s150并列的、可选的步骤:如果前述几何图形无法满足预设的房间尺寸条件,则判定该几何图形不能被划分为一个区域。
[0086]
在本公开的第二实施例中:
[0087]
如图3所示,与前述第一实施例相比,本实施例的分区识别方法在步骤s150之后,还包括:
[0088]
步骤s210,响应于根据所有的凸点进行了分区之后,判断环境地图上是否还有待分区区域。
[0089]
如图2所示,当待分区环境具有客厅时,根据步骤s110至步骤s150的方法对待分区环境进行分区之后,能够对卧室(第一卧室3和第二卧室5)、卫生间4和厨房6进行分区,但是还会存在待分区区域——客厅7。
[0090]
当待分区环境没有客厅时(例如开间式的一居室),根据步骤s110至步骤s150的方法对待分区环境进行分区之后,能够完成待分区环境的所有区域进行划分。
[0091]
因此,在根据所有的凸点进行了分区之后,需要判断环境地图上是否还有待分区区域。如果有则执行步骤s220,如果没有则执行步骤s230。
[0092]
步骤s220,如果有,将前述待分区区域划分为最后一个分区。
[0093]
如图2所示,当待分区环境具有客厅时,根据步骤s110至步骤s150的方法对待分区环境进行分区之后,还存在一个待分区区域——客厅7,将其分为最后一个分区。
[0094]
步骤s230,完成了分区。
[0095]
步骤s240,根据所有前述分区彼此之间的大小关系,确定每一个分区的房间类型。
[0096]
对于居家环境而言,通常情况下,客厅的面积最大,卫生间的面积最小,厨房的面积次小,卧室的面积在客厅的面积与厨房的面积之间。如果卧室有多个时,最大的为主卧,
其他的为次卧。另外,由于很多用户在洗完澡之后,会手动清洁卫生间,因此,很多用户并没有通过清洁机器人清洁卫生间的需求,因此,在对居家环境进行分区时会忽略掉卫生间。而使清洁机器人忽略掉卫生间的方式通常为,再使清洁机器人获取居家环境的环境地图时,就关上卫生间的门,使清洁机器人无法探知到卫生间的内部环境。
[0097]
在本实施例中,步骤s240包括:将面积最大的一个分区,确定为客厅;将面积次大的一个分区,确定为主卧;将面积最小的一个分区,确定为厨房或卫生间。
[0098]
具体地,比较所有分区的面积,将面积最大的区域对应的房间类型确定为客厅,将面积最小的区域对应的房间类型确定为卫生间,将面积次小的区域对应的房间类型确定为厨房,将其他分区对应的房间类型确定为卧室(包括主卧和次卧)。
[0099]
当然,本领域技术人员也可以根据实际需要,将上述关系进行适当调整,例如,将面积最小的区域对应的房间类型确定为厨房,将面积次小的区域对应的房间类型确定为卫生间。
[0100]
本实施例的一个分区场景如图2和图4所示,在根据所有的凸点进行了分区之后,得到了分区:第一卧室3、卫生间4、第二卧室5和厨房6。将剩余的区域——客厅7划分为最后一个区域。然后根据所有分区彼此之间的大小关系,确定每一个分区的房间类型为:第一卧室3、卫生间4、第二卧室5、厨房6和客厅7。
[0101]
基于前文的描述,本领域技术人员能够理解的是,在分区完成之后,通过比较各个分区的大小,并根据各个分区的大小关系,确定每一个分区的房间类型,以使清洁机器人能够根据不同的房间类型选择相应的清洁模式,从而按照选择的清洁模式对相应的分区进行清洁作业。
[0102]
可选地,在步骤s220之后,本实施例的分区识别方法还包括能够替代步骤s230和步骤s240的步骤:将最后一个分区确定为客厅;然后根据剩余分区彼此之间的大小关系,确定剩余每一个分区的房间类型。
[0103]
如图2和图4所示地,由于围成客厅的外围轮廓上具有多个门,这就导致围成客厅的外围轮廓上的所有轮廓点在序列上不是依次连续的,所以无法通过第一实施例中描述的方案来对其进行分区。因此,在居家环境包括客厅时,根据所有的凸点进行了分区之后,将会遗留下一个待分区区域——客厅。
[0104]
因此,在本实施例中,将最后一个分区确定为客厅;然后根据剩余分区彼此之间的大小关系,确定剩余每一个分区的房间类型,包括:将最后一个分区的房间类型直接确定为客厅。然后再如步骤s240所描述地,将除客厅以外的分区中面积最大的一个分区,确定为主卧;将除客厅以外的分区中面积最小的一个分区,确定为厨房或卫生间。或者,将除客厅以外的分区中面积最小的一个分区,确定为厨房(卫生间在构建环境地图时省略),将其他分区确定为卧室。
[0105]
在本公开的第三实施例中:
[0106]
与前述第二实施例不同的是,本实施例的分区识别方法在确定了所有分区的房间类型之后,还包括:使清洁机器人1根据房间类型选择清洁模式,以按照选择的清洁模式对相应的分区进行清洁作业。
[0107]
在所有的房间类型中,厨房经常受到菜渍、油污的污染,是最难被清洁的区域;客厅则是家庭成员室内活动的主要场所,相对于卧室,脏污程度要较大。
[0108]
因此,在本实施例中,使清洁机器人1根据房间类型选择清洁模式,以按照选择的清洁模式对相应的分区进行清洁作业,包括:
[0109]
当清洁机器人1进入到厨房时,按照第一清洁模式进行清洁作业;
[0110]
当清洁机器人1进入到客厅时,按照第二清洁模式进行清洁作业;
[0111]
当清洁机器人1进入到卧室时,按照第三清洁模式进行清洁作业。
[0112]
其中,清洁机器人1在不同清洁模式下的清洁能力依次为,第一清洁模式大于第二清洁模式,第二清洁模式大于第三清洁模式。示例性地,第一清洁模式为对厨房遍历多次,第二清洁模式为对客厅进行常规清洁,第三清洁模式为对卧室进行快速清洁。
[0113]
在本公开的第四实施例中:
[0114]
如图5所示,本公开还提供了一种清洁机器人。该清洁机器人在硬件层面上包括处理器,可选地还包括存储器和总线,此外该清洁机器人还允许包括其他业务所需要的硬件。
[0115]
其中,存储器用于存放执行指令,该执行指令具体是能够被执行的计算机程序。进一步,存储器可以包括内存和非易失性存储器(non-volatile memory),并向处理器提供执行指令和数据。示例性地,内存可以是高速随机存取存储器(random-access memory,ram),非易失性存储器可以是至少1个磁盘存储器。
[0116]
其中,总线用于将处理器、存储器和网络接口相互连接到一起。该总线可以是isa(industry standard architecture,工业标准体系结构)总线、pci(peripheral component interconnect,外设部件互连标准)总线、eisa(extendedindustry standardarchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为了便于表示,图5中仅用一个双向箭头表示,但这并不表示仅有一根总线或一种类型的总线。
[0117]
在上述清洁机器人的一种可行的实施方式中,处理器可以先从非易失性存储器中读取对应的执行指令到内存中再运行,也可以先从其它设备上获取相应的执行指令再运行。处理器在执行存储器所存放的执行指令时,能够实现本公开上述任意一个分区识别方法实施例中的分区识别方法。
[0118]
本领域技术人员能够理解的是,上述的分区识别方法可以应用于处理器中,也可以借助处理器来实现。示例性地,处理器是一种集成电路芯片,具有处理信号的能力。在处理器执行上述分区识别方法的过程中,上述分区识别方法的各步骤可以通过处理器中硬件形式的集成逻辑电路或软件形式的指令完成。进一步,上述处理器可以是通用处理器,例如中央处理器(central processing unit,cpu)、网络处理器(networkprocessor,np)、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件、微处理器以及其它任何常规的处理器。
[0119]
本领域技术人员还能够理解的是,本公开上述分区识别方法实施例的步骤可以被硬件译码处理器执行完成,也可以被译码处理器中的硬件和软件模块组合执行完成。其中,软件模块可以位于随机存储器、闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等其它本领域成熟的存储介质中。该存储介质位于存储器中,处理器读取存储器中的信息之后结合其硬件完成上述分区识别方法实施例中步骤的执行。
[0120]
至此,已经结合前文的多个实施例描述了本公开的技术方案,但是,本领域技术人员容易理解的是,本公开的保护范围并不仅限于这些具体实施例。在不偏离本公开技术原理的前提下,本领域技术人员可以对上述各个实施例中的技术方案进行拆分和组合,也可以对相关技术特征作出等同的更改或替换,凡在本公开的技术构思和/或技术原理之内所做的任何更改、等同替换、改进等都将落入本公开的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1