首页> 中国专利> 能够在不同环境照明条件下操作的移动设备的视觉导航

能够在不同环境照明条件下操作的移动设备的视觉导航

摘要

一种用于移动设备的视觉定位系统,包括至少一个红外相机、至少一个红外照明源和协调至少一个相机和照明源的操作的处理器。在第一相机曝光窗口期间,泛光IR红外照明源照明环境物体以定位移动设备,在第二相机曝光窗口期间,结构化IR照明源照明环境物体以检测和测绘障碍物。视觉SLAM地图是用从第一相机获得的图像构建的,单个地图可用于在各种环境照明条件下的定位和导航。一种训练机器人的方法包括接收操作者输入信号,该操作者输入信号配置成在沿着不同的期望机器人目的地对之间的路径引导移动机器人期间开始和停止对所定义的路径的记录,使得在记录激活时为所成像的路径生成供机器人后续使用的路径。

著录项

  • 公开/公告号CN112714858A

    专利类型发明专利

  • 公开/公告日2021-04-27

    原文格式PDF

  • 申请/专利权人 拉布拉多系统公司;

    申请/专利号CN201980059460.2

  • 发明设计人 M·杜利;N·罗曼诺夫;J·P·凯斯;

    申请日2019-07-15

  • 分类号G01C21/00(20060101);G01S17/88(20060101);G05D1/02(20200101);H04N13/128(20180101);H04N13/254(20180101);

  • 代理机构44205 广州嘉权专利商标事务所有限公司;

  • 代理人韩茂

  • 地址 美国加利福尼亚州

  • 入库时间 2023-06-19 10:44:55

说明书

相关申请的交叉引用

本申请要求于2018年7月13日提交的美国临时专利申请号为62/697,520的美国临时专利申请的优先权,该申请的全部内容通过引用并入本文。

技术领域

本发明通常涉及移动设备(包括但不限于自动载具、移动递送机器人和用户定位设备,例如可穿戴设备、娱乐设备和移动辅助设备)的导航,更具体地,涉及这种设备在动态非结构化环境中的导航。

背景技术

几十年来,各种各样的自动导向载具(AGV)用于在制造环境和仓库环境中自动运输物品。这些环境通常构造成与机器人一起使用(例如,通过提供机器可读的地标),通常在新的或意想不到的障碍物方面几乎没有动态变化,并且通常具有一致的照明条件。随着时间的推移,这些AGV的版本已经改造成适用于其他环境,如医院、实验室和办公室环境,以搬运和递送物品。

在机器人技术中,地图构建和导航是许多现实应用中最重要的使能技术。地图构建和导航的发展是学术界和工业界积极研究的领域。两种最流行的技术是激光同时定位与地图构建(激光SLAM)和视觉SLAM。由于高质量光探测和测距(LIDAR)系统的高成本以及LIDAR传感器的尺寸、视场和功率要求,激光SLAM主要用于工业和商业应用。最初开发视觉SLAM是为了代替激光SLAM,以利用相机作为更灵活的替代传感器进行定位,同时也有望绘制比LIDAR系统生成并用于导航的有限二维(2D)地图更复杂的现实世界环境。由于价格合理的处理器和CMOS成像器的进步,视觉SLAM已经成为消费电子应用的实际选择,其中部件价格、尺寸、便携性和功耗是商业可行性的主要因素。

过去几年里,视觉SLAM在高保真、低成本和计算高效的实现方面经历了巨大的发展。其实例包括用于可穿戴头戴耳机的增强现实应用和视觉定位系统,以及用于各种娱乐、信息和实用应用的移动设备。这种实现极大地增加了用于在各种环境中构建视觉地图的视觉参考点的丰富性,并且还提高了视觉SLAM系统的速度和准确性。现代SLAM系统现在通常作为物理环境的三维(3D)模型操作,这些模型可以以实时速度处理。

虽然视觉SLAM在增强现实和移动设备方面取得了进展,但该领域的进展并没有超出这些特定类型设备的典型产品要求和所需功能集。例如,在将这些进步应用于消费机器人应用方面,仍然存在多种挑战。商用视觉SLAM系统在真实的室内和/或室外环境中操作时,在机器人经常经历的变化照明条件下,其性能较差或完全失败。为了解决这些问题,可以指示穿戴增强现实游戏头戴耳机的用户打开用户房间中的附加照明来玩游戏,或者可以在耳机重新校准到新的视觉地图时暂停游戏来加载。相反,机器人通常需要在无间断或外部协助的情况下操作。此外,大多数现代实现方案没有考虑视觉SLAM地图的终身维护,并且不能保证机器人在多年使用寿命内的导航性能可靠。诸如地图文件的无限增长和极高的增量地图更新计算成本等许多问题限制了视觉SLAM的可用性。

由于上述原因,本领域寻求用于移动设备的改进的视觉导航系统和相关方法,以解决与传统系统和方法相关的限制。

发明内容

本公开的方面涉及用于移动设备的视觉定位系统和方法(包括训练方法)。本文公开的视觉定位系统包括至少一个配置成检测红外波长的相机以及至少一个红外照明源。泛光红外照明源可用于照明环境中的物体进行移动设备的定位(例如,确认位置),并且结构化红外照明源可以用于照明物体,以检测和绘制环境中的障碍物(静态和动态的)。至少一个相机和照明源的操作由至少一个处理器协调,使得泛光红外照明源在第一照明间隔期间是激活的,而结构化红外照明源在第二照明间隔期间是激活的。该至少一个相机可以包括具有第一照明间隔的第一相机和具有第二照明间隔的第二(例如,深度)相机。可以使用利用第一相机获得的图像来构建视觉同时定位与地图构建(视觉SLAM)地图。协调相机和照明源并选择相机和至少泛光红外照明源的输出强度提供了一致的图像曝光,以使得能够在各种环境照明条件下使用单个视觉SLAM地图来定位和导航移动设备。还提供了一种用于快速训练移动机器人在非结构化居住环境中自主导航的方法,该方法包括从与移动机器人相关联的操作者界面接收操作者输入信号,其中操作者输入信号配置成在沿着不同对的期望机器人目的地之间的路径引导移动机器人期间开始和停止记录定义的路线,其中定义的路线标识了移动机器人在后续定位和导航操作期间要使用的路线。在沿着路径引导移动机器人期间,根据移动机器人记录的周围环境的图像,创建非结构化居住环境的至少一部分的视觉SLAM地图。无需移动机器人预先探索非结构化居住环境,也无需预先建立非结构化居住环境的任何视觉SLAM地图,就可以创建视觉SLAM地图。

在一个方面,本公开涉及一种用于移动设备的视觉定位系统,该视觉定位系统包括第一相机、泛光红外照明源和至少一个处理器。第一相机包括全局快门,配置成检测红外波长,并且配置成将由第一相机捕捉的图像提供给视觉同时定位与地图构建(视觉SLAM)模块。第一相机具有曝光间隔和非曝光间隔,并且配置成在第一相机的曝光间隔和非曝光间隔之间自动循环。泛光红外照明源配置成产生基本上非结构化的发射,并且循环地照明第一相机的视场内的环境。该至少一个处理器配置成控制第一相机和泛光红外照明源的操作。协调第一相机和泛光红外照明源的操作,使得泛光红外照明源配置成在第一相机的曝光间隔的至少一部分期间激活,并且泛光红外照明源配置成在第一相机的非曝光间隔的至少一部分期间非激活。另外,配置处理器,并且选择第一相机的灵敏度和泛光红外照明源的输出强度,以提供由第一相机获得的图像的一致曝光,从而使得能够使用单个视觉SLAM地图在各种环境照明条件下定位和导航移动设备。

