CN111033561A - 用于利用语义信息来导航机器人设备的***和方法 - Google Patents

用于利用语义信息来导航机器人设备的***和方法 Download PDF

Info

Publication number
CN111033561A
CN111033561A CN201880047966.7A CN201880047966A CN111033561A CN 111033561 A CN111033561 A CN 111033561A CN 201880047966 A CN201880047966 A CN 201880047966A CN 111033561 A CN111033561 A CN 111033561A
Authority
CN
China
Prior art keywords
robotic device
sensors
sensor
semantic information
processor
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
Application number
CN201880047966.7A
Other languages
English (en)
Other versions
CN111033561B (zh
Inventor
刘晓辉
Y·姜
任江涛
徐磊
邹燕明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN111033561A publication Critical patent/CN111033561A/zh
Application granted granted Critical
Publication of CN111033561B publication Critical patent/CN111033561B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position
    • G01S19/48Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system
    • G01S19/485Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system whereby the further system is an optical system or imaging system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0014Image feed-back for automatic industrial control, e.g. robot with camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/02Registering or indicating driving, working, idle, or waiting time only
    • G07C5/04Registering or indicating driving, working, idle, or waiting time only using counting means or digital clocks
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0808Diagnosing performance data
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0841Registering performance data
    • G07C5/085Registering performance data using electronic data carriers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/14Receivers specially adapted for specific applications
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position
    • G01S19/48Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system
    • G01S19/49Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system whereby the further system is an inertial position system, e.g. loosely-coupled
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50391Robot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Optics & Photonics (AREA)
  • Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Robotics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

各个实施例包括用于改善由机器人设备的处理器进行的导航的方法。这种实施例可以包括:发起与语义信息提取相关联的预先确定的时间段的开始;以及确定是否检测到与机器人设备的一个或多个传感器相关的不利事件。这种实施例还可以包括:识别预先确定的时间段的当前时隙;识别机器人设备的当前估计的位置和方向;以及响应于确定检测到与机器人设备的一个或多个传感器有关的不利事件,基于所识别的当前时隙和机器人设备的当前估计的位置和方向,来记录对针对一个或多个传感器存储的语义信息的更新。

Description

用于利用语义信息来导航机器人设备的***和方法
背景技术
机器人设备已变得越来越普遍,以用于以半自主或自主的方式执行各种任务。这样的机器人设备可以以各种形式来体现,并且可以在各种应用中使用,例如在自动真空吸尘器、无人飞行器、地面运载工具等中。针对可以使用机器人设备的应用可以包括:娱乐应用(例如,玩具机器人)、在对人类不友好的环境(例如,空间、深水、低温、辐射、化学品暴露、生物危害等)中的实用应用、危险任务(例如,***物拆除)、在密闭空间(例如,倒塌的建筑物)中执行非技术性(menial)任务(例如,清洁)的操作等。
由于许多环境不是静态的,因此机器人设备可以提供有测绘(mapping)技术,以允许设备构造该设备的周围环境的地图。此外,机器人设备可以被配置为将其自身定位在地图内,并且从而展现出相对较高的自主度。但是,由于局部环境中的时间和空间变化以及障碍物的位置和运动的变化,所以自主导航可能较复杂。这种复杂性可能造成针对使用现有技术的机器人设备的导航问题。
发明内容
各个实施例包括由机器人设备的处理器执行的用于改善导航的方法。各个实施例可以包括:发起与语义(semantic)信息提取相关联的预先确定的时间段的开始;确定是否检测到与机器人设备的一个或多个传感器有关的不利事件;以及响应于确定检测到与机器人设备的一个或多个传感器有关的不利事件,识别预先确定的时间段的当前时隙,识别机器人设备的当前估计的位置和方向,以及基于所识别的当前时隙以及机器人设备的当前估计的位置和方向,来记录对针对一个或多个传感器存储的语义信息的更新。在一些实施例中,不利事件可以指示一个或多个传感器的不可靠性。
一些实施例还可以包括:确定预先确定的时间段是否已经结束;以及响应于确定预先确定的时间段已经结束,基于存储的语义信息,针对每个传感器来识别在机器人设备的局部环境内的低性能的任何空间区域,以及当机器人设备在识别的低性能的空间区域处时,调整应用于来自传感器的测量的权重因子。
一些实施例还可以包括:响应于确定预先确定的时间段已经结束,基于相应的语义信息,针对每个传感器来识别低性能的任何时间,以及在识别的低性能的时间期间,调整应用于来自每个传感器的测量的权重因子。在一些实施例中,针对每个传感器来识别低性能的任何空间区域可以包括:确定针对传感器存储的语义信息指示针对机器人设备的特定姿势的不利事件发生的数量是满足还是超过第一事件门限。
在一些实施例中,针对每个传感器来识别低性能的任何时间可以包括:确定存储的语义信息指示在特定时隙期间不利事件发生的数量是满足还是超过第二事件门限。在一些实施例中,确定是否检测到与机器人设备的一个或多个传感器有关的不利事件可以包括针对每个传感器来进行以下操作:获得通过预处理器操作针对传感器来输出的经处理的测量;获得机器人设备的当前估计的位置和方向;以及确定在通过经处理的测量来指示的姿势与当前估计的位置和方向之间的差异是满足还是超过特定于传感器的门限。在一些实施例中,确定是否检测到与机器人设备的一个或多个传感器有关的不利事件可以包括:响应于接收到异常数据测量,确定检测到不利事件。
在一些实施例中,与语义信息提取相关联的预先确定的时间段可以是在时间服务器上配置的。在一些实施例中,时间服务器维持针对预先确定的时间段的时隙的设置。
在一些实施例中,识别机器人设备的当前估计的位置和方向可以包括:获得来自机器人设备上的定位操作的输出。在一些实施例中,定位操作可以是作为同时定位和测绘(SLAM)过程的一部分来执行的。
在一些实施例中,机器人设备的一个或多个传感器包括:至少一个图像传感器、至少一个惯性测量单元(IMU)传感器和至少一个运动反馈传感器。在一些实施例中,针对一个或多个传感器存储的语义信息可以是以数据结构表示的,所述数据结构提供在预先确定的时间段的每个时隙期间,针对机器人设备的每个姿势的不利事件发生的数量。
各个实施例可以包括:具有被配置有用于执行上文概述的方法中的任何方法的操作的处理器可执行指令的处理器的机器人设备。在一些实施例中,机器人设备可以是地面运载工具。各个实施例可以包括用于机器人设备并且被配置为执行上文概述的方法中的任何方法的操作的处理设备。各个实施例可以包括具有用于执行上文概述的方法中的任意方法的功能的单元的机器人设备。
附图说明
并入本文中并且作为本说明的组成部分的附图示出了权利要求的示例性实施例,并且连同上面给出的概括描述和下面给出的详细描述一起用于解释权利要求的特征。
图1是根据各个实施例的在通信***内操作的机器人设备的***框图。
图2是示出适于与各个实施例一起使用的机器人设备的组件的组件框图。
图3是示出适于在实现各个实施例的机器人设备中使用的处理设备的组件框图。
图4是示出根据各个实施例的用于利用语义信息来对机器人设备的导航进行调整的***的框图。
图5是示出一种用于提取和使用语义信息来改善由机器人设备进行的导航的示例方法的过程流程图。
图6是示出一种用于将与一个或多个传感器相关的不利事件识别为图5中实现的导航的一部分的示例方法的过程流程图。
具体实施方式
将参考附图来对各个实施例进行详细描述。在所有附图中将尽可能使用相同的附图标记来指代相同或相似的部分。对特定示例和实现方式的参考是用于说明的目的,并且不旨在限制权利要求书的范围。
各个实施例包括由机器人设备的处理器执行的、用于通过识别并且适应机器人设备的周围环境中的时间和空间模式来改善导航的方法。具体而言,机器人设备的处理器可以使用基于传感器数据的可靠性来加权的传感器数据,采用定位和测绘技术(例如同时定位和测绘(SLAM)),来规划环境内的导航路径。在各个实施例中,机器人设备的处理器可以提取与负面地影响用于定位的一个或多个传感器的性能和/或准确度的情况有关的语义信息。这种情况的示例可以包括较差的照明条件或环境中缺少物体,这可能会影响基于计算机视觉的传感器。其它示例可以包括特定的地板材料或倾斜度,这可能会影响机轮(wheel)编码器。与被配置为在室外操作的机器人设备(其中存在用于在基于视觉的导航中使用的一致的照明条件以及更多样并且更大数量的地标)相比,各个实施例在被配置为在室内操作的机器人设备(其中基于计算机视觉的***可能会面临挑战性的条件)中特别有用。
在各个实施例中,机器人设备的处理器可以通过识别和记录通过在机器人设备的不同位置和时间上的传感器性能的变化所指示的事件,来提取语义信息。语义信息可以由处理器用于调整加权因子,所述加权因子被应用于来自相应传感器的测量,从而改善对用于执行SLAM功能的定位和/或测绘模块的输入。此外,此类语义信息可以由处理器用于其它与导航相关的任务,例如计算路径规划的成本、设置任务优先级等。
如本文中所使用的,术语“机器人设备”是指各种类型的机器人运载工具、机器人电器、机器人等中的一种设备,包括被配置为提供某些自主或半自主能力的机载处理设备。机器人设备的示例包括但不限于:飞行器,例如无人飞行器(UAV);地面运载工具和机器人(例如,自主或半自主汽车、真空机器人、搜索和救援机器人、炸弹检测和解除武装机器人等);基于水的运载工具(即,水上船只和潜艇);基于空间的运载工具(例如,航天器或航天探测器);和/或其某种组合。在一些实施例中,机器人设备可以是有人驾驶的。在其它实施例中,机器人设备可以是无人驾驶的。在机器人设备是自主的实施例中,机器人设备可以包括机载处理设备,所述机载处理设备被配置为在没有远程操作指令(例如来自人类操作者(例如,经由远程计算设备))的情况下(即,自主地)操纵和/或导航机器人设备。在机器人设备是半自主的实施例中,机器人设备可以包括机载处理设备,所述机载处理设备被配置为接收(例如来自人类操作者的(例如,经由远程计算设备))一些信息或指令,并且根据所接收的信息或指令来自主地操纵和/或导航机器人设备。各个实施例对于被配置为在建筑物内操作时执行家务任务(例如,吸尘)的机器人设备特别有用。
在一些实施方式中,机器人设备可以是飞行器(无人驾驶或有人驾驶的),其可以是旋翼飞机(rotorcraft)或有翼飞机(winged craft)。例如,旋翼飞机(也被称为多旋翼飞行器(multirotor)或多轴飞行器(multicopter))可以包括为机器人设备提供推进力和/或提升力的多个推进单元(例如,旋翼/螺旋桨)。旋翼飞机的具体非限制性示例包括三旋翼飞行器(三个旋翼)、四旋翼飞行器(四个旋翼)、六旋翼飞行器(六个旋翼)和八旋翼飞行器(八个旋翼)。但是,旋翼飞机可以包括任何数量的旋翼。机器人设备可以包括可以执行各种功能的各种组件和/或有效载荷。
诸如运载工具之类的机器人设备可以采用同步定位和测绘(SLAM)技术来构造和更新未知环境的地图而同时地跟踪机器人设备在环境内的位置。机器人运载工具越来越多地配备有用于捕捉图像和视频的图像传感器,所述图像传感器还可以用于收集对SLAM有用的数据。
如本文所使用的,术语“姿势(pose)”是指机器人设备在局部环境内的位置和方向。在机器人设备在二维上(例如沿着地板的表面)行进的配置中,机器人设备的姿势可以由二维位置(x,y)和前进方向(θ)来指定。
各个实施例可以在多种通信***100内操作的机器人设备内实现,图1中示出了所述通信***100的示例。通信***100可以包括机器人设备102、基站104、接入点106、通信网络108以及网络单元110。
在一些实施例中,机器人设备102可以配备有至少一个空间测量设备103,例如成像传感器(例如,相机)。在一些实施例中,机器人设备102可以配备有对SLAM和导航有用的多个额外传感器中的任何传感器,例如机轮/旋转编码器、全球导航卫星***(GNSS)接收机(例如,全球定位***(GPS))接收机)、惯性测量单元(IMU)或其组件(例如,加速计、陀螺仪、磁力计等)、方向传感器以及单眼图像传感器。
基站104可以包括被配置为在宽广区域(例如,宏小区)以及小型小区(其可以包括微小区、毫微微小区、微微小区以及其它类似网络接入点)上提供无线通信的基站。接入点106可以包括被配置为在相对较小的区域上提供无线通信的接入点。基站和接入点的其它示例也是可能的。
包括机器人设备102的设备可以通过由基站104和接入点106提供的无线链路来在通信网络108上进行通信。机器人设备102可以通过无线通信链路112与基站104通信,并且可以通过无线通信链路114与接入点106通信。无线通信链路112和114可以包括多个载波信号、频率或频带,其中的每一项可以包括多个逻辑信道。无线通信链路112和114可以使用一种或多种无线接入技术(RAT)。可以在无线通信链路中使用的RAT的示例包括:3GPP长期演进(LTE)、3G、4G、5G、全球移动***(GSM)、码分多址(CDMA)、宽带码分多址(WCDMA)、微波接入全球互通(WiMAX)、时分多址(TDMA)以及其它移动电话通信技术蜂窝RAT。可以在通信***100内的各种无线通信链路中的一个或多个无线通信链路中使用的RAT的其它示例包括中等距离协议,例如Wi-Fi、LTE-U、LTE直连、LAA、MuLTEfire以及相对短距离的RAT,例如ZigBee、蓝牙和蓝牙低功耗(LE)。
网络单元110可以将通信网络108连接到互联网和/或网络服务器。机器人设备102可以经由通信网络108向网络单元110发送信息和/或从网络单元110接收通信。网络单元110可以向机器人设备102提供各种信息,例如导航信息、天气信息、关于本地空中、地面和/或海上交通的信息、运动控制指令以及与机器人设备102的操作相关的其它信息、指令或命令。
在各个实施例中,机器人设备102可以在环境120中移动并且使用一个或多个传感器(例如空间测量设备103)来捕捉环境120中的至少一个目标125的图像。
在各个实施例中,机器人设备的导航可以使用依赖于SLAM技术的***来自主执行,以构建和更新环境地图并且定位机器人设备在环境内的位置。虽然可以同时执行定位和测绘过程,但是可以替代地,例如以多路复用的方式,顺序地执行过程。例如,SLAM***可以使用相同的数据来定位地图内的机器人设备并且更新地图二者。
常规的SLAM***采用算法来解决在构建或更新未知环境的地图的同时跟踪地图内的设备位置的计算问题。典型的现代SLAM***基于通过传感器输入(例如,一系列相机图像或视频帧)来跟踪点集合,以及使用跟踪的点在三维空间中的估计位置来计算设备以其来观察或测量这些点的姿势。三维空间中相同的跟踪点位置可以用于同时构造或更新局部环境的地图。
在一些实现方式中,为了完成SLAM,具有多核处理器的机器人设备可以将定位和测绘功能分离到不同的线程上。例如,可以在一个线程上实时执行定位(即,当前姿势估计),而测绘线程在后台运行进程以使在跟踪的点位置与在给定姿势估计的情况下点的预期位置之间的差异(即,重投影误差(reprojection error))最小化。在完成后,测绘线程更新用于跟踪点集合的信息,并且进而定位线程添加新的观察结果以扩展地图。
SLAM技术可以由机器人设备(例如用于炸弹检测或搜索和救援的远程控制的运载工具)应用于非自主任务。例如,机器人设备可以在远程控制应用中实现SLAM,以帮助操作者在环境中导航机器人设备。在一些实施例中,机器人设备可以包括各种操作模式,例如用于手动控制的模式和用于自主控制的另一模式。例如,运载工具形式的机器人设备可以在初始测绘阶段期间被手动驱动,并且随后被配置用于自主控制。
图2示出了地面运载工具设计的示例机器人设备200,其利用由相应电机驱动的一个或多个机轮202来提供运动。图2中示出的机器人设备200是可以利用各个实施例的机器人运载工具的示例,但不旨在暗示或要求各个实施例限于地面机器人运载工具。例如,各个实施例可以与旋翼飞机或有翼机器人运载工具、水运机器人运载工具和基于空间的机器人运载工具一起使用。
参考图1-图2,机器人设备200可以与机器人设备102类似。机器人设备200可以包括多个机轮202、框架204、至少一个空间测量设备206以及控制单元210。
空间测量设备206可以与空间测量设备103相同或相似。在一些实施例中,空间测量设备206可以包括:例如,被配置为原始范围扫描传感器的***,或被配置为从扫描或图像中识别地标的基于特征的***。例如,基于激光的扫描仪(例如,光检测和测距(LiDAR))或基于声纳的***可用于从扫描中提取地标。在一些实施例中,可以从由多个图像传感器(例如,相机、光学读取器等)中的任何图像传感器拍摄的图像中提取地标。在一些实施例中,能够检测在其附近的地标的多个其它设备中的任何设备也可以实现为空间测量设备。
框架204可以为电机及与电机相关联的机轮202以及为空间测量设备206提供结构支撑。为了便于描述和说明,省略了机器人设备200的一些详细方面,例如布线、框架结构互连或本领域技术人员已知的其它特征。尽管所示的机器人设备200具有机轮202,但这仅是示例性的,并且各个实施例可以包括用于提供推进和操纵能力的任何各种组件,例如踏面(tread)、桨、滑橇或其任何组合或其它组件的任何组合。
控制单元210可以容纳用于向机器人设备200供电和控制机器人设备200的操作的各种电路和设备。控制单元210可以包括处理器220、电源模块230、传感器240、一个或多个有效载荷固定单元244、输出模块250、输入模块260以及无线模块270。
处理器220可以被配置有处理器可执行指令,以控制机器人设备200的行进和其它操作,包括各个实施例的操作。处理器220可以包括或耦合至导航单元222、存储器224和操纵数据模块226。处理器220和/或导航单元222可以被配置为通过无线连接(例如,蜂窝数据网络)与服务器通信,以接收在导航中有用的数据,提供实时位置报告以及评估数据。
操纵数据模块226可以耦合至处理器220和/或导航单元222,并且可以被配置为提供与行进控制有关的信息,例如方向、姿态、速度、前进方向以及导航单元222可以用于导航目的的类似信息,例如在全球导航卫星***(GNSS)之间的航位推算。
操纵数据模块226可以从一个或多个传感器240(例如IMU或类似的传感器(例如,加速计、陀螺仪等))接收输入。在一些实施例中,向操纵数据模块226提供输入的传感器240可以包括一个或多个空间测量设备206或与一个或多个空间测量设备206重叠。到操纵数据模块226的输入可以提供与可以在导航和定位计算中使用的机器人设备200的方向和加速度有关的数据,以及提供在各个实施例中使用的以用于处理图像的数据。
处理器220还可以从一个或多个传感器240(例如,相机,其可以是单眼相机)和/或其它传感器接收额外信息。在一些实施例中,传感器240可以包括能够检测红外线、紫外线和/或其它波长的光的一个或多个光学传感器。在一些实施例中,传感器240可以包括范围测量设备206和/或与范围测量设备206重叠。在一些实施例中,传感器240还可以包括用于向处理器220提供运动反馈的至少一个传感器,例如,机轮传感器(例如,一个或多个机轮/旋转编码器)、被配置为提供用于指示与表面接触的信号的接触传感器或压力传感器,等等。传感器还可以包括下列各项中的一项或多项:射频(RF)传感器、气压计、声纳发射器/检测器、雷达发射器/检测器、麦克风或另一声传感器、或者可以提供由处理器220可用于移动操作以及导航和定位计算的信息的另一传感器。
在一些实施例中,有效载荷固定(securing)单元244可以包括致动器电机,所述致动电动机驱动抓握和释放机构以及相关的控制,所述机构和控制对控制单元210进行响应,以响应于来自控制单元210的命令来抓握和释放有效载荷。
电源模块230可以包括一个或多个电池,该一个或多个电池可以向包括处理器220、传感器240、有效载荷固定单元244、耦合至机轮202的驱动电机、输出模块250、输入模块260和无线模块270的各种组件供电。电源模块230可以是可充电的。处理器220可以被配置有用于控制对电源模块230的充电的处理器可执行指令,例如通过使用充电控制电路来执行充电控制算法。替换地或额外地,电源模块230可以被配置为管理电源模块230自己的充电。处理器220可以耦合至输出模块250,该输出模块250可以输出用于管理用于驱动机轮202和其它组件的电机的控制信号。
机器人设备200可以在机器人设备200向目的地前进时通过控制用于驱动机轮202的各个电机来操纵。处理器220可以从导航单元222接收数据并且使用这样的数据,以便确定机器人设备200的当前位置和方向以及朝向目的地或中间地点的合适路线。在各个实施例中,导航单元222可以包括GNSS接收机***(例如,GPS接收机),所述GNSS接收机***使机器人设备200能够使用GNSS信号进行导航。替代地或另外,导航单元222可以配备有无线导航接收机,以用于接收来自无线节点的导航信标或其它信号,例如导航信标(例如,甚高频(VHF)全向范围(VOR)信标)、Wi-Fi接入点、蜂窝网络站点、无线站、远程计算设备、机器人运载工具等。
无线模块270可以被配置为接收导航信号,例如来自航空导航设施的信号等,以及将这种信号提供给处理器220和/或导航单元222以帮助机器人设备导航。在各个实施例中,导航单元222可以使用从地面上的可识别的RF发射机(例如,AM/FM无线站、Wi-Fi接入点和蜂窝网络基站)接收的信号。
无线模块270可以包括调制解调器274和发射/接收天线272。在一些实施例中,无线模块270可以被配置为与各种无线通信设备(例如,无线通信设备(WCD)290)进行无线通信,所述无线通信设备的示例包括无线电话基站或小区塔(例如,基站104)、网络接入点(例如,接入点106)、信标、智能电话、平板电脑或机器人设备200可以与之通信的另一计算设备(例如,110)。在一些实施例中,处理器220可以经由无线模块270的调制解调器274和天线272,以及无线通信设备290经由发送/接收天线292,来建立双向无线通信链路294。在一些实施例中,无线模块270可以被配置为使用不同的无线接入技术来支持与不同的无线通信设备的多个连接。
在各个实施例中,无线通信设备290可以通过中间接入点来连接到服务器。在示例中,无线通信设备290可以是机器人运载工具操作者的服务器、第三方服务(例如,包裹递送、计费等)或站点通信接入点。机器人设备200可以通过一个或多个中间通信链路与服务器通信,该中间通信链路例如是耦合至广域网(例如,互联网)或其它通信设备的无线电话网络。在一些实施例中,机器人设备200可以包括和采用其它形式的无线通信,例如与其它机器人运载工具的网状连接或与其它信息源(例如,气球或用于收集和/或分发天气或其它数据收获信息的其它站点)的连接。
在各个实施例中,控制单元210可以配备有输入模块260,所述输入模块260可以用于各种应用。例如,输入模块260可以从机载相机或传感器接收图像或数据,或者可以从其它组件(例如,有效载荷)接收电子信号。
尽管在图2中将控制单元210的各种组件图示为单独的组件,但是这些组件中的一些或所有组件(例如,处理器220、输出模块250、无线模块270和其它单元)可以整合在单个处理设备310中,其示例在图3中示出。
参考图1-图3,处理设备310可以被配置为在机器人设备中使用,并且可以被配置为或包括片上***(SoC)312。SoC 312可以包括(但不限于)处理器314、存储器316、通信接口318和储存存储器接口320。处理设备310或SoC 312还可以包括通信组件322,比如有线或无线调制解调器、储存存储器324、用于建立无线通信链路的天线326和/或类似物。处理设备310或SoC 312还可以包括硬件接口328,该硬件接口328被配置为使处理器314能够与机器人设备通信并且控制机器人设备的各个组件。处理器314可以包括各种处理设备中的任何处理设备,例如任意数量的处理器核。
术语“片上***”(SoC)在本文中用于指代互连的电子电路的集合,其通常但非排他地包括一个或多个处理器(例如,314)、存储器(例如,316)以及通信接口(例如,318)。SoC312可以包括各种不同类型的处理器314和处理器核,例如通用处理器、中央处理单元(CPU)、数字信号处理器(DSP)、图形处理单元(GPU)、加速处理单元(APU)、处理设备的特定组件的子***处理器,例如相机子***的图像处理器或用于显示器的显示处理器、辅助处理器、单核处理器以及多核处理器。SoC 312还可以体现其它硬件和硬件组合,比如现场可编程门阵列(FPGA)、专用集成电路(ASIC)、其它可编程逻辑器件、离散门逻辑器件、晶体管逻辑器件、性能监视硬件、看门狗硬件和时间参考。可以配置集成电路以使得集成电路的组件驻留在单片半导体材料(比如硅)上。
SoC 312可以包括一个或多个处理器314。处理设备310可以包括多于一个的SoC312,从而增加了处理器314和处理器核的数量。处理设备310还可以包括不与SoC 312相关联的处理器314(即,在SoC 312外部)。各个处理器314可以是多核处理器。处理器314可以分别被配置用于特定目的,其可以与处理设备310或SoC 312的其它处理器314相同或不同。可以将具有相同或不同配置的处理器314和处理器核中的一者或多者成组在一起。一组处理器314或处理器核可以被称为多处理器集群。
SoC 312的存储器316可以是易失性或非易失性存储器,其被配置用于存储数据和处理器可执行指令以用于由处理器314访问。处理设备310和/或SoC 312可以包括被配置用于各种目的的一个或多个存储器316。一个或多个存储器316可以包括易失性存储器,比如随机存取存储器(RAM)或主存储器,或高速缓存器存储器。
处理设备310和SoC 312的组件中的一些或全部组件可以不同地布置和/或组合,同时仍然提供各个方面的功能。处理设备310和SoC 312可以不限于这些组件中的每个组件中的一个,并且每个组件的多个实例可以包括在处理设备310的各种配置中。
如上所述,各个实施例中的机器人设备可以利用SLAM过程,以便进行导航以及执行任务。这样的过程可以包括对环境内的地标的空间信息进行测绘,以及表示机器人设备相对于所测绘的环境的姿势(即,位置和方向)。
SLAM算法考虑了各种参数,例如传感器、地图表示、设备动力学、环境动力学,以及传感器测量与机器人的控制***随时间的整合。对环境的空间信息进行测绘通常需要采用可以向其应用SLAM算法的空间传感器(例如,空间测量设备206)。例如,可以从由一个或多个相机获得的图像中提取地标,所述相机可以是各种配置中的任何配置(例如,单眼相机、立体视觉相机、多相机等)。
机器人设备的定位可以通过获得与设备在生成的地图内的位置和方向(即,姿势)有关的感测信息来执行。
例如,对于运载工具型机器人设备,可以从旋转编码器获得姿势信息,该旋转编码器测量机轮的旋转运动。机器人设备还可以使用GNSS接收机来获得全球位置信息,以补充或促进对姿势信息的获取。
将机器人设备配置具有不同类型的传感器可以使机器人设备能够在基于相机的导航(例如,SLAM)可能成问题的某些环境中操作。尽管包含多种传感器类型使机器人设备能够接收较大信息集合,但每个传感器在不同情况下可能容易出现故障和/或提供异常数据。例如,用于计算机视觉的传感器,例如图像传感器(例如,相机)在具有昏暗照明的局部环境(例如,室内)中可能表现出较低的性能。作为另一示例,当被配置为执行家务的机器人设备在墙壁附近进行操作时,可能存在用于图像传感器捕获的较少的可观察特征,从而限制了SLAM技术可以用于导航和测绘环境的数据。在另一示例中,诸如旋转编码器的机轮旋转传感器可能由于滑动或阻力或由于倾斜,而在某些表面(例如,室内常见的光滑的地板或地毯)上易于出错。在另一示例中,由于信号强度问题,GNSS接收机可能在室内不可靠。在另一示例中,如果机器人设备操纵到狭窄区域(例如,房间的角落),则碰撞传感器(例如,保险杠中)可能会错误地检测到碰撞。
此外,在被配置为在室内环境中执行家务任务的机器人设备中,传感器能力和敏锐度可能受到限制,以便保持较低的制造成本,以使价格与类似的消费产品一致。结果,由于机载传感器的局限性,对于这样的机器人设备执行精确的定位可能变得复杂。
机器人设备的局部环境的条件变化可能会以时间和/或空间模式发生。例如,在室内环境中,当用户返回家中并且打开室内灯时,照明水平可能在晚上在可预测的时间急剧增加。作为另一示例,随着室内机器人设备进行操纵以执行家务任务,照明条件可能在房间之间显著变化。此外,例如,基于人或宠物的运动,对象在局部环境内的分布可以动态地改变。
各个实施例可以通过提取和使用针对每个传感器的性能变化的模式,来改善机器人设备的导航。例如,在被配置用于诸如吸尘器或其它家用清洁机器人之类的家务任务的机器人设备中,用于执行定位、地图生成和路径规划的处理器可以被配置为:识别并且使用通常与室内环境相关联的约束中的模式,该模式可以包括在某些位置(例如,在墙壁附近和空房间中)有限的地标、有限的操纵空间、相对较小的温度变化、照明中的频繁并且与地理位置相关的变化等。
机器人设备可以记录并且存储诸如语义信息之类的模式,该模式可以用于动态地调整用于执行定位的传感器输入。以这种方式,语义信息可以针对导航***中使用的每个传感器来随时间累积,并且被用于改变给予相应传感器的权重,例如用于姿势估计。额外地或可替代地,语义信息可以被用于改变给予相应传感器的权重,以用于地图开发。在一些实施例中,语义信息可以用于评估路径规划中的任务优先级或其它因素。
在一些实施例中,用于特定传感器的语义信息可以反映时间模式,例如传感器表现不佳(underperform)的持续时间(例如,每天,每周一次等)。在一些实施例中,用于特定传感器的语义信息可以反映空间模式,例如局部环境中传感器在其中表现不佳的特定区域。在一些实施例中,用于特定传感器的语义信息可以反映时间模式和空间模式二者,例如在局部环境中的特定区域中传感器表现不佳的持续时间。以这种方式,针对特定传感器的语义信息可以使***能够推断针对该传感器的可靠性的测量。
由***进行的这种特定于传感器的可靠性测量的应用,分别调整给予来自每个特定传感器的数据输出的权重并且使用传感器数据的加权合并,可以实现在各种操作情况、位置和一天中的时间下的改善的定位、地图生成和/或路径规划。由各个实施例实现的这种改进在室内机器人设备中可以特别有用,在室内机器人设备中这种情况可能会比室外操作更频繁地遇到。
图4是根据各个实施例的使用语义信息的示例导航***的功能框图。参考图1-图4,导航***400可以在诸如地面运载工具(例如,吸尘机器人、汽车等)、飞行器(例如,UAV)等的机器人设备(例如,102、200)的处理器上实现。
在导航***400中,可以从多个传感器接收输入,以使***能够针对机器人设备上的SLAM过程来执行定位、地图生成和路径规划。在一些实施例中,传感器402可以包括用于检测方向或其它操纵数据的至少一个IMU传感器。如所描述的,传感器402还可以包括至少一个运动反馈传感器,诸如机轮编码器、压力传感器或其它基于碰撞或基于接触的传感器。此外,传感器402可以包括至少一个图像传感器,例如视觉相机、红外传感器、声纳检测器等。
来自传感器402的原始测量数据可以被提供给预处理器404。由预处理器404执行的预处理可以包括:对异常的去除和噪声抑制,以及地标/特征提取、数据关联等。在各个实施例中,预处理器404可以输出与机器人设备的位置和方向有关的经处理的测量(例如,加速度、速度、里程信息等)。
虽然一起显示,但预处理器404可以表示多个预处理器,每个所述预处理器对应于不同的传感器或一组传感器。例如,一些预处理器可以被配置为从多个传感器接收并且共同地处理原始测量,或者可以被配置为从单个传感器402接收并且处理原始测量。
来自每个预处理器404的经处理的测量可以被提供给语义信息提取器406,所述语义信息提取器406可以获得和与相应的预处理器404相关联的每个传感器402有关的语义信息。具体而言,语义信息提取器406可以被配置为识别和记录与相关联的传感器402有关的特定不利事件。这种不利事件可能包括:例如,异常数据测量、来自传感器的一连串空白测量、用于指示机器人设备的状态(例如,设备卡住、与障碍物碰撞等)的数据,或用于指示由一个或多个传感器的降低性能的任何其它测量。
在各个实施例中,语义信息提取器406可以存储和更新用于每个相关联的传感器402的语义信息。这样的语义信息可以用许多数据结构中的任何数据结构来表示,所述数据结构可以存储在机器人设备上本地存储中的数据库中。可以用于表示语义信息的数据结构的示例包括:例如,数据表/数组(array)、树等。
可以基于收集的语义信息的量,针对效率来选择所采用的数据结构的类型。在一些实施例中,可以在数据数组中表示在时间和空间上相对密集的语义信息。例如,可以最好以数据数组来表示基于用于记录异常传感器数据的语义信息。在一些实施例中,可以在数据树中表示在时间和空间上相对稀疏的语义信息。例如,可以最好以数据树来表示基于用于记录机器人设备卡住的事件的语义信息。
在一些实施例中,本地存储可以是分别的存储设备,所述存储设备的示例可以包括通用串行总线(USB)驱动器、存储卡、固态驱动器(SSD)、硬盘驱动器(HDD)、软盘、光盘、磁带等。例如,本地存储可以是可移动存储设备,比如存储卡,例如,PC卡、压缩闪存(CompactFlash)、智能媒体(SmartMedia)、记忆棒、记忆棒Duo、记忆棒PRO Duo、微型卡、多媒体卡(MMC)、减小尺寸的多媒体卡(RS-MMC),微型MMC卡(MMCmicro)、PS2卡、安全数字(SD)卡、SxS、通用闪存(UFS)、小型SD(miniSD)、微型SD(microSD)、xD图片卡、智能棒(iStick)等等。在一些实施例中,本地存储可以是存储设备(例如,224)的分区或一部分。
在各个实施例中,可以通过将来自相应预处理器404的经处理的测量与针对机器人设备的当前估计姿势进行比较,来检测不利事件。在各个实施例中,来自定位模块408的针对SLAM的反馈可以将当前的估计姿势提供给每个语义信息提取器406。如果在通过来自预处理器404的经处理的测量指示的姿势与当前估计的姿势之间的差异大于预先确定的门限,则语义信息提取器406可以记录针对有关的一个或多个相关联的传感器402的不利事件。具体而言,语义信息提取器406可以通过访问时隙服务器410,来识别在某个时间段内发生不利事件的时隙。在一些实施例中,时隙服务器410可以为每个语义信息提取器406维持独立的时间段和时隙指令。
使用当前估计的姿势和时隙,语义信息提取器406可以对用于有关的一个或多个相关联的传感器402的所存储的语义信息进行更新。语义信息提取器406可以例如在每个时间段结束时,周期性地针对每个相关联的传感器402来寻求识别在时隙和/或姿势之间的不利事件发生的模式。在各个实施例中,针对相关联的传感器402的所识别的模式可以表示针对该传感器的不准确性的时间和/或空间模式。可以将任何这样的所识别的不准确性模式提供给加权模块412,该加权模块412可以从相应的预处理器404接收经处理的测量。在各个实施例中,加权模块412可以基于所识别的不准确性模式,来调整给予来自有关的相关联传感器402的数据(即,经处理的测量)的权重。例如,这种调整可以涉及针对特定的持续时间,或者当机器人设备位于特定的空间区域中时,降低来自传感器402的数据的加权因子。也就是说,对来自特定传感器402的数据的使用的程度和方式可以部分取决于该传感器的可靠性,如使用任何相应的所识别的不准确性模式所推测的。
在基于从语义信息推导出的所识别的不准确性模式来对加权因子进行调整之后,可以将经处理的测量提供给定位模块408。如所讨论的,作为SLAM过程的一部分,定位模块408可以为机器人设备生成当前估计的姿势。除了向语义信息模块406提供当前估计的姿势之外,定位模块408还可以向测绘模块414和路径规划模块416提供这种信息。在各个实施例中,预处理模块404可以向测绘模块414提供与障碍物在局部环境中的位置有关的数据。用于提供这种障碍物位置信息的预处理器404以及预处理器404相关联的传感器402可以与用于向语义信息提取器406提供经处理的测量的预处理器相同或不同。在一些实施例中,可以基于局部环境中识别的点和/或地标的集合,来计算障碍物位置信息。例如,在室内环境中,这样的地标可以包括墙壁,特别是在房屋或建筑物内墙壁、家具和/或其它永久性固定物上的特征。在一些实施例中,测绘模块414可以利用当前估计的姿势和障碍物位置信息,来构造(例如,机器人设备正在其中操作的房间的)局部环境的至少一个地图。例如,在使用SLAM技术中,测绘模块414可以生成具有用于导航的对局部环境的空间表示的地图,以及更新关于特征(例如,永久性固定物和类似地标)相对于机器人设备的测绘信息。
可以将由测绘模块414生成的地图提供给路径规划模块416。路径规划模块416可以使用接收到的地图和当前估计的姿势信息来选择、创建或更新针对机器人设备的导航路径。
图5根据各个实施例示出了用于提取和使用语义信息来改进机器人设备上的导航的方法500。参照图1-图5,方法500的操作可以由机器人设备的一个或多个处理器来实现,例如机器人设备102、200、处理器220或处理设备310。一个或多个处理器可以包括:例如,处理器314或可以耦合至存储器(例如存储器224或储存存储器324)的分别的控制器(未示出)。
在框502中,机器人设备的处理器可以配置针对时间服务器上的时间段和时隙的设置。该时间段和时隙可以被配置为定义时间跨度和分辨率,以用于收集与预处理器(例如402)相关联的传感器(例如,240、402)的语义信息。示例时间段设置可以是24小时,以及示例时隙设置可以是一小时。具体地,可以在24小时的时段内针对每小时来记录语义信息,这在由导航***进行评估之后可以进行重复。在一些实施例中,可以针对导航***中的每个预处理器配置分别的时间段和时隙设置。
在框504中,处理器可以选择与机器人设备的一个或多个传感器有关的至少一个不利事件。在各个实施例中,不利事件可以是用于指示传感器不可靠性的事件。可以选择的不利事件的示例包括:异常数据测量、用于指示机器人设备的状态(例如,碰撞、卡住等)的测量、来自一个或多个传感器的一连串空白测量等。在一些实施例中,不利事件可以是基于机器人设备的特定传感器和构建的、基于硬件的事件。
在框506中,处理器可以发起时间段的开始,其可以由时间服务器实时跟踪。在各个实施例中,时间服务器可以维持针对时间段的时钟,以及在时间段内当前时隙的指示符。
在确定框508中,处理器可以确定是否检测到与机器人设备的一个或多个传感器有关的任何不利事件。只要没有检测到不利事件(即,确定框508=“否”),处理器就可以在确定框508中重复确定是否检测到任何不利事件。
响应于确定检测到与一个或多个传感器有关的不利事件(即,确定框508=“是”),处理器可以在框510中通过访问时间服务器来识别发生不利事件的时隙。
在框512中,处理器可以基于机器人设备的当前姿势和所识别的时隙,记录对针对相关传感器存储的语义信息的更新。在各个实施例中,可以通过定位过程来识别针对机器人设备的当前估计的姿势(即,位置和方向)。记录不利事件可能涉及:每时隙地递增在机器人设备的每个姿势下不利事件发生的分别计数。在一些实施例中,对语义信息的更新可以涉及:针对每个姿势和时隙计算事件发生的概率。
在确定框514中,处理器可以确定时间段是否已经结束。响应于确定时间段尚未结束,处理器可以再次在确定框508中确定是否检测到与机器人设备的一个或多个传感器有关的任何不利事件。
响应于确定时间段已经结束(即,确定框514=“是”),在框516中,处理器可以基于存储的语义信息,针对机器人设备的每个传感器来识别较低性能的任何区域和/或时间。即,处理器可以识别在特定时隙期间或在特定姿势或位置下,针对传感器发生的不利事件的任何模式,这提供了特定于传感器的不准确性模式。这样的识别可以基于大于事件门限的不利事件发生的数量。例如,可以针对在时隙内的不利事件发生的计数建立第一事件门限,并且可以针对在机器人设备的一姿势下的不利事件发生的计数建立第二事件门限。在各个实施例中,这种不准确性模式,如果被识别,则可以被用于得出与该传感器的、在与时隙相对应的特定时间和/或当设备处于与姿势对应的空间区域内时的性能有关的结论。
在框518中,处理器可以在较低性能的任何相应的空间区域或时间处,调整针对一个或多个传感器的加权因子。例如,使用针对传感器的识别的不准确性模式,处理器可以应用加权因子,来缩小在特定时间期间和/或当机器人设备在特定空间区域内时,由该传感器进行的测量的值。
在框506中,处理器可以再次发起时间段的开始。
图6示出了在方法500的框508中检测与一个或多个传感器有关的不利事件的方法600。可以关于机器人设备的每个传感器来执行方法600的操作,所述传感器的类型和能力可以取决于机器人设备被设计用于进行的任务。例如,吸尘机器人或其它家用电器机器人设备可以被配置有一个或多个悬崖传感器(例如,下侧红外传感器)、墙壁传感器(例如,面向前的红外传感器)、碰撞传感器(例如,触碰传感器)、光学传感器等。参考图1-图6,方法600的操作可以由机器人设备的一个或多个处理器来实现,例如机器人设备102、200、处理器220或处理设备310。一个或多个处理器可以包括:例如,处理器314或可以耦合至存储器(例如存储器224或储存存储器324)的分别的控制器(未示出)。
在框602中,处理器可以获得作为预处理器操作的结果来输出的经处理的测量。例如,经处理的测量可以是与机器人设备的位置和方向有关的数据,其中去除了异常数据测量。
在框604中,处理器可以基于定位来获得机器人设备的当前估计的姿势。例如,可以在针对SLAM***来执行定位时计算当前姿势。
在确定框606中,处理器可以确定在通过所获得的经处理的测量来指示的姿势与通过定位来计算出的当前估计的姿势之间的差异是满足还是超过门限。在一些实施例中,不同的门限可以由机器人设备针对每个传感器来配置,并且可以取决于各个传感器的敏锐度/能力。
响应于确定在通过获得的经处理的测量来指示的姿势与通过定位来计算的当前估计的姿势之间的差异大于门限(即,确定框606=“是”),处理器可以在框608中检测到针对传感器的不利事件。以这种方式,处理器可以识别对针对机器人设备的特定传感器的不可靠性的当前指示。
响应于确定在通过经处理的测量来指示的姿势与通过定位来计算的当前估计的姿势之间的差异不大于门限(即,确定框606=“否”),处理器可以在框610中检测到没有发生针对传感器的不利事件。
各个实施例使机器人设备的处理器能够改善对机器人设备的图像传感器的校准。各个实施例还使用更精确地校准的图像传感器来改善机器人设备的SLAM能力的准确性。各个实施例还改善了机器人设备的用于校准单眼图像传感器的能力,以用于与SLAM确定一起使用。
仅提供图示和所描述的各个实施例作为示例来说明权利要求的各个特征。然而,关于任何给定实施例示出和描述的特征不必限于相关联的实施例,并且可以与示出和所描述的其它实施例一起使用或进行组合。此外,权利要求不意图受到任何示例实施例的限制。例如,方法500和600的操作中的一个或多个操作可以代替方法500和600的一个或多个操作或与之组合,反之亦然。
前述方法描述和过程流程图仅作为说明性示例来提供,并且不旨在要求或暗示各个实施例的操作必须以所呈现的顺序来执行。如本领域技术人员将明白的:前述实施例中的操作的顺序可以以任意顺序执行。诸如“此后”、“然后”、“接下来”等的词语不旨在限制这些操作的顺序;这些词语用于引导读者通过方法的描述。另外,以单数形式对权利要求元素的任何提及,例如,使用冠词“一(a)”、“一个(an)”或“该(the)”不应该被解释为将该元素限制为单数。
结合本文公开的实施例描述的各个说明性的逻辑框、模块、电路和算法操作可以实现成电子硬件、计算机软件或它们的组合。为了清楚地表示硬件和软件之间的该可交换性,上文对各个说明性的组件、框、模块、电路和操作已经围绕其功能进行了总体描述。至于这种功能是实现为硬件还是实现为软件,取决于特定的应用和对整个***所施加的设计约束。本领域技术人员可以针对每个特定应用,以变通的方式实现所描述的功能,但是这种实施例决策不应解释为造成对权利要求的范围的背离。
用于实现结合本文所公开的方面所描述的各种说明性的逻辑单元、逻辑块、模块和电路的硬件可以使用被设计为执行本文所描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或晶体管逻辑器件、分立硬件组件或它们的任意组合来实现或执行。通用处理器可以是微处理器,但是,在替代方案中,该处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器也可以实现为接收机智能对象的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器与DSP内核的结合、或者任何其它这种配置。替代地,一些操作或方法可以由特定于给定功能的电路来执行。
在一个或多个实施例中,可以用硬件、软件、固件、或者它们的任意组合来实现所描述的功能。如果用软件实现,则可以将功能在非暂时性计算机可读存储介质或非暂时性处理器可读存储介质上存储为一个或多个指令或代码。本文所公开的方法或算法的操作可以体现在可以位于非暂时性计算机可读或处理器可读存储介质上的处理器可执行软件模块或者处理器可执行指令中。非暂时性计算机可读或处理器可读存储介质可以是可以由计算机或处理器访问的任何存储介质。通过举例而非限制性的方式,这样的非暂时性计算机可读或处理器可读存储介质可以包括:RAM、ROM、EEPROM、闪存存储器、CD-ROM或其它光盘存储、磁盘存储或其它磁存储智能对象,或可以用于以指令或数据结构的形式存储需要的程序代码并且可以被计算机访问的任何其它介质。如本文中所使用的,磁盘(disk)和光盘(disc)包括压缩光盘(CD)、激光光盘、光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中磁盘通常磁性地复制数据,而光盘利用激光来光学地复制数据。上面的组合也应当包括在非暂时性计算机可读和处理器可读介质的范围之内。此外,方法或算法的操作可以作为代码和/或指令中的一者或任意组合或集合位于可以被并入计算机程序产品中的非暂时性处理器可读存储介质和/或计算机可读存储介质上。
为使本领域任何普通技术人员能够实现或者使用权利要求,提供了对所公开的实施例的前述描述。对于本领域技术人员来说,对这些实施例的各种修改将是显而易见的,并且在不脱离权利要求书的范围的情况下,本文中定义的一般原理也可以应用于其它实施例。因此,本公开内容不旨在限于本文中示出的实施例,而是符合与所附权利要求书和本文中公开的原理和新颖性特征相一致的最广范围。

Claims (35)

1.一种由机器人设备的处理器执行的用于改善导航的方法,所述方法包括:
发起与语义信息提取相关联的预先确定的时间段的开始;
确定是否检测到与所述机器人设备的一个或多个传感器有关的不利事件,其中,所述不利事件指示所述一个或多个传感器的不可靠性;以及
响应于确定检测到与所述机器人设备的一个或多个传感器有关的不利事件:
识别所述预先确定的时间段的当前时隙;
识别所述机器人设备的当前估计的位置和方向;以及
基于所识别的当前时隙以及所述机器人设备的所述当前估计的位置和方向,来记录对针对所述一个或多个传感器存储的语义信息的更新。
2.根据权利要求1所述的方法,还包括:
确定所述预先确定的时间段是否已经结束;以及
响应于确定所述预先确定的时间段已经结束:
基于存储的语义信息,针对每个传感器来识别在所述机器人设备的局部环境内的低性能的任何空间区域;以及
当所述机器人设备在识别的低性能的空间区域处时,调整应用于来自所述传感器的测量的权重因子。
3.根据权利要求2所述的方法,还包括:响应于确定所述预先确定的时间段已经结束:
基于相应的语义信息,针对每个传感器来识别低性能的任何时间;以及
在识别的低性能的时间期间,调整应用于来自每个传感器的测量的所述权重因子。
4.根据权利要求2所述的方法,其中,针对每个传感器来识别低性能的任何空间区域包括:
确定针对所述传感器所述存储的语义信息指示针对所述机器人设备的特定姿势的不利事件发生的数量是满足还是超过第一事件门限。
5.根据权利要求4所述的方法,其中,针对每个传感器来识别低性能的任何时间包括:确定所述存储的语义信息指示在特定时隙期间不利事件发生的数量是满足还是超过第二事件门限。
6.根据权利要求1所述的方法,其中,确定是否检测到与所述机器人设备的一个或多个传感器有关的不利事件包括:针对每个传感器,
获得通过预处理器操作针对所述传感器来输出的经处理的测量;
获得所述机器人设备的所述当前估计的位置和方向;以及
确定在通过所述经处理的测量来指示的姿势与所述当前估计的位置和方向之间的差异是满足还是超过特定于传感器的门限。
7.根据权利要求1所述的方法,其中,确定是否检测到与所述机器人设备的一个或多个传感器有关的不利事件包括:响应于接收到异常数据测量,确定检测到不利事件。
8.根据权利要求1所述的方法,其中,与语义信息提取相关联的所述预先确定的时间段是在时间服务器上配置的,其中,所述时间服务器维持针对所述预先确定的时间段的时隙的设置。
9.根据权利要求1所述的方法,其中,识别所述机器人设备的所述当前估计的位置和方向包括:获得来自所述机器人设备上的定位操作的输出,其中,所述定位操作是作为同时定位和测绘(SLAM)过程的一部分来执行的。
10.根据权利要求1所述的方法,其中,所述机器人设备是地面运载工具,并且其中,所述机器人设备的所述一个或多个传感器包括:至少一个图像传感器、至少一个惯性测量单元(IMU)传感器和至少一个运动反馈传感器。
11.根据权利要求1所述的方法,其中,针对所述一个或多个传感器存储的所述语义信息是以数据结构表示的,所述数据结构提供在所述预先确定的时间段的每个时隙期间,针对所述机器人设备的每个姿势的不利事件发生的数量。
12.一种机器人设备,包括:
一个或多个传感器;以及
处理器,其耦合至所述一个或多个传感器并且被配置有用于以下操作的处理器可执行指令:
发起与语义信息提取相关联的预先确定的时间段的开始;
确定是否检测到与一个或多个传感器有关的不利事件,其中,所述不利事件指示所述一个或多个传感器的不可靠性;以及
响应于确定检测到与所述一个或多个传感器有关的不利事件:
识别所述预先确定的时间段的当前时隙;
识别所述机器人设备的当前估计的位置和方向;以及
基于所识别的当前时隙以及所述机器人设备的所述当前估计的位置和方向,来记录对针对所述一个或多个传感器存储的语义信息的更新。
13.根据权利要求12所述的机器人设备,其中,所述处理器还被配置有用于以下操作的处理器可执行指令:
确定所述预先确定的时间段是否已经结束;以及
响应于确定所述预先确定的时间段已经结束:
基于存储的语义信息,针对每个传感器来识别在所述机器人设备的局部环境内的低性能的任何空间区域;以及
当所述机器人设备在识别的低性能的空间区域处时,调整应用于来自所述传感器的测量的权重因子。
14.根据权利要求13所述的机器人设备,其中,所述处理器还被配置有用于以下操作的处理器可执行指令:
响应于确定所述预先确定的时间段已经结束,基于相应的语义信息,针对每个传感器来识别低性能的任何时间;以及
在识别的低性能的时间期间,调整应用于来自每个传感器的测量的所述权重因子。
15.根据权利要求13所述的机器人设备,其中,所述处理器还被配置有处理器可执行指令,以通过以下操作,针对每个传感器来识别低性能的任何空间区域:
确定针对所述传感器所述存储的语义信息指示针对所述机器人设备的特定姿势的不利事件发生的数量是满足还是超过第一事件门限。
16.根据权利要求15所述的机器人设备,其中,所述处理器还被配置有处理器可执行指令,以通过以下操作,针对每个传感器来识别低性能的任何时间:确定所述存储的语义信息指示在特定时隙期间不利事件发生的数量是满足还是超过第二事件门限。
17.根据权利要求12所述的机器人设备,其中,所述处理器还被配置有处理器可执行指令,以通过以下操作,确定是否检测到与所述一个或多个传感器有关的不利事件:
获得通过预处理器操作针对每个传感器来输出的经处理的测量;
获得所述机器人设备的所述当前估计的位置和方向;以及
确定在通过所述经处理的测量来指示的姿势与所述当前估计的位置和方向之间的差异是满足还是超过针对每个传感器的特定于传感器的门限。
18.根据权利要求12所述的机器人设备,其中,所述处理器还被配置有处理器可执行指令,以确定与一个或多个传感器有关的不利事件是响应于接收到异常数据测量来检测到的。
19.根据权利要求12所述的机器人设备,其中,与语义信息提取相关联的所述预先确定的时间段是在时间服务器上配置的,其中,所述时间服务器维持针对所述预先确定的时间段的时隙的设置。
20.根据权利要求12所述的机器人设备,其中,所述处理器还被配置有处理器可执行指令,以通过获得来自所述机器人设备上的定位操作的输出,来识别所述机器人设备的所述当前估计的位置和方向,其中,所述定位操作是作为同时定位和测绘(SLAM)过程的一部分来执行的。
21.根据权利要求12所述的机器人设备,其中,所述机器人设备是地面运载工具,并且其中,所述一个或多个传感器包括:至少一个图像传感器、至少一个惯性测量单元(IMU)传感器和至少一个运动反馈传感器。
22.根据权利要求12所述的机器人设备,其中,针对所述一个或多个传感器存储的所述语义信息是以数据结构表示的,所述数据结构提供在所述预先确定的时间段的每个时隙期间,针对所述机器人设备的每个姿势的不利事件发生的数量。
23.根据权利要求12所述的机器人设备,其中,所述机器人设备被配置为在建筑物内进行操作。
24.一种机器人设备,包括:
用于发起与语义信息提取相关联的预先确定的时间段的开始的单元;
用于确定是否检测到与所述机器人设备的一个或多个传感器有关的不利事件的单元,其中,所述不利事件指示所述一个或多个传感器的不可靠性;
用于响应于确定检测到与所述机器人设备的一个或多个传感器有关的不利事件,识别所述预先确定的时间段的当前时隙的单元:
用于响应于确定检测到与所述机器人设备的一个或多个传感器有关的不利事件,识别所述机器人设备的当前估计的位置和方向的单元;以及
用于响应于确定检测到与所述机器人设备的一个或多个传感器有关的不利事件,基于所识别的当前时隙以及所述机器人设备的所述当前估计的位置和方向,来记录对针对所述一个或多个传感器存储的语义信息的更新的单元。
25.一种用于机器人设备的处理设备,所述处理设备被配置为:
发起与语义信息提取相关联的预先确定的时间段的开始;
确定是否检测到与一个或多个传感器有关的不利事件,其中,所述不利事件指示所述一个或多个传感器的不可靠性;以及
响应于确定检测到与所述一个或多个传感器有关的不利事件:
识别所述预先确定的时间段的当前时隙;
识别所述机器人设备的当前估计的位置和方向;以及
基于所识别的当前时隙以及所述机器人设备的所述当前估计的位置和方向,来记录对针对所述一个或多个传感器存储的语义信息的更新。
26.根据权利要求25所述的处理设备,其中,所述处理设备还被配置为:
确定所述预先确定的时间段是否已经结束;以及
响应于确定所述预先确定的时间段已经结束:
基于存储的语义信息,针对每个传感器来识别在所述机器人设备的局部环境内的低性能的任何空间区域;以及
当所述机器人设备在识别的低性能的空间区域处时,调整应用于来自所述传感器的测量的权重因子。
27.根据权利要求26所述的处理设备,其中,所述处理设备还被配置为:
响应于确定所述预先确定的时间段已经结束,基于相应的语义信息,针对每个传感器来识别低性能的任何时间;以及
在识别的低性能的时间期间,调整应用于来自每个传感器的测量的所述权重因子。
28.根据权利要求26所述的处理设备,其中,所述处理设备还被配置为通过以下操作,针对每个传感器来识别低性能的任何空间区域:
确定针对所述传感器所述存储的语义信息指示针对所述机器人设备的特定姿势的不利事件发生的数量是满足还是超过第一事件门限。
29.根据权利要求28所述的处理设备,其中,所述处理设备还被配置为通过以下操作,针对每个传感器来识别低性能的任何时间:确定所述存储的语义信息指示在特定时隙期间不利事件发生的数量是满足还是超过第二事件门限。
30.根据权利要求25所述的处理设备,其中,所述处理设备还被配置为通过以下操作,确定是否检测到与所述一个或多个传感器有关的不利事件:
获得通过预处理器操作针对每个传感器来输出的经处理的测量;
获得所述机器人设备的所述当前估计的位置和方向;以及
确定在通过所述经处理的测量来指示的姿势与所述当前估计的位置和方向之间的差异是满足还是超过针对每个传感器的特定于传感器的门限。
31.根据权利要求25所述的处理设备,其中,所述处理设备还被配置为:确定与一个或多个传感器有关的不利事件是响应于接收到异常数据测量来检测到的。
32.根据权利要求25所述的处理设备,其中,与语义信息提取相关联的所述预先确定的时间段是在时间服务器上配置的,其中,所述时间服务器维持针对所述预先确定的时间段的时隙的设置。
33.根据权利要求25所述的处理设备,其中,所述处理设备还被配置为:通过获得来自所述机器人设备上的定位操作的输出,来识别所述机器人设备的所述当前估计的位置和方向,其中,所述定位操作是作为同时定位和测绘(SLAM)过程的一部分来执行的。
34.根据权利要求25所述的处理设备,其中,所述机器人设备是地面运载工具,并且其中,所述一个或多个传感器包括:至少一个图像传感器、至少一个惯性测量单元(IMU)传感器和至少一个运动反馈传感器。
35.根据权利要求25所述的处理设备,其中,针对所述一个或多个传感器存储的所述语义信息是以数据结构表示的,所述数据结构提供在所述预先确定的时间段的每个时隙期间,针对所述机器人设备的每个姿势的不利事件发生的数量。
CN201880047966.7A 2017-07-28 2018-03-14 用于利用语义信息来导航机器人设备的***和方法 Active CN111033561B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/CN2017/094876 WO2019019136A1 (en) 2017-07-28 2017-07-28 SYSTEMS AND METHODS FOR USING SEMANTIC INFORMATION FOR NAVIGATING A ROBOTIC DEVICE
CNPCT/CN2017/094876 2017-07-28
PCT/CN2018/078960 WO2019019660A1 (en) 2017-07-28 2018-03-14 SYSTEMS AND METHODS FOR USING SEMANTIC INFORMATION FOR NAVIGATING A ROBOTIC DEVICE

