CN111093907B - 机器人式运载工具的稳健导航 - Google Patents

机器人式运载工具的稳健导航 Download PDF

Info

Publication number
CN111093907B
CN111093907B CN201780094340.7A CN201780094340A CN111093907B CN 111093907 B CN111093907 B CN 111093907B CN 201780094340 A CN201780094340 A CN 201780094340A CN 111093907 B CN111093907 B CN 111093907B
Authority
CN
China
Prior art keywords
robotic vehicle
processor
determining
image
tracking
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.)
Active
Application number
CN201780094340.7A
Other languages
English (en)
Other versions
CN111093907A (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 CN111093907A publication Critical patent/CN111093907A/zh
Application granted granted Critical
Publication of CN111093907B publication Critical patent/CN111093907B/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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0094Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot involving pointing a payload, e.g. camera, weapon, sensor, towards a fixed or moving target
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • 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
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • 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

Abstract

各个实施例包括用于机器人式运载工具的导航的处理设备和方法。各个实施例可以包括向后的图像传感器,其被安装成使得其平面角与机器人式运载工具的导航平面对准。在各个实施例中,机器人式运载工具的图像传感器可以捕获图像,并且机器人式运载工具的处理器可以使用所捕获的图像来执行同时定位和地图绘制(SLAM)跟踪。实施例可以包括机器人式运载工具的处理器,其确定机器人式运载工具是否正在接近障碍物。如果机器人式运载工具正在接近障碍物,则处理器可以确定机器人式运载工具的图像传感器的旋转角度是否超过旋转门限。如果旋转角度超过旋转门限,则处理器可以确定SLAM跟踪是否稳定;以及响应于确定SLAM跟踪不稳定,来重新初始化机器人式运载工具的姿态。

Description

机器人式运载工具的稳健导航
背景技术
正在开发机器人式运载工具以用于广泛的应用。机器人式运载工具可以被配备有能够捕获图像、图像序列或视频的照相机。一些机器人式运载工具可以被配备有单目图像传感器,诸如单目相机。机器人式运载工具可以使用捕获的图像来执行基于视觉的导航和定位。基于视觉的定位和地图绘制为在各种环境中导航机器人式运载工具提供了灵活、可扩展且低成本的解决方案。随着机器人式运载工具变得越来越自主,机器人式运载工具基于环境特征进行检测和做出决策的能力变得越来越重要。
发明内容
各个实施例包括可以在机器人式运载工具的处理器上实现的用于所述机器人式运载工具的稳健导航的方法。各个实施例可以包括:由所述机器人式运载工具的向后图像传感器捕获图像;由处理器使用所捕获的图像来执行同时定位和地图绘制(SLAM)跟踪;确定所述机器人式运载工具是否正在接近障碍物;响应于确定所述机器人式运载工具正在接近障碍物,来确定所述机器人式运载工具的所述图像传感器的旋转角度是否超过旋转门限;响应于确定所述图像传感器的所述旋转角度超过所述旋转门限,来确定SLAM跟踪是否稳定;以及响应于确定所述SLAM跟踪不稳定,来重新初始化所述机器人式运载工具的姿态。
在一些实施例中,重新初始化所述机器人式运载工具的所述姿态可以包括:识别在所捕获的图像中的特征;选择具有超过特征门限的数量的特征的捕获的图像;确定所选择的图像的跟踪特征的数量是否超过跟踪门限;响应于确定所选择的图像的所述跟踪特征的数量超过跟踪门限,来确定所述跟踪特征的分布是否超过分布门限;以及响应于确定所述跟踪特征的所述分布超过分布门限,来执行SLAM跟踪。
一些实施例可以包括通过以下操作来初始化所述机器人式运载工具的姿态:捕获目标对象的图像;使用所捕获的所述目标对象的图像来执行视觉同时定位和地图绘制(VSLAM);确定所述图像传感器的所述旋转角度是否能够被确定;响应于确定所述图像传感器的所述旋转角度能够被确定,来选择在图像的视场中具有两个或更多个目标对象的捕获的图像;以及至少部分地基于所选择的图像内所述目标对象的位置,来确定图像比例。这样的实施例还可以包括:确定所选择的图像是否包括多于两个的目标对象;以及响应于确定所选择的图像包括多于两个的目标对象,来确定旋转角度校正。
在这样的实施例中,所述目标对象可以是球形的。在一些实施例中,特征可以包括物理地形、轮廓、照明、建筑物固定装置和环境的视觉元素。
在一些实施例中,执行SLAM跟踪可以包括:识别在所捕获的图像中的特征;确定是否能够在捕获的图像之间跟踪所识别的特征;响应于确定能够在捕获的图像之间跟踪所识别的特征,来确定捕获的图像之间的特征的失配数量是否低于失配门限;以及响应于确定捕获的图像之间的特征的所述失配数量低于所述失配门限,来确定所述机器人式运载工具的姿态。
在一些实施例中,如果所述图像传感器的平面角是小的,则所述向后图像传感器可以被安装为使所述图像传感器的短边面向所述机器人式运载工具的前和后。
在一些实施例中,如果所述图像传感器的平面角是大的,则所述向后图像传感器可以被安装为使所述图像传感器的长边面向所述机器人式运载工具的前和后。
各个实施例可以包括具有图像传感器和处理器的机器人式运载工具,处理器被配置有处理器可执行指令以执行上文概述的方法中的任何方法的操作。各个实施例可以包括用于在机器人式运载工具中使用的处理设备,其被配置为执行上文概述的方法中的任何方法的操作。各个实施例可以包括具有用于执行上文概述的方法中的任何方法的操作的单元的机器人式运载工具。
附图说明
并入本文并且构成该说明书的部分的附图示出了示例实施例,并且连同以上给出的总体描述以及以下给出的详细描述用于解释各个实施例的特征。
图1是根据各个实施例的在通信系统内操作的机器人式运载工具的系统框图。
图2是示出根据各个实施例的机器人式运载工具的组件的组件框图。
图3是示出适于在实现各个实施例的机器人式运载工具中使用的处理设备的组件框图。
图4是示出适于与各个实施例一起使用的机器人式运载工具的图像捕获和处理系统的组件的组件框图。
图5是根据各个实施例的路径规划期间的机器人式运载工具的系统框图。
图6是根据各个实施例的初始化图像传感器的机器人式运载工具的系统框图。
图7是示出根据各个实施例的由机器人式运载工具执行稳健导航的方法的过程流图。
图8是示出根据各个实施例的重新初始化机器人式运载工具的姿态的方法的过程流图。
图9是示出根据各个实施例的初始化机器人式运载工具的姿态的方法的过程流图。
具体实施方式
将参照附图来详细描述各个实施例。在可能的情况下,将贯穿各个附图使用相同的附图标记来指代相同或类似的部分。对特定示例和实施例的提及是出于说明性的目的,而并非旨在限制权利要求的范围。
在各个实施例中,被配置有图像传感器的机器人式运载工具可以被安装为面向机器人式运载工具的后部,并且可以使其平面角被安装成与机器人式运载工具的导航平面对准。面向机器人式运载工具的后部安装图像传感器可以减小机器人式运载工具在接近障碍物或从障碍物后退时将迷路的可能性。各个实施例还可以包括在机器人式运载工具的处理器上实现的用于由机器人式运载工具执行稳健导航的方法。各个实施例可以使机器人式运载工具的处理器能够使用目标对象集合来初始化机器人式运载工具的姿态,所述目标对象以穹顶或球形的形式位于诸如墙壁之类的障碍物上的指定位置。通过拍摄球形目标对象的照片,机器人式运载工具能够确定所捕获的图像内目标对象中心的位置,并且确定图像内的对象的比例。然后,机器人式运载工具可以开始执行导航技术。
在各个实施例中,机器人式运载工具的面向后方的图像传感器可以捕获图像,并且机器人式运载工具的处理器可以使用所捕获的图像来执行同时定位和地图绘制(SLAM)跟踪。在各个实施例中,机器人式运载工具的处理器可以确定该机器人式运载工具是否正在接近障碍物。如果机器人式运载工具正在接近障碍物,则处理器可以确定机器人式运载工具的图像传感器的旋转角度是否超过旋转门限。如果旋转角度超过旋转门限,则处理器可以确定SLAM跟踪是否稳定,并且响应于确定SLAM跟踪不稳定,来重新初始化机器人式运载工具的姿态。
在各个实施例中,机器人式运载工具的处理器可以识别所捕获的图像内的特征。处理器可以选择具有超过特征门限的特征数量的所捕获的图像,并且确定所选择的图像的跟踪特征数量是否超过跟踪门限。如果所跟踪图像的数量超过跟踪门限,则处理器可以确定跟踪特征的分布超过分布门限,并且响应于确定跟踪特征的分布超过分布门限,来执行SLAM跟踪。
在各个实施例中,可以在操作开始期间初始化机器人式运载工具的姿态。例如,图像传感器可以捕获目标对象的一个或多个图像。这些目标对象可以是穹顶、球、圆锥、金字塔或机器人式运载工具可见的从表面突出的三维对象。机器人式运载工具的处理器可以使用目标对象的所捕获图像来执行视觉同时定位和地图绘制(VSLAM)。处理器可以确定图像传感器的旋转角度是否能够被确定,并且响应于确定图像传感器的旋转角度能够被确定,来选择在该图像的视场中具有两个或更多个目标对象的所捕获图像。处理器可以至少部分地基于所选择的图像内目标对象的位置,来确定或计算图像比例。在各个实施例中,处理器还可以确定所选择的图像是否包括多于两个的目标对象,并且响应于确定所选择的图像包括多于两个的目标对象,来确定旋转角度校正。
如本文中所使用的,术语“机器人式运载工具”指代包括被配置为提供一些自主或半自主能力的机载处理设备的各种类型的运载工具中的一种运载工具。机器人式运载工具的示例包括但不限于:飞行器,诸如无人驾驶飞行器(UAV);地面运载工具(例如,自主式或半自主式汽车、真空机器人等);水基运载工具(即,被配置用于在水面上或在水下操作的运载工具);天基运载工具(例如,航天器或航天探测器);和/或其某种组合。在一些实施例中,机器人式运载工具可以是有人驾驶的。在其它实施例中,机器人式运载工具可以是无人驾驶的。在其中机器人式运载工具是自主式的实施例中,机器人式运载工具可以包括机载计算设备,机载计算设备被配置为在没有例如来自人类操作者(例如,经由远程计算设备)的远程操作指令的情况下(即,自主地)操纵和/或导航机器人式运载工具。在其中机器人式运载工具是半自主式的实施例中,机器人式运载工具可以包括机载计算设备,机载计算设备被配置为接收例如来自人类操作者(例如,经由远程计算设备)的一些信息或指令,并且与所接收的信息或指令一致地来自主地操纵和/或导航机器人式运载工具。在一些实现中,机器人式运载工具可以是飞行器(无人驾驶或有人驾驶),其可以是旋翼飞机或有翼飞机。例如,旋翼飞机(也被称为多旋翼飞行器或多旋翼直升机)可以包括多个推进单元(例如,转子/推进器),其为机器人式运载工具提供推进力和/或提升力。旋翼飞机的特定非限制性示例包括三旋翼直升机(三个转子)、四旋翼直升机(四个转子)、六旋翼直升机(六个转子)和八旋翼直升机(八个转子)。然而,旋翼飞机可以包括任意数量的转子。机器人式运载工具可以包括可以执行各种功能的各种组件和/或有效载荷。
如本文中所使用的,术语“环境特征”是指各种类型的地形元素。环境特征的示例包括地形轮廓、物理障碍、建筑物、水路、树木和其它自然障碍物、诸如汽车和其它运载工具之类的临时障碍物、照明水平、天气影响、家具、家居用品、办公设备、建筑物的固定设施等。在一些实施例中,环境特征可以是可由机器人式运载工具的单目图像传感器检测到的那些特征。在一些实施例中,环境特征可以是可由两个或多个图像传感器检测到的那些特征。在一些实施例中,环境特征可以是可由机器人式运载工具的任何传感器(诸如超声、红外、双目图像传感器等)检测到的特征。
机器人式运载工具可以采用同时定位和地图绘制(SLAM)技术来构造和更新未知环境的地图,而同时跟踪机器人式运载工具在环境中的地点。机器人式运载工具越来越多地被配备有用于捕获图像和视频的图像传感器设备。在一些实施例中,图像传感器设备可以包括单目图像传感器(例如,单目相机)。机器人式运载工具可以使用图像传感器设备来收集对于SLAM有用的数据。
执行SLAM技术的机器人式运载工具高度依赖于周围环境中可区分的特征的存在性。不存在可识别或可区分的特征可能导致定位和地图绘制操作失败,并且可能导致机器人式运载工具“迷路”或无法到达目标位置。尽管许多机器人式运载工具的导航依赖于区分各种环境特征,但是用于机器人式运载工具导航的现有技术在对机器人式运载工具进行导航时,无法考虑到或对可用环境特征的丰富性排列优先级。大多数机器人式运载工具通过识别最接近的期望位置以及确定到该位置的最短、最畅通的路径,来选择目标位置和相关联的路径。
许多实现SLAM技术的机器人式运载工具包括以向上的倾斜角度安装在机器人式运载工具顶部的前向摄像头。还面向机器人式运载工具的前方安装了其它传感器,诸如红外线、声纳和压力触发的保险杠。因此,大多数机器人式运载工具的运动方式包括向前运动和就地旋转。然而,这种机器人式运载工具在接近或离开障碍物(诸如墙壁)时可能遇到定位失败并且“迷路”,因为图像传感器在接近墙壁时以及在从墙壁移开时无法足够地看到障碍物来正确识别位置。随着机器人式运载工具接近以及离开障碍物,在捕获的图像中被跟踪的环境特征(例如,所跟踪的特征)可能从视场中迅速消失。此外,面向前方的图像传感器可能导致捕获的图像显示“扭曲效果”。这种扭曲效果可能使确定图像内的比例极为困难。
各个实施例可包括图像传感器,该图像传感器被安装在机器人式运载工具上,面向机器人式运载工具的后部,使得相机背向运载工具的优选行进方向。在一些实施例中,图像传感器还可以向上倾斜地安装。在一些实施例中,图像传感器可以与导航平面对准地安装。无论相机是朝着障碍物移动还是移动离开障碍物,图像传感器的这种朝向都实现环境特征的延长视场。随着机器人式运载工具向前移动,机器人式运载工具的后部将被定向在相同方向上达一段时间,从而实现相同环境特征的延长视场。因此,与具有面向前方的图像传感器的机器人式运载工具相比,使用SLAM的机器人式运载工具当接近障碍物时不太可能迷路。当移动离开障碍物时,面向机器人的后方安装的图像传感器与面向前方相比,可以提供更容易的初始化和更准确的姿态,这是因为捕获的所有特征都可以在接下来的帧中进行跟踪,并且从特征到图像传感器的光学中心的距离更近。
在各个实施例中,图像传感器的安装可以与机器人式运载工具的导航平面对准。图像传感器通常具有矩形形状,并且可以以各种方式安装在机器人式运载工具上。机器人式运载工具导航平面与由安装的图像传感器捕获的图像平面之间的角度被称为平面角。该平面角可以具有0-90的度数。可以基于图像传感器的平面角的大小来在机器人式运载工具上安装图像传感器,以使得矩形图像传感器的长边或短边与机器人式运载工具的导航平面对准。例如,如果平面角足够大(小),则沿着机器人的移动方向来安装传感器的短边(长边)。将图像传感器与导航平面对准地安装可以提供更稳健的旋转和二维重建以及更稳健的平移。在各个实施例中,当平面角是大的时,诸如在46-90度之间,图像传感器的短边可以被放置成与机器人式运载工具的导航平面对准。例如,图像传感器可以被安装在机器人式运载工具上,以使得图像传感器的最长边面向机器人式运载工具的前后。这种安装策略的好处可以包括在机器人式运载工具旋转期间改进的特征跟踪和改进的二维图像重建。因为图像传感器的长边面向机器人式运载工具的后部,所以特征将在视场内保留更长的时间,从而提供了额外的数据点。这些点可用于通过图像跟踪特征或创建单个图像。
当平面角是小的时,诸如0-45度,图像传感器可以被安装在机器人式运载工具上,以使得矩形图像传感器的长边与机器人式运载工具的导航角对准。因此,矩形图像传感器的短边可以面向机器人式运载工具的前后。这种安装策略的好处可以包括在机器人式运载工具的平移期间改进的跟踪。
各个实施例还可以包括利用具有围绕明显中心的旋转对称的三维对象(诸如球、穹顶或圆锥)替换目标图像用于姿态初始化。使用具有明显“中心”的三维对象可以使机器人式运载工具的处理器能够容易地计算比例校正,而不考虑观察目标时机器人式运载工具的位置和朝向,从而使处理器能够确定比例或捕获的图像内的对象。
各个实施例可以是在各种通信系统100内操作的机器人式运载工具中实现的,在图1中示出了通信系统100的示例。参照图1,通信系统100可以包括机器人式运载工具102、基站104、接入点106、通信网络108以及网络单元110。在一些实施例中,机器人式运载工具120可以被配备有图像传感器102a。在一些实施例中,图像传感器102a可以包括单目图像传感器。
基站104和接入点106可以提供无线通信,以分别通过有线和/或无线通信回程116和118来接入通信网络108。基站104可以包括基站,其被配置为提供在广域(例如,宏小区)以及小型小区上的无线通信,小型小区可以包括微小区、毫微微小区、微微小区以及其它类似的网络接入点。接入点106可以包括被配置为提供在相对较小区域上的无线通信的接入点。基站和接入点的其它示例也是可能的。
机器人式运载工具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可以包括网络服务器或者另一类似的网络单元。网络单元110可以在通信链路122上与通信网络108进行通信。机器人式运载工具102和网络单元110可以经由通信网络108进行通信。网络单元110可以向机器人式运载工具102提供多种信息,例如,导航信息、天气信息、关于局部空中、地面和/或海面交通的信息、移动控制指令以及与运载工具102的操作相关的其它信息、指令或者命令。
在各个实施例中,机器人式运载工具102可以在环境120中移动。在一些实施例中,机器人式运载工具可以使用图像传感器102a来捕获环境120中的目标对象125的集合的一个或多个图像。在一些实施例中,目标对象125可以包括从墙壁或其它障碍物突出的三维对象。目标对象125可以包括已知特性,诸如高度、深度和宽度。
机器人式运载工具可以包括有翼或旋翼飞机种类。图2示出了地面运载工具设计的示例性机器人式运载工具200,其利用由相应的电动机驱动的一个或多个轮子202来为机器人式运载工具200提供运动。机器人式运载工具200被示为可以利用各个实施例的机器人式运载工具的示例,但是并不旨在暗示或要求各个实施例限于地面机器人式运载工具。例如,各个实施例可以与旋翼或有翼机器人式运载工具、水上机器人式运载工具和天基机器人式运载工具一起使用。
参照图1和2,机器人式运载工具200可以与机器人式运载工具102类似。机器人式运载工具200可以包括多个轮子202、主体204以及图像传感器206。框架204可以为电动机和其相关联的轮子202以及图像传感器206提供结构支撑。为了便于描述和说明,省略了机器人式运载工具200的一些详细的方面,诸如连线、框架结构互连或者本领域技术人员将已知的其它特征。虽然所示出的机器人式运载工具200具有轮子202,但是这仅是示例性的,并且各个实施例可以包括用于提供推进和操纵能力的任何各种组件,诸如履带、桨、滑橇、或其任何组合、或其它组件的任何组合。
机器人式运载工具200还可以包括控制单元210,其可以容纳用于为机器人式运载工具200供电和控制其操作的各种电路和设备。控制单元210可以包括处理器220、功率模块230、传感器240、一个或多个有效载荷固定单元244、一个或多个图像传感器245、输出模块250、输入模块260和无线电模块270。
处理器220可以被配置有处理器可执行指令,以控制机器人式运载工具200的行进和其它操作,包括各个实施例的操作。处理器220可以包括或者耦合到导航单元222、存储器224、陀螺仪/加速计单元226和操纵数据模块228。处理器220和/或导航单元222可以被配置为通过无线连接(例如,蜂窝数据网络)与服务器进行通信,以接收对导航有用的数据,提供实时位置报告以及评估数据。
操纵数据模块228可以耦合到处理器220和/或导航单元222,并且可以被配置为提供与行进控制相关的信息,诸如方向、姿态、速度、航向、以及导航单元222可以用于导航目的的类似信息,诸如全球导航卫星系统(GNSS)位置更新之间的航位推算。陀螺仪/加速计单元226可以包括加速计、陀螺仪、惯性传感器、惯性测量单元(IMU)或其它类似的传感器。操纵数据模块228可以包括或者接收来自陀螺仪/加速计单元226的数据,其提供关于机器人式运载工具200的方向和加速度的数据(其可以用于导航和定位计算)以及提供在各个实施例中用于处理图像的数据。
处理器220还可以从一个或多个图像传感器245(例如照相机,可以是单目相机)和/或其它传感器240接收额外信息。在一些实施例中,图像传感器245可以包括具有红外线、紫外线和/或其它波长的光的能力的光学传感器。传感器240还可以包括车轮传感器、射频(RF)传感器、气压计、声纳发射器/检测器、雷达发射器/检测器、麦克风或者另一声学传感器、或者可以提供可由处理器220用于移动操作以及导航和定位计算的信息的另一传感器。传感器240可以包括接触式传感器或压力传感器,其可以提供指示机器人式运载工具200何时已经与表面接触的信号。有效载荷固定单元244可以包括伺服电动机,其驱动抓握和释放机构以及相关的控制装置,它们对控制单元210进行响应,以响应于来自控制单元210的命令而抓握和释放有效载荷。
功率模块230可以包括可以将功率提供给各个组件的一个或多个电池,各个组件包括处理器220、传感器240、有效载荷固定单元244、图像传感器245、输出模块250、输入模块260和无线电模块270。另外,功率模块230可以包括能量储存组件,诸如可充电电池。处理器220可以被配置有处理器可执行指令,以控制功率模块230的充电(即,所收集的能量的储存),诸如通过使用充电控制电路来执行充电控制算法。替代地或者另外,功率模块230可以被配置为管理其自己的充电。处理器220可以耦合到输出模块250,其可以输出控制信号,控制信号用于管理驱动转子202和其它组件的电动机。
当机器人式运载工具200朝向目的地前进时,可以通过对转子202的各个电动机的控制来控制机器人式运载工具200。处理器220可以从导航单元222接收数据,并且使用这样的数据,以便确定机器人式运载工具200的当前位置和方向、以及朝向目的地或中间站点的合适的路线。在各个实施例中,导航单元222可以包括GNSS接收机系统(例如,一个或多个全球定位系统(GPS)接收机),其使得机器人式运载工具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以及经由发送/接收天线292和无线通信设备290建立双向无线通信链路294。在一些实施例中,无线电模块270可以被配置为支持使用不同无线接入技术与不同的无线通信设备的多个连接。
在各个实施例中,无线通信设备290可以通过中间接入点连接到服务器。在一个示例中,无线通信设备290可以是机器人式运载工具操作者的服务器、第三方服务(例如包裹递送、计费等)或站点通信接入点。机器人式运载工具200可以通过一个或多个中间通信链路与服务器通信,中间通信链路诸如耦合到广域网(例如,互联网)或其它通信设备的无线电话网络。在一些实施例中,机器人式运载工具200可以包括并且采用其它形式的无线电通信,诸如与其它机器人式运载工具的网状连接或者与其它信息源(例如,用于收集和/或分发天气或其它数据收集信息的气球或其它站)的连接。
在各个实施例中,控制单元210可以被配备有输入模块260,其可以用于各种应用。例如,输入模块260可以从机载相机或传感器接收图像或数据,或者可以从其它组件(例如,有效载荷)接收电子信号。
虽然在图2中将控制单元210中的各个组件示为单独的组件,但是这些组件(例如,处理器220、输出模块250、无线电模块270以及其它单元)中的一些或者全部可以被一起集成在单个处理设备310中,在图3中示出了处理设备310的示例。
参照图1-3,处理设备310被可以配置为在机器人式运载工具中使用,并且可以被配置为片上系统(SoC)312或者包括SoC 312。SoC 312可以包括(但是不限于)处理器314、存储器316、通信接口318和存储存储器接口320。处理设备310或SoC 312还可以包括用于建立无线通信链路的通信组件322(诸如有线或无线调制解调器)、存储存储器324、天线326等。处理设备310或SoC 312还可以包括硬件接口328,其被配置为使得处理器314能够与机器人式运载工具的各个组件进行通信并且控制这些组件。处理器314可以包括各种处理设备中的任何处理设备,例如任何数量的处理器核。
术语“片上系统(SoC)”在本文中通常但并非排除性地用于指代一组互连的电子电路,其包括一个或多个处理器(例如314)、存储器(例如316)和通信接口(例如318)。SoC 312可以包括各种不同类型的处理器314和处理器核,诸如通用处理器、中央处理单元(CPU)、数字信号处理器(DSP)、图形处理单元(GPU)、加速处理单元(APU)、处理设备的特定组件的子系统处理器(诸如用于相机子系统的图像处理器或用于显示器的显示处理器)、辅助处理器、单核处理器和多核处理器。SoC 312可以进一步体现其它硬件和硬件组合,诸如现场可编程门阵列(FPGA)、专用集成电路(ASIC)、其它可编程逻辑器件、分立门逻辑、晶体管逻辑、性能监测硬件、看门狗硬件和时间基准装置。集成电路可以被配置为使得集成电路的组件位于单片的半导体材料(例如,硅)上。
SoC 312可以包括一个或多个处理器314。处理设备310可以包括一个以上的SoC312,从而增加处理器314和处理器核的数量。处理设备310还可以包括与SoC 312不相关联(即在SoC 312外部)的处理器314。各个处理器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的各种配置中。
图4示出了适于与各个实施例一起使用的机器人式运载工具的图像捕获和处理系统400。参照图1-4,可以在机器人式运载工具的硬件组件和/或软件组件中实现图像捕获和处理系统400,其操作可以由机器人式运载工具的一个或多个处理器(例如,处理器220、处理设备310、SoC 312等)来控制。
图像传感器406可以捕获通过透镜404进入的图像402的光线。透镜404可以包括鱼眼镜头或者可以被配置为提供宽图像捕获角度的另一种类似的透镜。图像传感器406可以将图像数据提供给图像信号处理(ISP)单元408。感兴趣区域(ROI)选择单元412可以将用于选择图像数据内的感兴趣区域的数据提供给ISP 408。在一些实施例中,图像传感器406可以类似于图像传感器102a、245。
ISP 408可以将图像信息和ROI选择信息提供给卷帘式快门校正、图像扭曲和裁剪单元412。鱼眼矫正单元414可以将信息和/或处理函数提供卷帘式快门校正、图像扭曲和裁剪单元412。在一些实施例中,图像矫正单元414可以提供信息和/或处理函数以校正由透镜404引起的图像失真、由图像传感器406引起的图像失真效果(例如,诸如摆动、歪斜、拖尾等的失真)或其它图像失真。
卷帘式快门校正和扭曲单元412可以基于裁剪、失真校正和/或对变换矩阵的应用来提供经校正的图像416作为输出。在一些实施例中,经校正的图像可以包括具有经校正的水平定向或水平旋转的图像。在一些实施例中,经校正的图像可以包括经稳定化的视频输出。
图5示出了适于与各个实施例一起使用的由机器人式运载工具(例如,图1和2中的102、200)探索的探索区域500。参考图1-5,机器人式运载工具102可以在探索区域500内导航。各种结构(诸如建筑物504、506、508和510、以及湖泊516和树木518)可以呈现机器人式运载工具通过对捕获的图像的比较进行跟踪的环境特征。由连接到目标位置(星号)520的虚线、点线和实线示出的不同导航路径可以使机器人式运载工具图像传感器看到不同的环境特征。类似地,如果机器人式运载工具位于室内,则特征可以包括办公设备、家具、建筑物固定设施、家居用品、地板图案或可能用于路径规划的环境的其它视觉上可区分的元素。
图6示出了适于与各个实施例一起使用的执行SLAM的机器人式运载工具。参考图1-6,机器人式运载工具102的处理器可以将机器人式运载工具导向诸如墙壁602之类的障碍物。当机器人式运载工具102接近墙壁602时,向后图像传感器102a可以捕获机器人式运载工具后面的图像,并且使用那些图像来继续执行SLAM跟踪。因为图像传感器102a可以具有周围环境的延长视场,所以所捕获的图像可以包括大量环境特征。作为SLAM导航的一部分,处理器可以跟踪这些特征。因此,当机器人式运载工具102接近墙壁602时,SLAM跟踪可以保持稳定。相反,如果图像传感器面向机器人式运载工具的前部,则墙壁602上的特征将随着机器人式运载工具102接近墙壁602而迅速移出视场,从而导致处理器由于不充足而“迷路”。
当机器人式运载工具102转向离开墙壁602时,障碍物到向后图像传感器102a的接近度可能使SLAM不稳定,从而导致机器人式运载工具102瞬间迷路或迷失方向。障碍物可能离图像传感器太近,因而无法正确分辨障碍物的细节。因此,机器人式运载工具102可能难以使用在从墙壁602转向离开后立即在逐渐后退的障碍物602附近捕获的图像中包括的特征来执行SLAM跟踪。然而,随着机器人式运载工具102移动远离障碍物602,墙壁602上的特征将进入向后图像传感器102a的视场中。
随着机器人式运载工具102从障碍物602离开,该障碍物的细节可能再次成为图像传感器102的焦点。这可以使处理器能够再次识别和跟踪捕获的图像中显示的特征。因此,SLAM导航可能再次稳定。如图6所示,机器人式运载工具102轨迹中的用浅灰色点线描绘的部分可以是轨迹中的该SLAM导航没有问题的那些部分。由于障碍物602到机器人式运载工具102的接近度,所以轨迹中的用深灰色点线描绘的部分可能难以导航。
以这种方式,各个实施例可以通过给出向后图像传感器来增加机器人式运载工具能够维持稳定的SLAM导航的时间百分比。为了进一步提高导航精度,可以基于图像传感器的平面角,将矩形图像传感器的侧边沿着机器人式运载工具的导航平面进行定向。例如,当平面角是大的时,图像传感器可以被安装在机器人式运载工具上以使得图像传感器的短边面向机器人式运载工具的侧面。相反,如果平面角是小的,则图像传感器可以被安装在机器人式运载工具上以使得图像传感器的长边面向机器人式运载工具的侧面。这样的安装技术可以提高在机器人式运载工具的旋转和/或平移期间捕获的图像的质量。
图7示出了根据各个实施例的在机器人式运载工具中执行稳健导航的方法700。参考图1-7,机器人式运载工具的处理器(例如,处理器220、处理设备310、SoC 312等)和机器人式运载工具的硬件组件和/或软件组件可以使用机器人式运载工具的图像传感器(例如,图像传感器245)来捕获并且处理图像。
在框702中,机器人式运载工具的向后图像传感器可以捕获图像。在框704中,机器人式运载工具的处理器可以使用所捕获的图像来执行同时定位和地图绘制(SLAM)跟踪。对于捕获的每个图像,处理器可以分析图像以识别任何可辨别的环境特征。可以在捕获的图像之间比较识别的特征以跟踪变化。至少部分地基于捕获的图像之间的特征放置和比例上的改变,处理器可以确定机器人式运载工具的位置和行进方向。
在确定框706中,处理器可以确定机器人式运载工具是否正在接近障碍物。在各个实施例中,处理器可以检查各点的分布以确定机器人式运载工具是否正在接近障碍物。机器人式运载工具还可以从诸如红外、声纳和压敏保险杠的额外传感器接收信息,以确定机器人式运载工具是否正在接近障碍物。
响应于确定机器人式运载工具没有正在接近障碍物(即,确定框706=“否”),在框702中,处理器可以继续捕获图像并且执行SLAM跟踪。如果机器人式运载工具没有正在接近墙壁或其它障碍物,则SLAM导航应保持稳定,无需进一步准备。
响应于确定机器人式运载工具正在接近障碍物(即,确定框706=“是”),在确定708框中,处理器可以确定机器人式运载工具的图像传感器的旋转角度是否超过旋转门限。当机器人式运载工具接近障碍物时,所捕获的图像包括从机器人式运载工具的前部旋转180度的视场。当机器人式运载工具到达障碍物附近的区域时,由于预期改变运动方向,因此机器人式运载工具可能开始旋转。图像传感器的视场将保持与机器人式运载工具的前部相对大约180度,因此,当机器人式运载工具从障碍物旋转90度或更多时,障碍物将开始进入到图像传感器的视场中。
响应于确定图像传感器的旋转角度不超过旋转门限(即,确定框708=“否”),在框702中,处理器可以继续捕获图像并且执行SLAM跟踪。如果机器人式运载工具侧滑过障碍物或平行于障碍物行进,而不是完全转弯(例如,旋转角度小于90度),则障碍物可能永远不会进入图像传感器的完整视场中。图像传感器能够继续捕获包含处理器可以识别和跟踪的特征的图像。
响应于确定机器人式运载工具的图像传感器的旋转角度超过旋转门限(即,确定框708=“是”),在确定框710中,处理器可以确定SLAM跟踪是否稳定。例如,处理器可以确定障碍物的由图像传感器捕获的图像中的特征是否足以使处理器能够确定其位置。这可以包括确定图像中的跟踪特征数量是否超过跟踪门限。处理器还可以确定捕获的图像之间的特征的失配数量是否低于失配门限。类似地,可以将图像传感器特征点云与机器人式运载工具的其它传感器的输出进行比较,以确定特征的匹配是否准确。
响应于确定SLAM跟踪稳定(即,确定框710=“是”),处理器可以返回到框702,并且继续捕获图像以及执行SLAM跟踪。如果处理器确定SLAM导航稳定,则尽管机器人式运载工具旋转,图像传感器也能够捕获细节足以使处理器继续执行SLAM导航的障碍物的图像。在障碍物具有沿障碍物长度变化的明显特征的情况下,可能会发生这种情况。
响应于确定SLAM跟踪不稳定(即,确定框710=“否”),在框712中,处理器可以响应于确定SLAM跟踪不稳定来重新初始化机器人式运载工具的姿态。如果处理器无法确定SLAM是否稳定,则机器人式运载工具“迷路”,并且必须在继续导航之前重新初始化其姿态。
图8示出了根据各个实施例的机器人式运载工具中的姿势重新初始化的方法800。参考图1-8,机器人式运载工具的处理器(例如,处理器220、处理设备310、SoC 312等)和机器人式运载工具的硬件组件和/或软件组件可以使用机器人式运载工具的图像传感器(例如,图像传感器245)来捕获和处理图像。处理器可以在方法700的框712的操作之后执行方法800。
在框802中,处理器可以识别所捕获的图像中的特征。处理器可以使用各种图像分析技术来识别所捕获的图像内的突出或可区分的细节或特征。这些特征可能是环境对象本身,或者可能是那些对象的不同细节的组合。例如,远处树的存在可能是特征,但是随着机器人式运载工具的位置越来越靠近树(例如,机器人式运载工具向后移动),树可能会分解为多个不同特征。
在框804中,处理器可以选择具有超过特征门限的特征数量的所捕获的图像。在识别出每个所捕获图像的特征时,就对特征进行计数。选择具有超过特征门限的所识别特征数量的第一捕获图像。例如,可以选择具有多于50个可识别特征的第一捕获图像,因为很可能可以在所选择的图像和后续捕获图像之间跟踪这些特征中的至少一些特征。
在确定框806中,处理器可以确定所选择的图像的跟踪特征数量是否超过跟踪门限。当处理器将捕获的图像与所选择的图像进行比较时,处理器可以对在各图像之间对应的特征数量进行计数。这些特征被视为“已跟踪”。诸如旗杆、建筑物或其它对象之类的特征可以在所选择的图像和另一捕获图像之间匹配。
响应于确定所选择的图像的跟踪特征数量不超过跟踪门限(即,确定框806=“否”),在框802中,处理器可以再次识别其它捕获图像中的特征。
响应于确定所选择的图像的跟踪特征数量超过跟踪门限(即,确定框806=“是”),在确定框808中,处理器可以确定跟踪特征的分布是否超过分布门限。随着机器人式运载工具的移动,图像特征之间的像素分布可能改变。机器人式运载工具越靠近对象或区域,特征之间的像素分布可能变得越大。姿态重新初始化可能需要在捕获的图像内将图像特征彼此隔开足够的距离,以使得处理器可以确定机器人式运载工具位置的偏移。分布门限可以是像素数量,或者可以是距离的另一种度量。
响应于确定跟踪特征的分布不超过分布门限(即,确定框808=“否”),在框804中,处理器可以选择另一捕获的图像。
响应于确定跟踪特征的分布超过分布门限(即,确定框=“是”),处理器可以在如所描述的方法700的框704中执行SLAM跟踪。
用于姿态初始化的技术可以不同于用于重新初始化的技术,诸如方法800。一些机器人式运载工具可以通过拍摄具有已知尺寸和比例的测试图案的图像来执行姿态初始化。机器人式运载工具处理器可以基于所捕获的图像中的测试图案的特性来计算姿态。然而,当图像传感器和测试图案之间的角度大时,这种技术不是稳健的。类似地,依赖于车轮编码器的输出的姿态初始化技术在带纹理或铺有地毯的表面上也不能很好地执行。惯性测量单元可以用于确定机器人式运载工具的初始姿态;然而,这样的传感器需要交叉校准以获得相对的姿势和图像采样时间,使得这种技术处理强度大并且有些笨拙。
各个实施例可以通过使用预定的“起始区域”中(诸如安装在墙壁上)的三维对象(诸如球)集合,来克服在使用视觉SLAM(vSLAM)技术的操作启动期间的机器人式运载工具姿态初始化的这种问题。三维目标对象集合可以是旋转对称的形状(诸如球),并且可以具有已知的尺寸(例如,半径)和位置。处理器也可以已知目标对象之间的间隔,并且可以将目标对象放置为使得在任何给定时间在捕获的图像中很可能看到至少两个目标对象。球形形状在基于vSLAM的姿态初始化中可能特别有用,因为对象将从所有角度看起来都相同(即,像平面中的圆),并且可以确定每个球的中心,而与观察方向无关。因此,对于球形目标对象,无论图像传感器的安装角度或机器人式运载工具的相对位置如何,目标对象的图像都将包括分离的圆形形状,可以对圆形形状进行分析以确定其表观直径和中心,并且因此确定分离距离和角度,从而使该技术非常稳健。
图9示出了根据各个实施例的对机器人式运载工具姿态初始化的方法900。参考图1-9,机器人式运载工具的处理器(例如,处理器220、处理设备310、SoC 312等)和机器人式运载工具的硬件组件和/或软件组件可以使用图像传感器(例如,图像传感器245)来捕获并且处理图像。
在框902中,图像传感器可以捕获目标对象的图像。从目标对象集合的接近度内或其附近的位置,机器人式运载工具的图像传感器可以捕获旋转对称的三维目标对象(例如,具有处理器已知的直径和分离距离的球)的图像。可以将目标对象布置为使得机器人式运载工具图像传感器可以容易地获取至少两个目标对象的图像。如果图像传感器无法获得两个或更多个目标对象的图像,则处理器可以指示各种致动器将机器人式运载工具移动到另一位置或姿态并且重试。
在框904中,处理器可以使用目标对象的所捕获的图像来执行视觉同时定位和地图绘制(VSLAM)。例如,处理器可以识别每个捕获的图像内的特征,并且可以尝试在后续图像之间跟踪那些特征。
在确定框906中,处理器可以确定图像传感器的旋转角度是否能够被确定。处理器可以尝试计算机器人式运载工具与目标对象之间的旋转角度。因为目标对象的尺寸、位置和定位是已知的,并且被存储在机器人式运载工具的存储器中,所以处理器能够使用所捕获的图像来计算机器人式运载工具参照于目标对象的旋转角度。
响应于确定图像传感器的旋转角度不能够被确定(即,确定框906=“否”),在框902中,处理器可以捕获目标对象的额外图像。因此,如果处理器无法在确定机器人式运载工具参照于目标对象的旋转角度,机器人式运载工具可以返回到捕获图像并且执行VSLAM,直到找到可以从中计算出旋转角度的图像为止。
响应于确定图像传感器的旋转角度能够被确定(即,确定框906=“是”),在框908中,处理器可以选择在该图像的视场中具有两个或更多个目标对象的所捕获的图像。
在框910中,处理器可以至少部分地基于所选择的图像内目标对象的位置来确定图像比例。因为目标对象相对于彼此的尺寸和位置已经是已知的,所以机器人式运载工具的处理器可以计算图像的比例。处理器可以将所选择的图像中目标对象的大小和分布与所存储的目标对象的尺寸和位置信息进行比较,以确定图像中对象的比例。
在确定框912中,处理器可以确定所选择的图像是否包括多于两个的目标对象。该确定可以在对所捕获的图像的选择期间、在特征识别期间或之后进行。如果所选择的图像包含多于两个的目标对象,则可以从该图像中获取额外信息。
响应于确定所选择的图像不包括多于两个的目标对象(即,确定框912=“否”),在框902中,处理器可以继续捕获目标对象的图像。
响应于确定所选择的图像包括多于两个的目标对象(即,确定框912=“是”),在框914中,处理器可以响应于确定所选择的图像包括多于两个的目标对象来确定旋转角度校正。如果目标对象位于同一平面内,则处理器可以采用基于单应性矩阵的技术来确定旋转角度校正。如果目标对象不位于同一平面中,则处理器可以采用基本矩阵技术来确定旋转角度校正。
各个实施例使得机器人式运载工具的处理器能够改善对机器人式运载工具的图像传感器的初始化。各个实施例还使用更准确地初始化的机器人式运载工具的姿态来提高机器人式运载工具的SLAM能力的准确度。各个实施例还提高了机器人式运载工具校准用于与SLAM确定一起使用的单目图像传感器的能力。
所示出以及描述的各个实施例仅是作为示例来提供的,以示出权利要求的各个特征。然而,关于任何给定实施例所示出并且描述的特征未必限于相关联的实施例,并且可以与示出并且描述的其它实施例一起使用或者相组合。此外,权利要求并不旨在由任何一个示例实施例限制。例如,方法700、800和900中的操作中的一个或多个操作可以替换方法700、800和900中的一个或多个操作或者与其组合,反之亦然。
前述方法描述和过程流程图仅是作为说明性示例来提供的,而并非旨在要求或者暗示各个实施例的操作必须以所给出的次序来执行。如本领域技术人员将明白的,可以以任何次序来执行前述实施例中的操作的次序。诸如“之后”、“然后”、“接下来”等的词语并非仅在限制操作的次序;这些词语用于引导读者通读对这些方法的描述。此外,对单数形式的权利要求要素的任何提及(例如,使用冠词“一(a)”、“一个(an)”或者“所述(the)”)并不被解释为将该要素限制为单数。
结合本文公开的实施例描述的各个说明性的逻辑框、模块、电路和算法操作均可以实现成电子硬件、计算机软件或这二者的组合。为了清楚地说明硬件和软件之间的这种可交换性,上文对各个说明性的组件、框、模块、电路和操作均围绕其功能进行了总体描述。至于这种功能是实现为硬件还是实现为软件,取决于特定的应用和对整个系统所施加的设计约束。本领域技术人员可以针对每个特定应用,以变通的方式实现所描述的功能,但是这种实施例决策不应解释为造成对权利要求的范围的脱离。
利用被设计为执行本文所述功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑、分立硬件组件或者其任意组合,可以实现或执行用于实现结合本文公开的方面所描述的各个说明性的逻辑单元、逻辑框、模块和电路的硬件。通用处理器可以是微处理器,但是在替代方式中,处理器可以是任何常规的处理器、控制器、微控制器或者状态机。处理器还可以实现为接收机智能对象的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP核、或者任何其它这种配置。替代地,一些操作或方法可以由特定于给定功能的电路来执行。
在一个或多个方面中,所描述的功能可以用硬件、软件、固件、或者其任意组合来实现。如果用软件来实现,则功能可以作为一个或多个指令或代码存储在非暂时性计算机可读存储介质或者非暂时性处理器可读存储介质上。本文公开的方法或算法的操作可以体现在处理器可执行软件模块或者处理器可执行指令中,其可以驻留在非暂时性计算机可读或处理器可读存储介质上。非暂时性计算机可读或者处理器可读存储介质可以是可以由计算机或处理器访问的任何存储介质。通过举例而非限制的方式,这种非暂时性计算机可读或处理器可读存储介质可以包括RAM、ROM、EEPROM、闪速存储器、CD-ROM或者其它光盘存储、磁盘存储或者其它磁存储智能对象、或者可以用于存储具有指令或数据结构形式的期望程序代码并且可以被计算机访问的任何其它介质。如本文中所使用的,磁盘(disk)和光盘(disc)包括压缩光盘(CD)、激光光盘、光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中,磁盘通常磁性地复制数据,而光盘则用激光来光学地复制数据。上述各项的组合也包括在非暂时性计算机可读和处理器可读介质的范围之内。另外,方法或算法的操作可以作为代码和/或指令中的一个或者任意组合或者集合位于非暂时性处理器可读存储介质和/或计算机可读存储介质上,其可以并入计算机程序产品中。
为了使本领域技术人员能够实现或使用权利要求,提供了对所公开的实施例的先前描述。对于本领域技术人员而言,对这些实施例的各种修改将是显而易见的,并且在不脱离权利要求的范围的情况下,本文中定义的总体原理可以应用于其它实施例。因此,本公开内容并非旨在限于本文中所示出的实施例,而是被赋予与随后的权利要求和本文公开的原理和新颖特征相一致的最广范围。

Claims (30)

1.一种导航机器人式运载工具的方法,包括:
由所述机器人式运载工具的向后图像传感器捕获图像;
由所述机器人式运载工具的处理器使用所捕获的图像来执行同时定位和地图绘制(SLAM)跟踪;
由所述处理器确定所述机器人式运载工具是否正在接近障碍物;
由所述处理器响应于确定所述机器人式运载工具正在接近障碍物,来确定所述机器人式运载工具的所述图像传感器的旋转角度是否超过旋转门限;
由所述处理器响应于确定所述图像传感器的所述旋转角度超过所述旋转门限,来确定SLAM跟踪是否稳定;以及
由所述处理器响应于确定所述SLAM跟踪不稳定,来重新初始化所述机器人式运载工具的姿态。
2.根据权利要求1所述的方法,其中,重新初始化所述机器人式运载工具的所述姿态包括:
由所述处理器识别在所捕获的图像中的特征;
由所述处理器选择具有超过特征门限的数量的特征的捕获的图像;
由所述处理器确定所选择的图像的跟踪特征的数量是否超过跟踪门限;
由所述处理器响应于确定所选择的图像的所述跟踪特征的数量超过跟踪门限,来确定所述跟踪特征的分布是否超过分布门限;以及
由所述处理器响应于确定所述跟踪特征的所述分布超过分布门限,来执行SLAM跟踪。
3.根据权利要求1所述的方法,还包括通过以下操作来初始化所述机器人式运载工具的姿态:
由所述图像传感器捕获目标对象的图像;
由所述处理器使用所捕获的所述目标对象的图像来执行视觉同时定位和地图绘制(VSLAM);
由所述处理器确定所述图像传感器的所述旋转角度是否能够被确定;
由所述处理器响应于确定所述图像传感器的所述旋转角度能够被确定,来选择在图像的视场中具有两个或更多个目标对象的捕获的图像;以及
由所述处理器至少部分地基于所选择的图像内所述目标对象的位置,来确定图像比例。
4.根据权利要求3所述的方法,还包括:
由所述处理器确定所选择的图像是否包括多于两个的目标对象;以及
由所述处理器响应于确定所选择的图像包括多于两个的目标对象,来确定旋转角度校正。
5.根据权利要求3所述的方法,其中,所述目标对象是球形的。
6.根据权利要求3所述的方法,其中,特征包括以下各项中的一项或多项:物理地形、轮廓、照明、建筑物固定设施和环境的视觉元素。
7.根据权利要求1所述的方法,其中,执行SLAM跟踪包括:
由所述处理器识别在所捕获的图像中的特征;
由所述处理器确定是否能够在捕获的图像之间跟踪所识别的特征;
由所述处理器响应于确定能够在捕获的图像之间跟踪所识别的特征,来确定在捕获的图像之间的特征的失配数量是否低于失配门限;以及
由所述处理器响应于确定在捕获的图像之间的特征的所述失配数量低于所述失配门限,来确定所述机器人式运载工具的姿态。
8.根据权利要求1所述的方法,其中,如果所述图像传感器的平面角是小的,则所述向后图像传感器在所述机器人式运载工具上被安装为使所述图像传感器的短边面向所述机器人式运载工具的前和后。
9.根据权利要求1所述的方法,其中,如果所述图像传感器的平面角是大的,则所述向后图像传感器在所述机器人式运载工具上被安装为使所述图像传感器的长边面向所述机器人式运载工具的前和后。
10.一种机器人式运载工具,包括:
向后图像传感器,其被配置用于在同时定位和地图绘制(SLAM)跟踪中使用;以及
处理器,其耦合到所述向后图像传感器并且被配置为:
通过所述向后图像传感器捕获图像;
使用所捕获的图像来执行同时定位和地图绘制(SLAM)跟踪;
确定所述机器人式运载工具是否正在接近障碍物;
响应于确定所述机器人式运载工具正在接近障碍物,来确定所述机器人式运载工具的所述图像传感器的旋转角度是否超过旋转门限;
响应于确定所述图像传感器的所述旋转角度超过所述旋转门限,来确定SLAM跟踪是否稳定;以及
响应于确定所述SLAM跟踪不稳定,来重新初始化所述机器人式运载工具的姿态。
11.根据权利要求10所述的机器人式运载工具,其中,所述处理器还被配置为通过如下操作来重新初始化所述机器人式运载工具的所述姿态:
识别在所捕获的图像中的特征;
选择具有超过特征门限的数量的特征的捕获的图像;
确定所选择的图像的跟踪特征的数量是否超过跟踪门限;
响应于确定所选择的图像的所述跟踪特征的数量超过跟踪门限,来确定所述跟踪特征的分布是否超过分布门限;以及
响应于确定所述跟踪特征的所述分布超过分布门限,来执行SLAM跟踪。
12.根据权利要求10所述的机器人式运载工具,其中,所述处理器还被配置为通过如下操作来初始化所述机器人式运载工具的姿态:
通过所述图像传感器捕获目标对象的图像;
使用所捕获的所述目标对象的图像来执行视觉同时定位和地图绘制(VSLAM);
确定所述图像传感器的所述旋转角度是否能够被确定;
响应于确定所述图像传感器的所述旋转角度能够被确定,来选择在图像的视场中具有两个或更多个目标对象的捕获的图像;以及
至少部分地基于所选择的图像内所述目标对象的位置,来确定图像比例。
13.根据权利要求12所述的机器人式运载工具,其中,所述处理器还被配置为:
确定所选择的图像是否包括多于两个的目标对象;以及
响应于确定所选择的图像包括多于两个的目标对象,来确定旋转角度校正。
14.根据权利要求12所述的机器人式运载工具,其中,所述目标对象是球形的。
15.根据权利要求12所述的机器人式运载工具,其中,特征包括:物理地形、轮廓、照明、建筑物固定设施和环境的视觉元素。
16.根据权利要求10所述的机器人式运载工具,其中,所述处理器还被配置为通过如下操作来执行SLAM跟踪:
识别在所捕获的图像中的特征;
确定是否能够在捕获的图像之间跟踪所识别的特征;
响应于确定能够在捕获的图像之间跟踪所识别的特征,来确定在捕获的图像之间的特征的失配数量是否低于失配门限;以及
响应于确定在捕获的图像之间的特征的所述失配数量低于所述失配门限,来确定所述机器人式运载工具的姿态。
17.根据权利要求10所述的机器人式运载工具,其中,如果所述图像传感器的平面角是小的,则所述向后图像传感器被安装为使所述图像传感器的短边面向所述机器人式运载工具的前和后。
18.根据权利要求10所述的机器人式运载工具,其中,如果所述图像传感器的平面角是大的,则所述向后图像传感器被安装为使所述图像传感器的长边面向所述机器人式运载工具的前和后。
19.一种其上存储有处理器可执行指令的非暂时性处理器可读介质,所述处理器可执行指令被配置为使得机器人式运载工具的处理器执行包括以下各项的操作:
使用由所述机器人式运载工具的向后图像传感器捕获的图像来执行同时定位和地图绘制(SLAM)跟踪;
确定所述机器人式运载工具是否正在接近障碍物;
响应于确定所述机器人式运载工具正在接近障碍物,来确定所述机器人式运载工具的所述图像传感器的旋转角度是否超过旋转门限;
响应于确定所述图像传感器的所述旋转角度超过所述旋转门限,来确定SLAM跟踪是否稳定;以及
响应于确定所述SLAM跟踪不稳定,来重新初始化所述机器人式运载工具的姿态。
20.根据权利要求19所述的非暂时性处理器可读介质,其中,所存储的处理器可执行指令还被配置为使得所述机器人式运载工具的所述处理器执行操作,以使得重新初始化所述机器人式运载工具的所述姿态包括:
识别在所捕获的图像中的特征;
选择具有超过特征门限的数量的特征的捕获的图像;
确定所选择的图像的跟踪特征的数量是否超过跟踪门限;
响应于确定所选择的图像的所述跟踪特征的数量超过跟踪门限,来确定所述跟踪特征的分布是否超过分布门限;以及
响应于确定所述跟踪特征的所述分布超过分布门限,来执行SLAM跟踪。
21.根据权利要求19所述的非暂时性处理器可读介质,其中,所存储的处理器可执行指令还被配置为使得所述机器人式运载工具的所述处理器执行用于初始化所述机器人式运载工具的姿态的操作,包括:
使用所捕获的目标对象的图像来执行视觉同时定位和地图绘制(VSLAM);
确定所述图像传感器的所述旋转角度是否能够被确定;
响应于确定所述图像传感器的所述旋转角度能够被确定,来选择在图像的视场中具有两个或更多个目标对象的捕获的图像;以及
至少部分地基于所选择的图像内所述目标对象的位置,来确定图像比例。
22.根据权利要求21所述的非暂时性处理器可读介质,其中,所存储的处理器可执行指令还被配置为使得所述机器人式运载工具的所述处理器执行还包括以下各项的操作:
确定所选择的图像是否包括多于两个的目标对象;以及
响应于确定所选择的图像包括多于两个的目标对象,来确定旋转角度校正。
23.根据权利要求21所述的非暂时性处理器可读介质,其中,所述目标对象是球形的。
24.根据权利要求21所述的非暂时性处理器可读介质,其中,所存储的处理器可执行指令还被配置为使得所述机器人式运载工具的所述处理器执行操作,以使得特征包括以下各项中的一项或多项:物理地形、轮廓、照明、建筑物固定设施和环境的视觉元素。
25.根据权利要求19所述的非暂时性处理器可读介质,其中,所存储的处理器可执行指令还被配置为使得所述机器人式运载工具的所述处理器执行操作,以使得执行SLAM跟踪包括:
识别在所捕获的图像中的特征;
确定是否能够在捕获的图像之间跟踪所识别的特征;
响应于确定能够在捕获的图像之间跟踪所识别的特征,来确定在捕获的图像之间的特征的失配数量是否低于失配门限;以及
响应于确定在捕获的图像之间的特征的所述失配数量低于所述失配门限,来确定所述机器人式运载工具的姿态。
26.一种机器人式运载工具,包括:
用于捕获图像的单元;
用于使用所捕获的图像来执行同时定位和地图绘制(SLAM)跟踪的单元;
用于确定所述机器人式运载工具是否正在接近障碍物的单元;
用于响应于确定所述机器人式运载工具正在接近障碍物,来确定所述机器人式运载工具的图像传感器的旋转角度是否超过旋转门限的单元;
用于响应于确定所述图像传感器的所述旋转角度超过所述旋转门限,来确定SLAM跟踪是否稳定的单元;以及
用于响应于确定所述SLAM跟踪不稳定,来重新初始化所述机器人式运载工具的姿态的单元。
27.根据权利要求26所述的机器人式运载工具,其中,用于重新初始化所述机器人式运载工具的所述姿态的单元包括:
用于识别在所捕获的图像中的特征的单元;
用于选择具有超过特征门限的数量的特征的捕获的图像的单元;
用于确定所选择的图像的跟踪特征的数量是否超过跟踪门限的单元;
用于响应于确定所选择的图像的所述跟踪特征的数量超过跟踪门限,来确定所述跟踪特征的分布是否超过分布门限的单元;以及
用于响应于确定所述跟踪特征的所述分布超过分布门限,来执行SLAM跟踪的单元。
28.根据权利要求26所述的机器人式运载工具,还包括用于初始化所述机器人式运载工具的姿态的单元,包括:
用于捕获目标对象的图像的单元;
用于使用所捕获的所述目标对象的图像来执行视觉同时定位和地图绘制(VSLAM)的单元;
用于确定所述图像传感器的所述旋转角度是否能够被确定的单元;
用于响应于确定所述图像传感器的所述旋转角度能够被确定,来选择在图像的视场中具有两个或更多个目标对象的捕获的图像的单元;以及
用于至少部分地基于所选择的图像内所述目标对象的位置,来确定图像比例的单元。
29.根据权利要求28所述的机器人式运载工具,还包括:
用于确定所选择的图像是否包括多于两个的目标对象的单元;以及
用于响应于确定所选择的图像包括多于两个的目标对象,来确定旋转角度校正的单元。
30.根据权利要求28所述的机器人式运载工具,其中,所述目标对象是球形的。
CN201780094340.7A 2017-08-30 2017-08-30 机器人式运载工具的稳健导航 Active CN111093907B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/099593 WO2019041155A1 (en) 2017-08-30 2017-08-30 ROBUST NAVIGATION OF A ROBOTIC VEHICLE

Publications (2)

Publication Number Publication Date
CN111093907A CN111093907A (zh) 2020-05-01
CN111093907B true CN111093907B (zh) 2023-07-04

Family

ID=65524578

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780094340.7A Active CN111093907B (zh) 2017-08-30 2017-08-30 机器人式运载工具的稳健导航

Country Status (3)

Country Link
US (1) US20200218279A1 (zh)
CN (1) CN111093907B (zh)
WO (1) WO2019041155A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10809071B2 (en) * 2017-10-17 2020-10-20 AI Incorporated Method for constructing a map while performing work
US11080890B2 (en) * 2017-07-28 2021-08-03 Qualcomm Incorporated Image sensor initialization in a robotic vehicle
KR102297683B1 (ko) * 2019-07-01 2021-09-07 (주)베이다스 복수의 카메라들을 캘리브레이션하는 방법 및 장치
CN110610520B (zh) * 2019-08-29 2022-03-29 中德(珠海)人工智能研究院有限公司 一种基于双球幕相机的视觉定位方法及系统
CN110901646B (zh) * 2019-12-11 2021-08-31 北京小马慧行科技有限公司 车辆的控制方法、控制装置、存储介质和处理器
US11388338B2 (en) 2020-04-24 2022-07-12 Dr. Ing. H.C. F. Porsche Aktiengesellschaft Video processing for vehicle ride
US11396299B2 (en) 2020-04-24 2022-07-26 Dr. Ing. H.C. F. Porsche Aktiengesellschaft Video processing for vehicle ride incorporating biometric data
CN112327847A (zh) * 2020-11-04 2021-02-05 北京石头世纪科技股份有限公司 一种绕行物体的方法、装置、介质和电子设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1818545A (zh) * 2006-03-02 2006-08-16 浣石 远距离面内小位移测量系统
CN101319907A (zh) * 2007-06-07 2008-12-10 索尼株式会社 导航设备和最近点搜索方法
CN102436261A (zh) * 2011-12-05 2012-05-02 北京航空航天大学 基于单目摄像头和led的机器人对接定位和导航策略
CN102596517A (zh) * 2009-07-28 2012-07-18 悠进机器人股份公司 移动机器人定位和导航控制方法及使用该方法的移动机器人
CN102609942A (zh) * 2011-01-31 2012-07-25 微软公司 使用深度图进行移动相机定位
CN106342332B (zh) * 2008-07-04 2012-10-03 中国航空工业集团公司洛阳电光设备研究所 机载运动条件下视场切换时目标跟踪保持方法
CN202527426U (zh) * 2012-01-12 2012-11-14 浙江理工大学 管道清洁机器人的自主导航系统
CN104729406A (zh) * 2015-03-23 2015-06-24 上海瑞伯德智能系统科技有限公司 一种表面贴装元件的机器视觉定位方法
CN106393142A (zh) * 2016-11-01 2017-02-15 王华勤 一种智能机器人
CN106537186A (zh) * 2014-11-26 2017-03-22 艾罗伯特公司 用于使用机器视觉系统执行同时定位和映射的系统和方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5141507B2 (ja) * 2008-08-25 2013-02-13 村田機械株式会社 自律移動装置
GB201208088D0 (en) * 2012-05-09 2012-06-20 Ncam Sollutions Ltd Ncam
WO2015056105A1 (en) * 2013-10-14 2015-04-23 Mobileye Vision Technologies Ltd. Forward-facing multi-imaging system for navigating a vehicle
US9280826B2 (en) * 2013-12-10 2016-03-08 GM Global Technologies Operations LLC Distance determination using a monoscopic imager in a vehicle
JP6193195B2 (ja) * 2014-09-17 2017-09-06 株式会社東芝 移動支援装置、方法及びプログラム
US20160134860A1 (en) * 2014-11-12 2016-05-12 Dejan Jovanovic Multiple template improved 3d modeling of imaged objects using camera position and pose to obtain accuracy
US9751210B2 (en) * 2014-11-26 2017-09-05 Irobot Corporation Systems and methods for performing occlusion detection

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1818545A (zh) * 2006-03-02 2006-08-16 浣石 远距离面内小位移测量系统
CN101319907A (zh) * 2007-06-07 2008-12-10 索尼株式会社 导航设备和最近点搜索方法
CN106342332B (zh) * 2008-07-04 2012-10-03 中国航空工业集团公司洛阳电光设备研究所 机载运动条件下视场切换时目标跟踪保持方法
CN102596517A (zh) * 2009-07-28 2012-07-18 悠进机器人股份公司 移动机器人定位和导航控制方法及使用该方法的移动机器人
CN102609942A (zh) * 2011-01-31 2012-07-25 微软公司 使用深度图进行移动相机定位
CN102436261A (zh) * 2011-12-05 2012-05-02 北京航空航天大学 基于单目摄像头和led的机器人对接定位和导航策略
CN202527426U (zh) * 2012-01-12 2012-11-14 浙江理工大学 管道清洁机器人的自主导航系统
CN106537186A (zh) * 2014-11-26 2017-03-22 艾罗伯特公司 用于使用机器视觉系统执行同时定位和映射的系统和方法
CN104729406A (zh) * 2015-03-23 2015-06-24 上海瑞伯德智能系统科技有限公司 一种表面贴装元件的机器视觉定位方法
CN106393142A (zh) * 2016-11-01 2017-02-15 王华勤 一种智能机器人

Also Published As

Publication number Publication date
US20200218279A1 (en) 2020-07-09
CN111093907A (zh) 2020-05-01
WO2019041155A1 (en) 2019-03-07

Similar Documents

Publication Publication Date Title
CN111093907B (zh) 机器人式运载工具的稳健导航
US11218689B2 (en) Methods and systems for selective sensor fusion
US10914590B2 (en) Methods and systems for determining a state of an unmanned aerial vehicle
US11720100B2 (en) Systems and methods for utilizing semantic information for navigation of a robotic device
CN111801717A (zh) 机器人式运载工具的自动探索控制
US10599149B2 (en) Salient feature based vehicle positioning
US9977434B2 (en) Automatic tracking mode for controlling an unmanned aerial vehicle
EP3158417B1 (en) Sensor fusion using inertial and image sensors
EP3158412B1 (en) Sensor fusion using inertial and image sensors
CN111247390B (zh) Vslam的并发的重新定位和重新初始化
EP3158411B1 (en) Sensor fusion using inertial and image sensors
ES2883847T3 (es) Prevención de colisiones de vehículos
US11080890B2 (en) Image sensor initialization in a robotic vehicle
US10386857B2 (en) Sensor-centric path planning and control for robotic vehicles
WO2019040179A1 (en) LANDING CONTROL OF AERIAL ROBOTIC VEHICLE USING THREE DIMENSIONAL FIELD CARDS GENERATED BY ODOMETRY OF VISUAL INERTIA
JP2019050007A (ja) 移動体の位置を判断する方法および装置、ならびにコンピュータ可読媒体
WO2018214121A1 (en) Method and apparatus for controlling unmanned aerial vehicle
CN110998235B (zh) 在机器人式运载工具中的图像输出调整
CN110997488A (zh) 动态控制用于处理传感器输出数据的参数的系统和方法
WO2023060461A1 (en) Selecting a frontier goal for autonomous map building within a space
WO2023141740A1 (en) Method and system for loop closure detection

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