在某些实施例中,各种环境照明条件包括由自然光源产生的任何日间和夜间照明条件。在某些实施例中,各种环境照明条件包括任何常规获得的室内住宅照明条件,包括自然和/或人工光源的发射。在某些实施例中,各种环境照明条件包括任何常规获得的室内商业照明条件,包括自然和/或人工光源的发射。在某些实施例中,各种环境照明条件包括第一照明条件,该第一照明条件包括由一个或多个自然或人造光源照明,并且包括没有由任何自然光源和任何人造光源照明的第二条件。

在某些实施例中,各种环境照明条件包括跨越至少10,000勒克斯的动态范围。在某些实施例中,各种环境照明条件包括从大约0勒克斯到大约10,000勒克斯的范围,或者从大约0勒克斯到大约50,000勒克斯的范围,或者本文指定的另一个范围。

在某些实施例中,环境包括住宅建筑、办公楼或商业建筑的内部区域。在某些实施例中,环境包括在由视觉SLAM模块测绘的区域的20米距离内的第一相机可见的至少一面墙或天花板。

在某些实施例中,泛光红外照明源配置成在第一相机的多个曝光间隔中在第一相机的视场内10米的距离处提供至少5μW/cm

在某些实施例中,视觉定位系统还包括滤光器,该滤光器配置成减少环境中的非红外波长到第一相机的通过。在某些实施例中,滤光器包括带通滤光器,其中心波长在泛光红外照明源的峰值发射波长的大约10nm内。在某些实施例中,滤光器包括光学长通(也可以称为高通)滤光器,其截止波长(cut-on wavelength)在泛光红外照明源的峰值发射波长的大约50nm内。

在某些实施例中,至少一个处理器配置成(i)评估由第一相机捕捉的图像的曝光,以及(ii)响应于图像曝光的评估,改变第一相机的曝光间隔。

在某些实施例中,至少一个处理器配置成(i)评估由第一相机捕捉的图像的曝光,以及(ii)响应于图像曝光的评估,改变由泛光红外照明源提供的照明水平。在某些实施例中,泛光红外照明源配置成在第一相机的曝光间隔期间以预设强度水平提供红外照明。

在某些实施例中,视觉定位系统还包括至少一个惯性测量单元,该惯性测量单元配置成向视觉SLAM模块提供指示移动设备的方位和加速度变化的信号。

在某些实施例中,泛光红外照明源配置成产生峰值波长在780nm至980nm范围内的发射。

在某些实施例中,第一相机包括至少一个单目红外相机。在某些实施例中,第一相机包括至少一个立体红外相机。

在某些实施例中,视觉定位系统还包括:至少一个第二相机,配置成检测红外波长;以及结构化红外照明源,配置成在结构化照明间隔期间以结构化红外照明模式循环地照明所述至少一个第二相机的视场内的环境;其中该至少一个第二相机的视场的至少一部分与第一相机的视场重叠;其中协调该至少一个第二相机和该结构化照明源的操作,使得该至少一个第二相机的曝光间隔与该结构化照明间隔的至少一部分重叠;并且其中结构化照明源在第一相机的曝光间隔期间是非激活的。在某些实施例中,泛光红外照明源在第二相机的曝光间隔期间是非激活的。

在某些实施例中,视觉定位系统还包括数据存储单元,该数据存储单元与移动设备相关联,并且配置成与视觉SLAM模块通信。

在某些实施例中,视觉定位系统还包括与移动设备相关联的至少一个传感器,其中视觉定位系统配置成用于在移动设备在环境内的手动或自主导航期间记录(i)由第一相机捕捉的视频信息和/或图像,以及(ii)由至少一个传感器提供的感觉信息。

在某些实施例中,该至少一个处理器配置成用于处理由第一相机捕捉的记录的视频信息和/或图像,并且用于处理由该至少一个传感器提供的感觉信息,以创建和/或更新环境的视觉SLAM地图。在某些实施例中,至少一个处理器还配置成执行视觉SLAM模块。

在某些实施例中,视觉SLAM模块配置成利用环境内视觉特征的检测和测绘来创建和/或更新环境的视觉SLAM地图。

在另一方面,本公开涉及一种用于移动设备的视觉定位系统,包括:至少一个相机,配置成检测红外波长,并配置成向视觉SLAM模块提供图像;第一红外照明源;第二红外照明源;以及至少一个处理器,配置成控制至少一个相机、第一红外照明源和第二红外照明源的操作。第一红外照明源配置成在第一照明间隔期间提供至少一个相机的视场内的环境的基本上非结构化的泛光照明。第二红外照明源配置成在第二照明间隔期间提供至少一个相机的视场内的环境内的结构化红外照明图案。该至少一个相机包括第一曝光间隔和第二曝光间隔。

第一曝光间隔至少部分地与第一照明间隔重叠,第二红外照明源在第一曝光间隔期间非激活。

第二曝光间隔至少部分地与第二照明间隔重叠。

在某些实施例中,泛光红外照明源在第二曝光间隔期间是非激活的。

在某些实施例中,至少一个相机包括第一相机和第二相机;第一红外照明源配置成在第一照明间隔期间提供第一相机的视场内的环境的基本非结构化的泛光照明;第二红外照明源配置成在第二照明间隔期间提供第二相机的视场内的环境中的结构化红外照明图案;第一相机包括第一曝光间隔;第二相机包括第二曝光间隔;并且第二相机的视场的至少一部分与第一相机的视场重叠。在某些实施例中,泛光红外照明源在第二曝光间隔期间是非激活的。

在某些实施例中,第一相机包括全局快门。

在某些实施例中,视觉定位系统还包括滤光器,该滤光器配置成减少环境中的非红外波长到第一相机的通过。在某些实施例中,滤光器包括带通滤光器,其中心波长在泛光红外照明源的峰值发射波长的大约10nm内。在某些实施例中,滤光器包括长通滤光器,该长通滤光器的截止波长在泛光红外照明源的峰值发射波长的50nm内。

在某些实施例中,至少一个处理器配置成(i)评估由第一相机捕捉的图像的曝光,以及(ii)响应于对由第一相机捕捉的图像的曝光的评估,改变第一相机的曝光间隔。

在某些实施例中,视觉定位系统还包括至少一个惯性测量单元,该惯性测量单元配置成向视觉SLAM模块提供指示移动设备的方位和加速度变化的信号。

在某些实施例中,第一红外照明源或第二红外照明源中的至少一个配置成产生峰值波长在780nm至980nm范围内的发射。

在某些实施例中,第一相机包括至少一个单目红外相机。在某些实施例中,第一相机包括至少一个立体红外相机。

在某些实施例中,视觉定位系统还包括数据存储单元,该数据存储单元与移动设备相关联,并且配置成与视觉SLAM模块通信。

在某些实施例中,视觉定位系统还包括与移动设备相关联的至少一个传感器,其中视觉定位系统配置成在移动设备在环境内的手动或自主导航期间记录(i)由至少一个相机捕捉的视频信息和/或图像,以及(ii)由至少一个传感器提供的感觉信息。

在某些实施例中,该至少一个处理器配置成用于处理由该至少一个相机捕捉的记录的视频信息和/或图像,并且用于处理由该至少一个传感器提供的感觉信息,以创建和/或更新环境的视觉SLAM地图。

在某些实施例中,视觉SLAM模块配置成利用环境内视觉特征的检测和测绘来创建和/或更新环境的视觉SLAM地图。

某些实施例针对包括本文公开的视觉定位系统的移动设备。在某些实施例中,移动设备包括自主或半自主移动载具。在某些实施例中,移动载具包括多个主动驱动轮或旋转轨道,每个主动驱动轮或轨道包括配置成感测主动驱动轮或轨道的旋转的编码器,并且移动设备配置成向视觉SLAM模块提供由每个编码器感测的轮或轨道旋转信息。在某些实施例中,移动设备包括配置成用于住宅用途的自主收取和/或递送机器人。在某些实施例中,移动设备包括配置成用于商业或工业用途的自主收取和/或递送机器人。在某些实施例中,移动设备包括配置成由人类或动物用户穿戴的可穿戴设备。在某些实施例中,移动设备包括配置成由人类用户使用的移动辅助设备。