Publications (2)

Publication Number Publication Date
CN111033561A true CN111033561A (zh) 2020-04-17
CN111033561B CN111033561B (zh) 2024-03-19

Family

ID=65039392

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880047966.7A Active CN111033561B (zh) 2017-07-28 2018-03-14 用于利用语义信息来导航机器人设备的***和方法

Country Status (3)

Country Link
US (1) US11720100B2 (zh)
CN (1) CN111033561B (zh)
WO (2) WO2019019136A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111094893A (zh) * 2017-07-28 2020-05-01 高通股份有限公司 机器人式运载工具的图像传感器初始化
US11004567B2 (en) 2017-08-15 2021-05-11 Koko Home, Inc. System and method for processing wireless backscattered signal using artificial intelligence processing for activities of daily life
KR102466940B1 (ko) * 2018-04-05 2022-11-14 한국전자통신연구원 로봇 주행용 위상 지도 생성 장치 및 방법
EP3579174A1 (en) * 2018-06-08 2019-12-11 Hexagon Technology Center GmbH Mobile vehicles in manufacturing
JP7275553B2 (ja) * 2018-12-10 2023-05-18 ソニーグループ株式会社 移動体、移動体の制御方法及びプログラム
US11997455B2 (en) 2019-02-11 2024-05-28 Koko Home, Inc. System and method for processing multi-directional signals and feedback to a user to improve sleep
US10810850B2 (en) 2019-02-19 2020-10-20 Koko Home, Inc. System and method for state identity of a user and initiating feedback using multiple sources
US11971503B2 (en) 2019-02-19 2024-04-30 Koko Home, Inc. System and method for determining user activities using multiple sources
DE102019128253B4 (de) * 2019-10-18 2024-06-06 StreetScooter GmbH Verfahren zum Navigieren eines Flurförderzeugs
US11240635B1 (en) * 2020-04-03 2022-02-01 Koko Home, Inc. System and method for processing using multi-core processors, signals, and AI processors from multiple sources to create a spatial map of selected region
US11184738B1 (en) 2020-04-10 2021-11-23 Koko Home, Inc. System and method for processing using multi core processors, signals, and AI processors from multiple sources to create a spatial heat map of selected region
CN111975756B (zh) * 2020-05-25 2022-02-15 泉州华中科技大学智能制造研究院 一种3d视觉测量***的手眼标定***及方法
CN111938513B (zh) * 2020-06-30 2021-11-09 珠海市一微半导体有限公司 一种机器人越障的沿边路径选择方法、芯片及机器人
CN112040534B (zh) * 2020-08-17 2023-02-17 深圳优地科技有限公司 基于无人机的机器人救援方法、装置、***及存储介质
CN112506197A (zh) * 2020-12-09 2021-03-16 深圳市优必选科技股份有限公司 一种导览机器人的控制方法、装置、电子设备及存储介质
KR102480451B1 (ko) * 2021-03-03 2022-12-23 (주)이머시브캐스트 Mtp 지연 감소를 위한 클라우드 vr 장치
JPWO2022239543A1 (zh) * 2021-05-11 2022-11-17
US20230161403A1 (en) * 2021-11-22 2023-05-25 Htc Corporation Method for managing tracking sensors, tracking device, and computer readable storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102313547A (zh) * 2011-05-26 2012-01-11 东南大学 基于手绘轮廓语义地图的移动机器人视觉导航方法
CN103105926A (zh) * 2011-10-17 2013-05-15 微软公司 多传感器姿势识别
US20140005933A1 (en) * 2011-09-30 2014-01-02 Evolution Robotics, Inc. Adaptive Mapping with Spatial Summaries of Sensor Data
US20140129027A1 (en) * 2012-11-02 2014-05-08 Irobot Corporation Simultaneous Localization And Mapping For A Mobile Robot

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8655588B2 (en) * 2011-05-26 2014-02-18 Crown Equipment Limited Method and apparatus for providing accurate localization for an industrial vehicle
US8386079B1 (en) 2011-10-28 2013-02-26 Google Inc. Systems and methods for determining semantic information associated with objects
US9327743B2 (en) * 2013-12-19 2016-05-03 Thales Canada Inc Guideway mounted vehicle localization system
US9440351B2 (en) 2014-10-30 2016-09-13 International Business Machines Corporation Controlling the operations of a robotic device
US9574883B2 (en) 2015-03-24 2017-02-21 X Development Llc Associating semantic location data with automated environment mapping
US10365363B2 (en) * 2015-05-08 2019-07-30 Humatics Corporation Mobile localization using sparse time-of-flight ranges and dead reckoning
US9758305B2 (en) * 2015-07-31 2017-09-12 Locus Robotics Corp. Robotic navigation utilizing semantic mapping
US9950721B2 (en) * 2015-08-26 2018-04-24 Thales Canada Inc Guideway mounted vehicle localization system
GB2541884A (en) 2015-08-28 2017-03-08 Imp College Of Science Tech And Medicine Mapping a space using a multi-directional camera
WO2019093993A1 (en) * 2017-11-07 2019-05-16 Google Llc Semantic state based sensor tracking and updating

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102313547A (zh) * 2011-05-26 2012-01-11 东南大学 基于手绘轮廓语义地图的移动机器人视觉导航方法
US20140005933A1 (en) * 2011-09-30 2014-01-02 Evolution Robotics, Inc. Adaptive Mapping with Spatial Summaries of Sensor Data
CN103105926A (zh) * 2011-10-17 2013-05-15 微软公司 多传感器姿势识别
US20140129027A1 (en) * 2012-11-02 2014-05-08 Irobot Corporation Simultaneous Localization And Mapping For A Mobile Robot

