CN111784819A - 一种多楼层的地图拼接方法、系统及自移动机器人 - Google Patents
一种多楼层的地图拼接方法、系统及自移动机器人 Download PDFInfo
- Publication number
- CN111784819A CN111784819A CN202010553948.5A CN202010553948A CN111784819A CN 111784819 A CN111784819 A CN 111784819A CN 202010553948 A CN202010553948 A CN 202010553948A CN 111784819 A CN111784819 A CN 111784819A
- Authority
- CN
- China
- Prior art keywords
- stair
- opening
- map
- markers
- window
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/24—Floor-sweeping machines, motor-driven
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Remote Sensing (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本发明公开了一种多楼层的地图拼接方法、系统及自移动机器人,其中,所述方法包括:识别各层清扫区域中的标识物,并记录所述标识物的属性;根据记录的所述标识物的属性,对各层清扫区域中的标识物进行匹配;根据标识物的匹配结果,对各层清扫区域的地图进行拼接。本申请提供的技术方案,能够提高地图拼接的准确度。
Description
技术领域
本发明涉及数据处理技术领域,特别涉及一种多楼层的地图拼接方法、系统及自移动机器人。
背景技术
目前的自移动机器人在对室内进行清扫时,通常可以建立待清扫区域的地图,然后可以在建立的地图内规划清扫路径,后续便可以按照规划的清扫路径进行清扫。
如果用户的房屋中存在多楼层,自移动机器人在每个楼层进行清扫时,可以构建出每个楼层的楼层地图。为了直观地向用户展示房屋的清扫状况,自移动机器人需要对多个楼层地图进行拼接,从而构建出房屋的三维效果图。然而,当前的自移动机器人可能不具备地图拼接功能,而是将多张楼层地图依次向用户展示。部分支持地图拼接功能的自移动机器人,也需要通过人工辅助才能完成地图拼接过程,而且地图拼接的准确度不够高,会导致拼接后的地图与实际的房屋结构存在差异。
发明内容
本申请的目的在于提供一种多楼层的地图拼接方法、系统及自移动机器人,能够提高地图拼接的准确度。
为实现上述目的,本申请一方面提供一种多楼层的地图拼接方法,所述方法包括:识别各层清扫区域中的标识物,并记录所述标识物的属性;根据记录的所述标识物的属性,对各层清扫区域中的标识物进行匹配;根据标识物的匹配结果,对各层清扫区域的地图进行拼接。
为实现上述目的,本申请另一方面还提供一种多楼层的地图拼接系统,所述系统包括:标识物识别单元,用于识别各层清扫区域中的标识物,并记录所述标识物的属性;标识物匹配单元,用于根据记录的所述标识物的属性,对各层清扫区域中的标识物进行匹配;地图拼接单元,用于根据标识物的匹配结果,对各层清扫区域的地图进行拼接。
为实现上述目的,本申请另一方面还提供一种自移动机器人,所述自移动机器人包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:识别各层清扫区域中的标识物,并记录所述标识物的属性;根据记录的所述标识物的属性,对各层清扫区域中的标识物进行匹配;根据标识物的匹配结果,对各层清扫区域的地图进行拼接。
由上可见,本申请一个或者多个实施方式提供的技术方案,在进行多楼层的地图拼接时,可以识别各楼层清扫区域中的标识物,并可以记录标识物的属性。通常而言,该标识物可以是房屋中具备明显特征和定位效果的物体。例如,标识物可以是房屋中的楼梯,或者墙壁上的窗户等。在记录了标识物的属性之后,可以根据记录的属性,将不同楼层的标识物进行匹配。被匹配至同一组的标识物,在房屋内通常具备较好的连贯性或者对齐效果。这样,在进行不同楼层的地图拼接时,将标识物的匹配结果作为参考,可以使得拼接后的地图更加符合房屋内的实际结构,进而提高了地图拼接的准确度。
附图说明
为了更清楚地说明本发明实施方式中的技术方案,下面将对实施方式描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施方式中多楼层的地图拼接方法示意图;
图2(a)至(d)是本发明实施方式中针对不同相对角度的楼梯口匹配示意图;
图3是本发明实施方式中螺旋型楼梯的示意图;
图4是本发明实施方式中L型楼梯的示意图;
图5是本发明实施方式中楼梯口匹配的示意图;
图6是本发明实施方式中窗户匹配的示意图;
图7是本发明实施方式中多楼层的地图拼接系统的功能模块示意图;
图8是本发明实施方式中自移动机器人的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施方式及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施方式仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。
本申请提供一种多楼层的地图拼接方法,该方法可以应用于自移动机器人中。其中,自移动机器人可以是具备房屋清洁功能的机器人。例如,自移动机器人可以包括扫地机器人、清洗机、擦窗机器人、空气净化机器人等。请参阅图1,本申请一个实施方式中提供的多楼层的地图拼接方法可以包括以下多个步骤。
S1:识别各层清扫区域中的标识物,并记录所述标识物的属性。
在本实施方式中,自移动机器人可以通过LDS(Laser-Direct-Structuring,激光直接成型)或者VSLAM(Visual Simultaneous Localization and Mapping,基于视觉的即时定位与地图构建)等技术,构建出当前楼层的清扫区域的地图。此外,自移动机器人上可以安装3D传感器(例如结构光传感器或者深度相机等),通过3D传感器可以采集自移动机器人附近的环境图像,针对采集到的环境图像可以通过提取图像特征、利用图像特征进行特征匹配等手段得到匹配的图像特征。然后,可以基于匹配的图像特征进行稀疏重建,从而得到各个图像的相机位姿。最终,可以基于相机位姿进行稠密重建,得到稠密点云,该稠密点云可以用于重建三维场景,从而识别出清扫区域内分布的物体。
在本实施方式中,为了辅助多楼层的地图拼接,可以预先在房屋中确定标识物,该标识物可以是房屋中具备明显特征和定位效果的物体。例如,标识物可以是房屋中的楼梯,或者墙壁上的窗户等。当自移动机器人在清扫区域中移动时,可以通过上述的方式,识别出清扫区域中出现的标识物。然后,根据标识物类型的不同,可以采用不同的方式记录标识物的属性。
具体地,若标识物为清扫区域中出现的楼梯,那么标识物的属性可以是楼梯在当前清扫区域中所处的位置、楼梯口类型、楼梯口朝向、识别出的台阶数量、台阶的尺寸、台阶的颜色、台阶的纹理中的至少一种。当然,在实际应用中,标识物的属性还可以包含更多或者更少的信息,本申请对此并不做限定。
在本实施方式中,上述例举的楼梯的部分属性,可以通过深度学习算法来识别。例如,楼梯口类型可以基于卷积神经网络进行识别。具体地,楼梯口类型可以包括上行楼梯口和下行楼梯口。楼梯口类型可以根据楼梯口相连的台阶的走向来确定。若台阶的走向为向上行走,可以判定楼梯口为上行楼梯口;若台阶的走向为向下行走,可以判定楼梯口为下行楼梯口。在实际应用中,可以通过对卷积神经网络进行训练,从而构建用于识别楼梯口类型的分类模型。具体地,可以预先准备大量的楼梯口样本,这些楼梯口样本中可以包括上行楼梯口样本和下行楼梯口样本,并且各个样本可以人工标注出楼梯口类型。这样,通过对这些大量的楼梯口样本进行学习,从而可以训练得到用于识别楼梯口类型的分类模型。该分类模型可以加载至自移动机器人内部,这样,自移动机器人通过对象检测(ObjectDetection)或者三维场景重建技术识别出楼梯后,可以利用该分类模型识别出当前清扫区域中的楼梯口的类型。此外,通过改变训练样本,也可以训练出用于识别台阶纹理的分类模型,这里便不再赘述。
在本实施方式中,通过结合自移动机器人的定位功能,可以识别出楼梯口在当前清扫区域中的位置和朝向。通过对象检测或者三维场景重建技术,可以识别出台阶数量、台阶尺寸、台阶颜色等属性。
在本实施方式中,若标识物为清扫区域的墙壁上的窗户,那么标识物的属性可以包括窗户的形状、窗户的面积、窗户各条边的比值、窗户的直径中的至少一种。其中,窗户的形状可以通过模板匹配算法来识别。具体地,可以预先准备多个通用形状(例如圆形、矩形、三角形等),然后可以计算窗户的形状与各个通用形状之间的相似度,并将相似度最高的通用形状作为识别出的窗户形状。通过自移动机器人上安装的结构光传感器或者深度相机,可以在相机坐标系中绘制出识别到的窗户,然后,根据相机坐标系中的坐标,可以计算出窗户的面积、窗户各条边的比值,以及可以识别出窗户的直径等具体参数。此外,在另一个应用场景中,结合自移动机器人上安装的单目相机以及自移动机器人的定位功能,也可以计算出窗户的各项参数。具体地,通过单目相机可以采集房屋内的视觉图像,然后可以通过SLAM(Simultaneous Localization and Mapping,即时定位与地图构建)技术提取视觉图像中的特征点。然后,可以通过三角化等算法,计算每个特征点在世界坐标系中的具体坐标,进而可以根据世界坐标系中的具体坐标,计算出窗户的各项具体参数。
当然,随着技术的不断发展,标识物的种类还可以包含更多,例如可以是房屋内的电梯、管道等。标识物的属性也可以根据标识物种类的不同,采用不同的技术进行记录。
S3:根据记录的所述标识物的属性,对各层清扫区域中的标识物进行匹配。
在本实施方式中,在记录了标识物的属性之后,可以根据记录的属性,将不同楼层的标识物进行匹配。匹配至同一组内的标识物,可以作为参考标准来辅助多楼层的地图拼接。举例来说,匹配至同一组内的楼梯口,可以位于同一个楼梯中,这样,在进行上下两个楼层的地图拼接时,通过确保同一组内的楼梯口处于合适的相对位置,并具备合理的朝向,从而可以保证拼接口的地图能够符合房屋的实际结构。
具体地,以楼梯口为例,在对不同楼层的楼梯口进行匹配时,可以先筛选出台阶数符合条件的目标楼梯。原因在于,在某些房屋结构中,台阶数较少的楼梯并不会连接上下不同的楼层,而只是作为下沉区域或者小平台区域的连接部分,而下沉区域和小平台区域依然属于当前楼层的清扫区域中,并不涉及上下楼层的地图拼接。鉴于此,自移动机器人在当前清扫区域中识别出楼梯后,可以进一步地对楼梯的台阶数进行判断,从而筛选出台阶数大于或者等于指定台阶数阈值的目标楼梯。该目标楼梯可以是连接上下两个不同楼层的楼梯。在实际应用中,上述的指定台阶数阈值可以根据大量的楼梯样本进行分析得到。例如,该指定台阶数阈值可以是5,当楼梯的台阶数达到5阶时,便可以认为该楼梯可以用于连接上下不同的楼层,此时,需要执行地图拼接功能。
在本实施方式中,针对筛选出的目标楼梯,可以对目标楼梯在当前清扫区域中的楼梯口进行分类。具体地,若在当前清扫区域中识别出楼梯口,可以判断楼梯口相连的台阶的走向。若台阶的走向为向上行走,则判定所述楼梯口为上行楼梯口。若台阶的走向为向下行走,则判定所述楼梯口为下行楼梯口。这样,不同楼层中的楼梯口,可以被划分为上行楼梯口和下行楼梯口。
对于连接不同楼层的楼梯而言,其通常至少具备一个上行楼梯口和一个下行楼梯口,当然,某些造型的楼梯也可以具备多个上行楼梯口和多个下行楼梯口。这样,在对楼梯口进行分类之后,可以将不同楼层中的上行楼梯口和下行楼梯口进行匹配,匹配至同一组的楼梯口可以位于同一个楼梯中。
在一个实施方式中,可以根据楼梯口对应的台阶属性,对不同楼层的楼梯口进行初步匹配。具体地,台阶属性可以包括台阶的尺寸、台阶的颜色、台阶的纹理中的至少一种。位于同一个楼梯中的上行楼梯口和下行楼梯口,通常具备相同的台阶尺寸、台阶颜色以及台阶纹理。这样,针对待分类的上行楼梯口和下行楼梯口,可以通过对象检测或者三维场景重建技术,分别获取所述上行楼梯口和所述下行楼梯口对应的台阶属性。若两个楼梯口的台阶属性均对应一致,则可以将所述上行楼梯口和所述下行楼梯口初步匹配至同一组中。
在本实施方式中,考虑到同一个房屋内楼梯的风格可能均一致,因此初步匹配至同一组中的楼梯口可能较多,这些楼梯口并不一定处于同一个楼梯中。鉴于此,可以根据上行楼梯口和下行楼梯口的相对位置,对对初步匹配的楼梯口再次进行匹配。其中,处于同一个楼梯中的上行楼梯口和下行楼梯口,在投影位置上往往也比较接近。因此,请参阅图2(a)至图2(d),针对初步匹配至同一组中的上行楼梯口和下行楼梯口,可以获取所述上行楼梯口所在楼层的第一地图(实线所示),以及所述下行楼梯口所在楼层的第二地图(虚线所示)。然后,可以在所述第一地图和所述第二地图的中心保持对齐的情况下,调整所述第一地图和所述第二地图的相对角度。例如,可以固定第一地图的位置不变,然后将第二地图相对于第一地图分别旋转0度、90度、180度以及270度,从而构成第一地图和第二地图的四种不同的相对角度。在各个相对角度下,可以记录所述上行楼梯口和所述下行楼梯口之间的投影距离。在记录投影距离时,可以将第二地图中的上行楼梯口投影至第一地图中,这样下行楼梯口与上行楼梯口的投影之间的距离,便可以作为上述的投影距离。根据记录的投影距离,可以判断所述上行楼梯口和所述下行楼梯口是否最终被匹配至同一组中。具体地,若记录的各个投影距离均大于指定距离阈值,则表示该上行楼梯口和下行楼梯口之间存在较大的距离,不太可能处于同一楼梯中,此时,可以判定所述上行楼梯口和所述下行楼梯口无法被匹配至同一组中。而如果记录的各个投影距离中存在小于或者等于所述指定距离阈值的投影距离,则表明在某个相对角度下,该上行楼梯口和下行楼梯口之间距离较近,可能位于同一楼梯中,此时,可以判定所述上行楼梯口和所述下行楼梯口最终被匹配至同一组中。
在一个实施方式中,标识物还可以包括窗户,在记录了窗户的各项属性后,也可以根据这些属性对不同楼层的窗户进行匹配。具体地,针对不同楼层的第一窗户和第二窗户,可以根据所述第一窗户和所述第二窗户的属性,计算所述第一窗户和所述第二窗户的相似度。其中,第一窗户和第二窗户之间的相似度,可以通过多方面的数据进行表示。例如,第一窗户和第二窗户之间的相似度,可以通过窗户的形状来表示。形状越相同的窗户,相似度越高。此外,第一窗户和第二窗户之间的相似度,还可以通过窗户的面积来表示。面积越一致的窗户,相似度越高。再者,对于同为矩形的第一窗户和第二窗户而言,它们之间的相似度,还可以通过长和宽的比值来表示。长和宽的比值越一致,相似度越高。对于同为圆形的第一窗户和第二窗户而言,它们之间的相似度,还可以通过直径来表示。直径越一致,相似度越高。对于三角形或者不规则多边形的第一窗户和第二窗户而言,它们之间的相似度,还可以通过各条边的比值来表示。各条边的比值越一致,相似度越高。
在实际应用中,自移动机器人可以分别采集包含第一窗户的图像和包含第二窗户的图像,然后,可以通过直方图匹配、矩阵分解、sift(scale-invariant featuretransform,尺度不变特征转换)算法等方法,计算两幅图像之间的相似度,并将计算得到的相似度作为第一窗户和第二窗户的相似度。
在本实施方式中,在计算得到第一窗户和第二窗户的相似度之后,若所述相似度大于或者等于指定相似度阈值,则可以将所述第一窗户和所述第二窗户匹配至同一组中。其中,指定相似度阈值可以根据应用场景灵活设置,例如,该指定相似度阈值可以是90%。
S5:根据标识物的匹配结果,对各层清扫区域的地图进行拼接。
在本实施方式中,在完成了标识物的匹配之后,可以将匹配结果作为地图拼接过程中的参考标准,来辅助多楼层的地图拼接。
具体地,自移动机器人在识别出楼梯之后,可以根据楼梯的形状,获取与楼梯的形状相对应的楼梯参数。针对完成匹配的下行楼梯口和上行楼梯口,可以根据获取的所述楼梯参数,预测所述上行楼梯口相对于所述下行楼梯口的位置和朝向。
具体地,不同形状的楼梯,对应的楼梯参数也不同。请参阅图3,若识别出的楼梯为螺旋形楼梯,可以根据当前清扫区域中识别出的楼梯形状,拟合该楼梯的曲率公式。在实际应用中,自移动机器人在当前的视野中捕捉到楼梯的部分形状之后,可以将该形状转换为相机坐标系中的坐标参数,然后通过分段插值的方式,拟合出楼梯对应的曲率公式。在该曲率公式中,下行楼梯口的位置和楼梯的垂直高度(上下楼层的层高)可以作为自变量。其中,下行楼梯口的位置可以结合自移动机器人的定位功能确定,并转换至相机坐标系中作为位置参数,楼梯的垂直高度也可以由自移动机器人通过视觉成像技术计算得到,这样,将这两个参数代入拟合的曲率公式中,便可以得到上行楼梯口相对于下行楼梯口的位置和朝向。
此外,识别出的楼梯还可能是如图4所示的L型楼梯,该L型楼梯通常可以包括多段斜面,斜面与水平地面可以具备一定的夹角,斜面与斜面之间也可以存在拐角。针对L型楼梯获取楼梯参数时,可以在当前清扫区域中识别楼梯的斜面与地面的夹角,并识别楼梯中不同斜面之间的拐角,以及确定各个斜面对应的垂直高度。例如在图4中可以包括两段斜面,可以分别识别每段斜面与水平地面的夹角。两个斜面之间的拐角,可以根据斜面的走向来确定。在图4中,两个斜面的走向可以通过各自的有向线段来表示。在确定两个斜面之间的拐角时,可以确定其中一个有向线段在另一个有向线段上的投影,然后投影与另一个有向线段之间的夹角可以作为两个斜面的拐角。例如在图4中,两个斜面的拐角为180度,表示两个斜面在行走方向上完全相反。各个斜面对应的垂直高度,可以是斜面的起始点与终止点之间的垂直高度。这样,通过斜面与水平地面的夹角和斜面的垂直高度,利用三角函数可以计算出斜面的长度。通过不同斜面之间的拐角,可以确定不同斜面之间的相对位置,从而可以构建出整个L型楼梯中各个斜面的空间分布。在确定出L型楼梯的空间分布后,下行楼梯口和上行楼梯口可以分别位于L型楼梯的两端,这样,根据下行楼梯口的位置和朝向,便可以确定出上行楼梯口相对于下行楼梯口的位置和朝向。
另外,识别出的楼梯还可以是直线型的楼梯,直线型的楼梯可以视为只有一个斜面的L型楼梯。这样,在获取直线型楼梯的楼梯参数时,可以在当前清扫区域中识别楼梯的斜面与地面的夹角,并确定楼梯的垂直高度。然后,根据三角函数公式,可以计算出直线型楼梯的斜面长度。这样,以下行楼梯口的位置为起点,根据夹角和垂直高度计算出斜面长度后,可以推断出上行楼梯口相对于下行楼梯口的位置和朝向。
在本实施方式中,在预测出上行楼梯口相对于下行楼梯口的位置和朝向后,便可以利用这两个楼梯口之间的相对位置以及各自的朝向,进行上下楼层的地图拼接。具体地,请参阅图5,矩形区域表征下行楼梯口所在的清扫区域,该区域中的实线表征的是下行楼梯口的位置和朝向,虚线表征的就是预测得到的上行楼梯口相对于下行楼梯口的位置和朝向。这样,可以固定所述下行楼梯口所在楼层的第一地图,并对所述上行楼梯口所在楼层的第二地图进行平移和旋转,以使得平移和旋转后的第二地图中所述上行楼梯口相对于所述下行楼梯口的位置和朝向,与预测的位置和朝向分别保持一致。这样,借助于上行楼梯口预测得到的位置和朝向,经过平移和旋转后的第二地图与第一地图进行拼接后,可以与实际的房屋结构保持一致,从而具备了较高的拼接准确度。
在一个实施方式中,为了减少地图拼接的误差,还可以结合窗户的位置对地图拼接结果进行校正。具体地,可以预先规定步骤S3中被匹配至同一组中的多扇窗户需要位于同一面墙壁上,并且这多扇窗户的竖直中轴要基本位于同一直线上。例如在图6中,竖直实线穿过的两扇窗户被匹配至同一组中,那么在进行地图拼接时,要确保这两扇窗户位于同一面墙壁上,并且这两扇窗户的竖直中轴要基本位于同一直线上。这样,通过楼梯和窗户相结合的方式,可以使得多楼层地图拼接的准确度更高。
在本实施方式中,在完成多楼层的地图拼接后,自移动机器人可以通过三维渲染技术,将房屋的三维立体户型图展示给用户观看,并且根据自移动机器人自身的定位功能,可以标识出自移动机器人当前位于哪个楼层的哪个位置进行清扫,同时,还能够标注出已经完成清扫的区域,从而提供给用户更加直观的清扫观感。
在一个具体应用场景中,扫地机器人可以与用户的智能手机预先完成匹配,这样,扫地机器人可以向用户的智能手机发送构建的房屋地图,并可以展示扫地机器人当前所处的位置,以及当前已经完成清扫的区域。用户则可以通过智能手机向扫地机器人下达各项操作指令。
扫地机器人在各楼层中清扫时,如果识别出台阶数大于或者等于5的楼梯,便可以开启多楼梯地图的拼接功能。在该功能下,扫地机器人可以在各楼层采集楼梯和窗户的数据,并根据上述的多个步骤对采集的数据进行分析和计算,从而完成楼梯口以及窗户的匹配过程。
扫地机器人在完成各楼层的地图采集以及楼梯口和窗户的匹配之后,便可以按照匹配结果将多楼层的地图进行拼接,从而构建出房屋的三维结构示意图。该三维结构示意图可以存储于扫地机器人的系统中,同时还能够发送至用户的智能手机上,以供用户查看。后续,在进行清扫时,扫地机器人可以读取保存的三维结构示意图,并根据自身的定位功能进行位置匹配,从而确定出自身当前所处的位置。随着清扫过程的进行,也能够在三维结构示意图中标注出已经完成清扫的区域。这些信息均可以实时反馈至用户的智能手机上,这样,用户可以随时查看房屋的清扫进度。
请参阅图7,本申请还提供一种多楼层的地图拼接系统,所述系统包括:
标识物识别单元,用于识别各层清扫区域中的标识物,并记录所述标识物的属性;
标识物匹配单元,用于根据记录的所述标识物的属性,对各层清扫区域中的标识物进行匹配;
地图拼接单元,用于根据标识物的匹配结果,对各层清扫区域的地图进行拼接。
请参阅图8,本申请还提供一种自移动机器人,所述自移动机器人包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:
识别各层清扫区域中的标识物,并记录所述标识物的属性;
根据记录的所述标识物的属性,对各层清扫区域中的标识物进行匹配;
根据标识物的匹配结果,对各层清扫区域的地图进行拼接。
在本实施方式中,所述存储器可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方法的媒体加以存储。该存储器可以包括:利用电能方式存储信息的装置,如RAM、ROM等;利用磁能方式存储信息的装置,如硬盘、软盘、磁带、磁芯存储器、磁泡存储器、U盘;利用光学方式存储信息的装置,如CD或DVD。当然,还有其他方式的存储器,例如量子存储器、石墨烯存储器等等。
在本实施方式中,所述处理器可以按任何适当的方式实现。例如,所述处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。
本说明书中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。
由上可见,本申请一个或者多个实施方式提供的技术方案,在进行多楼层的地图拼接时,可以识别各楼层清扫区域中的标识物,并可以记录标识物的属性。通常而言,该标识物可以是房屋中具备明显特征和定位效果的物体。例如,标识物可以是房屋中的楼梯,或者墙壁上的窗户等。在记录了标识物的属性之后,可以根据记录的属性,将不同楼层的标识物进行匹配。被匹配至同一组的标识物,在房屋内通常具备较好的连贯性或者对齐效果。这样,在进行不同楼层的地图拼接时,将标识物的匹配结果作为参考,可以使得拼接后的地图更加符合房屋内的实际结构,进而提高了地图拼接的准确度。
本领域内的技术人员应明白,本发明的实施方式可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施方式、完全软件实施方式、或结合软件和硬件方面的实施方式的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施方式的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施方式而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (17)
1.一种多楼层的地图拼接方法,其特征在于,所述方法包括:
识别各层清扫区域中的标识物,并记录所述标识物的属性;
根据记录的所述标识物的属性,对各层清扫区域中的标识物进行匹配;
根据标识物的匹配结果,对各层清扫区域的地图进行拼接。
2.根据权利要求1所述的方法,其特征在于,所述标识物包括所述清扫区域中出现的楼梯,所述标识物的属性包括楼梯在当前清扫区域中所处的位置、楼梯口类型、楼梯口朝向、识别出的台阶数量、台阶的尺寸、台阶的颜色、台阶的纹理中的至少一种。
3.根据权利要求2所述的方法,其特征在于,对各层清扫区域中的标识物进行匹配包括:
从识别出的楼梯中,筛选出台阶数大于或者等于指定台阶数阈值的目标楼梯,并将所述目标楼梯的楼梯口按照楼梯口类型进行分类;其中,所述楼梯口类型包括上行楼梯口和下行楼梯口;
将分类后的楼梯口进行匹配,其中,匹配至同一组的多个楼梯口位于同一个楼梯中。
4.根据权利要求2或3所述的方法,其特征在于,所述楼梯口类型按照以下方式确定:
若在当前清扫区域中识别出楼梯口,判断所述楼梯口相连的台阶的走向;
若所述台阶的走向为向上行走,判定所述楼梯口为上行楼梯口;若所述台阶的走向为向下行走,判定所述楼梯口为下行楼梯口。
5.根据权利要求3所述的方法,其特征在于,将分类后的楼梯口进行匹配包括:
针对待分类的上行楼梯口和下行楼梯口,分别获取所述上行楼梯口和所述下行楼梯口对应的台阶属性,若所述台阶属性对应一致,将所述上行楼梯口和所述下行楼梯口初步匹配至同一组中;其中,所述台阶属性包括台阶的尺寸、台阶的颜色、台阶的纹理中的至少一种。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
针对初步匹配至同一组中的上行楼梯口和下行楼梯口,获取所述上行楼梯口所在楼层的第一地图,以及所述下行楼梯口所在楼层的第二地图;
在所述第一地图和所述第二地图的中心保持对齐的情况下,调整所述第一地图和所述第二地图的相对角度,并在各个相对角度下记录所述上行楼梯口和所述下行楼梯口之间的投影距离;
根据记录的投影距离判断所述上行楼梯口和所述下行楼梯口是否最终被匹配至同一组中。
7.根据权利要求6所述的方法,其特征在于,根据记录的投影距离判断所述上行楼梯口和所述下行楼梯口是否最终被匹配至同一组中包括:
若记录的各个投影距离均大于指定距离阈值,判定所述上行楼梯口和所述下行楼梯口无法被匹配至同一组中;
若记录的各个投影距离中存在小于或者等于所述指定距离阈值的投影距离,判定所述上行楼梯口和所述下行楼梯口最终被匹配至同一组中。
8.根据权利要求1或2所述的方法,其特征在于,对各层清扫区域的地图进行拼接包括:
在所述标识物包含楼梯的情况下,识别所述楼梯的形状,并获取与所述楼梯的形状相对应的楼梯参数;
针对完成匹配的下行楼梯口和上行楼梯口,根据获取的所述楼梯参数,预测所述上行楼梯口相对于所述下行楼梯口的位置和朝向;
根据预测的所述上行楼梯口的位置和朝向,将所述上行楼梯口所在楼层的地图与所述下行楼梯口所在楼层的地图进行拼接。
9.根据权利要求8所述的方法,其特征在于,获取与所述楼梯的形状相对应的楼梯参数包括:
根据当前清扫区域中识别出的楼梯形状,拟合所述楼梯的曲率公式,并获取所述楼梯的垂直高度;
相应地,预测所述上行楼梯口相对于所述下行楼梯口的位置和朝向包括:
将所述下行楼梯口的位置参数和所述楼梯的垂直高度代入所述曲率公式中,并将输出结果作为所述上行楼梯口相对于所述下行楼梯口的位置和朝向。
10.根据权利要求8所述的方法,其特征在于,获取与所述楼梯的形状相对应的楼梯参数包括:
在当前清扫区域中识别所述楼梯的斜面与地面的夹角,并识别所述楼梯中不同斜面之间的拐角,以及确定各个斜面对应的垂直高度;
相应地,预测所述上行楼梯口相对于所述下行楼梯口的位置和朝向包括:
根据识别的所述夹角、所述拐角以及确定的所述垂直高度,确定所述楼梯中各个斜面的空间分布,以根据所述空间分布确定所述上行楼梯口相对于所述下行楼梯口的位置和朝向。
11.根据权利要求8所述的方法,其特征在于,获取与所述楼梯的形状相对应的楼梯参数包括:
在当前清扫区域中识别所述楼梯的斜面与地面的夹角,并确定所述楼梯的垂直高度;
相应地,预测所述上行楼梯口相对于所述下行楼梯口的位置和朝向包括:
以所述下行楼梯口的位置为起点,根据所述夹角和所述垂直高度,计算所述上行楼梯口相对于所述下行楼梯口的位置和朝向。
12.根据权利要求8所述的方法,其特征在于,将所述上行楼梯口所在楼层的地图与所述下行楼梯口所在楼层的地图进行拼接包括:
固定所述下行楼梯口所在楼层的第一地图,并对所述上行楼梯口所在楼层的第二地图进行平移和旋转,以使得平移和旋转后的第二地图中所述上行楼梯口相对于所述下行楼梯口的位置和朝向,与预测的位置和朝向分别保持一致。
13.根据权利要求1或2所述的方法,其特征在于,所述标识物还包括所述清扫区域的墙壁上的窗户,所述标识物的属性包括窗户的形状、窗户的面积、窗户各条边的比值、窗户的直径中的至少一种。
14.根据权利要求13所述的方法,其特征在于,对各层清扫区域中的标识物进行匹配包括:
针对不同楼层的第一窗户和第二窗户,根据所述第一窗户和所述第二窗户的属性,计算所述第一窗户和所述第二窗户的相似度,若所述相似度大于或者等于指定相似度阈值,将所述第一窗户和所述第二窗户匹配至同一组中。
15.根据权利要求13所述的方法,其特征在于,对各层清扫区域的地图进行拼接包括:
确保拼接后的不同楼层的清扫区域的地图中,被匹配至同一组的多扇窗户位于同一面墙壁上,并且所述多扇窗户的竖直中轴位于同一直线上。
16.一种多楼层的地图拼接系统,其特征在于,所述系统包括:
标识物识别单元,用于识别各层清扫区域中的标识物,并记录所述标识物的属性;
标识物匹配单元,用于根据记录的所述标识物的属性,对各层清扫区域中的标识物进行匹配;
地图拼接单元,用于根据标识物的匹配结果,对各层清扫区域的地图进行拼接。
17.一种自移动机器人,其特征在于,所述自移动机器人包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现以下功能:
识别各层清扫区域中的标识物,并记录所述标识物的属性;
根据记录的所述标识物的属性,对各层清扫区域中的标识物进行匹配;
根据标识物的匹配结果,对各层清扫区域的地图进行拼接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010553948.5A CN111784819B (zh) | 2020-06-17 | 2020-06-17 | 一种多楼层的地图拼接方法、系统及自移动机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010553948.5A CN111784819B (zh) | 2020-06-17 | 2020-06-17 | 一种多楼层的地图拼接方法、系统及自移动机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111784819A true CN111784819A (zh) | 2020-10-16 |
CN111784819B CN111784819B (zh) | 2023-08-29 |
Family
ID=72756807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010553948.5A Active CN111784819B (zh) | 2020-06-17 | 2020-06-17 | 一种多楼层的地图拼接方法、系统及自移动机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111784819B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112405522A (zh) * | 2020-10-19 | 2021-02-26 | 深圳优地科技有限公司 | 跨楼层地图切换方法、装置、机器人及存储介质 |
CN113590728A (zh) * | 2021-07-09 | 2021-11-02 | 北京小米移动软件有限公司 | 地图切换方法和装置、清扫设备、存储介质 |
CN113628328A (zh) * | 2021-08-12 | 2021-11-09 | 深圳须弥云图空间科技有限公司 | 一种针对拼缝构件的模型渲染方法及装置 |
CN114047753A (zh) * | 2021-11-03 | 2022-02-15 | 哈尔滨鹏路智能科技有限公司 | 一种基于深度视觉的扫地机器人障碍物识别和避障方法 |
CN115177178A (zh) * | 2021-04-06 | 2022-10-14 | 美智纵横科技有限责任公司 | 一种清扫方法、装置和计算机存储介质 |
CN115336936A (zh) * | 2021-05-12 | 2022-11-15 | 尚科宁家(中国)科技有限公司 | 一种清洁机器人跨楼层的控制方法和清洁机器人 |
CN115413959A (zh) * | 2021-05-12 | 2022-12-02 | 美智纵横科技有限责任公司 | 基于清洁机器人的运行方法、装置、电子设备及介质 |
CN118225075A (zh) * | 2024-05-27 | 2024-06-21 | 长城汽车股份有限公司 | 停车场地图生成方法、电子设备及车辆 |
CN115413959B (zh) * | 2021-05-12 | 2024-10-22 | 美智纵横科技有限责任公司 | 基于清洁机器人的运行方法、装置、电子设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107665503A (zh) * | 2017-08-28 | 2018-02-06 | 汕头大学 | 一种构建多楼层三维地图的方法 |
CN110376934A (zh) * | 2019-06-12 | 2019-10-25 | 深圳飞科机器人有限公司 | 清洁机器人、清洁机器人控制方法及终端控制方法 |
CN110533209A (zh) * | 2018-05-25 | 2019-12-03 | 南京理工大学 | 一种人车分流的停车场多楼层路径规划方法 |
-
2020
- 2020-06-17 CN CN202010553948.5A patent/CN111784819B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107665503A (zh) * | 2017-08-28 | 2018-02-06 | 汕头大学 | 一种构建多楼层三维地图的方法 |
CN110533209A (zh) * | 2018-05-25 | 2019-12-03 | 南京理工大学 | 一种人车分流的停车场多楼层路径规划方法 |
CN110376934A (zh) * | 2019-06-12 | 2019-10-25 | 深圳飞科机器人有限公司 | 清洁机器人、清洁机器人控制方法及终端控制方法 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112405522A (zh) * | 2020-10-19 | 2021-02-26 | 深圳优地科技有限公司 | 跨楼层地图切换方法、装置、机器人及存储介质 |
CN115177178A (zh) * | 2021-04-06 | 2022-10-14 | 美智纵横科技有限责任公司 | 一种清扫方法、装置和计算机存储介质 |
CN115336936A (zh) * | 2021-05-12 | 2022-11-15 | 尚科宁家(中国)科技有限公司 | 一种清洁机器人跨楼层的控制方法和清洁机器人 |
CN115413959A (zh) * | 2021-05-12 | 2022-12-02 | 美智纵横科技有限责任公司 | 基于清洁机器人的运行方法、装置、电子设备及介质 |
CN115413959B (zh) * | 2021-05-12 | 2024-10-22 | 美智纵横科技有限责任公司 | 基于清洁机器人的运行方法、装置、电子设备及介质 |
CN113590728A (zh) * | 2021-07-09 | 2021-11-02 | 北京小米移动软件有限公司 | 地图切换方法和装置、清扫设备、存储介质 |
CN113628328A (zh) * | 2021-08-12 | 2021-11-09 | 深圳须弥云图空间科技有限公司 | 一种针对拼缝构件的模型渲染方法及装置 |
CN113628328B (zh) * | 2021-08-12 | 2024-05-10 | 深圳须弥云图空间科技有限公司 | 一种针对拼缝构件的模型渲染方法及装置 |
CN114047753A (zh) * | 2021-11-03 | 2022-02-15 | 哈尔滨鹏路智能科技有限公司 | 一种基于深度视觉的扫地机器人障碍物识别和避障方法 |
CN118225075A (zh) * | 2024-05-27 | 2024-06-21 | 长城汽车股份有限公司 | 停车场地图生成方法、电子设备及车辆 |
Also Published As
Publication number | Publication date |
---|---|
CN111784819B (zh) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111784819B (zh) | 一种多楼层的地图拼接方法、系统及自移动机器人 | |
US11816907B2 (en) | Systems and methods for extracting information about objects from scene information | |
AU2020200546B2 (en) | Structure modelling | |
Adán et al. | An autonomous robotic platform for automatic extraction of detailed semantic models of buildings | |
Adan et al. | 3D reconstruction of interior wall surfaces under occlusion and clutter | |
Tang et al. | Automatic reconstruction of as-built building information models from laser-scanned point clouds: A review of related techniques | |
Xiong et al. | Automatic creation of semantically rich 3D building models from laser scanner data | |
Shao et al. | Seed point set-based building roof extraction from airborne LiDAR point clouds using a top-down strategy | |
Fichtner et al. | Semantic enrichment of octree structured point clouds for multi‐story 3D pathfinding | |
Oh et al. | TRAVEL: Traversable ground and above-ground object segmentation using graph representation of 3D LiDAR scans | |
JP2020530598A (ja) | 地図構築方法、画像収集処理システムと測位方法 | |
US10282490B2 (en) | Estimation of three-dimensional models of roofs from spatial two-dimensional graphs | |
Staats et al. | Automatic generation of indoor navigable space using a point cloud and its scanner trajectory | |
Tutzauer et al. | Façade reconstruction using geometric and radiometric point cloud information | |
Hübner et al. | Voxel-based indoor reconstruction from hololens triangle meshes | |
López Iglesias et al. | Revision of automation methods for scan to BIM | |
CN113920254A (zh) | 一种基于单目rgb的室内三维重建方法及其系统 | |
Miyazaki et al. | Line-based planar structure extraction from a point cloud with an anisotropic distribution | |
Gourguechon et al. | Automation of as-built bim creation from point cloud: An overview of research works focused on indoor environment | |
Meixner et al. | Interpretation of 2D and 3D building details on facades and roofs | |
CN114092805B (zh) | 一种基于建筑模型的机器狗识别裂痕方法 | |
De Geyter et al. | Automated training data creation for semantic segmentation of 3D point clouds | |
Yang et al. | Detection of Space Connectivity from Point Cloud for Stair Reconstruction | |
Kim et al. | Vision-based Recognition Algorithm for Up-To-Date Indoor Digital Map Generations at Damaged Buildings. | |
Zhai et al. | Semantic enrichment of BIM with IndoorGML for quadruped robot navigation and automated 3D scanning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |