用于自主定位的设备和方法与流程

文档序号:15104340发布日期:2018-08-04 16:30阅读:285来源:国知局

本发明涉及由移动机器人执行的定位。更具体地,本发明涉及使用多个相机拍摄视觉图像来进行定位。



背景技术:

由于使得能够用于半自主和自主机器人的机器人技术的发展,移动机器人的定位已经成为活跃的研究领域。移动机器人必须具有至少估计其在空间中的位置以具有目的的继续运动的方法。为了估计它的位置,机器人必须使用可以将它本身放置在其上的某种地图。这样的地图可以预先加载到机器人上,也可以由机器人本身来获得。在后一种情况下,可以与机器人定位同时获得该地图,或者可以首先研发该地图以稍后用作定位的一部分。定位的最新架构包括相对于其完成定位的坐标系和作为位置和定向的组合的姿态。可以相对于绝对坐标系(例如GPS坐标)或者相对坐标系(例如相对于某个已知位置和/或对象的定位)来完成定位。可以任意选择坐标系,只要它是一致的并且可以根据需要转换成某个标准坐标系(例如WGS84)即可。

多个传感器读数可以有助于姿态计算——所述多个传感器读数可以使用GPS接收器、激光雷达(光雷达)传感器、相机、里程计、陀螺仪、加速度计、磁力计、飞行时间相机以及雷达传感器来确定。在定位的背景下存在重要的区别:可以基于现有的地图来完成,或者可以与地图绘制同时完成。后者被称为SLAM(同时定位和地图绘制),并且是在探索先前未知的环境的同时执行定位的情况下优选的方法。如果地图已经可用,则该任务变得更容易。例如,在室内环境(例如公寓或医院)或者结构化室外环境(例如联合工厂)中的定位更容易,因为很容易获得详细的地图,并且短期内不可能发生显著改变。在非结构化环境(例如城市、郊区和/或村庄)中进行室外定位是比较大的挑战。首先,公开可用的地图对于机器人的自主运动来说不够精确。其次,即使在地图存在的情况下,它们很可能会由于出现了新的障碍以及旧的道路消失而很快过时。可以在定位系统例如GPS(全球定位系统)、GLONASS(全球导航卫星系统)或伽利略的帮助下完成室外定位。然而,这些系统(可供公众使用)的精确度为1至10米的量级。这对于用于自主机器人导航的定位来说是不够的。

定位问题的现有解决方案强烈依赖于要定位的对象的预期应用。

US 8,717,545 B2公开了一种使用来自激光雷达系统的距离和多普勒速度测量结果和来自视频系统的图像来估计目标的六自由度轨迹的系统。一旦估计了该目标的运动方面,就可以生成目标的三维图像。

US 7,015,831 B2公开了一种使用视觉传感器和航位推测(dead reckoning)传感器来处理同时定位和地图绘制(SLAM)的方法和装置。有利地,这样的视觉技术可以用于自主地生成和更新地图。与激光测距仪不同,视觉技术在广泛应用中是经济实用的,并且可以用于相对动态的环境例如人们移动的环境中。

所公开的方法可以在室内环境中操作的自动真空清洁器中实现。

US 8,305,430B2公开了一种用于在单目配置中对任意数目的相机进行固定的或已知的校准的视觉测距系统和方法。从这种分布式光圈系统中的每个相机收集的图像具有可忽略的重叠或者完全无重叠。

该系统使用多个相机,但是在比较和细化它们之前分别在每个相机中生成姿态假设。

Schindler等人(3D Data Processing,Visualization,and Transmission,Third International Symposium,846-853页,IEEE,2006年)讨论了用于恢复来自多个广泛分离的视图的场景中的3D线条结构的新颖方法。在这种方法中,借助基于EM的消失点估计方法在图像中自动检测2D线条,所述基于EM的消失点估计方法假设沿着相互正交的消失方向存在边缘。呈现了基于跨图像手动创建的特征对应的城市场景的3D重建结果。

Murillo,A.C.等人(Robotics and Autonomous Systems 55,第5号(2007年):372-382)提出了一种用于使用全向相机的全球机器人定位的新的基于视觉的方法。拓扑和度量定位信息被组合在高效的、分层过程中,其中,每个步骤比前一步骤更复杂和准确,但是评估的图像更少。



技术实现要素:

在权利要求以及在下面的描述中说明了本发明。在从属权利要求和各种实施方式的描述中具体地说明了优选的实施方式。

在第一方面,本发明提供了一种移动机器人,其包括(i)包括至少地图数据的至少一个存储器部件;(ii)适于拍摄环境的视觉图像的至少两个相机;以及(iii)适于从由至少两个相机拍摄的视觉图像中至少提取直线、并将它们与地图数据相比较以至少定位机器人的至少一个处理部件。

在第二方面,提供了使用本发明的定位方法。定位方法可以使用本文中所描述的系统的任何特征。定位方法可以包括使用至少两个相机拍摄视觉图像。定位方法还可以包括使用至少一个处理部件从各个视觉图像中提取直线。该方法还可以包括将所提取的特征与现有地图数据相比较。该方法还可以包括基于所提取的特征与地图数据之间的比较来输出位置假设。

在一些实施方式中,定位方法还可以包括使用所输出的位置假设来输出移动机器人姿态的步骤。该方法还可以包括使用所获得的姿态来对移动机器人进行导航。在一些实施方式中,机器人可以适于对其本身进行导航,即机器人是自主的和/或半自主的。

在一些实施方式中,将所提取的特征和/或直线与现有地图数据相比较并输出位置假设可以包括使用迭代概率算法来确定在给定所存储的地图数据的情况下的最佳位置假设。在一些优选的实施方式中,可以使用基于粒子滤波的算法。特别地,使用迭代概率算法是有利的,因为地图数据和从相机图像中提取的线条均可以包括与机器人的传感器(例如相机)相关联的误差和/或与生成地图数据的过程相关联的误差。为了处理数据及其相关联的误差,将概率分配给不同的可能的结果或输出并对它们进行迭代处理是可行的。这可以导致更稳健且更可靠的输出、增加定位方法的成功。在另一实施方式中,本发明提供了包括至少两个移动机器人的移动机器人集合,并且每个机器人包括:(i)包括至少地图数据的至少一个存储器部件;(ii)适于拍摄环境的视觉图像的至少两个相机;(iii)适于从由至少一个相机拍摄的视觉图像中至少提取特征、并将它们与地图数据相比较以至少定位机器人的至少一个处理部件;以及(iv)适于在机器人之间发送和接收数据特别是图像和/或地图数据的至少一个通信部件。

在另一实施方式中,提供了使用本发明的地图绘制方法。该地图绘制方法可以使用上文和下文列出的系统的任何特征。该地图绘制方法包括:(i)操作包括至少两个相机和至少一个处理部件的至少一个移动机器人;(ii)使用至少一个机器人的至少两个相机拍摄视觉图像;(iii)对通过组合来自至少两个相机的视觉图像而生成的文件执行预处理;(iv)使用至少一个处理部件从各个视觉图像中提取特征;以及(v)使用从视觉图像中所提取的特征来构建地图数据。

在另一实施方式中,提供了使用本发明的定位方法。该定位方法可以使用本文中所描述的系统的任何特征。该定位方法包括:(i)操作包括至少两个相机、至少一个存储器部件以及至少一个处理部件的至少一个移动机器人;(ii)使用至少一个机器人的至少两个相机部件拍摄视觉图像;(iii)对通过组合来自至少两个相机的视觉图像而生成的文件执行预处理;(iv)使用至少一个处理部件从各个视觉图像中提取特征;(v)将所提取的特征与存储在至少一个机器人的至少一个存储器部件中的现有地图数据相比较;以及(vi)使用(v)中的比较来定位至少一个机器人。

在另一实施方式中,提供了使用本发明的定位方法。该定位方法可以使用本文中所描述的系统的任何特征。该方法包括:(i)提供包括至少一个航位推测部件、至少两个相机、至少一个存储器部件以及至少一个处理部件的至少一个移动机器人;以及(ii)使用至少一个机器人的至少两个相机部件拍摄视觉图像;以及(iii)使用至少一个处理部件从各个视觉图像中提取特征;以及(iv)从(iii)中所提取的特征获得位置相关数据;以及(v)从至少一个航位推测部件接收位置相关数据;以及(vi)将(iv)中从提取自视觉图像的特征获得的位置相关数据与(v)中从至少航位推测部件接收的、基于与它们中的每一个相关联的误差而加权的位置相关数据相组合;以及(vii)基于(vi)中相组合的数据来形成关于机器人的姿态的假设。

移动机器人可以是自主和/或半自主机器人。机器人可以是基于陆地的。机器人可以适于在地面上移动。特别地,机器人可以被轮转并且适于在包括移动和固定障碍物的非结构化城市区域中移动。在一个实施方式中,机器人包括一组安装在框架上的至少4(四)个轮子。机器人还可以包括安装在框架上的本体。机器人还可以包括安装在本体上和/或框架上的灯。该灯可以是LED灯。这些灯可以帮助机器人在短标度内进行定位和/或导航和/或进行障碍物检测。灯可以在黑暗和/或黄昏时照亮机器人在其中操作的环境。附加地或可替选地,机器人可以包括用于与其周围例如城市区域例如行人通道上的行人通信的至少一个麦克风和/或至少一个扬声器。

