一种地图着色方法、机器人系统及芯片与流程
未命名
08-06
阅读:56
评论:0

1.本发明涉及智能移动机器人领域,具体涉及一种地图着色方法、机器人系统及芯片。
背景技术:
2.目前普遍使用的显示地图的方法,是移动机器人生成包含地形信息(未知/空旷/障碍物)与房间颜色的复合栅格图,然后将这个复合栅格图发送给手机app,最终由手机app去显示。由于地形信息至少3种(未知/空旷/障碍物),颜色至少5种(四色+无色),所以反映到栅格图里,一个栅格至少要用3个bit来表示(然而实际上很多实现方法都使用1个byte来表示)。随着地图变大,要传送的数据量也变大,需要占用更多的网络带宽。
技术实现要素:
3.为解决上述问题,本发明提供了一种地图着色方法、机器人系统及芯片,大大减少了栅格图的数据量,节省了网络带宽。本发明的具体技术方案如下:一种地图着色方法,应用于机器人,所述方法包括如下步骤:步骤a1,机器人根据当前区域的栅格图生成当前区域的轮廓多边形;步骤a2,机器人将栅格图以及轮廓多边形发送给智能终端,使得智能终端对栅格图进行着色;其中,机器人预先储存有当前区域的栅格图,且该栅格图包括当前区域的地形信息。
4.进一步地,所述步骤a1中,根据当前区域的栅格图生成当前区域的轮廓多边形的方法具体包括:定义轮廓检索模式为只检索最外围轮廓,然后使用轮廓提取函数提取当前区域的轮廓;其中,轮廓提取函数包括opencv的findcontours函数。
5.进一步地,所述步骤a2中,机器人还发送颜色序号给智能终端,使得智能终端根据所述颜色序号对应的颜色对当前区域的栅格图进行着色;其中,不同的颜色序号表示不同的颜色,且当前区域的颜色序号与其相邻区域的颜色序号不重复。
6.进一步地,所述当前区域的地形信息至少包括未知栅格、空旷栅格和障碍物栅格中的任一项。
7.一种地图着色方法,应用于智能终端,所述方法包括如下步骤:步骤b1,智能终端接收机器人发送的当前区域的栅格图及其轮廓多边形,然后求取轮廓多边形中的栅格集合;步骤b2,智能终端枚举栅格集合中的每个栅格,然后根据栅格的地形信息进行着色;其中,当前区域的栅格图包括当前区域的地形信息。
8.进一步地,所述步骤b1中,求取轮廓多边形中的栅格集合的方法具体包括:步骤b11,智能终端求取轮廓多边形的外包矩阵,然后取外包矩阵的任一条边,将该边上所包含的栅格视为一条线段,向外包矩阵对边的方向进行遍历;步骤b12,在所述线段遍历的过程中,智能终端记录所述线段与轮廓多边形的交点,然后将两个交点所在的栅格以及它们之间的栅格添加进栅格集合中;其中,所述栅格集合包括轮廓多边形中所有的栅格。
9.进一步地,所述步骤b2中,根据栅格的地形信息进行着色的方法具体包括:智能终
端枚举栅格集合中的每个栅格,同时读取该栅格的地形信息,若该栅格属于空旷栅格,则根据颜色序号对该栅格进行着色;其中,所述地形信息至少包括未知栅格、空旷栅格和障碍物栅格中的任一项;其中,所述颜色序号不与相邻区域的颜色序号重复,不同的颜色序号表示不同的颜色。
10.一种地图着色的机器人系统,所述机器人系统包括机器人和智能终端;其中,机器人用于将当前区域的栅格图以及轮廓多边形发送给智能终端,使得智能终端对栅格图进行着色;智能终端用于接收机器人发送的当前区域的栅格图以及轮廓多边形,从而对栅格图进行着色;其中,当前区域的栅格图包括当前区域的地形信息。
11.一种芯片,所述芯片储存有计算机程序代码,所述计算机程序代码被执行时实现所述地图着色方法。
12.本发明的有益效果在于:与现有技术相比,本发明所述的方法控制机器人仅发送包含地形信息的栅格图、当前区域的轮廓多边形和颜色序号给智能终端,而不是当前区域的复合栅格图,大大降低了数据量,节省了网络带宽。
附图说明
13.图1为本发明一种实施例所述地图着色方法的示意图。
14.图2为本发明一种实施例所述当前区域的轮廓多边形的示意图。
15.图3为本发明一种实施例所述求轮廓多边形中的栅格集合的中间过程的示意图。
16.图4为本发明一种实施例所述地图着色结果的示意图。
具体实施方式
17.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
18.应当理解,当在本技术中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。 还应当理解,在本技术中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
19.如在本技术中所使用的那样,术语“如果”可以依据上下文被解释为“当
…
时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0020]
另外,在本技术的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。在本技术说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
[0021]
目前普遍使用的显示地图的方法,是移动机器人生成包含地形信息(未知/空旷/障碍物)与房间颜色的复合栅格图,然后将这个复合栅格图发送给手机app,最终由手机app去显示。由于地形信息至少3种(未知/空旷/障碍物),颜色至少5种(四色+无色),所以反映到栅格图里,一个栅格至少要用3个bit来表示(然而实际上很多实现方法都使用1个byte来表示)。随着地图变大,要传送的数据量也变大,需要占用更多的网络带宽。
[0022]
因此,如图1所示,本发明实施例提供一种地图着色方法,所述方法包括如下步骤:步骤a1,机器人根据当前区域的栅格图生成当前区域的轮廓多边形,然后进入步骤a2。在所述步骤a1中,根据当前区域的栅格图生成当前区域的轮廓多边形的方法具体包括:定义轮廓检索模式为只检索最外围轮廓,然后使用轮廓提取函数提取当前区域的轮廓。优选地,轮廓提取函数采用opencv的findcontours函数。如图2所示,以激光清洁机器人为例,在机器人清洁完当前房间后,得到当前房间的包含地形信息的栅格图,然后使用事先设置好的轮廓检索模式提取该房间的轮廓多边形。参照图2,为了尽可能地减少数据量,将轮廓多边形上一些不必要的顶点删除,然后将剩余顶点依次连接,最终轮廓多边形可由四个顶点表示。需要说明的是,本发明实施例所述的当前区域以图2所示的一个房间区域为例。如果当前区域存在多个房间的话,机器人在建图完成后会将其进行分区,然后再分别对每个房间区域执行本发明实施例的方法步骤。另外,当前区域的地图通过栅格图表示,所述栅格图是把当前区域划分成一系列栅格,其中每一栅格给定一个可能值,表示该栅格被占据的概率。栅格一般分为未知栅格、空旷栅格和障碍物栅格。
[0023]
步骤a2,机器人将栅格图以及轮廓多边形发送给智能终端,使得智能终端对栅格图进行着色,然后进入步骤b1。其中,机器人预先储存有当前区域的栅格图,且该栅格图包括当前区域的地形信息。作为其中一种实施方式,所述预先储存的当前区域的栅格图通过激光信息构建,且所述当前区域的地形信息至少包括未知栅格、空旷栅格和障碍物栅格中的任一项。需要说明的是,发送给智能终端的轮廓多边形,实际上只需要发送其顶点信息,数据量非常小,基本不占用网络带宽,极大地提高了传输效率。
[0024]
在所述步骤a2中,机器人还发送颜色序号给智能终端,使得智能终端根据所述颜色序号对应的颜色对当前区域的栅格图进行着色;其中,不同的颜色序号表示不同的颜色,且当前区域的颜色序号与其相邻区域的颜色序号不重复。具体地,智能终端读取颜色序号对应的颜色,然后对当前区域的栅格图中的空旷栅格进行着色。可选地,所述颜色序号包括0、1、2和3,每一个序号表示一种颜色。采用四色着色的方法可以使得相邻房间的颜色不一,便于区分,提高地图的可读性。
[0025]
步骤b1,智能终端接收机器人发送的当前区域的栅格图及其轮廓多边形,然后求取轮廓多边形中的栅格集合。其中,求取轮廓多边形中的栅格集合的方法具体包括:步骤b11,智能终端求取轮廓多边形的外包矩阵,然后取外包矩阵的任一条边,将该边上所包含的栅格视为一条线段,向外包矩阵对边的方向进行遍历。作为其中一种实施方式,参照图3,以轮廓多边形左上角的顶点为原点、朝右为x轴正方向、朝下为y轴正方向作一直角坐标系,然后以y轴正方向作为遍历方向(即从上到下遍历外包矩阵)。在该直角坐标系上,取外包矩阵上与x轴重合的边作为遍历起始边,设为y=min,则其对边作为遍历终止边,设为y=max。需要注意的是,所述遍历外包矩阵,实际上遍历的是外包矩阵中的栅格。因
此为了表述方便,将y=min上所包含的栅格视为一条线段,然后向下依次遍历外包矩阵中所有的栅格。
[0026]
步骤b12,在所述线段遍历的过程中,智能终端记录所述线段与轮廓多边形的交点,然后将两个交点所在的栅格以及它们之间的栅格添加进栅格集合中;其中,所述栅格集合包括轮廓多边形中所有的栅格。参照图3,图中所示的线段为y=16(从上往下数第17行栅格),该线段与轮廓多边形一共有两个交点。将这两个交点所在的栅格以及它们之间所有的栅格添加到栅格集合中。按照这种方式,当从y=min遍历到y=max时,轮廓多边形中所有的栅格(包括未知栅格、空旷栅格和障碍物栅格)就被收集到栅格集合中,方便后续对空旷栅格进行着色。需要再次说明的是,y=16是一条有宽度的线段,其宽度等于一个栅格的宽度;而线段与轮廓多边形的交点则是一个障碍物栅格。
[0027]
步骤b2,智能终端枚举栅格集合中的每个栅格,然后根据栅格的地形信息进行着色;其中,当前区域的栅格图包括当前区域的地形信息。具体地,根据栅格的地形信息进行着色的方法具体包括:智能终端枚举栅格集合中的每个栅格,同时读取该栅格的地形信息,若该栅格属于空旷栅格,则根据颜色序号对该栅格进行着色;其中,所述地形信息至少包括未知栅格、空旷栅格和障碍物栅格中的任一项;其中,所述颜色序号不与相邻区域的颜色序号重复,不同的颜色序号表示不同的颜色。比如,智能终端接收到的颜色序号为1,而1代表的是橙色,那么智能终端将栅格集合中所有的空旷栅格都涂上橙色,获得如图4所示的着色地图。需要说明的是,当前区域的栅格图的颜色序号为1,那么其相邻区域不会取到序号1,以避免相邻区域颜色重复,难以区分。
[0028]
与现有技术相比,本发明实施例所述的方法控制机器人仅发送包含地形信息的栅格图、当前区域的轮廓多边形和颜色序号给智能终端,而不是当前区域的复合栅格图,大大降低了数据量,节省了网络带宽。
[0029]
本发明还提供一种地图着色的机器人系统,所述机器人系统包括机器人和智能终端;其中,机器人用于将当前区域的栅格图以及轮廓多边形发送给智能终端,使得智能终端对栅格图进行着色;智能终端用于接收机器人发送的当前区域的栅格图以及轮廓多边形,从而对栅格图进行着色;其中,当前区域的栅格图包括当前区域的地形信息。本发明所述的机器人系统不单纯依靠机器人生成包含颜色的复合栅格图,然后发送给智能终端显示,这样需要传输的数据量太大,占用带宽。因此,机器人仅发送包含地形信息的栅格图、当前区域的轮廓多边形和颜色序号给智能终端,然后智能终端再根据接收到的信息对地图进行着色,大大降低了数据量,节省了网络带宽。
[0030]
本发明还提供一种芯片,所述芯片储存有计算机程序代码,所述计算机程序代码被执行时实现所述地图着色方法。所述芯片可以装配在上述机器人内,使得所述机器人可以将当前区域的栅格图以及轮廓多边形发送给智能终端,使得智能终端对栅格图进行着色。所述芯片可以装配在上述智能终端内,使得所述智能终端可以在接收到机器人发送的当前区域的栅格图以及轮廓多边形后,对栅格图进行着色。所述芯片可以大大降低机器人与智能终端之间传输的数据量,节省网络带宽。
[0031]
本领域的普通技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成的,该计算机程序可存储于一非易失性计算机可读存储介质中,该计算机程序在执行时,可包括如上述个方法的实施例的流程。其中,
本技术所提供的各实施例中所使用的对存储器、存储、数据库或其他介质的引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器rom、可编程存储器prom、电可编程存储器dprom、电可擦除可编程存储器ddprom或闪存。易失性存储器可包括随机存取存储器ram或者外部高速缓冲存储器。
[0032]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0033]
以上各实施例仅表达了本发明的几种实施例,其描述较为具体和详细,但并不能因此而理解为发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。
技术特征:
1.一种地图着色方法,应用于机器人,其特征在于,所述方法包括如下步骤:步骤a1,机器人根据当前区域的栅格图生成当前区域的轮廓多边形;步骤a2,机器人将栅格图以及轮廓多边形发送给智能终端,使得智能终端对栅格图进行着色;其中,机器人预先储存有当前区域的栅格图,且该栅格图包括当前区域的地形信息。2.根据权利要求1所述的一种地图着色方法,其特征在于,所述步骤a1中,根据当前区域的栅格图生成当前区域的轮廓多边形的方法具体包括:定义轮廓检索模式为只检索最外围轮廓,然后使用轮廓提取函数提取当前区域的轮廓;其中,轮廓提取函数包括opencv的findcontours函数。3.根据权利要求1所述的一种地图着色方法,其特征在于,所述步骤a2中,机器人还发送颜色序号给智能终端,使得智能终端根据所述颜色序号对应的颜色对当前区域的栅格图进行着色;其中,不同的颜色序号表示不同的颜色,且当前区域的颜色序号与其相邻区域的颜色序号不重复。4.根据权利要求1所述的一种地图着色方法,其特征在于,所述当前区域的地形信息至少包括未知栅格、空旷栅格和障碍物栅格中的任一项。5.一种地图着色方法,应用于智能终端,其特征在于,所述方法包括如下步骤:步骤b1,智能终端接收机器人发送的当前区域的栅格图及其轮廓多边形,然后求取轮廓多边形中的栅格集合;步骤b2,智能终端枚举栅格集合中的每个栅格,然后根据栅格的地形信息进行着色;其中,当前区域的栅格图包括当前区域的地形信息。6.根据权利要求5所述的一种地图着色方法,其特征在于,所述步骤b1中,求取轮廓多边形中的栅格集合的方法具体包括:步骤b11,智能终端求取轮廓多边形的外包矩阵,然后取外包矩阵的任一条边,将该边上所包含的栅格视为一条线段,向外包矩阵对边的方向进行遍历;步骤b12,在所述线段遍历的过程中,智能终端记录所述线段与轮廓多边形的交点,然后将两个交点所在的栅格以及它们之间的栅格添加进栅格集合中;其中,所述栅格集合包括轮廓多边形中所有的栅格。7.根据权利要求6所述的一种地图着色方法,其特征在于,所述步骤b2中,根据栅格的地形信息进行着色的方法具体包括:智能终端枚举栅格集合中的每个栅格,同时读取该栅格的地形信息,若该栅格属于空旷栅格,则根据颜色序号对该栅格进行着色;其中,所述地形信息至少包括未知栅格、空旷栅格和障碍物栅格中的任一项;其中,所述颜色序号不与相邻区域的颜色序号重复,不同的颜色序号表示不同的颜色。8.一种地图着色的机器人系统,其特征在于,所述机器人系统包括机器人和智能终端;其中,机器人用于将当前区域的栅格图以及轮廓多边形发送给智能终端,使得智能终端对栅格图进行着色;智能终端用于接收机器人发送的当前区域的栅格图以及轮廓多边形,从而对栅格图进行着色;
其中,当前区域的栅格图包括当前区域的地形信息。9.一种芯片,所述芯片储存有计算机程序代码,其特征在于,所述计算机程序代码被执行时实现权利要求1至4任一项所述的地图着色方法或权利要求5至7任一项所述的地图着色方法。
技术总结
本发明公开了一种地图着色方法、机器人系统及芯片,所述方法包括:步骤A1,机器人根据当前区域的栅格图生成当前区域的轮廓多边形;步骤A2,机器人将栅格图以及轮廓多边形发送给智能终端,使得智能终端对栅格图进行着色;步骤B1,智能终端接收机器人发送的当前区域的栅格图及其轮廓多边形,然后求取轮廓多边形中的栅格集合;步骤B2,智能终端枚举栅格集合中的每个栅格,然后根据栅格的地形信息进行着色;其中,机器人预先储存有当前区域的栅格图,且该栅格图包括当前区域的地形信息。本发明控制机器人仅发送包含地形信息的栅格图、当前区域的轮廓多边形和颜色序号给智能终端,而不是当前区域的复合栅格图,大大降低了数据量,节省了网络带宽。网络带宽。网络带宽。
技术研发人员:黄惠保 陈泳恩 周和文 陈卓标 孙明 徐松舟
受保护的技术使用者:珠海一微半导体股份有限公司
技术研发日:2022.01.25
技术公布日:2023/8/5
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/