在另一方面,本公开涉及一种用于快速训练配置成用于自主操作的移动机器人在非结构化居住环境中导航的方法,该方法包括:识别非结构化居住环境中的一组期望机器人目的地,其中该组期望机器人目的地包括至少四个期望机器人目的地;沿着期望该组机器人目的地中的至少最小数量的不同期望机器人目的地对之间的路径引导移动机器人,以使得能够在每个不同的期望机器人目的地对之间建立完全连接性;从与移动机器人相关联的操作者界面接收操作者输入信号,其中操作者输入信号配置成在沿着该路径引导移动机器人期间开始和停止记录定义的路线,其中该定义的路线标识了在后续定位和导航操作期间移动机器人使用的路线;记录在沿着路径引导移动机器人期间移动机器人经历的周围环境的图像;以及从记录的图像中创建非结构化居住环境的至少一部分的视觉SLAM地图。

在某些实施例中,该方法还包括在非结构化居住环境的至少一部分的视觉SLAM地图中测绘所定义路线和期望的机器人目的地的位置。

在某些实施例中,该方法还包括识别所定义路线中的不同路线的视觉SLAM测绘信息之间的重叠或交叉。

在某些实施例中,在没有为非结构化居住环境预先建立任何视觉SLAM地图的情况下,执行视觉SLAM地图的创建。

在某些实施例中,在移动机器人没有预先探索非结构化居住环境的情况下,执行视觉SLAM地图的创建。

在某些实施例中,该方法还包括利用非结构化居住环境内的视觉特征的检测和测绘来创建和/或更新视觉SLAM地图。

在某些实施例中,所定义的路线限制移动机器人仅在所定义的路线的预定义或操作者定义的距离内操作,除非移动机器人的操作者另外允许移动机器人在所定义的路线的预定义或操作者定义的距离之外操作。

在某些实施例中,该方法还包括通过操作者沿着连接至少一对新识别或先前识别的期望机器人目的地的至少一条路径引导移动机器人来更新视觉SLAM地图,其中该至少一条路径或者与先前定义的路线重叠,或者在先前定义的路线的指定邻近范围内。

在某些实施例中,该方法还包括在视觉用户界面上显示以下至少一项:(i)期望路线的标识,或者(ii)所定义的路线的标识,加上移动机器人位置的标识。

在某些实施例中,移动机器人包括(i)配置成检测红外波长的至少一个第一相机,(ii)配置成在至少一个第一相机的视场内提供基本上非结构化的、泛光周围环境照明的第一红外照明源,以及(iii)配置成控制至少一个第一相机的操作的至少一个处理器。在这样的实施例中,记录移动机器人经历的周围环境的图像包括在多个第一照明间隔期间照明至少一个第一相机的视场内的物体,并且使用至少一个第一相机在多个第一照明间隔中的每个照明间隔期间记录图像。

在某些实施例中,移动机器人还包括配置成检测红外波长的至少一个第二相机,以及配置成在结构化照明间隔期间用结构化红外照明图案周期性地照明至少一个第二相机的视场内的周围环境的结构化红外照明源,其中至少一个第二相机的视场的至少一部分与第一相机的视场重叠,其中协调该至少一个第二相机和该结构化照明源的操作,使得该至少一个第二相机的曝光间隔与结构化照明间隔的至少一部分重叠,其中结构化照明源在第一相机的曝光间隔期间是非激活的。在这样的实施例中,该方法还包括:在结构化照明间隔期间用结构化红外照明图案照明至少一个第二相机的视场内的周围环境,并且在结构化照明间隔期间捕捉至少一个第二相机的视场内的周围环境的图像。在某些实施例中,泛光红外照明源在第二相机的曝光间隔期间是非激活的。

在某些实施例中,移动机器人包括至少一个传感器,并且该方法还包括在沿着路径引导移动机器人期间记录由至少一个传感器提供的感觉信息。

在某些实施例中,移动机器人包括配置成用于住宅使用的自主收取和/或递送机器人。

在某些实施例中,该方法还包括:使移动机器人经过一条或多条路线,并周期性地捕捉代表一条或多条路线上多个位置处的周围环境的360度图像的图像;处理周期性捕捉的图像;以及使用通过处理周期性捕捉的图像获得的信息来补充视觉SLAM地图。

在另一方面,前述方面中的任何一个和/或本文所述的各种单独的方面和特征可以组合以获得额外的优点。本文公开的各种特征和元件中的任何一个可以与一个或多个其他公开的特征和元件组合,除非本文有相反的指示。

从随后的公开和所附权利要求中,本公开的其他方面、特征和实施例将更加显而易见。

附图说明

本文包括了附图和所附权利要求以提供对本公开主题的进一步理解,并且附图和所附权利要求并入并构成本说明书的一部分。附图示出了本公开主题的各种实施例,并且与描述一起用于解释本公开主题的原理和操作。

图1是示出根据本公开的一个实施例的用于移动设备的示例性视觉定位系统的各种部件之间的互连的示意图。

图2是包括本文公开的视觉定位系统的移动机器人的侧视图,该视觉定位系统具有第一和第二红外照明源以及具有重叠视场的第一和第二红外相机。

图3A提供了根据某些实施例的第一红外相机曝光间隔、泛光红外照明源间隔、第二红外相机曝光间隔和结构化照明源间隔的激活时间窗口。

图3B提供了根据某些实施例的第一红外相机曝光间隔、泛光红外照明源间隔、第二红外相机曝光间隔和结构化照明源间隔的激活时间窗口。

图3C提供了根据某些实施例的泛光红外照明源间隔、红外深度相机曝光间隔和结构化照明源间隔的激活时间窗口。

图3D提供了根据某些实施例的泛光红外照明源间隔、红外深度相机曝光间隔和结构化照明源间隔的激活时间窗口。

图4A是根据某些实施例的家庭环境的物理地图的俯视平面图,其中叠加了期望的机器人目的地的标识和机器人在家庭环境中在期望的机器人目的地对之间所走的单独路线,用于创建可由移动机器人使用的路线图和/或训练移动机器人。

图4B是图4A的简略图,只包括期望的机器人目的地和路线,省略了家庭环境的物理地图。

图4C提供了图4B的期望的机器人目的地和路线,增加了识别路线之间的重叠的点。

图5A是根据一个实施例的包括视觉定位系统的移动辅助设备的透视示意图,该视觉定位系统包括红外相机、照明源和至少一个处理器。

图5B是包括图5A的移动辅助设备的相机和照明源部件的壳体的透视示意图。

图5C是图5A的移动辅助设备的处理和电源电路的壳体的透视示意图。

图6是根据一个实施例的包括虚拟现实头戴耳机的可穿戴移动设备的前示意图,该虚拟现实头戴耳机利用包括红外相机、照明源和至少一个处理器。

图7是可以包括在本文公开的系统或方法的任何部件中的计算系统的概括表示。

具体实施方式

用于移动设备的视觉定位系统和相关方法利用配置成检测红外波长的至少一个相机(可选地在第一和第二相机中具体实施)、至少一个红外照明源和至少一个处理器。泛光红外照明源可用于照明环境中的物体,以定位移动设备(例如,确认其位置),结构化红外照明源可用于照明物体,以检测和测绘环境中的障碍物(静态和动态的)。至少一个红外相机和照明源的操作由至少一个处理器协调,使得泛光红外照明源在第一照明间隔期间是激活的,而结构化红外照明源在第二照明间隔期间是激活的。第一红外相机可以与泛光红外照明源结合使用,用于在环境中定位移动设备,第二红外相机(例如深度相机)可以与结构化红外照明源结合使用,用于照明物体,以便检测和测绘环境中的障碍物(静态和动态的)。由第一红外相机获得的图像可以用于创建移动设备的环境的视觉同时定位与地图构建(视觉SLAM)地图。协调相机和照明源以及选择相机和至少泛光红外照明源的输出强度提供了一致的图像曝光,以使得能够在各种环境照明条件下使用单个视觉SLAM地图来定位和导航移动设备。