本文中所描述的相机和其他部件可以安装在机器人的框架上和/或本体上。在一个特定实施方式中,机器人的尺寸为宽度:40至70cm,例如约55cm;高度:40至70cm,例如约60cm;长度:50至80cm,例如约65cm。本发明可以包括多于一个机器人。在一个实施方式中,机器人可以在其大部分操作期间自主操作,例如约95%的时间、约97%的时间、约98%的时间或约99%的时间。机器人可以适于以不超过10km/h、或不超过8km/h、或不超过6km/h的速度行进。在优选的实施方式中,机器人以3km/h与6km/h之间的速度和/或以4km/h与5km/h之间的速度行驶。在优选的实施方式中,机器人可以用于输送目的。机器人可以在其本体内包括在运输期间可以存储至少一个输送物的封闭空间。机器人还可以包括用于提供对空间的访问的安全访问设备。该设备可以是由安全接口控制的锁和/或闭合机构。机器人和输送物可以具有不超过40kg例如不超过35kg、例如不超过30kg、例如不超过25kg的组合重量。在优选的实施方式中,机器人和输送物具有10至25kg的组合重量,更优选地为10至20kg。

移动机器人的存储器部件可以包括随机存取存储器(RAM)器件。它可以是独立部件,或者在优选的实施方式中可以是片上系统(SoC)的集成部分。存储器部件优选地存储至少可以与机器人的当前操作区域和/或预期操作区域有关的地图数据。操作区域、也称为操作的区域可以是固定的,或者可以在机器人操作过程期间进行修改。在优选的实施方式中,操作区域包括可以由城市、村庄、社区和/或城市的任意定义部分组成的居住区域。操作区域也可以包括具有独立的人类居住区的区域和/或人类常去的区域。

可以存储在存储器部件内的地图数据可以包括相对于某个坐标系定义的多个矢量、直线、点特征和/或网格特征。地图数据可以包括相对于任意但固定的坐标系定义的两个点和/或点和方向。该坐标系可以绑定至机器人,例如,将相机中的一个用作原点,运动方向用作x轴。坐标系也可以独立于机器人,例如GPS系统。坐标系可以是近似球体的一部分的笛卡尔坐标系,使得曲率不会引入显著误差。坐标系可以被转换成GPS坐标系(例如WGS84)和/或其他标准系统。因此,地图数据也可以被转换成标准坐标系,例如GPS坐标。网格特征可以包括并非线条的扩展对象例如几何形状。例如,在一些实施方式中,街杆可以被建模为半径随高度变化的几何对象。然后,这些可以被视为网格特征。此外,矩形或基本上矩形的对象可以被视为网格特征。这些可以包括例如门、窗户和/或其他物体。附加地或可替选地,基本上圆形、椭圆形、三角形和不同形状的物体可以包括网格特征。地图数据可以简单地包括与直线和/或物理对象(地标)的位置和/或机器人姿态相对于某个坐标系的位置相对应的数字的集合。还可以存在多个针对地图数据定义的坐标系。地图数据还可以包括基于相机图像线条获得的线条。即,从相机图像中提取的线条可以通过算法运行来验证它们是否属于实际地标(即物理对象),以及它们中的一些是否可以合并。在这个阶段,可以调整线条相对于彼此和/或相对于机器人的位置,因为如果确定了从不同相机拍摄的和/或在不同时间点拍摄的图像中提取的线条属于相同的地标,则这些线条可以被组合。如果确定某些线条可能属于瞬态物体(例如卡车或汽车)、灯光效果和/或相机效果,则也可以放弃这些线条。然后,地图数据可以包括基于从图像中提取的线条但是通过特定算法处理以主要或仅包括属于地标、组合线和/或具有调整位置的线条的这种线条的集合。地图数据还可以包括与矢量、点特征相关联的误差估计和/或与地标相关联的线条。地图数据还可以包括可见性信息。即,可以看到关于从哪个位置给出地标的信息。换句话说,例如,如果墙壁会阻挡地标或物理对象,则无法从墙后的位置看到该地标或物理对象,该信息也可以包括在地图数据中。这在例如当机器人使用地图进行导航时是可行的,它将不检测附近的但被阻挡的地标或物理对象。可见性信息还可以考虑机器人的相机的高度以确定哪些对象在哪些位置可见。

机器人上的相机通常适于在其操作区域内拍摄机器人周围环境的视觉图像。典型地,周围环境包括紧密定位的视觉对象,例如位于距机器人约1km或更小、500m或更小、300m或更小、200m或更小或100m或更小的半径内的对象。因此,机器人可以适于拍摄和处理在机器人周围约1km或更少、500m或更少、300m或更少、200m或更少或100m或更少的半径内的图像。环境通常是随时间变化的非结构化室外环境和机器人沿着其路径行进的机器人的地理环境。例如,如果机器人经过商场、车库、公寓楼、办公楼等行进,则环境也可以至少部分是室内或屋顶下方。

移动机器人的相机可以例如类似于智能电话相机。它们可以适于每秒捕捉1至10个图像,更优选地每秒捕捉3至5个图像,或更优选地每秒捕捉4个图像。相机视角可以为10°至120°,更优选地为40°至100°,更优选地为60°至80°。机器人可以包括多个相机。在优选的实施方式中,机器人包括至少4(四)个相机。在更优选的实施方式中,机器人包括9(九)个相机。相机可以放置在机器人本体周围的任何地方,优选地在优化不同相机的视角的位置。一些相机可以是立体相机。在优选的实施方式中,一对前部相机是立体相机。在更优选的实施方式中,机器人包括4(四)对立体相机。在该优选的实施方式中,立体相机被定位在机器人的前部、机器人的两侧以及机器人的后部。一个或更多个相机被定位在机器人的前部。立体相机可以用于对视觉图像中捕捉到的物体进行三角测量。立体相机可以改善视觉图像的景深感知。立体相机之间的距离可以为5至20cm。在优选的实施方式中,前部和后部立体相机之间的距离为5至10cm,侧面的立体相机之间的距离为15至20cm。可以将相机放置在机器人上以拍摄横向视觉图像和/或纵向视觉图像。横向视觉图像可以理解为意味着其中较宽的相机捕捉角度大致与地面平行,并且较窄的相机捕捉角度大致与地面垂直的视觉图像。在优选的实施方式中,侧面的相机被纵向放置,并且前部和后部相机被横向放置。在一个实施方式中,相机可以拍摄非结构化室外环境的视觉图像。该环境可以包括以下中的至少一个或任意组合:包括固定和移动障碍物(例如行人、动物、婴儿车、轮椅、邮箱、垃圾桶、街灯等)的行人通道、包括车辆、自行车、交通信号灯等的车辆道路和/或其他可穿过的环境例如停车场、草坪和/或田地。

使用多个相机来定位机器人可以是特别有利的。多个相机可以指向多个方向,因此覆盖机器人周围环境的较大部分。此外,如果一个相机包括缺陷和/或被阻挡,则其他相机可以使得机器人仍然能够执行定位。这可能与室外运行的机器人特别相关,因为天气条件例如阳光、雨、雪、雾、冰雹等可能阻挡相机的视野。多个相机对于当前发明也是特别有利的,因为一些地标和/或物理对象可以在由不同相机拍摄的图像上看到。可以使用算法来确认这些线条确实属于地标和/或属于物理对象。相反,如果只在一个相机上看到线条或若干条线,则这些线条可能是光的伪影和/或仅由一台相机捕捉到的瞬态对象。这在当线条与地标相关联和/或与现有地图相比较时是非常有利的。

处理部件可以是片上系统(SoC)的一部分和/或包括片上系统(SoC),例如类似于智能电话处理器。存储器部件可以是同一SoC的一部分。处理部件可以适于使用由相机捕捉到的视觉图像来定位机器人。处理部件还可以优选地适于从相机捕捉到的视觉图像中提取特征。在一个优选的实施方式中,特征可以是直线。可以通过在线条提取算法(例如Hough变换)之后将边缘检测算法(例如Canny算法)应用于预处理的视觉图像来提取直线。预处理可以包括组合图像、锐化图像、平滑图像和/或增加图像对比度。它还可以包括对图像色彩方案进行的任何调整。

所提取的特征可以用于构建机器人操作区域的地图和/或使用现有地图对机器人进行定位。地图可以包括相对于某个坐标系定义的矢量和/或线条和/或线段和/或点特征和/或网格特征的集合。地图可以预先加载至机器人的存储器部件上。可替选地,在操作期间将地图下载至存储器部件上。由于机器人在地理区域之间移动,因此地图可以分段下载。