Also Published As

Publication number Publication date
WO2019019660A1 (en) 2019-01-31
CN111033561B (zh) 2024-03-19
US11720100B2 (en) 2023-08-08
WO2019019136A1 (en) 2019-01-31
US20200097006A1 (en) 2020-03-26

Similar Documents

Publication Publication Date Title
CN111033561B (zh) 用于利用语义信息来导航机器人设备的***和方法
TWI827649B (zh) 用於vslam比例估計的設備、系統和方法
US11914369B2 (en) Multi-sensor environmental mapping
US11218689B2 (en) Methods and systems for selective sensor fusion
CN111506109B (zh) 传感器数据的选择性处理
US20200117210A1 (en) Auto-Exploration Control of a Robotic Vehicle
CN107272728B (zh) 自主移动体***
CN111093907B (zh) 机器人式运载工具的稳健导航
EP3734394A1 (en) Sensor fusion using inertial and image sensors
US20180350086A1 (en) System And Method Of Dynamically Filtering Depth Estimates To Generate A Volumetric Map Of A Three-Dimensional Environment Having An Adjustable Maximum Depth
CN111247390B (zh) Vslam的并发的重新定位和重新初始化
CN112236733A (zh) 一种将移动机器人引导到坞站的计算机化***及其使用方法
US20190066522A1 (en) Controlling Landings of an Aerial Robotic Vehicle Using Three-Dimensional Terrain Maps Generated Using Visual-Inertial Odometry
Muller et al. A probabilistic sonar sensor model for robust localization of a small-size blimp in indoor environments using a particle filter
US20220334594A1 (en) Information processing system, information processing apparatus, and information processing program
WO2024124421A1 (en) Robot rotation matrix estimation using manhattan world assumption
Balasooriya et al. Development of the smart localization techniques for low-power autonomous rover for predetermined environments
JP2019027909A (ja) 無人移動体による対象物の位置推定方法
WO2024004317A1 (ja) 移動体制御装置、および移動体制御方法、並びにプログラム
Wu et al. Simulation of UAV-Based Indoor Mapping for Multi-Story Building Using a RGB-D SLAM Solution
WO2018073396A1 (en) Method and system for indoor navigation

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