本文使用的术语“移动设备”广义上指的是在环境中进行运输和/或定位(通过其自身的动力或通过人或动物提供的动力)的设备。根据各种实施例的移动设备的非限制性示例包括自动载具、移动递送和/或收取机器人以及用户定位设备,例如可穿戴设备、娱乐设备和移动辅助设备。

下面阐述的实施例代表了使本领域技术人员能够实施实施例的必要信息,并且示出了实施实施例的最佳模式。在根据附图阅读以下描述后,本领域技术人员将理解本公开的概念,并且将认识到这些概念在本文中没有特别提及的应用。应当理解,这些概念和应用属于本公开和所附权利要求的范围内。

应当理解,尽管术语第一、第二等可以用于描述各种元件,但是这些元件不应受这些术语限制。这些术语仅用于区分一个元件与另一个元件。例如,在不脱离本公开的范围的情况下,第一元件可以称为第二元件,并且类似地,第二元件可以称为第一元件。如本文所使用的,术语“和/或”包括一个或多个相关列出项目的任何和所有组合。

诸如“下方”或“上方”或“上部”或“下部”或“水平”或“垂直”的相关术语可在本文中用于描述一个元件、层或区域与图中所示的另一个元件、层或区域的关系。应当理解,这些术语和上面讨论的那些术语旨在包括除了附图中描绘的方位之外的设备的不同方位。

本文使用的术语仅用于描述特定实施例的目的,并不旨在限制本公开。如本文所使用的,单数形式“一(a)”、“一(an)”和“该”也旨在包括复数形式,除非上下文清楚地另有指示。将进一步理解,当在此使用时,术语“包括”、“包括了”、“包含”和/或“包含了”指定所陈述的特征、整数、步骤、操作、元件和/或部件的存在,但是不排除一个或多个其他特征、整数、步骤、操作、元件、部件和/或其组合的存在或添加。

除非另有定义,本文使用的所有术语(包括技术和科学术语)具有与本公开所属领域的普通技术人员通常理解的含义相同的含义。还应该理解,本文使用的术语应该解释为具有与其在本说明书和相关技术的上下文中的含义一致的含义,并且除非在本文明确定义,否则不会以理想化或过度正式的意义来解释。

为了克服现有视觉导航解决方案在低光或变化光条件下的性能退化,本文的实施例包括配备有红外照明源的移动设备。由红外照明源(例如,泛光红外照明源)提供的照明场可以至少和与移动设备相关联的相应相机的视场一样大。选择照明源以提供足够的强度,选择具有足够灵敏度的相机,并且照明源和相机之间的协调由至少一个处理器控制,以提供图像的一致曝光,足以在各种环境照明条件下使用单个视觉SLAM地图实现移动设备的定位和导航。

在某些实施例中,术语“各种环境照明条件”包括自然光源产生的任何日间和夜间照明条件。这种多种环境照明条件可以包括任何常规获得的室内住宅或室内商业照明条件,包括自然和/或人工光源的发射。在某些实施例中,各种环境照明条件包括第一照明条件,该第一照明条件包括一个或多个自然或人造光源照明,并且包括没有任何自然光源和任何人造光源照明的第二条件。在某些实施例中,各种环境照明条件包括跨越至少10,000勒克斯的动态范围。在某些实施例中,各种环境照明条件包括从大约0勒克斯到大约10,000勒克斯的范围,或者从大约0勒克斯到大约50,000勒克斯的范围,或者本文指定的另一个范围。

在某些实施例中,泛光红外照明源配置成在第一相机的视场内10米的距离处在第一相机的多个曝光间隔中提供至少2、至少5、至少7或至少10μW/cm

在某些实施例中,移动设备配置成获得距离移动设备的至少一个红外相机至少5米、至少8米、至少10米或至少20米的物体的适当曝光图像。在这种情况下,“适当曝光”指的是存在足够的光来成功提取视觉SLAM的选定实现所使用的视觉特征。

本文提到的红外相机可以包括结合了CMOS或CCD成像传感器的数码相机。在某些实施例中,相机可以利用全局快门代替滚动快门图像扫描技术。采用滚动快门技术的成像传感器从传感器的一侧(例如,顶部)向另一侧以逐行的方式按顺序扫描图像。相反,采用全局快门技术的成像传感器同时扫描(或曝光)图像的整个区域。通过仅在曝光期间允许频闪照明,利用具有全局快门的相机可以显著增强根据本文实施例的成像性能。频闪照明有益地减少了照明源使用的能量,并且还可以用于减少人类所处环境中红外辐射的总量,以符合眼睛安全标准。

为移动设备提供板载环境照明有助于最大限度地减少因环境光源变化而引起的图像中的感知变化。在某些实施例中,移动设备的照明源产生的红外照明可以提供足够的照明来完全洗掉任何外部光源(例如,外部光源提供高达500勒克斯、高达1000勒克斯、高达2000勒克斯、高达5000勒克斯、高达10,000勒克斯或高达100,000勒克斯的照明水平),使图像在任何条件下看起来几乎相同。在某些实施例中,红外照明可以由一个或多个固态发射器产生,例如发光二极管(LED)、有机发光二极管等。

在某些实施例中,可以使用滤光器来减少环境中的非红外波长到红外相机的通过,以抑制环境光源。在某些实施例中,滤光器可以包括带通滤光器或长通滤光器。在某些实施例中,滤光器包括带通滤光器,其中心波长在泛光红外照明源的峰值发射波长的大约10纳米(nm)(或大约5nm或大约2nm)内。在某些实施例中,照明源的峰值波长可以是850nm或接近850nm的红外波长,并且带通滤光器可以包括基于干涉的带通滤光器。在某些实施例中,滤光器可以包括长通滤光器,该长通滤光器具有在泛光红外照明源的峰值发射波长的约50纳米(或约30nm或约20nm)内的截止波长。

在某些实施例中,移动设备包括至少一个惯性测量单元(IMU),惯性测量单元是可以测量身体的线性和角运动(可选地与方位结合)的电子设备,通常具有三个陀螺仪和三个加速度计,可选地与磁力计结合。IMU可用于向视觉SLAM模块提供移动设备的方位和加速度变化信息。在某些实施例中,移动设备包括一个或多个传感器。可以使用的传感器的实例包括(但不限于)光学传感器、温度传感器、压力传感器、振动传感器、声音传感器、接触传感器、湿度传感器、倾斜传感器和编码器(其可以与移动载具的主动驱动轮或旋转轨道相关联并用于感测其旋转)。在某些实施例中,来自IMU和/或一个或多个传感器的信号可以与成像信息结合使用,以帮助创建视觉SLAM地图和/或定位和导航移动设备。

在某些实施例中,移动设备包括一个或多个无线和/或有线通信接口,以允许与包含该移动设备的环境内部和/或外部的设备进行通信。在某些实施例中,移动设备的通信接口配置成与在移动设备外部但本地布置在包含移动设备的环境内的至少一个处理单元通信(例如,无线通信)。在某些实施例中,本地位于环境中但在移动设备外部的处理单元包括相关联的存储器,并且包括专用无线通信接口(例如,配置成以900MHz、2.4GHz、5GHz或另一频率通信)以与移动设备通信,或者与配置成与移动设备通信的无线路由器耦合。在某些实施例中,移动设备的通信接口配置成经由至少一个广域网或因特网与位置远离包含移动设备的环境的至少一个处理设备通信。在某些实施例中,移动设备外部的处理设备可以用于执行或协助诸如视觉SLAM地图创建、视觉SLAM地图增强和/或更新、故障排除和软件升级之类的功能。