机器人上的相机可以在机器人在操作区域中徘徊期间拍摄机器人周围的视觉图像。相机可以适于以每秒1至10个图像的频率拍摄图像,例如以每秒2至8个图像、或每秒3至7个图像、或每秒3至5个图像或每秒4至6个图像的频率拍摄图像。在一个实施方式中,相机适于以每秒4个图像的频率拍摄图像。优选地,在机器人操作期间以所描述的频率连续执行图像捕捉,即机器人优选地适于在其操作期间使用相机中的一个、优选地使用全部相机连续地拍摄图像。然后视觉图像可以被组合成一个文件并进行预处理。优选地,来自不同相机的图像被同时拍摄。这可能意味着要处理的不同图像的时间差远小于处理的连续图像之间的时间。在预处理之后,包含预处理图像数据的文件被分成表示不同相机的各个图像文件,并从各个图像中提取直线。然后将直线相组合并用于构建机器人操作区域的地图数据。

在又一实施方式中,机器人已经将地图数据存储在其存储器部件上。然后将所提取的直线与所存储的地图数据相比较,并通过运行粒子滤波来对机器人姿态的概率分布建模。然后基于该比较来选择最佳姿态。以下是对本发明背景中的粒子滤波方法的详细描述。

粒子滤波是在多个应用中使用的以将可能性分配给系统的多个概率状态的迭代算法。除了对最可能的状态的估计以外,粒子滤波还会为每种可能性提供误差估计。基本思想是考虑一定固定数目的“粒子”或系统的潜在状态。所使用的粒子的数目基于应用和可用计算能力而变化。本文中所描述的发明可以在粒子滤波中使用10至1000个粒子之间的任意值,更优选地在100至1000个,甚至更优选地在约500个。机器人的位置可以被建模为高斯,然后,误差可以由可以写作如下的协方差矩阵给出:

其中,R为旋转矩阵,D为方差的对角矩阵(标准偏差的平方)。然后可以推导出概率p的置信域。在二维情况下(M=2),这个区域可以包括具有半径和的椭圆。注意,是指逆累积分布函数的平方根,即分位函数的平方根。例如,正态分布的值落入被旋转R且具有半径2σ1和2σ2(因为)的椭圆内的概率为约87%。

每个粒子都可以带有机器人状态的假设,即机器人的位置和定向xi(t)以及指示假设的强度的权重(数wi(t))。权重仅在有其他粒子的情况下才有意义,因此并非其绝对值而是它与其他粒子权重的相对值才是重要的。然后可以(以示意形式)如下计算机器人在某个时间t的位置:

其中,N为粒子的总数,wi为粒子i的权重,且xi为粒子的位置。然后,可以以标准方式如下估计机器人位置的误差(标准偏差):

这里,假设。这里还假设粒子云是单模态的,即粒子集中在搜寻空间中的一个独特的位置周围。在优选的实施方式中,本发明还适于检测多模态分布,即粒子集中在两个或更多个独特的位置周围的情况。注意,上面是该方法的示意性示例,并且可以使用更为涉及的方法来计算误差。这是由于机器人定向的误差(涉及3D旋转)更多地涉及机器人x-y位置中的误差并且需要更仔细地处理的事实。实际上,使用这种方法无法适当地估计旋转自由度的误差。例如,旋转(方位角方向)-179°和+179°的两个粒子的算术平均值为0°。这显然不表示现实,因为真正的平均值必须是-180°或+180°。常规地,旋转自由度通常用欧拉角表示。可以涉及计算这些变量的协方差矩阵,并且可以使用其他方法。

粒子滤波中使用的输入可以来自两种类型的传感器输入:控制输入和感测输入。控制输入可以包括里程计读数和/或陀螺仪读数。传感器输入可以包括GPS读数、磁力计读数、加速度计读数和/或视觉相机读数。所有读数都可以首先在机器人的处理部件内进行处理,或者在适当的情况下如所接收的来使用。控制输入可以用于直接地推进粒子的位置。这可能会导致机器人姿态误差估计增加,因为粒子由于误差而漂移。传感器输入可以用于修改粒子的权重,从而降低其位置与传感器读数不符的粒子的权重。这可以有助于减少姿态误差估计。

控制输入可以包括它们的随机误差的估计。它们可以用于为每个粒子生成一组单独的增量运动和旋转值。示意性地,我们有:

ci(t)=RND(c(t),∑c(t))

xi(t)=f(xi(t-1),ci(t))

其中,在第一行中,ci是粒子i的包含误差的控制输入,RND(σc)是随机误差生成器(通常是正态分布),以及c(t)是具有给定协方差矩阵∑c(t)(控制输入误差估计)的控制输入。第二行指示第i个粒子位置xi(t)可以使用在时间t-1处粒子的位置xi(t-1)以及采样的控制输入经由函数f来计算。增加随机值的目的是对机器人姿态的误差分布建模。因此所有可能的机器人姿态在一个步长可以被覆盖。可以在移动之后从机器人位置的概率分布中进行采样。在许多步长之后,每个粒子最终都会在不同的方向上漂移,并且位置误差的估计将会无限增长。

为了解决这个问题,可以使用感测输入。在下文中,GPS传感器被用作感测输入的示例实施方式。GPS软件提供GPS天线的位置和该位置的误差估计的协方差矩阵。因此,GPS位置可以被建模为高斯。由此可知,可以如下计算机器人在某个区域Ai的准确概率:

其中,g(t)为时间t时的GPS位置,∑GPS为给定GPS位置的误差估计的协方差矩阵。这可以简化为

其中,k为常数,CGPS为GPS传感器的加权系数。时间增量Δt是测量之间的时间,并且用于体现粒子的“衰减速率”。如果测量是以可变间隔完成的话,这一点尤为重要。然后,可以如下获得相对于GPS传感器在时间步长t处的每个粒子的权重:

量不完全是粒子的概率。相反,将其视为关于GPS传感器测量结果的粒子的适应性是有意义的。更靠近GPS位置的粒子得到更大的,因此它们的权重不会减少如具有低适应度的粒子那么多。所有这些都可以以相对的方式即一个粒子相较于另一粒子的方式来看。

注意,GPS传感器可以放置在机器人框架的中心或其他位置,并且在相比较时可以向机器人位置增加该偏移。同样注意,GPS读数可能包含较大的系统误差,这里简化了这种处理。除了GPS以外,机器人可以包括另外的传感器例如磁力计、加速度计和/或相机。对于这些传感器中的每一个,可以计算适应度值,并且可以通过下式给出因此得到的粒子权重:

其中,是指相对于给定传感器的粒子权重,并且可由下式给出:

每个传感器的加权系数决定了每个传感器与其他传感器的比较程度。即,给定传感器影响其他粒子的强度和速度有多快。该系数可以基于测试和传感器质量进行调整。此外,代替使用加权系数,可以直接修改协方差矩阵以对其内的误差更好地建模。例如,对于GPS传感器,可以向协方差矩阵的所有对角元素增加恒定值。

以这种方式,不符合传感器读数的粒子可以比符合传感器读数的粒子获得减少更多的权重。考虑传感器的输入,可以如下将粒子权重标准化:

最终,在多个时间步长之后,许多粒子将具有与具有较大权重的一些粒子相比可以忽略不计的权重。在没有任何重采样步骤的情况下,这种影响会逐渐变差。如果该过程继续,则粒子滤波将输出仅具有相对高权重的一些粒子以及具有边缘权重的其余粒子——这是粒子滤波可能失败的一种方式,因为仅一个粒子不能很好地表示机器人姿态概率分布。为了防止这种情况,需要丢弃在机器人姿态的边缘概率区域中的粒子以及在机器人姿态的大概率区域中创建新粒子的方法,同时保持误差估计的分布与之前一样。这被称为重采样步骤。一种可以使用的方法是顺序重要性重采样(SIR)。每个步长均运行SIR就计算资源而言是浪费的,而且实际上可能会导致某些“良好”的粒子丢失。因此,只有在“有效”粒子的数目达到特定条件时才运行SIR。例如,这种情况可能例如与粒子的有效数目低于粒子总数的一半有关(这里有效是指非边缘粒子)。

处理部件适于以至多10cm的误差来定位机器人。在优选的实施方式中,处理部件适于以至多5cm的误差来定位机器人。在更优选的实施方式中,处理部件适于以至多3cm的误差来定位机器人。定位的精度可以取决于相机的数目和/或相机的相对位置的了解和/或系统的校准。与位于较远的对象相比,可以更精确地针对位于较近的对象进行定位。

处理部件可以将从不同相机拍摄的视觉图像中提取的特征组合成相干地图和/或使用相组合的提取特征进行定位。处理部件适于通过使用基于所提取的特征的视觉定位以及地图信息和关于机器人的预期目的地的信息来提供关于机器人的导航的指令。导航可以包括通过沿某个方向移动和/或旋转来改变机器人的姿态(6自由度的位置和定向数据)。导航还可以包括做出关于最佳移动过程的决策并根据定位信息来适应性调整这些决策。

机器人还可以包括适于测量与环境和/或机器人的定位相关的不同参数的多个传感器。传感器可以包括以下中的至少一个或任意组合:至少一个GPS部件、至少一个加速度计、至少一个陀螺仪(在优选的实施方式中为4(四)个陀螺仪)、至少一个里程计、至少一个磁力计、至少一个飞行时间相机和/或至少一个激光雷达传感器。优选的实施方式包括所有这些传感器中的至少一个。在优选的实施方式中,传感器测量与机器人姿态相关的数据。处理部件通过首先处理传感器数据以进行大致姿态估计,然后通过使用视觉定位来改善该估计以进行定位。例如,可以通过使用粒子滤波来完成姿态改善。从视觉图像中提取的特征可以与包括与一组不同姿态相对应的特征的地图相比较。然后,粒子滤波可以基于每个姿态的可能性从该组中选择最可能的姿态估计。处理部件可以适于基于以设定的时间间隔基于估计机器人姿态的迭代算法来定位机器人。这种迭代算法可以依赖于粒子滤波方法的应用。关于机器人姿态的假设可以包括来自至少一个传感器的数据,所述至少一个传感器例如至少一个相机、GPS部件、里程计、加速计、飞行时间相机和/或磁力计。传感器的数据还可以是绝对的(例如来自GPS部件的数据和/或从视觉相机图像获得的数据)或相对于先前的机器人姿态(例如来自里程计和/或陀螺仪的数据)。

机器人还可以包括压力传感器。压力传感器可以用于基于精确高度的定位。在一个实施方式中,另一压力传感器可以位于机器人的操作区域内的已知位置处,例如枢纽处。该枢纽可以是物理位置(例如停车场)、物理结构(例如房屋、仓库、集装箱、谷仓、库房和/或车库)、和/或移动结构(例如卡车、拖车和/或火车车厢)。该枢纽可以用作机器人的存储、维护、修理、再充电和再供应站。一个枢纽可以包括一个或更多个机器人。在优选的实施方式中,一个枢纽可以服务多个机器人,例如20至200个机器人。使用放置在枢纽的位置处的压力传感器,可以创建精确的高度参考,并且可以通过将来自机器人压力传感器的数据与来自枢纽的压力传感器的数据相比较来改善机器人的定位。

如上所述,机器人的处理部件还可以适于通过执行估计机器人姿态的迭代算法来定位机器人,优选地,所述算法至少部分地基于粒子滤波算法。然而,也可以使用不同的算法来完成定位,例如迭代优化算法,其中,未知变量包括机器人姿态。

在一些实施方式中,迭代算法可以适于通过处理来自至少一个传感器的数据来生成关于机器人姿态的假设,所述至少一个传感器例如至少一个相机、至少一个GPS部件、至少一个里程计、至少一个陀螺仪、至少一个激光雷达传感器、至少一个飞行时间相机、至少一个超声波传感器、至少一个压力传感器、至少一个航位推测传感器和/或至少一个磁力计。

在一些实施方式中,来自至少一个相机的输入数据和/或图像数据以及来自至少一个另外的传感器的地图相关输入数据可以用于生成机器人姿态的估计。在这样的实施方式中,对估计或优化的每个贡献可以基于与相机的和/或给定传感器的数据相关联的误差来被加权。即,迭代算法可以将若干输入视为机器人姿态优化的一部分。它还可以考虑这些输入及其相应误差。例如,GPS传感器估计通常包括平面上的椭圆误差估计。

机器人还可以包括适于与一个或更多个服务器交换数据特别是图像和/或地图数据的通信部件。服务器可以包括多个服务器和/或服务器群和/或一个或更多个云服务器。在一个优选的实施方式中,服务器是云服务器。在另一实施方式中,服务器包括服务器群,其中一些服务器可以是云服务器。服务器可以存储、分析和/或发送数据例如地图和定位相关数据。服务器还可以针对机器人执行计算,例如与地理地图的生成相关的计算、定位计算和/或路线计算。通信部件可以包括用于订户身份模块(SIM卡)的至少一个槽和/或调制解调器和/或网络设备,优选地,包括用于两个SIM卡的两个槽和/或两个调制解调器和/或两个网络设备。网络设备可以包括eSIM和/或类似的芯片/系统。两个SIM卡和/或调制解调器的使用是优点,因为它增加了可靠性并且使得能够经由SIM卡和/或调制解调器同时通信以进行更大的和/或更快的数据传输。在优选的实施方式中,使用两个不同的移动运营商以使用两个SIM卡和/或调制解调器进行操作。在这种情况下,如果一个移动运营商不提供机器人操作区域的某些部分的覆盖,则机器人仍可以通过另一SIM卡和/或调制解调器进行通信。

机器人还可以适于以特定间隔和/或在请求来自服务器的输入之后从服务器接收导航指令。在一个实施方式中,机器人每50至150米接收导航指令。当面临不熟悉的情况时,机器人还可以向服务器发送输入请求。例如在遇到危险情况例如穿过街道时,机器人还可以请求关于其导航的手动输入。在这样的手动操作期间,远程操作员可以向机器人提供导航指令,并将其引导穿过危险区域例如穿过街道。一旦机器人到达安全的环境中,操作员可以指示机器人恢复自主导航。操作员还可以通过可以安装在机器人上的麦克风和扬声器与机器人的紧周围的人通信。然而,机器人可以在手动控制期间继续更新其定位。

在另一实施方式中,本发明公开了包括至少两个移动机器人的移动机器人集合。机器人可以如上所述。机器人可以适于经由通信模块与彼此通信。通信可以经由服务器进行路由。可以将机器人之间和/或机器人与服务器之间发送的数据组合成操作区域和/或多个操作区域的地图。用于每个地图数据的坐标可以是不同的,但它们可以分别转换成标准坐标系和/或组合在一个统一的任意坐标系中。多个操作区域可以例如对应于城市的不同部分。操作区域可以包括一个枢纽和/或多个枢纽。机器人受益于其他机器人经由地图数据交换而收集的地图数据。服务器可以协调地图数据的交换。服务器还可以存储地图数据并将其统一到全球地图中。服务器可以基于机器人的操作区域向机器人发送地图数据。如果由相机拍摄的视觉图像展示提取特征中的一致变化,则还可以由机器人更新地图数据。例如,如果在操作区域内进行新的施工作业,则可以相应地更新该操作区域。

在一些优选的实施方式中,该方法可以被自主和/或半自主移动机器人用作SLAM方法。SLAM是指同时定位和地图绘制。即,在一些实施方式中,当机器人自主地和/或半自主地导航时,该方法可以在机器人上运行。由于该算法还可以产生机器人采取的路径,因此机器人可以对其本身进行定位并且同时构建其周围的地图数据。这可能是特别有利的,因为机器人可以在不熟悉的区域中导航并且构建其地图数据,而无需事先知道该区域是什么样子。

在一些实施方式中,目前描述的方法和/或设备和/或集合可以涉及车辆、汽车和/或自驾车。即,自驾车可以使用该地图绘制方法来构建地图数据、和/或导航和/或执行SLAM。

然而,在其他实施方式中,本文中所描述的设备和/或集合即移动机器人和/或移动机器人集合基本上不同于汽车和/或自驾车。即,在这样的实施方式中,移动机器人远小于比汽车。在这样的实施方式中,机器人的典型尺寸可以如下。宽度:20至100cm,优选地40至70cm,例如约55cm。高度:20至100cm,优选地40至70cm,例如约60cm。长度:30至120cm,优选地50至80cm,例如约65cm。在这样的实施方式中,移动机器人远轻于汽车和/或自驾车。在这样的实施方式中,机器人的重量可以在2至50kg的范围内,优选地在5至40kg的范围内,更优选地在7至25kg的范围内,例如在10至20kg的范围内。在这样的实施方式中,与汽车和/或自驾车不同,机器人还可以适于在人行道上操作。它还可以具有不超过20km/h、例如不超过10km/h、优选地在4km/h与6km/h之间的速度。

即,本发明可以应用于汽车和/或自驾车的实施方式不同于其可以应用于更小和/或更轻和/或更慢的移动机器人的实施方式。

在本领域中已知自驾车可以使用多个传感器以在公共道路上自主导航。通常,自驾车使用激光雷达传感器作为定位的主要装置的主要物或之一。本发明可以提供成本、空间和装备有效的方式来以几厘米的精度定位移动机器人。本发明可以应用于自驾车,然而,目前用于自驾车的技术对于在人行道上操作的移动输送机器人上使用可能是麻烦且不切实际的。

下面,将讨论本发明的另外编号的实施方式。

一种移动机器人,包括:

(a)包括至少地图数据的至少一个存储器部件;

(b)适于拍摄环境的视觉图像的至少两个相机;以及

(c)适于从由所述至少两个相机拍摄的视觉图像中至少提取特征、并将它们与所述地图数据相比较以至少定位所述机器人的至少一个处理部件。

2.根据前一实施方式所述的机器人,其中,所述存储器部件包括至少一个随机存取存储器(RAM)器件。

3.根据前述实施方式中的任一项所述的机器人,其中,包括在所述存储器部件内的所述地图数据涉及机器人的当前操作区域和/或预期操作区域。

4.根据前述实施方式中的任一项所述的机器人,其中,所述地图数据包括相对于坐标系定义的多个矢量、点特征和/或网格特征。

5.根据前述实施方式中的任一项所述的机器人,其中,所述地图数据可以被转换成GPS坐标。