图1是示出根据本公开的一个实施例的用于移动设备12的示例性视觉定位系统10的各种部件之间的互连的示意图。移动设备12布置在环境11内,可选地在非结构化的居住环境或商业环境中具体实施。移动设备12包括处理器14(例如,至少一个处理器(可选地多个处理器)配置成执行诸如软件的机器可读指令),其具有相关联的存储器16。移动设备12的IMU 18和一个或多个传感器20可以布置成向处理器14提供信号。处理器14配置成控制第一和第二红外相机21、22以及相关联的第一和第二红外照明源23、24。一个或多个红外相机21、22可以包括滤光器25、26,以减少环境中的非红外波长的通过。在某些实施例中,第一红外相机21的视场至少部分地与第二相机22的视场重叠。在某些实施例中,第一红外照明源23包括泛光红外照明源,该泛光红外照明源配置成生成基本上非结构化的红外发射图案,并且第一红外相机21的操作与第一红外照明源23相协调。在某些实施例中,第二红外照明源24包括配置成生成结构化红外照明图案的结构化红外照明源,并且第二红外相机22的操作与第二红外照明源24相协调。在某些实施例中,第一红外相机21具有第一曝光间隔(即,重复的周期性曝光间隔),其与第一红外照明源23的照明间隔(即,重复的周期性照明间隔)相协调,并且第二红外相机22具有第二曝光间隔(即,重复的周期性曝光间隔),其与第二红外照明源24的照明间隔(即,重复的周期性照明间隔)相协调。移动设备12还包括通信接口30,其可用于提供与一个或多个外部设备的无线和/或有线通信。

处理设备31可以布置在移动设备12的外部,但是仍然在环境11内。处理设备31可以包括通信接口38以及至少一个具有相关存储器36的处理器34。通信接口38可以促进与移动设备12和通信网络40(可选地在广域网或互联网中具体实施)的有线和/或无线通信,例如允许与至少一个远程处理设备41通信。远程处理设备41可以包括通信接口48以及至少一个具有相关存储器46的处理器44。在某些实施例中,移动设备12外部的处理设备31、41可用于执行或协助诸如视觉SLAM地图创建、视觉SLAM地图增强和/或更新、故障排除和软件升级的功能。

继续参考图1,提供操作者界面或用户输入元件37来接收输入信号,该输入信号配置成开始和停止记录在机器人引导步骤期间使用的所定义的路线(例如,在用户建立的期望机器人目的地对之间)。作为机器人引导步骤的一部分,移动机器人沿着不同的期望机器人目的地对之间的路径受引导(例如,由操作者引导),并且为在记录处于激活状态时成像的路径建立路线。在某些实施例中,可以提供显示器39(例如,液晶显示器、有机发光二极管显示器等)以便无论是在训练过程期间还是在移动机器人操作期间用作视觉用户界面以显示以下中的至少一项:(i)期望的机器人目的地的标识或(ii)所定义的路线的标识,加上移动机器人的位置的标识。在某些实施例中,当在机器人引导步骤期间沿着路径引导机器人时,显示器39可用于通知操作者一条或多条路线的创建状态和/或路线之间的重叠。

图2是包括本文公开的视觉定位系统的移动机器人100的侧视图,其中第一和第二红外相机101、102(分别具有相关联的第一和第二红外照明源(未示出))具有重叠的视场。移动机器人100包括电动驱动轮110(以及非驱动轮112)和电池(未示出),以使移动机器人100能够在其自身动力的作用下在环境中移动。第一红外相机101包括第一视场103,第二红外相机包括与第一视场103部分重叠的第二视场104,以产生重叠的视场105。在某些实施例中,第二红外相机102包括深度相机,并且可以可选地包括多个相机。如图所示,第二红外相机102可以向前和向下定向,使得第二视场104可以布置成照明紧邻移动机器人100的前方108的环境区域(例如,在导航期间识别潜在障碍物)。第一红外相机101可以向前定向,使得第一视场103可以布置成照明通常在移动机器人100的前部108前方更远的环境区域(例如,用于识别环境中的特征以帮助识别移动机器人100的位置)。在某些实施例中,与第一红外相机101相关联的第一照明源包括泛光红外照明源,该泛光红外照明源配置成产生基本上非结构化的红外发射并循环照明第一视场103内的环境,并且与第二红外相机102相关联的第二照明源包括结构化红外照明源,该结构化红外照明源配置成产生具有结构化图案的红外发射并循环照明第二视场104内的环境。

结构化红外发射图案对于深度相机的使用是有益的,但是会干扰用于定位的相机的特征识别,特别是当用于定位的相机的视场与结构化红外发射源的照明场重叠时。在某些实施例中,为了缓解该问题,结构化红外发射源的照明间隔(其可以与深度相机曝光间隔相协调)定时为与定位相机的曝光间隔不同步,使得红外发射图案不会被用于定位的相机成像。在某些实施例中,用于定位的相机在本文中可称为第一相机并具有第一曝光间隔,用于识别障碍物的深度相机可称为第二相机并具有第二曝光间隔。在某些实施例中,单个相机(其可以具体实施立体相机)可以用于提供定位和障碍物检测,其中由提供基本非结构化照明的泛光红外照明源照明的物体的成像(检测)在第一定位间隔期间执行,并且由结构化红外照明源照明的物体的成像可以在第二间隔期间执行。

在某些实施例中,由至少一个相机提供的第一和第二曝光间隔可以分别与泛光红外(第一)照明源和结构化红外(第二)照明源的第一和第二照明间隔基本同步,并且第一和第二曝光间隔可以是连续的和不重叠的。这种布置的一个示例如图3A所示,图中提供了第一红外相机曝光间隔、泛光红外照明源间隔、第二红外相机曝光间隔和结构化照明源间隔的激活时间窗口。如图所示,每个第一红外相机曝光间隔和每个泛光红外照明源间隔对应于第一时间间隔i

在某些实施例中,用于定位的相机可以以这样的方式定向或指向,使得由与深度传感器相关联的光源投射的红外图案不与视觉SLAM相机的视场重叠。

如前所述,在某些实施例中,单个基于立体相机的深度传感器可用于提供障碍物检测和定位(例如,视觉SLAM导航),其中由提供基本非结构化照明的泛光红外照明源照明的物体的成像(检测)在用于定位的第一相机曝光间隔期间执行,由结构化红外照明源照明的物体的成像可在第二相机曝光间隔期间执行。在这样的实施例中,可以操作照明源来交替接通和断开结构化照明源。在这样的实施例中,泛光红外照明源可以在第一相机曝光间隔期间使用,并且(可选地)也可以在第二相机曝光间隔期间使用(例如,在弱光或背光条件下帮助深度传感器立体相机)。图3B示出了一种布置的示例性实施例。如图所示,每个定位相机曝光间隔对应于第一时间间隔i

在某些实施例中,泛光红外照明源可以配置成在深度相机(例如,深度传感器的立体相机)的曝光间隔期间非激活,而结构化红外照明源激活,以避免干扰深度信息提取过程。在某些实施例中,非激活的状态可以对应于关闭,或者被调暗到发射输出将不明显或者不会损害视觉SLAM模块的性能的水平的状态。在某些实施例中,泛光红外照明源可以配置成在第一相机的曝光间隔期间和/或在第一相机的第一曝光间隔之外以预设强度水平提供红外照明。在某些实施例中,泛光红外照明源的强度水平可以变化(例如,使用脉宽调制驱动)。

在某些实施例中,泛光红外照明源可以配置成在结构化红外照明源激活的周期期间和结构化红外照明源非激活的周期期间,在深度传感器的立体相机捕捉的帧期间激活。这种布置在图3C中示出,其中泛光红外照明源在第一和第二时间间隔i

在某些实施例中,泛光红外照明源可以配置成在由深度相机捕捉的帧期间激活,同时结构化红外照明源非激活。这种布置如图3D所示,其中泛光红外照明源在每个第一时间间隔i