6.根据前述实施方式中的任一项所述的机器人,其中,每个相机适于每秒捕捉3至5个图像,优选地每秒捕捉4个图像。

7.根据前述实施方式中的任一项所述的机器人,其中,所述相机捕捉角为10°至120°。

8.根据前述实施方式中的任一项所述的机器人,包括至少4个相机,优选地包括9个相机。

9.根据前一实施方式所述的机器人,其中,至少一对相机是立体相机。

10.根据前一实施方式所述的机器人,其中,所述立体相机之间的距离为5至20cm。

11.根据前述实施方式中的任一项所述的机器人,其中,至少一个相机适于拍摄横向视觉图像,并且至少一个相机适于拍摄纵向视觉图像。

12.根据前述实施方式中的任一项所述的机器人,其中,所述相机和/或所述处理部件适于在如下环境中拍摄和处理视觉图像,所述环境包括行人通道、固定和/或移动障碍物以及其他可穿过的环境例如停车场、草坪和/或田地中的至少一个或任意组合。

13.根据前述实施方式中的任一项所述的机器人,其中,所述处理部件包括至少一个片上系统(SoC)。

14.根据前述实施方式中的任一项所述的机器人,其中,所述处理部件适于以至多10cm、优选地至多5cm、更优选地至多3cm的误差来定位所述机器人。

15.根据前述实施方式中的任一项所述的机器人,其中,所述处理部件适于从所述视觉图像中提取直线。

16.根据前述实施方式中的任一项所述的机器人,其中,所述处理部件适于构建所述机器人的操作区域的地图数据。

17.根据前述实施方式中的任一项所述的机器人,适于使用来自所述处理部件的定位数据进行导航。

18.根据前述实施方式中的任一项所述的机器人,其中,所述处理部件将来自所述多个相机的视觉图像相组合以构建地图数据和/或定位所述机器人。

19.根据前述实施方式中的任一项所述的机器人,还包括适于测量用于定位所述机器人的另外的参数的传感器。

20.根据前一实施方式所述的机器人,其中,所述传感器包括以下中的至少一个或任意组合:至少一个GPS部件、至少一个加速度计、至少一个陀螺仪、至少一个里程计、至少一个磁力计和/或至少一个激光雷达传感器。

21.根据前述两项实施方式所述的机器人,其中,所述处理部件适于通过如下方式确定所述机器人的定位:首先处理来自所述传感器的数据以获得大致位置,然后基于对从所述视觉图像中提取的特征的处理来细化所述定位。

22.根据前述实施方式中的任一项所述的机器人,还包括用于基于精确高度定位的压力传感器。

23.根据前述实施方式中的任一项所述的机器人,还包括适于与一个或更多个服务器交换数据特别是图像和/或地图数据的通信部件。

24.根据前一实施方式所述的机器人,其中,所述通信部件包括用于至少一个订户身份模块(SIM卡)的至少一个槽,优选地包括用于2个SIM卡的2个槽以用于提高可靠性和/或同时使用两个SIM卡来同时通信。

25.根据前述两项实施方式所述的机器人,其中,所述机器人还适于以特定间隔和/或请求输入之后从所述服务器接收导航指令。

26.根据前述实施方式中的任一项所述的机器人,其中,所述机器人是自主的和/或半自主的。

27.根据前述实施方式中的任一项所述的机器人,其中,所述机器人是基于陆地的。

28.根据前述实施方式中的任一项所述的机器人,其中,所述机器人适于以不超过10km/h、或不超过8km/h、或不超过6km/h、优选地在3km/h与6km/h之间、或更优选地在4km/h与5km/h之间的速度行进。

29.根据前述实施方式中的任一项所述的机器人,其中,所述机器人被用于输送的目的。

30.根据前述实施方式中的任一项所述的机器人,其中,所述机器人及其输送物重量不超过40kg,例如不超过35kg,例如不超过30kg,例如不超过25kg,优选地在15kg与25kg之间,更优选在20kg与25kg之间。

31.根据前述实施方式中的任一项所述的机器人,其中,所述机器人还包括轮子机构,所述轮子机构包括适于基于陆地运动的至少4个轮子。

32.根据前述实施方式中的任一项所述的机器人,还包括用于保持至少一个输送物的空间。

33.根据前述实施方式中的任一项所述的机器人,还包括用于保持至少一个输送物的封闭空间。

34.根据前一实施方式所述的机器人,还包括用于提供对所述空间的访问的安全访问设备。

35.根据前一实施方式所述的机器人,其中,所述安全访问设备包括由安全接口控制的闭合机构。

36.根据前述实施方式中的任一项所述的机器人,其中,所述处理部件适于通过以设定时间间隔执行估计机器人姿态的迭代算法来定位所述机器人。

37.根据前一实施方式所述的机器人,其中,所述迭代算法应用粒子滤波方法来估计所述机器人姿态。

38.根据前述两项实施方式所述的机器人,其中,所述粒子滤波适于通过处理来自至少一个传感器的数据来生成关于机器人姿态的假设,所述至少一个传感器例如至少一个相机、GPS部件、里程计、至少一个陀螺仪、加速计和/或磁力计。

39.根据前一实施方式所述的机器人,其中,来自至少两个传感器的数据的输入数据被用来生成机器人姿态的估计,并且每个贡献基于与给定传感器的数据相关联的误差来被加权。

40.一种移动机器人,包括:

(a)包括至少地图数据的至少一个存储器部件;

(b)适于拍摄环境的视觉图像的至少两个相机;以及

(c)适于从由所述至少两个相机拍摄的所述视觉图像中至少提取直线、并将它们与所述地图数据相比较以至少定位所述机器人的至少一个处理部件。

41.根据前一实施方式所述的机器人,其中,所述存储器部件包括至少一个随机存取存储器(RAM)器件。

42.根据前述实施方式40至41中的任一项所述的机器人,其中,包括在所述存储器部件内的所述地图数据涉及机器人的当前操作区域和/或预期操作区域。

43.根据前述实施方式40至42中的任一项所述的机器人,其中,所述地图数据包括相对于坐标系定义的多个矢量、点特征和/或网格特征。

44.根据前述实施方式40至43中的任一项所述的机器人,其中,所述地图数据可以被转换为GPS坐标。

45.根据前述实施方式40至44中的任一项所述的机器人,其中,每个相机适于每秒捕捉3至5个图像,优选地每秒捕捉4个图像。

46.根据前述实施方式40至45中的任一项所述的机器人,其中,所述相机捕捉角为10°至120°。

47.根据前述实施方式40至46中的任一项所述的机器人,包括至少4个相机,优选地包括9个相机。

48.根据前一实施方式所述的机器人,其中,至少一对相机是立体相机。

49.根据前一实施方式所述的机器人,其中,所述立体相机之间的距离为5至20cm。

50.根据前述实施方式40至49中的任一项所述的机器人,其中,至少一个相机适于拍摄横向视觉图像,并且至少一个相机适于拍摄纵向视觉图像。

51.根据前述实施方式40至50中的任一项所述的机器人,其中,所述相机和/或所述处理部件适于在如下环境中拍摄和处理视觉图像,所述环境包括包含固定和/或移动障碍物的行人通道以及其他可穿过的环境例如停车场、草坪和/或田地中的至少一个或任意组合。

52.根据前述实施方式40至51中的任一项所述的机器人,其中,所述处理部件包括至少一个片上系统(SoC)。

53.根据前述实施方式40至52中的任一项所述的机器人,其中,所述处理部件适于以至多10cm、优选地至多5cm、更优选地至多3cm的误差来定位所述机器人。

54.根据前述实施方式40至53中的任一项所述的机器人,其中,所述处理部件适于构建所述机器人的操作区域的地图数据。

55.根据前述实施方式40至54中的任一项所述的机器人,适于使用来自所述处理部件的定位数据进行导航。

56.根据前述实施方式40至55中的任一项所述的机器人,其中,所述处理部件将来自所述多个相机的视觉图像相组合以构建地图数据和/或定位所述机器人。

57.根据前述实施方式40至56中的任一项所述的机器人,还包括适于测量用于定位所述机器人的另外的参数的传感器。

58.根据前一实施方式所述的机器人,其中,所述传感器包括以下中的至少一个或任意组合:至少一个GPS部件、至少一个加速计、至少一个陀螺仪、至少一个里程计、至少一个磁力计和/或至少一个激光雷达传感器。

59.根据前述两项实施方式所述的机器人,其中,所述处理部件适于通过如下方式确定所述机器人的定位:首先处理来自所述传感器的数据以获得大致位置,然后基于对从所述视觉图像中提取的特征的处理来细化所述定位。

60.根据前述实施方式40至59中的任一项所述的机器人,还包括用于基于精确高度定位的压力传感器。

61.根据前述实施方式40至60中的任一项所述的机器人,还包括适于与一个或更多个服务器交换数据特别是图像和/或地图数据的通信部件。

62.根据前一实施方式所述的机器人,其中,所述通信部件包括用于至少一个订户身份模块(SIM卡)的至少一个槽,优选地包括用于2个SIM卡的2个槽以用于提高可靠性和/或同时使用两个SIM卡来同时通信。

63.根据前述两项实施方式所述的机器人,其中,所述机器人还适于以特定间隔和/或请求输入之后从所述服务器接收导航指令。

64.根据前述实施方式40至63中的任一项所述的机器人,其中,所述机器人是自主的和/或半自主的。

65.根据前述实施方式40至64中的任一项所述的机器人,其中,所述机器人是基于陆地的。

66.根据前述实施方式40至65中的任一项所述的机器人,其中,所述机器人适于以不超过10km/h、或不超过8km/h、或不超过6km/h、优选地在3km/h与6km/h之间、或更优选地在4km/h与5km/h之间的速度行进。

67.根据前述实施方式40至66中的任一项所述的机器人,其中,所述机器人被用于输送的目的。

68.根据前述实施方式40至67中的任一项所述的机器人,其中,所述机器人及其输送物重量不超过40kg,例如不超过35kg,例如不超过30kg,例如不超过25kg,优选地在15kg与25kg之间,更优选地在20kg与25kg之间。

69.根据前述实施方式40至68中的任一项所述的机器人,其中,所述机器人还包括轮子机构,所述轮子机构包括适于基于陆地运动的至少4个轮子。

70.根据前述实施方式40至69中的任一项所述的机器人,还包括用于保持至少一个输送物的空间。

71.根据前述实施方式40至70中的任一项所述的机器人,还包括用于保持至少一个输送物的封闭空间。

72.根据前一实施方式所述的机器人,还包括用于提供对所述空间的访问的安全访问设备。

73.根据前一实施方式所述的机器人,其中,所述安全访问设备包括由安全接口控制的闭合机构。

74.根据前述实施方式40至73中的任一项所述的机器人,其中,所述处理部件适于通过以设定时间间隔执行估计机器人姿态的迭代算法来定位所述机器人。

75.根据前一实施方式所述的机器人,其中,所述迭代算法应用粒子滤波方法来估计所述机器人姿态。

76.根据前述两项实施方式所述的机器人,其中,所述粒子滤波适于通过处理来自至少一个传感器的数据来生成关于机器人姿态的假设,所述至少一个传感器例如至少一个相机、GPS部件、里程计、至少一个陀螺仪、加速计和/或磁力计。

77.根据前一实施方式所述的机器人,其中,来自至少两个传感器的数据的输入数据被用来生成机器人姿态的估计,并且每个贡献基于与给定传感器的数据相关联的误差来被加权。

78.一种包括至少两个移动机器人的移动机器人集合,所述机器人中的每一个包括:

(a)包括至少地图数据的至少一个存储器部件;

(b)适于拍摄环境的视觉图像的至少两个相机;

(c)适于从由所述至少一个相机拍摄的所述视觉图像中至少提取特征、并将它们与所述地图数据相比较以至少定位所述机器人的至少一个处理部件;以及

(d)适于在所述机器人之间发送和接收数据特别是图像和/或地图数据的至少一个通信部件。

79.根据前一实施方式所述的集合,其中,所述存储器部件包括至少一个随机存取存储器(RAM)器件。

80.根据前述两项实施方式中的任一项所述的集合,其中,包括在所述存储器部件内的所述地图数据涉及所述机器人的当前操作区域和/或预期操作区域。

81.根据前述实施方式78至80中的任一项所述的集合,其中,所述地图数据包括相对于坐标系定义的多个矢量、点特征和/或网格特征。

82.根据前述实施方式78至81中的任一项所述的集合,其中,所述地图数据可以被转换成GPS坐标。

83.根据前述实施方式78至82中的任一项所述的集合,其中,每个相机每秒捕捉3至5个图像,优选地每秒捕捉4个图像。

84.根据前述实施方式78至83中的任一项所述的集合,其中,所述相机捕捉角为10°至120°。

85.根据前述实施方式78至84中的任一项所述的集合,其中,所述机器人包括至少4个相机,优选地包括9个相机。

86.根据前一实施方式所述的集合,其中,至少一对相机是立体相机。

87.根据前一实施方式所述的集合,其中,所述立体相机之间的距离为5至20cm。

88.根据前述实施方式78至87中的任一项所述的集合,其中,至少一个相机适于拍摄横向视觉图像,并且至少一个相机适于拍摄纵向视觉图像。

89.根据前述实施方式78至88中的任一项所述的集合,其中,所述相机和/或所述处理部件适于在如下环境中拍摄和处理视觉图像,所述环境包括行人通道、固定和/或移动障碍物以及其他可穿过的环境例如停车场、草坪和/或田地中的至少一个或任意组合。

90.根据前述实施方式78至89中的任一项所述的集合,其中,所述处理部件包括至少一个片上系统(SoC)。

91.根据前述实施方式78至90中的任一项所述的集合,其中,所述处理部件适于以至多10cm、优选地至多5cm、更优选地至多3cm的误差来定位所述机器人。

92.根据前述实施方式78至91中的任一项所述的集合,其中,所述处理部件适于从所述视觉图像中提取直线。

93.根据前述实施方式78至92中的任一项所述的集合,其中,所述处理部件适于构建所述机器人的操作区域的地图数据。

94.根据前述实施方式78至93中的任一项所述的集合,其中,所述机器人适于使用来自所述处理部件的定位数据进行导航。

95.根据前述实施方式78至94中的任一项所述的集合,其中,所述处理部件将来自所述多个相机的视觉图像相组合以构建地图数据和/或定位所述机器人。

96.根据前述实施方式78至95中的任一项所述的集合,其中,所述机器人还包括适于测量用于定位所述机器人的另外的参数的传感器。

97.根据前一实施方式所述的集合,其中,所述传感器包括以下中的至少一个或任意组合:至少一个GPS部件、至少一个加速度计、至少一个陀螺仪、至少一个里程计、至少一个磁力计和/或至少一个激光雷达传感器。

98.根据前述两项实施方式所述的集合,其中,所述处理部件适于通过如下方式确定所述机器人的定位:首先处理来自所述传感器的数据以获得大致位置,然后基于对从所述视觉图像中提取的特征的处理来细化所述定位。

99.根据前述实施方式78至98中的任一项所述的集合,其中,所述机器人还包括用于基于精确高度定位的压力传感器。

100.根据前述实施方式78至99中的任一项所述的集合,其中,在所述机器人之间发送的数据可以被组合成多个操作区域的地图。

101.根据前述实施方式78至100中的任一项所述的集合,其中,所述机器人适于交换地图数据。

102.根据前述实施方式78至101中的任一项所述的集合,还包括至少一个服务器,所述至少一个服务器适于至少经由它们的通信部件与所述机器人通信。

103.根据前一实施方式所述的集合,其中,所述机器人适于经由所述服务器与彼此通信。

104.根据前述两项实施方式中的任一项所述的集合,其中,所述通信部件适于与所述服务器交换数据特别是图像和/或地图数据。

105.根据前述三项实施方式所述的集合,其中,所述服务器可以存储地图数据。

106.根据前述四项实施方式所述的集合,其中,所述服务器适于从所述机器人接收地图数据,对其进行处理,并在请求时将处理后的数据发送回至所述机器人,从而使得机器人能够受益于其他机器人所收集的地图数据。

107.根据前述五项实施方式所述的集合,其中,每个机器人以特定间隔和/或请求输入之后从所述服务器接收导航指令。

108.根据前一实施方式所述的集合,其中,所述通信部件包括用于至少一个订户身份模块(SIM卡)的至少一个槽,优选地包括用于2个SIM卡的2个槽以用于提高可靠性和/或同时使用两个SIM卡来同时通信。

109.根据前述两项实施方式所述的集合,其中,所述机器人还适于以特定间隔和/或请求输入之后从所述服务器接收导航指令。

110.根据前述实施方式78至109中的任一项所述的集合,其中,所述机器人是自主的和/或半自主的。

111.根据前述实施方式78至110中的任一项所述的集合,其中,所述机器人是基于陆地的。

112.根据前述实施方式78至111中的任一项所述的集合,其中,所述机器人适于以不超过10km/h、或不超过8km/h、或不超过6km/h、优选地在3km/h与6km/h之间、或更优选地在4km/h与5km/h之间的速度行进。

113.根据前述实施方式78至112中的任一项所述的集合,其中,所述机器人被用于输送的目的。

114.根据前述实施方式78至113中的任一项所述的集合,其中,所述机器人及其输送物重量不超过40kg,例如不超过35kg,例如不超过30kg,例如不超过25kg,优选地在15kg与25kg之间,更优选地在20kg与25kg之间。

115.根据前述实施方式78至114中的任一项所述的集合,其中,所述机器人还包括轮子机构,所述轮子机构包括适于基于陆地运动的至少4个轮子。

116.根据前述实施方式78至115中的任一项所述的集合,还包括用于保持至少一个输送物的空间。

117.根据前述实施方式78至116中的任一项所述的集合,还包括用于保持至少一个输送物的封闭空间。

118.根据前一实施方式所述的集合,还包括用于提供对所述空间的访问的安全访问设备。

119.根据前一实施方式所述的集合,其中,所述安全访问设备包括由安全接口控制的闭合机构。