在某些实施例中,泛光红外照明源的峰值波长可以配置成与结构化红外照明源的峰值波长相同或接近。此外,在某些实施例中,深度传感器的立体相机可以配备有滤光器(例如,带通或高通滤光器)近似匹配两个红外照明源的峰值波长。

在某些实施例中,为了防止结构化红外照明源干扰用于定位的相机,用于定位的相机(例如,第一相机)可以配备有峰值波长在红外区域中、此峰值波长不同于与深度相机相关联的结构化红外照明源的峰值波长的峰值透射波长或截止波长的滤光器。在某些实施例中,用于定位的相机(例如,第一相机)可以配置有带通滤波器,该带通滤波器在红外区域中具有峰值波长,该峰值波长不同于结构化红外照明源的发射峰值波长。在某些实施例中,泛光红外照明源的峰值波长可以配置成与用于定位的相机的带通滤光器的中心波长匹配或重叠。

为了将移动设备上的计算硬件的成本保持在最小,在某些实施例中,当移动设备(例如,机器人)空闲时,更新视觉SLAM地图的计算密集型任务可以运行一次或多次。在某些实施例中,这可以通过每当移动设备在环境中导航或受引导(例如,推动或拉动)时记录来自相机的视频以及所有必要的感觉数据来实现。随后,可以在移动设备空闲或以其他方式具有空闲计算能力的一个或多个时间期间处理所记录的信息。这种过程允许在不施加实时操作约束的情况下运行更新地图的计算方面昂贵的任务。在一些应用中,在移动设备的空闲时间期间,可能没有足够的时间来处理所有记录的信息。在某些实施例中,队列、先进先出制度、堆栈或类似的方法可用于基于记录时间将用于后续处理的记录的视频和感觉信息的量限制到可用的存储容量。在某些实施例中,保留用于处理的路径的决定可以基于视觉SLAM地图中沿着该路径的视觉特征的数量或密度和“年龄”来确定。如果沿着路径的视觉特征密度低或者特征是很久以前创建的,则路径可以被优先处理;否则,在需要存储新记录的情况下,记录可以被标记以进行删除。

为了限制视觉特征地图文件大小,在某些实施例中,特征的地理密度可以在视觉SLAM地图中保持,并由预设数量限制。在某些实施例中,每个特征的创建时间和最后观察时间也可以保存在地图中。在某些实施例中,可以维护计数器来记录每个特征用于导航的次数。随后可以使用前面的信息项来决定哪些特征应该保留,哪些特征应该从地图中丢弃。在某些实施例中,移动设备可以周期性地触发特征的过程计算地理密度。在密度超过预设数量的区域,可能会将最早的特征从地图中丢弃,以保持预设密度。在某些实施例中,具有过度密度的区域可以基于一天中时间的直方图的每个格中的特征数量或一天中时间的时间密度来进一步评估。于是可以丢弃一天中具有最高密度或特征数量的时间段中最老的特征。在某些实施例中,可以基于观察到的和/或用于导航的频率或次数来丢弃特征,其中可以首先丢弃最少使用的特征。在某些实施例中,结合年龄和/或最后观察时间的使用频率可以用于决定哪些特征应该被丢弃。如果某个特征被频繁使用,但在特定时间段内未被使用,则该特征可能会在使用频率较低但最近添加到地图的特征之前被丢弃。

可靠的地图构建和导航是利用自动导航机器人等移动设备提供简单而令人满意的用户体验的关键。该领域的进步与上述改进相结合,允许在一次通过环境时创建地图,以创建足以在同一环境中进行可靠导航的地图。在某些实施例中,在设置过程中,机器人或其他移动设备可以沿着穿过环境的期望路径受引导(例如,推动或拉动)或远程控制。在这个过程中,机器人在穿越环境中的路径时记录视频和感觉信息,同时或在记录完成后,机器人构建地图并将路径轨迹存储在存储器中。这条轨迹可以称为“路线”。单一条路线可以连接环境中的两个点,允许机器人从路线的起点导航到终点或目的地。记录机器人必须导航到的环境中的点之间的足够数量的路线,创建初始路线图。在某些实施例中,可以处理这样的路线图,找到路线相交和/或重叠的所有点,以构建类似于地铁地图的可穿越的修改过的路线图。可穿越的修改过的路线图允许机器人选择一条或多条连接任意两个目的地的可能路线。在某些实施例中,在设置过程中,在记录每条路线之后,处理初始路线图,并建立所有点之间的连接图。该连接图可以通知设置过程,并通知是否必须记录额外的路线来实现目的地点之间的期望连接。在某些实施例中,机器人可以配置成寻找通过可穿越的修改过的路线图到达目的地的最优路线。如果机器人在沿着选定的路线导航时遇到障碍物,并且不能在给定的限制内绕过障碍物,则机器人可以停止并等待路径清除。这种约束的实例可以包括获得偏离所选路线的最大距离。在某些实施例中,如果机器人遇到障碍物并且不能在选择的路线上继续,机器人可以查阅类似地铁的地图来识别替代路线,并且在识别到替代路线后,机器人可以自动利用替代路线。

图4A是根据某些实施例的家庭环境150的物理地图的俯视平面图,其中叠加了期望的机器人目的地152的标识和家庭环境150内的机器人在期望的机器人目的地对152之间采取的单独的路线154,用于创建移动机器人可使用的路线地图和/或训练移动机器人。每个期望的机器人目的地152可以由操作者选择,并且可以在训练方法期间建立单独的路线154,通过该训练方法,操作者提供输入信号,该输入信号配置成开始和停止记录在机器人引导步骤期间使用的所定义的路线,使得当沿着不同期望机器人目的地对152之间的路径引导移动机器人时(例如,由操作者推动),为记录激活时成像的路径生成路线154。

图4B是图4A的简略图,仅包括期望的机器人目的地152A-152I(统称为152)和路线154A-154E(统称为154),同时省略了家庭环境150的物理地图。如图所示,第一路线154A连接期望的机器人目的地152A-152B,第二路线154B连接期望的机器人目的地152C、152D,第三路线154C连接期望的机器人目的地152E、152F,第四路线154D连接期望的机器人目的地152G、152H,第五路线154E连接期望的机器人目的地152D、152I。

图4C提供了可穿越的处理过的地图,包括期望的机器人目的地152A-152I和图4B的路线154A-154E,添加了识别所选路线152之间的重叠的转移点156A-156F,并且添加了对应于两个邻近的期望机器人目的地152F、152G的合并目的地158。图4C的可穿越的处理过的地图允许移动机器人选择一条或多条连接期望的机器人目的地152A-152I的任何组合的可能路线。转移点156A、156F可以由不同路线154之间的重叠和/或不同路线彼此足够接近而其间不存在障碍物的区域来限定。在图4A的环境150内的后续定位和导航期间,移动机器人可以使用可穿越的、处理过的地图。

在许多应用中,在机器人沿期望路线单次通过期间或之后生成环境地图和/或记录通过环境的路线可能是有益的。在这种情况下,机器人相机的一个或多个相机将暴露在有限的环境视场中。因此,在机器人通过路线期间,视觉SLAM地图将具有仅限于由一个或多个相机识别的视觉特征。为了进一步改进地图,在某些实施例中,机器人可以配置成执行附加的动作,同时沿着记录的路线自主导航,以捕捉空间的附加视点,以便用在机器人沿着期望路线的原始“训练”过程中机器人的至少一个相机的视场内未捕捉到的附加视觉特征来填充地图。这种额外的动作可以包括但不限于以一定间隔原地旋转、机器人在不同方向上离开原始训练路径的探索性运动、和/或旋转和探索性运动的组合。附加动作的频率、范围和/或类型可以预先设定,可以手动调整(通过配置设置),和/或至少部分地通过导航系统计算通过环境的一部分和/或执行至少一些附加动作时检测到的增量特征的数量来驱动。在某些实施例中,机器人可以配置成周期性地沿着记录的路径导航,可选地执行额外的动作,以捕捉可能随着时间而改变的额外特征,例如由于人类活动或环境中的其他变化。