120.根据前述实施方式78至119中的任一项所述的集合,其中,每个机器人的处理部件适于通过以设定的时间间隔执行估计机器人姿态的迭代算法来定位所述机器人。

121.根据前一实施方式所述的集合,其中,所述迭代算法应用粒子滤波方法来估计所述机器人姿态。

122.根据前述两项实施方式所述的集合,其中,所述微粒滤波适于通过处理来自至少一个传感器的数据来生成关于机器人姿态的假设,所述至少一个传感器例如至少一个相机、GPS部件、里程计、至少一个陀螺仪、加速计和/或磁力计。

123.根据前一实施方式所述的集合,其中,来自至少两个传感器的数据的输入数据被用来生成机器人姿态的估计,并且每个贡献基于与给定传感器的数据相关联的误差来被加权。

124.一种地图绘制方法,包括:

(a)操作包括至少两个相机和至少一个处理部件的至少一个移动机器人;

(b)使用所述至少一个机器人的至少两个相机拍摄视觉图像;

(c)对通过组合来自所述至少两个相机的视觉图像而生成的文件执行预处理;

(d)使用至少一个处理部件从所述各个视觉图像中提取特征;以及(e)使用从所述视觉图像中提取的特征来构建地图数据。

125.根据前一实施方式所述的方法,其中,所述机器人和/或所述相机和/或所述处理部件如前述实施方式中的任一项所描述的。

126.根据前述两项实施方式所述的方法,其中,用于地图绘制的特征是直线。

127.根据前述三项实施方式所述的方法,其中,提取所述特征是在通过将所述组合的视觉图像分离成各个图像而生成的所述各个图像上完成的。

128.根据前述四项实施方式所述的方法,其中,所述地图数据包括相对于坐标系定义的多个矢量、点特征和/或网格特征。

129.根据前述五项实施方式所述的方法,其中,所述地图数据还可以用于定位所述机器人。

130.根据前述六项实施方式所述的方法,其中,所述移动机器人是如实施方式1至111中的任一项中所描述的机器人或集合。

131.一种定位方法,包括:

(a)操作包括至少两个相机、至少一个存储器部件以及至少一个处理部件的至少一个移动机器人;

(b)使用所述至少一个机器人的至少两个相机部件来拍摄视觉图像;

(c)对通过组合来自所述至少两个相机的视觉图像而生成的文件执行预处理;

(d)使用至少一个处理部件从各个视觉图像中提取特征;

(e)将所提取的特征与存储在所述至少一个机器人的至少一个存储器部件上的现有地图数据相比较;以及

(f)使用(e)中的比较来定位所述至少一个机器人。

132.根据前一实施方式所述的方法,其中,所述机器人和/或所述相机和/或所述存储器部件和/或所述处理部件如前述实施方式中的任一项所描述的。

133.根据前述两项实施方式中的任一项所述的方法,其中,用于定位的所述特征是直线。

134.根据前述三项实施方式中的任一项所述的方法,其中,提取所述特征是在通过将组合的视觉图像分离成各个图像而生成的所述各个图像上完成的。

135.根据前述四项实施方式所述的方法,其中,所述地图数据包括相对于坐标系定义的多个矢量、点特征和/或网格特征。

136.根据前述五项实施方式中的任一项所述的方法,其中,(e)中的比较是使用粒子滤波来完成的。

137.根据前述六项实施方式中的任一项所述的方法,其中,所述移动机器人是如实施方式1至111中的任一项所描述的机器人或集合。

138.一种定位方法,包括:

(a)提供包括至少一个航位推测部件、至少两个相机、至少一个存储器部件以及至少一个处理部件的至少一个移动机器人;以及

(b)使用所述至少一个机器人的至少两个相机部件来拍摄视觉图像;以及

(c)使用所述至少一个处理部件从所述视觉图像中提取特征;以及(d)从(c)中所提取的特征获得位置相关数据;以及

(e)从所述至少一个航位推测部件接收位置相关数据;以及

(f)将从(d)中从所述视觉图像所提取的特征获得的位置相关数据与(e)中从所述至少一个航位推测部件接收的位置相关数据相组合;以及

(g)基于(f)中的组合数据来形成关于机器人姿态的假设。

139.根据实施方式138所述的方法,其中,所述机器人和/或所述相机和/或所述存储器部件和/或所述处理部件如前述实施方式中的任一项所描述的。

140.根据前述实施方式138或139中的任一项所述的方法,其中,所述航位推测部件可以包括至少一个里程计和/或至少一个陀螺仪和/或至少一个加速度计中的至少一个。

141.根据前述实施方式138至140中的任一项所述的方法,其中,基于与其测量结果相关联的误差来对(f)中相组合的来自所述视觉图像特征和所述航位推测部件的位置相关数据进行加权。

142.根据实施方式138至141中的任一项所述的方法,其中,步骤(f)还可以包括将加权的从其他传感器例如GPS部件和/或磁力计获得的位置相关数据相组合。

143.根据实施方式138至142中的任一项所述的方法,其中,步骤(f)和(g)可以使用粒子滤波方法来实现。

144.根据实施方式138至143中的任一项所述的方法,其中,步骤(e)还包括将从所述视觉图像中所提取的特征与存储在所述至少一个机器人的至少一个存储器部件上的现有地图数据相比较。

在下面的示例中来进一步描述上述特征以及本发明的附加细节,这些示例旨在进一步说明本发明,而非旨在以任何方式限制其范围。

附图说明

图1示出了根据本发明的机器人实施方式的透视图;

图2示出了不同相机视角的实施方式;

图3示出了使用所描述的发明从示例性图像中提取的直线的实施方式;

图3b、图3c以及3d描绘了根据本发明的定位的实施方式;

图3e描绘了根据本发明的一方面的执行定位的机器人的示意性俯视图;

图4示出了地图绘制方法的实施方式的示意性描述;

图5示出了定位方法的实施方式的示意性描述;

图6示出了根据本发明的定位方法的一个实施方式。

具体实施方式

在下文中,将参照附图来描述本发明的示例性实施方式。提供这些示例以提供对本发明的进一步理解,而非限制其范围。

在下面的描述中,描述了一系列特征和/或步骤。本领域技术人员将认识到的是,除非上下文要求,否则特征和步骤的顺序对于由此所得的配置及其效果不是关键的。此外,对于本领域技术人员将明显的是,不管特征和步骤的顺序如何,在步骤之间存在或不存在时间延迟都可以存在于所描述的步骤中的一些步骤或全部步骤之间。

图1示出了根据本发明的机器人的实施方式。机器人包括适于基于陆地运动的轮子1。框架2可以安装在轮子1上。本体3可以安装在框架2上。本体3可以包括适合于运输输送物的封闭空间(未示出)。灯4可以布置在本体3和/或框架2周围。灯4可以例如是LED灯并且可以照亮机器人在其中发现其本身的环境。这对于在黑暗中指示机器人的存在和/或通过更好的照明来帮助视觉定位是有用的。多个相机可以放置在本体3周围。在该实施方式中,存在9(九)个相机。

第一相机10可以定位在本体3上机器人的前部附近。第一相机可以提供远离机器人的大致水平的视图。第二相机20和第三相机30被定位在第一相机10的两侧,同样地在机器人的前部附近。

第二相机20和第三相机30可以相对于第一相机10的定向向下成10°至50°的角度,优选地向下成20°至40°的角度,即它们可以相对于水平视图向下成角度。第二相机20和第三相机30可以是立体相机。它们可以分开5至10cm的距离。立体相机通过比较来自立体相机的视觉图像上存在的特征来促进对对象的三角测量。

第四相机40和第五相机50放置在机器人本体3的相对于向前的运动方向的左侧。第四相机40和第五相机50也可以是立体相机。它们可以分开15至20cm的距离。

在机器人本体的相对于运动方向的右侧,第六相机60(未示出)和第七相机70(未示出)被放置在与相机40和相机50的位置互补的位置。第六相机60和第七相机70也可以是立体相机,优选地分开15至20cm的距离。

在机器人的后部,可以放置第八相机80(未示出)和第九相机90。第八相机80和第九相机90也可以是立体相机,优选地分开5至10cm的距离。一个或更多个相机可以纵向排列。这意味着竖直视角可以大于水平视角。在所示出的实施方式中,侧面的相机40、相机50、相机60以及相机70可以纵向放置。其他相机10、相机20、30、相机80以及相机90可以横向放置。这意味着水平视角可以大于竖直视角。

图2示出了根据本发明的机器人的实施方式。图2展示了如图1所示的相机设置的视角。示出了所有相机视角。视角可以在(40至80)°至(60至100)°的范围内,优选地为约60°至80°。视角11对应于第一相机10。视角21和视角31分别对应于相机20和相机30。这两个相机可以以立体的方式来布置,这就是图2展示视角相交的原因。相机80和相机90也可以实现类似的配置——它们也可以是朝向本体3上机器人的后部放置的立体相机。因此,分别对应于相机80和相机90的视角81和视角91也被示出为相交。两对侧面的相机40和50以及60和70可以纵向放置在立体位置中。它们的视角41与视角51以及视角61与视角71分别类似地相交。

图3示出了可以在机器人的操作期间提取的直线100的实施方式。直线100可以属于永久对象(例如房屋、围墙、人行道)和/或暂时对象(例如汽车、阴影)。本发明适于使用多个图像测试情况进行校准——提高其检测线条和识别属于永久对象的线条的准确性。

图3b、图3c以及图3d示出了具有叠加的提取线条的示例性相机图像。这些图描绘了两种类型的线条:虚线110和实线120。虚线110是可以属于地标并存储在地图中的3D线条。这些线条可以例如在先前的机器人运行期间作为来自相机图像的2D线条被获得并且例如通过迭代算法被转换成3D地标。实线120是在当前机器人运行期间从相机图像提取的2D线。这些附图展示了机器人定位其本身的示意性表示的快照。迭代地运行基础优化算法以识别属于3D地标110的正确的2D线条120。以这种方式,可以通过将从相机图像提取的线条与存储在地图数据中的线条相比较来获得机器人姿态。

图3e描绘了对其本身执行定位的移动机器人1000的示意性俯视图。机器人1000在中间被示为黑色矩形。还示意性地示出了机器人1000的相机的相机角度。在机器人1000的左下方可以看到前部相机角度11。在机器人1000的右上方可以看到后部相机角度中的一个相机角度81。在该实施方式中,仅指示了一个后部相机角度81。由圆圈200来指示示意性的GPS传感器输出。圆圈200表示机器人的大致位置并且可以例如用作定位过程的起始点。在这样的实施方式中,定位算法可以例如使用GPS读数来开始,然后使用基于相机图像的定位对其进行细化。如前,虚线110指示识别机器人地图上的各种地标的3D线。在这里它们被描绘为相对于机器人1000在地平面上的投影。

图4示出了根据本发明的地图绘制方法的实施方式。第一步骤S1包括使用放置在机器人上的相机拍摄视觉图像。视觉图像可以被同时拍摄。在优选的实施方式中,机器人包括同时拍摄图像的9(九)个相机。第二步骤S2包括将视觉图像组合成用于预处理的一个文件。该步骤可以被执行以加速处理。预处理之后,组合文件可以被再分成各个图像。第三步骤S3包括从各个图像中提取线条。可以首先使用边缘检测算法例如Canny算法,然后对边缘检测算法的结果使用线条提取算法来完成该步骤。线条提取算法可以例如是Hough变换。第四步骤S4包括将所提取的线条相组合以构建拍摄视觉图像的区域的地图数据。

相机在机器人上的精确位置以及相对于彼此的位置可以是已知的,这使得能够在一个坐标系统中以相干的方式来组合所提取的线条。该坐标系可以是任意的,只要它是一致的并且可以转换成标准系统如GPS坐标即可。每当相机拍摄一组新的视觉图像时,可以重复包括步骤S1、步骤S2、步骤S3以及步骤S4的方法。在优选实施方式中,每秒重复1至10次。因此,机器人可以构建与其操作区域一致的地图数据。如果多个机器人在一个操作区域中操作,则它们可以交换地图数据,并且在检测到变化时对地图数据进行更新。因此,机器人可以受益于由其他机器人得到的地图数据。不同操作区域的地图数据可以被组合成包含所有机器人操作区域的全球地图数据。

图5示出了根据本发明的定位方法的实施方式。步骤S1、步骤S2以及步骤S3可以与图4的地图绘制方法中的相同。当机器人包括存储在其存储器部件内的地图数据时,可以使用定位方法。第五步骤S5包括将从视觉图像中所提取的直线与存储在机器人的存储器部件内的地图数据相比较。存储在存储器部件内的地图数据对应于机器人的不同姿态概率。然后,机器人可以使用粒子滤波算法来评估每个姿态为真正姿态的可能性。在第六步骤S6中,基于对已知姿态概率的概率分析来拾取最可能的姿态。该最可能的姿态将在图像被拍摄时提供机器人的定位。定位是快速的,并且通常在很短的时间内完成,或者至少在处理下一组图像(可以每隔0.1至1秒发生一次)之前完成。

如果出于某些原因,机器人暂时无法执行基于图像的定位,例如在机器人无法访问地图或者无法将地图下载至存储器以在运输期间执行定位的情况下,机器人可以使用同样在机器人上实现的其他定位方法(例如GPS坐标、加速计数据、陀螺仪数据、里程计数据、磁力计数据、飞行时间相机数据和/或激光雷达数据中的一个或更多个)来进行定位。一旦机器人能够恢复基于图像的定位,如果需要的话,可以考虑其预期的导航路线、基于更准确的定位数据来重新调整其行进方向。

图6示出了根据本发明的定位方法的实施方式。步骤S1、步骤S2以及步骤S3可以与图4的地图绘制方法以及图5的定位方法中的相同。当机器人包括存储在其存储器部件内的地图数据时,可以使用定位方法。

第七步骤S7可以包括从一个或更多个航位推测部件接收位置相关数据。这些部件可以包括至少一个里程计、至少一个加速度计和/或至少一个陀螺仪。第八步骤S8可以包括将从提取自视觉图像的线条获得的位置相关数据与从一个或更多个航位推测部件接收的、基于与它们中的每一个相关联的误差而加权的位置相关数据相组合。第九步骤S9可以包括基于组合数据来形成关于机器人姿态的假设。最后两个步骤可以使用例如上述和下述的粒子滤波算法来执行。

在一个实施方式中,机器人可以在每个时间步长从航位推测部件接收位置数据。该位置数据可以包括与其相关的误差估计。最佳时间步长持续时间可以通过校准来确定。在优选的实施方案中,时间步长可以包括0.01至0.1秒,更优选0.01至0.05秒。位置数据可以在每个时间步长处作为机器人姿态估计的起始点。航位推测部件可以包括至少一个里程计和/或至少一个陀螺仪。航位推测部件可以是如在粒子滤波描述中所描述的控制传感器。

机器人还可以使用至少两个相机拍摄视觉图像。然后,机器人的处理部件可以从视觉图像中提取特征。在优选的实施方式中,从视觉图像中提取直线并且包括位置相关数据。可以将在给定图像和/或给定图像组合上看到的线条与基于给定的粒子的姿态(基于地图)应当看到的线条相比较。在数量上,这可以表示为看到给定粒子姿态的特定线条的概率。该概率可以通过适应度函数进行大致计算。它可以应用于前面所述的粒子权重。可以执行标准化以降低相机画面的相关性—(例如像从栅栏)接收许多线条的一个相机不应当优于(例如仅看见几个建筑物角落)仅接收若干线条的另一相机来输入。此外,还应当进一步执行此操作以将误差估计保持在合理的范围内(为了数值稳定性)。在一个实施方式中,适应度函数大致执行以下操作:将来自相机图像的线条与地图上的线条相关联;计算两者之间的误差;总计所有误差(例如使用平方求和方法);针对某个时间点拍摄的所有图线的总数进行标准化;将它们相加;以及最后取负总数的指数。

然后,处理部件可以将来自航位推测部件的数据和来自基于线条定位的数据与它们相应的误差一起相组合以获得对可能的机器人姿态的估计。这可以使用粒子滤波方法来完成。在该步骤中,可以考虑来自另外的传感器和/或部件的输入。例如,机器人可以考虑由GPS部件、磁力计、飞行时间相机和/或加速度计产生的位置或姿态相关数据。

在每个时间步长,机器人可以更新粒子滤波中所有粒子的权重,并最终得到可能的机器人姿态的分布。当达到某个标准时,可以执行重采样步骤以确保粒子滤波不会失败。

如包括权利要求的本文中所使用的,除非上下文另有指示,否则单数形式的术语应被解释为也包括复数形式,复数形式的术语应被解释为也包括单数形式。因此,应当注意的是,除非上下文另外明确指示,否则如本文所使用的,单数形式的“一”、“一个”以及“该”包括复数形式。

贯穿整个说明书和权利要求书,术语“包含”、“包括”、“具有”以及“含有”及其变型应被理解为意指“包括但不限于”,并且不旨在排除其他部件。

术语“至少一个”应当被理解为意指“一个或更多个”,并且因此包括包含一个或多个部件的实施方式。此外,引用使用“至少一个”描述特征的独立权利要求的从属权利要求在该特征被引用为“所述”和“所述至少一个”时具有相同的含义。

将认识到的是,可以对本发明的前述实施方式进行变型,而其仍落入可以实现的发明的范围内,同时仍落入本发明的范围内。除非另有说明,否则说明书中公开的特征可以由用于相同、等同或类似目的的可替选特征来代替。因此,除非另有说明,否则所公开的每个特征表示一般系列的等同或类似特征的一个示例。

示例性语言例如“比如”、“例如”、“诸如”等的使用仅旨在更好地说明本发明,除非这样要求,否则不指示对本发明的范围的限制。除非上下文另有明确指示,否则可以以任何顺序或同时执行说明书中所描述的任何步骤。

说明书中所公开的所有特征和/或步骤可以以除了至少一些特征和/或步骤是相互排斥的组合方式以外的任何组合方式相组合。特别地,本发明的优选特征适用于本发明的所有方面并且可以以任何组合方式来使用。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1