本公开的一方面涉及一种用于快速训练配置成用于自主操作的移动机器人在非结构化居住环境中导航的方法,其中该方法包括多个步骤。第一步骤包括在非结构化居住环境中识别一组期望的机器人目的地,其中该组期望的机器人目的地包括至少四个期望的机器人目的地(例如,为了形成至少两对期望的机器人目的地)。这种识别可以由操作者执行,以对应于移动机器人可能能够向人类用户提供帮助的目的地。第二步骤包括沿着至少最小数量的不同期望机器人目的地对之间的路径引导移动机器人(例如,操作者拉动或推动移动机器人),以使得能够在每个不同的期望机器人目的地对之间建立完全连接。可以与第二步骤同时执行的第三步骤包括从与移动机器人相关联的操作者界面接收操作者输入信号,其中操作者输入信号配置成在沿着路径引导移动机器人期间开始和停止记录所定义的路线,其中所定义的路线识别移动机器人在后续定位和导航操作期间要使用的路线。第四步骤包括在沿着路径引导移动机器人期间记录移动机器人经历的周围环境的图像(例如,使用移动机器人的至少一个相机)。第五步骤包括从移动机器人记录的图像中创建非结构化居住环境的至少一部分的视觉SLAM地图。视觉SLAM地图可以存储在与移动机器人相关联的存储器中,并且可以基于在移动机器人的使用期间获得的图像和/或感觉信息来周期性地更新。

在某些实施例中,该方法还包括在非结构化居住环境的至少一部分的视觉SLAM地图中测绘所定义的路线和期望的机器人目的地的位置。

在某些实施例中,该方法还包括识别所定义路线中的不同路线的视觉SLAM测绘信息之间的重叠或交叉。在某些实施例中,为了定义可穿越的、处理过的地图,在彼此的特定邻近范围内的路线的提供可以构成重叠。

在某些实施例中,视觉SLAM地图的创建是在没有预先为非结构化居住环境建立任何视觉SLAM地图的情况下,和/或没有预先由移动机器人探索非结构化居住环境的情况下执行的。

在某些实施例中,该方法还包括利用非结构化居住环境内的视觉特征的检测和测绘来创建和/或更新视觉SLAM地图。

在某些实施例中,所定义的路线限制移动机器人仅在所定义的路线的预定义或操作者定义的距离内操作,除非移动机器人的操作者另外允许移动机器人在所定义的路线的预定义或操作者定义的距离之外操作。

在某些实施例中,该方法还包括通过操作者沿着连接至少一对新识别或先前识别的期望机器人目的地的至少一条路径引导移动机器人来更新视觉SLAM地图,其中该至少一条路径或者与先前定义的路线重叠,或者在先前定义的路线的指定邻近范围内。

在某些实施例中,该方法还包括在视觉用户界面上显示以下中的至少一项:(i)期望的机器人目的地的标识,或(ii)所定义的路线的标识以及移动机器人的位置的标识。

在某些实施例中,移动机器人包括:(i)配置成检测红外波长的至少一个第一相机,(ii)配置成在至少一个第一相机的视场内提供周围环境的基本上非结构化的、泛光照明的第一红外照明源,以及(iii)配置成控制至少一个第一相机的操作的至少一个处理器。在这样的实施例中,记录移动机器人经历的周围环境的图像包括在多个第一照明间隔期间照明至少一个第一相机的视场内的物体,并且使用至少一个第一相机在多个第一照明间隔中的每个照明间隔期间记录图像。

在某些实施例中,移动机器人还包括配置成检测红外波长的至少一个第二相机,以及配置成在结构化照明间隔期间用结构化红外照明图案周期性地照明至少一个第二相机的视场内的周围环境的结构化红外照明源,其中至少一个第二相机的视场的至少一部分与第一相机的视场重叠,其中协调该至少一个第二相机和结构化红外照明源的操作,使得该至少一个第二相机的曝光间隔与结构化照明间隔的至少一部分重叠,其中结构化照明源在第一相机的曝光间隔期间是非激活的。在这样的实施例中,该方法还包括:在结构化照明间隔期间用结构化红外照明图案照明至少一个第二相机的视场内的周围环境,并且在结构化照明间隔期间捕捉至少一个第二相机的视场内的周围环境的图像。在某些实施例中,泛光红外照明源在第二相机的曝光间隔期间是非激活的。

在某些实施例中,移动机器人包括至少一个传感器,并且该方法还包括在沿着路径引导移动机器人期间记录由至少一个传感器提供的感觉信息。

在某些实施例中,该方法还包括:使移动机器人通过一条或多条路线,并周期性地捕捉代表一条或多条路线上的多个位置处的周围环境的360度图像的图像;处理周期性捕捉的图像;以及使用通过处理周期性捕捉的图像获得的信息来补充视觉SLAM地图。

图5A是结合了如本文所公开的视觉定位系统的移动辅助设备200的透视示意图。图5B提供了第一和第二壳体210、215的放大视图,包括其相机和照明源部件,图5C提供了用于处理和电源电路的第三壳体216的放大视图。移动辅助设备200可以具体实施视觉受损用户可使用的用户引导滚动助行器,以帮助穿越包含障碍物的环境。该移动辅助设备包括用于支撑用户的手柄202、框架204和轮子206、208。在某些实施例中,所有车轮206、208均未被驱动,但是后轮208包括线性编码器209,该线性编码器209配置成感测车轮旋转并向视觉SLAM模块提供车轮旋转信息。在某些实施例中,后轮208可以被主动驱动(例如,使用马达(未示出))。移动辅助设备200可以利用布置在可安装到框架204上的第一至第三壳体210、215、216中的部件。第一壳体210包括第一和第二红外相机211、212以及配置成生成结构化照明图案的结构化红外照明源214。第二壳体215包括泛光红外照明源213。如果需要,照明源213、214的不同壳体的存在允许照明源瞄准非平行方向。第三壳体216包含其他部件,例如一个或多个处理器、惯性测量单元、一个或多个传感器和电池(未示出)。各种壳体210、215、216可以通过通信线路218连接。在使用中,第一和第二红外相机211、212以及相应的红外照明源213、214可以用于生成环境的视觉SLAM地图,此后向用户识别环境内的障碍物,以帮助引导用户到达期望的目的地。这种识别可以包括听觉和/或振动信号。

图6是可穿戴移动设备250的前视示意图,该可穿戴移动设备250在虚拟现实头戴耳机(配置成穿戴在用户的头上)中具体实施,该虚拟现实头戴耳机结合了如本文所公开的视觉定位系统。可穿戴移动设备250包括壳体258和多个前向红外相机251A-251B、252A-252B以及红外照明源253、254和至少一个传感器256。第一对红外相机251A-251B可以配置成与泛光红外照明源253协作并用于移动设备250在环境中的定位。第二对红外相机252A-252B可以配置成与结构化红外照明源254协作,并用于检测环境中的障碍物。在使用中,第一和第二对红外相机251A-251B、252A-252B和相应的红外照明源253、254可用于生成(使用处理器)环境的视觉SLAM地图,此后向用户识别环境内的障碍物,例如在移动设备的用户参与的游戏或其他娱乐活动中可以是有用的。

图7是可以包括在本文公开的系统或方法的任何部件中的计算系统300(可选地具体实施在处理器和/或计算设备中)的概括表示的示意图。在这点上,计算系统300适于执行来自计算机可读介质的指令,以执行这些和/或本文描述的任何功能或处理。在这点上,图7中的计算系统300可以包括一组指令,这些指令可以被执行以编程和配置可编程数字信号处理电路,用于支持所支持的通信服务的缩放。计算系统300可以连接(例如,联网)到局域网(LAN)、内联网、外联网或互联网中的其他机器。虽然仅示出了单个设备,但是术语“设备”还应当理解为包括单独或共同执行一组(或多组)指令以执行本文讨论的任何一种或多种方法的任何设备集合。计算系统300可以是或包括包含在专用集成电路(ASIC)t、可编程逻辑控制器、诸如印刷电路板(PCB)的电子板卡、服务器、微控制器、个人计算机、智能手机或任何其他合适的设备中的一个或多个电路。

在某些实施例中,视觉SLAM地图的工作副本可以存储在计算系统300的一个或多个设备中。在某些实施例中,视觉SLAM地图的工作副本可以在移动设备本地的处理设备302上本地存储和操作。在某些实施例中,视觉SLAM地图的工作副本可以存储在远离移动设备的至少一个处理器设备中并在其中操作,并且可以经由网络320访问(例如,在计算机服务器或其他设备中,可选地具体实施在一个或多个网络连接和/或云计算设备中)。在某些实施例中,视觉SLAM地图的第一部分可以作为移动设备本地的处理设备302上的客户端或应用存储和/或操作,并且视觉SLAM地图的第二部分可以远程存储和/或操作(例如,在计算机服务器或可通过网络320访问的一个或多个网络连接和/或云计算设备上),第一部分和第二部分配置成彼此协作。

图7所示的计算系统300包括处理设备或处理器302、主存储器304(例如,只读存储器(ROM)、闪存、动态随机存取存储器(DRAM),如同步DRAM(SDRAM)等)和静态存储器306(例如,闪存、静态随机存取存储器(SRAM)等),其可以通过数据总线308相互通信。替代地,处理设备302可以直接或通过一些其他连接方式连接到主存储器304和/或静态存储器306。处理设备302可以是控制器,主存储器304或静态存储器306可以是任何类型的存储器。

处理设备302代表一个或多个通用处理设备,例如微处理器、中央处理单元等。更具体地,处理设备302可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器、实现其他指令集的处理器或者实现指令集组合的其他处理器。处理设备302配置成在指令中执行处理逻辑,用于执行本文讨论的操作和步骤。

计算系统300还可以包括网络接口设备310。计算系统300还可以包括或可以不包括输入312,输入312配置成在执行指令时接收要传送给计算系统300的输入和选择。计算系统300也可以包括或不包括输出314,包括但不限于显示器、视频显示单元(例如,液晶显示器(LCD)或阴极射线管(CRT))、字母数字输入设备(例如,键盘)和/或光标控制设备(例如,鼠标)。

计算系统300可以包括或不包括数据存储设备,该数据存储设备包括存储在计算机可读介质318中的指令316。指令316也可以在由计算系统300执行期间完全或至少部分地驻留在主存储器304和/或处理设备302中,主存储器304和处理设备302也构成计算机可读介质。指令316还可以经由网络接口设备310在网络320上发送或接收。

虽然计算机可读介质318在一个实施例中示为单个介质,但是术语“计算机可读介质”应该理解为包括存储一组或多组指令的单个介质或多个介质(例如,集中式或分布式数据库,和/或相关联的高速缓存和服务器)。术语“计算机可读介质”还应理解为包括能够存储、编码或携带一组由处理设备执行并使处理设备执行本文公开的实施例的任何一种或多种方法的指令的任何介质。因此,术语“计算机可读介质”应理解为包括但不限于固态存储器、光学介质和磁介质。

本文公开的实施例包括各种步骤。本文公开的实施例的步骤可以由硬件部件执行或实施,或者可以在机器可执行指令中具体实施,这些指令可以用于使用指令编程的通用或专用处理器执行这些步骤。替代地,这些步骤可以由硬件和软件的组合来执行。

本文公开的实施例可以作为计算机程序产品或软件来提供,其可以包括其上存储有指令的机器可读介质(或计算机可读介质),该指令可以用于对计算系统(或其他电子设备)进行编程以执行根据本文公开的实施例的过程。机器可读介质包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制。例如,机器可读介质包括:机器可读存储介质(例如,ROM、随机存取存储器(“RAM”)、磁盘存储介质、光存储介质、闪存设备等);等等。

除非另外特别说明,并且从前面的讨论中显而易见,应当理解,在整个描述中,使用诸如“分析”、“处理”、“计算”、“确定”、“显示”等术语的讨论指的是计算系统或类似的电子计算设备的动作和过程,该计算系统或类似的电子计算设备将表示为计算系统的寄存器内的物理(电子)量的数据和存储器操纵和转换成类似地表示为计算系统存储器或寄存器或其他这样的信息存储、传输或显示设备内的物理量的其他数据。

本文给出的算法和显示并不固有地与任何特定的计算机或其他装置相关。根据本文的教导,各种系统可以与程序一起使用,或者可以证明构造更专用的装置来执行所需的方法步骤是方便的。上面的描述中公开了各种这些系统所需的结构。此外,本文描述的实施例不是参考任何特定的编程语言来描述的。应当理解,可以使用各种编程语言来实现本文描述的实施例的教导。

本领域技术人员将进一步理解,结合本文公开的实施例描述的各种说明性逻辑块、模块、电路和算法可以实现为电子硬件、存储在存储器或另一计算机可读介质中并由处理器或其他处理设备执行的指令,或者两者的组合。作为实例,本文描述的系统的部件可以用在任何电路、硬件部件、集成电路(IC)或IC芯片中。本文公开的存储器可以是任何类型和大小的存储器,并且可以配置成存储任何类型的所需信息。为了清楚地说明这种可互换性,各种说明性的部件、块、模块、电路和步骤已经在上面根据其功能进行了一般性描述。如何实现这种功能取决于特定的应用、设计选择和/或对整个系统施加的设计约束。技术人员可以针对每个特定应用以不同的方式实现所描述的功能,但是这种实现决策不应解释为导致脱离本发明实施例的范围。

结合本文公开的实施例描述的各种说明性逻辑块、模块和电路可以用处理器、数字信号处理器(DSP)、ASIC、现场可编程门阵列(FPGA)或其他可编程逻辑设备、分立门或晶体管逻辑、分立硬件部件或设计成执行本文描述的功能的其任意组合来实现或执行。此外,控制器可以是处理器。处理器可以是微处理器,但是替代地,处理器可以是任何传统的处理器、控制器、微控制器或状态机。处理器也可以实现为计算设备的组合(例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器与一个DSP核心的结合、或任何其他这样的配置)。

本文公开的实施例可以用硬件和存储在硬件中的指令来具体实施,并且可以驻留在例如RAM、闪存、ROM、电可编程ROM(EPROM)、电可擦除可编程ROM(EPROM)、寄存器、硬盘、可移动磁盘、CD-ROM或本领域已知的任何其他形式的计算机可读介质中。存储介质耦合到处理器,使得处理器可以从存储介质读取信息和向存储介质写入信息。替代地,存储介质可以集成到处理器中。处理器和存储介质可以驻留在ASIC中。ASIC可以位于远程站。替代地,处理器和存储介质可以作为分立部件驻留在远程站、基站或服务器中。

还应注意的是,本文描述的任何实施例中描述的操作步骤都是为了提供示例和讨论。除了所示的顺序之外,所描述的操作可以以许多不同的顺序来执行。此外,在单个操作步骤中描述的操作实际上可以在多个不同的步骤中执行。另外,实施例中讨论的一个或多个操作步骤可以组合。本领域技术人员还将理解,信息和信号可以使用各种技术和工艺中的任何一种来表示。例如,以上描述通篇引用的数据、指令、命令、信息、信号、比特、符号和码片可以由电压、电流、电磁波、磁场、粒子、光场或其任意组合来表示。

对于本领域的技术人员来说显而易见的是,在不脱离本公开的精神和范围的情况下,可以对本发明的技术进行各种修改和变化。由于本领域技术人员可以想到结合本发明技术的精神和实质的所公开实施例的修改、组合、子组合和变化,所以本发明技术应该解释为包括所附权利要求及其等同物的范围内的所有内容。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号