可移动对象及其控制方法与流程

文档序号:14778032发布日期:2018-06-26 08:03阅读:348来源:国知局

本公开涉及可移动对象及其控制方法。



背景技术:

可移动对象是能够在多个位置之间移动的设备。可移动对象能够通过使用至少一种移动模式从一个具体位置移动到另一位置。



技术实现要素:

主要目标是提供能够识别其当前位置而无需考虑环境因素变化的可移动对象及可移动对象控制方法。

可移动对象可以使用提供给可移动对象(例如轮、轨道或行走腿)的至少一种运动模式。

可移动对象可以通过由用户控制各种单独的控制装置(例如,键盘或操纵杆)来移动。此外,可移动对象可以借助传感器等收集外部信息,然后根据所收集的外部信息移动。例如,可移动对象可以捕捉其环境的图像,从所捕捉的图像提取特征点,基于所提取的特征点确定目标位置或当前位置,然后移动到所确定的目标位置或当前位置。

此可移动对象可以包括例如装备、机器人或设备(诸如车辆、购物车、火车、清洁机器人、玩具汽车、施工设备、可移动医疗设备、或用于家庭、工业、医疗或军用目的的无人驾驶车辆)。

本公开的其他方面将在下面的说明书中被部分地阐述,并且将根据该说明书而部分地变得清楚,或可以通过本公开的实践而获知。

根据本公开的一个方面,一种可移动对象控制方法包括:获取可移动对象的环境的至少一个图像;获取其强度根据所述可移动对象的位置变化的至少一个信号;生成包括所述可移动对象的环境的所述至少一个图像和所述至少一个信号的至少一个地图;以及将所述至少一个地图应用于算法以获取学得算法(learned algorithm)。

所述可移动对象的环境的所述至少一个图像可以包括至少一个全向图像。

所述可移动对象控制方法进一步包括将所述至少一个全向图像转换为至少一个全景图像。

将所述至少一个地图应用于算法以获取学得算法可以包括:将所述至少一个全景图像和所述至少一个信号应用于所述算法以获取所述学得算法。

将所述至少一个地图应用于算法以获取学得算法可以包括:将所述至少一个全景图像移位,并将被移位的全景图像和所述信号应用于所述算法以获取所述学得算法。

所述学得算法可以包括针对与所述信号和所述可移动对象的环境的所述图像相对应的所述可移动对象的位置的算法。

所述算法可以使用深度神经网络(DNN)、卷积神经网络(CNN)、递归神经网络(RNN)、深度信念网络(DBN)和深度Q网络中的至少一种。

将所述至少一个地图应用于算法以获取学得算法可以包括:从所述地图获取所述可移动对象的所述位置;以及将所述信号、包含在所述地图中的所述可移动对象的环境的所述图像以及所述可移动对象的所述位置应用于所述算法以获取所述学得算法。

所述可移动对象控制方法可以进一步包括:从所述地图进一步获取与所述可移动对象的方位有关的信息。

基于所述信号和所述可移动对象的环境的所述图像生成至少一个地图可以包括:将所述信号和所述可移动对象的环境的所述图像中的至少一个分组成多个组;为所述多个组中的每个获取子地图从而得到多个子地图;以及通过组合所述多个子地图生成所述地图。

所述可移动对象控制方法可以进一步包括:对所述信号进行向量化。

根据本公开的另一方面,一种可移动对象包括:图像获取器,其被配置为获取所述可移动对象的环境的图像;通信器,其被配置为接收其强度根据所述可移动对象的位置变化的外部信号;以及控制器,其被配置为基于所述信号和所述可移动对象的环境的所述图像生成地图,并将所述地图应用于算法以获取学得算法。

所述可移动对象的环境的所述图像可以包括全向图像。

所述控制器可以将所述全向图像转换为全景图像,并将所述全景图像应用于所述算法。

当将所述全景图像移位至少一次时,所述控制器可以将被移位的全景图像应用于所述算法。

所述可移动对象可以进一步包括方位检测器,所述方位检测器被配置为获取与所述可移动对象的方位有关的信息。

所述控制器可以进一步将与所述可移动对象的方位有关的信息应用于所述算法以获取所述学得算法。

所述控制器可以将所述信号和所述可移动对象的环境的所述图像分组成多个组,为所述多个组中的每个获取子地图从而得到多个子地图,并组合所述多个子地图组合以生成地图。

当发起位置确定操作时,所述控制器可以将所述图像获取器获取的所述可移动对象的环境的所述图像以及所述通信器接收的所述信号应用于所述学得算法,以确定所述可移动对象的位置。

所述可移动对象可以进一步包括被配置为接收卫星信号的卫星信号接收器。

所述控制器可以进一步使用所述卫星信号生成所述地图,或可以进一步将所述卫星信号应用于所述算法以获取学得算法。

根据本公开的又一方面,一种清洁机器人包括:图像获取器,其被配置为获取可移动对象的环境的图像;通信器,其被配置为接收其强度根据所述可移动对象的位置变化的外部信号;以及控制器,其被配置为基于所述信号和所述可移动对象的环境的所述图像生成地图,并将所述地图应用于算法以获取学得算法。

在开始进行下面的具体实施例之前,有利的是对本专利文件通篇使用的某些词汇和短语的定义进行阐述:术语“包含”和“包括”及其派生形式指不加限制的包括;术语“或”是包含的,指和/或;术语“与.….关联”和“与其关联”及其派生形式可以指包括、被包括在内、与.…..互连、包含、被包含在内、连接到或与.…..连接、耦合到或与...耦合、可与…...通信、与.…..合作、交错、并置、临近、绑定到或与.…..绑定、具有、具有.…..特性等;术语“控制器”指控制至少一个操作的任何设备、系统或其部分,例如设备可以以硬件、固件或软件、或它们中的至少两个的某种组合来实现。应当注意的是,与任何特定控制器相关联的功能可以是集中式的或分布式的,无论是本地还是远程。

此外,下述各种功能能够由一个或更多个计算机程序实现或支持,所述一个或更多个计算机程序中的每个是由计算机可读程序代码形成,并且被实施在计算机可读介质中。术语“应用”和“程序”是指适于以适当的计算机可读程序代码实现的一个或更多个计算机程序、软件组件、指令集、过程、函数、对象、类、实例、相关数据或它们的一部分。短语“计算机可读程序代码”包括任何类型的计算机代码,该计算机代码包括源代码、目标代码和可执行代码。术语“计算机可读介质”包括能够由计算机访问的任何类型介质,例如只读存储器(ROM)、随机存取存储器(RAM)、硬盘驱动器、压缩盘(CD)、数字视频盘(DVD)或任何其他类型存储器。“非暂态”计算机可读介质排除了传输暂态电信号或其他信号的有线、无线、光或其他通信链路。非暂态计算机可读介质包括能够永久存储数据的介质和能够存储并随后盖写数据的介质,例如可重写光盘或可擦除存储器设备。

本专利文件通篇提供了某些词汇和短语的定义,本领域技术人员应当理解的是,在许多实例中(如果不是大多数实例),此种定义适用于现有的以及未来使用的此种定义的词汇和短语。

附图说明

为了更全面理解本公开及其优点,结合附图参照以下说明,在附图中相同的附图标记表示相同的部件:

图1例示了可移动对象控制系统的实施例的图;

图2例示了可移动对象的实施例的框图;

图3例示了可移动对象可以在其中行进的空间的示例的平面图;

图4例示了全向图像的示例;

图5例示了全景图像的示例;

图6例示了信号向量化的示例的表;

图7例示了多条数据的集群化的视图;

图8例示了第一子地图的示例的视图;

图9例示了第二子地图的示例的视图;

图10例示了基于子地图获取的三维(3D)地图的获取的示例的视图;

图11例示了学习算法的示例的图;

图12例示了全景图像的移位的图;

图13例示了可移动对象正在其中行进的空间的示例的视图;

图14例示了被获取用来定位可移动对象的全向图像的示例的图;

图15例示了与所获取的全向图像相对应的全景图像的示例的图;

图16例示了所获取信号的向量化的示例的图;

图17例示了清洁机器人的实施例的透视图;

图18例示了清洁机器人的实施例的仰视图;

图19例示了清洁机器人的内部结构的实施例的平面图;

图20例示了清洁机器人的实施例的框图;

图21例示了清洁机器人的示例操作的图;

图22例示了清洁机器人的另一示例操作的图;

图23例示了清洁机器人的另一示例操作的图;

图24例示了清洁机器人的另一示例操作的图;

图25例示了可移动对象控制方法的实施例的流程图;以及

图26例示了可移动对象控制方法的实施例的流程图。

具体实施方式

在该专利文件中的下面讨论的图1-26以及用于描述本公开的原理的各个实施例仅用于例示,而绝不应当以任何方式视为限制本公开的范围。本领域技术人员应当理解的是,本公开的原理可以在任何适当设置的系统或设备中实现。

本文使用的术语“单元”可以在软件或硬件中实现,并且根据实施例可以使用一个组件或多个组件实现。

在本公开的下面,当一个部件被称为连接到另一部件时,应当理解的是,前者能够物理地连接到后者或电连接到后者。

此外,当一个部件被称为包括(或包含或具有)另一部件时,应当理解的是,除非另有明确说明,否则前者不排除除了后者之外的部件,并且根据设计者的选择可以进一步包括(或包含或具有)其他部件。

术语“第一”、“第二”等用于区分一个部件与另一部件,因此除非另有明确说明,否则不应当理解为这些部件被顺序地提供或执行。

此外,单数形式的“一”、“一个”和“该”旨在还包括复数形式,除非上下文指示了相反的情形。

图1例示了可移动对象控制系统的实施例的图。

参照图1,可移动对象控制系统9可以包括可移动对象1、能够与可移动对象1通信的信号收发器2以及被配置为将与地理位置有关的信息提供到可移动对象1的人造卫星3。

可移动对象1和信号收发器2被设置为通过使用无线电波来执行相互无线通信。在该情况下,可移动对象1和信号收发器2可以通过使用WiFi信号、WiFi直连信号、Zigbee信号、蓝牙信号、低功耗蓝牙(BLE)信号、近场通信(NFC)和移动通信信号中的至少一种相互发送和接收数据。移动通信信号可以包括根据至少一种移动通信标准(例如3GPP、3GPP2或IEEE系列)从信号收发器2发射的通信信号。

在可移动对象1与信号收发器2之间传送的信号的强度可以根据可移动对象1与信号收发器2之间的距离而不同。例如,在其间传送的信号的强度可以随着可移动对象1与信号收发器2之间的距离减小而相对减小,并且可以随着可移动对象1与信号收发器2之间的距离增大而相对增大。

可移动对象1可以从人造卫星接收与地理信息相关联的无线电波信号(卫星信号)。可移动对象1可以接收适于导航系统用来定位可移动对象1的无线电波信号。这里,导航系统可以包括全球导航卫星系统(GNSS),并且全球导航卫星系统(GNSS)可以包括全球定位系统(GPS)、伽利略系统或全球轨道导航卫星系统(GLONASS)。此外,全球导航卫星系统可以包括为许多地区单独提供的各种类型的卫星导航系统。

信号收发器2可以用能够与可移动对象1通信的指定设备来实现。例如,当可移动对象1和信号收发器2使用WiFi彼此通信时,信号收发器2可以例如使用WiFi路由器来实现。

图2例示了可移动对象的实施例的框图。

参照图2,可移动对象1可以包括控制器10、存储装置30、图像获取器50、通信器70和卫星信号接收器75。

控制器10被设置成控制可移动对象1的整体操作。

控制器10可以通过电线或电路与存储装置30、图像获取器50、通信器70和卫星信号接收器75电连接。控制器10可以以电信号形式从存储装置30、图像获取器50、通信器70和卫星信号接收器75接收指定数据;向存储装置30、图像获取器50、通信器70和卫星信号接收器75发送指定控制信号;并控制存储装置30、图像获取器50、通信器70和卫星信号接收器75的操作。

控制器10可以从图像获取器50、通信器70和卫星信号接收器75单独地接收电信号51、71和76,并基于所接收的电信号51、71和76执行各种处理操作。

根据实施例,控制器10可以基于图像获取器50获取的图像51和通过通信器70接收的信号的强度来生成并获取地图20。此外,控制器10可以通过响应于地图20的获取将所获取的地图20应用于算法31来学习算法31。因此,获得了学得算法32。

学得算法32指示了与可移动对象1的环境的图像和所接收的信号72和77相对应的可移动对象1的位置。

此外,控制器10可以通过将图像获取器50获取的图像51和通过通信器79接收的信号的强度应用于学得算法32来估计和/或确定可移动对象1的位置。此外,控制器10可以通过使用图像获取器50获取的图像51和卫星信号接收器75接收的卫星信号77来估计和/或确定可移动对象1的位置。

控制器10可以将图像获取器50获取的全向图像52(参见图4)转换为全景图像54(参见图5)。

此外,控制器10可以确定从至少一个信号收发器2发送的接收信号72的强度。控制器10可以将与该至少一个信号收发器2相对应的至少一个信号72向量化以获得信号向量74(参见图6)。

下面将详细说明控制器10的操作,例如,控制器10生成地图20的过程、获取学得算法32的过程以及估计和/或确定可移动对象1的位置的过程。

此外,根据实施例,控制器10可以与用户接口80电连接,以接收通过用户接口80输入的用户命令,并根据接收的用户命令执行操作。例如,控制器10可以根据生成地图20的命令或学习地图20的命令,执行生成地图20的操作或获取学得算法32的操作。此外,控制器10可以将与是否已经生成地图20有关的信息、与是否完成算法31的学习有关的信息、与学得算法32有关的信息等传送到用户接口80,并且可以控制用户接口80将该信息提供给用户。

此外,控制器10可以生成控制命令,并将生成的控制命令传送到驱动器90。在该情况下,生成的控制命令可以对应于用户命令。

根据实施例,控制器10生成的控制命令可以对应于用于生成地图20的过程的预定操作。具体而言,当在生成地图20的过程期间可移动对象1要移动时,控制器10可以生成与可移动对象1的移动相关联的控制信号,将生成的控制信号传送到驱动器90,并控制可移动对象1使得可移动对象1可以移动。

此外,根据实施例,控制器10生成的控制命令可以对应于定位可移动对象1的结果。例如,当使用学得算法32确定可移动对象1的位置时,控制器10可以控制可移动对象1,使得可移动对象1可以根据所确定的位置移动、旋转或停止移动。

根据实施例,控制器10可以使用中央处理单元(CPU)、微控制器单元(MCU)和图形处理单元(GPU)中的至少一个来实现。根据实施例,控制器10可以使用多个物理设备来实现。在该情况下,例如,控制器10的一些功能可以由CPU执行,并且其他功能可以由GPU执行。

存储装置30被提供来存储可移动对象1的操作的各种类型的信息。存储装置30可以在受到控制器10的传唤时将存储的数据提供给控制器10,还可以根据控制器10的控制来存储各种类型的信息。存储装置30包括主存储器设备和辅助存储器设备。

存储装置30可以使用半导体存储介质(例如RAM/ROM、固态驱动器(SSD)或闪存)实现、使用磁盘存储介质(例如硬盘)实现或使用磁鼓存储介质或光记录介质实现。

根据实施例,存储装置30可以存储根据控制器10的控制获取的学得算法32。此外,存储装置30可以进一步包括地图20或指定算法,以根据控制器10的控制来生成学得算法32。

地图20指示了与可移动对象1在其中可以行进的空间(以下称为行进空间99(参见图3))有关的以指定格式表示的信息。

地图20可以包括可移动对象1在其中可以行进的空间的二维(2D)地图和三维(3D)地图。

地图20可以包括可移动对象1将要在其中行进的整个空间的地图29(参见图10)。此外,根据实施例,地图20可以包括整个空间的一部分的地图(以下称为子地图21(参见图8))。

根据实施例,地图20可以由控制器10基于图像获取器50获取的图像52生成。稍后将对此进行说明。

算法可以被设计成当输入指定值时输出与输入值相对应的值,并且可以用程序或数据库形式来实现。这里,输入值可以包括图像获取器50获取的图像52、控制器10获取的全景图像54、通信器70接收的信号72以及卫星信号接收器75接收的信号中的至少一个。此外,输出值可以包括与地图20上的位置有关的信息,例如该位置的3D坐标。此外,输出值还可以包括与地图20上的位置有关的信息以及与可移动对象1的方位有关的信息,例如6D坐标。

算法31可以用于生成学得算法32。根据实施例,算法31可以包括机器学习算法。

通过将图像获取器50获取的图像52、控制器10获取的全景图像54、通信器70接收的信号72以及卫星信号接收器75接收的信号中至少一个应用于算法31来学习算法31从而获取学得算法32。

根据实施例,学得算法32可以由控制器10生成。此外,根据另一实施例,学得算法32可以由与可移动对象1分开设置的计算设备或另一可移动对象生成。这里,该计算设备可以是台式计算机、笔记本计算机、智能电话、平板PC和服务器专用计算设备中的至少一种。

算法31或学得算法32可以使用深度神经网络(DNN)、卷积神经网络(CNN)、递归神经网络(RNN)、深度信念网络(DBN)和深度Q网络中的至少一种或它们的组合来实现。

根据实施例,地图20或算法31可以存储在除了设置在可移动对象1中的存储装置30之外的另一外部设备(例如另一计算设备或另一可移动设备)的存储设备中。存储在外部设备的存储设备中的地图20或算法31可以通过通信器70传送到可移动对象1,控制器10可以通过使用被传送的地图20或被传送的算法31来学习算法31。

图像获取器50可以捕捉可移动对象1的环境,并捕捉可移动对象1的环境的至少一个图像。

图像获取器50例如可以使用电磁波来捕捉可移动对象1的环境。这里,电磁波可以包括典型地用于获取与可移动对象1的环境有关的信息的指定电磁波,例如可见射线、红外线、紫外线、无线电波、X射线、伽马射线、微波,或超低频(ELF)电磁波。

具体而言,图像获取器50可以使用相机、红外相机等来实现。

在该情况下,根据实施例,图像获取器50可以使用全向相机来实现。全向相机是具有360度视场的捕捉设备,并且被提供以在所有方向上捕捉可移动对象1的环境的图像,以获取全向图像52。在该情况下,全向相机可以在所有方向上或在一些方向上捕捉图像。

例如,全向相机可以包括成像设备和至少一个反射器,该反射器被设置以将所有水平方向上入射的光引导向成像设备。在该情况下,该至少一个反射器可以包括被配置成向上或向下反射水平入射光的第一反射器和被配置成将第一反射器反射的光朝向成像设备反射的第二反射器。在所有水平方向上入射的光由第一反射器反射,并且由第一反射器反射的光可以由第二反射器经由透镜发射到成像设备。因此,成像设备可以获取全向图像52。

通信器70可以从外部源(例如信号收发器2)接收信号72。通信器70可以包括多个组件,例如至少一个通信芯片、至少一条天线和至少一个基板,以便与信号收发器2通信。例如,通信器70可以使用至少一种无线通信技术(例如WiFi)与信号收发器2通信。通过通信器70接收的信号可以被传送到控制器10。

卫星信号接收器75可以从卫星3接收卫星信号77。卫星信号接收器75可以使用包括可以用于与卫星3通信的通信芯片和天线的指定卫星通信模块来实现。从卫星信号接收器75接收的信号可以以电信号76的形式传送到控制器10。

卫星信号接收器75可以基于卫星信号77获取与可移动对象1的位置有关的信息,例如可移动对象1在地表面上的位置的坐标。基于卫星信号77获取可移动对象1的位置信息可以由控制器10执行。

根据实施例,可移动对象1可以进一步包括方位检测器60。方位检测器60可以检测可移动对象1的方位,输出与检测结果相对应的电信号,并将该电信号传送到控制器10。这里,可移动对象1的方位可以包括可移动对象1在指定方向上的倾斜角度Ψ、可移动对象1在与该指定方向正交的方向上的倾斜角度Φ以及可移动对象1关于地表面的法线旋转的角度θ。

方位检测器60可以使用例如各种类型的倾斜传感器或转数传感器来实现。倾斜传感器可以使用例如半导体倾斜传感器、加速度传感器和陀螺传感器中的至少一个来实现。转数传感器可以采用例如光学增量编码器、光学绝对式编码器、磁编码器、解析器和电位器中的至少一个来实现。此外,方位检测器60可以任凭设计者自行决定使用各种设备来实现。

根据实施例,可移动对象1可以进一步包括用户接口80。

用户接口80被配置成从用户接收与可移动对象1的操作相关联的各种类型的命令和/或将与可移动对象1的操作或状态有关的各种类型的信息提供给用户。

例如,用户接口80可以包括用于接收指定命令的输入单元(例如物理按钮、触摸按钮、触摸屏、触摸板、操纵杆、轨迹球或鼠标设备)和包括显示面板(例如液晶显示器(LCD)和发光设备(例如发光二极管(LED))的显示器。此外,用户接口80可以包括被配置为输出语音或声音的声音输出单元。此外,用户接口可以包括能够从连接设备(例如通用串行总线(USB))接收数据的连接端口。

通过用户接口80,可移动对象1可以从用户接收算法和学得算法32中的至少一个。

根据实施例,可移动对象1可以进一步包括驱动器90。

驱动器90可以允许可移动对象1根据控制器10的控制从指定位置移动到另一位置或在一个点旋转。

驱动器90可以使用例如与至少一个驱动轮或行走腿连接的电机或致动器实现。这里,电机可以包括DC电机、AC电机、无刷DC(BLDC)电机或线性感应电机。

下面将参照图3到图12描述可移动对象1使用地图和算法31获取学得算法32的过程。

图3例示了可移动对象在其中可以行进的空间的示例的平面图,图4例示了全向图像的示例。

如图3所示,可移动对象1可以布置在行进空间99中的至少一个点处,并且可以在行进空间99中移动。

行进空间99可以包括例如建筑物的内部空间、道路、人行道、隧道和/或桥梁。这里,建筑物可以包括各种设施,例如单户家庭房屋、多户家庭房屋、商业建筑、工厂、医院、学校或仓库。建筑物的内部空间可以包括房间、起居室、厨房或工厂的内部。根据可移动对象1的类型或特性,行进空间99可以被不同地定义。例如,当可移动对象1是清洁机器人时,行进空间99可以包括单户家庭房屋或多户家庭房屋的内部空间。此外,作为另一示例,当可移动对象1是无人驾驶车辆时,行进空间99可以包括工厂建筑物的内部空间。此外,可以定义各种空间作为可移动对象所在的空间。

行进空间99可以包括可移动对象1能够穿过的地区(section)97和可移动对象不能穿过的地区98。可移动对象不能穿过的地区98可以包括例如墙壁、柱子、门、各种类型电子产品、机械设备、各种类型空间和/或可以占据指定区域的各种类型的物品。可移动对象1能够穿过的地区97可以包括除了可移动对象1不能穿过的地区98以外的其余地区的全部或一些部分。

可移动对象1可以根据驱动器90的操作在行进空间99中移动。可移动对象1可以穿过行进空间99中p1到p4中的一个点,或在p1到p4中的一个点处停止移动。当可移动对象根据用户操作或预先定义的设置位于行进空间99中p1到p4中的一个点时,可移动对象1可以开始生成地图20。

当开始生成地图时,可移动对象1的图像获取器50可以响应于该生成来捕捉可移动对象1的环境以获取其图像。

根据实施例,图像获取器50可以获取可移动对象1的环境的图像。

当图像获取器50使用能够在指定视场获取图像的相机实现时,可移动对象1旋转360度以获取所有方向的图像,并且图像获取器50可以在可移动对象1旋转时周期地执行图像捕捉。因此,可移动对象1可以获取所有方向的图像,即全向图像52。此外,作为另一示例,可移动对象1可以以角度增量重复地旋转和停止,并且图像获取器50可以在每当可移动对象停止旋转时捕捉图像以获取全向图像52。

当图像获取器50采用全向相机实现时,图像获取器50可以通过一次性捕捉图像无需旋转可移动对象1来获取可移动对象1的环境的全向图像52,如图4所示。

与相机捕捉的图像相比,全向相机获取的全向图像52可以包括相对大量的与可移动对象1的环境有关的信息。然而,该信息具有相对低的分辨率,并且由于在位置确定期间的噪声,该相对低的分辨率可以导致更少的影响。

图像获取器50获取的图像可以被传送到控制器10。

图5例示了全景图像的示例。

当从图像获取器50传送的图像是全向相机获取的全向图像52时,控制器10可以将全向图像52转换为全景图像54,如图5所示。

如图4所示,全向相机获取的全向图像52具有圆形、椭圆形或环形,位于可移动对象1附近的目标(对象)被示出为位于该圆形、该椭圆形或该环形内并遵循该圆形、该椭圆形或该环形。因而,这导致在全向图像52中的捕捉目标失真。

根据实施例,控制器10可以将全向图像52转换为全景图像54,如图5所示,以便校正图像失真。

控制器10可以通过使用算法来获取全景图像54,以便将全向图像52转换为全景图像54。例如,控制器10可以将全向图像52分解为多个第一单元图像52a-52d,将指定转换函数应用于第一单元图像52a-52d,将第一单元图像52a-52d转换为呈正方形或长方形的第二单元图像54a-54d,并将第二单元图像54a-54d合并以获得全景图像54。在该情况下,指定转换函数可以设计成从内弧到外弧以不同速率连续地或离散地扩展或缩短图像,或维持第一单元图像52a-52d。控制器10可以使用图像拼接方法来合并第二单元图像54a到54d。

图6例示了信号向量化的示例的表。在图6中,上面一行指示用于标识信号收发器2的索引,下面一行指示与信号收发器2相对应的信号72的强度。

根据实施例,当可移动对象1位于行进空间99中从p1到p4中的一个点处时,可移动对象1的通信器70可以从至少一个信号收发器2接收信号,并将接收的信号72以电信号71的形式传送到控制器10。

可以与图像获取器50获取全向图像52同时、在其之前或在其之后执行接收通信器70的至少一个信号72的操作。

控制器10可以获取与所接收的信号72有关的信息。与所接收的信号72有关的信息包括例如所接收的信号72的强度。如上所述,信号72的强度可以对应于可移动对象1与信号收发器2之间的距离而变化。换言之,信号72的强度可以与可移动对象1与信号收发器2之间的距离成比例地增大或减小。

当多个信号收发器2能够执行通信时,控制器10可以确定多个信号收发器2的信号72的强度。这里,多个信号收发器2的信号72的强度可以指示从多个信号收发器s1到s11传送的信号的绝对强度,或可以指示从多个信号收发器s1到s11传送的信号的相对强度。

根据实施例,控制器10可以将至少一个信号收发器2的信号72的强度向量化。

例如,如图6所示,控制器10可以将至少一个或更多个信号收发器s1到s11与和至少一个或更多个信号收发器s1到s11相对应的信号的强度进行匹配,以对信号72的强度进行向量化。因此,获得了信号向量74。

根据实施例,当可移动对象位于预定空间99中的p1到p4中的一个点处时,卫星信号接收器75可以接收卫星信号77。控制器10和卫星信号接收器75中的至少一个可以基于所接收的卫星信号77获取与可移动对象1的位置有关的信息。

可以与图像获取器50获取全向图像52同时、在其之前或在其之后执行卫星信号接收器75接收卫星信号77的操作。

如上所述,控制器10可以基于卫星信号77获取信号向量。

根据是否能够执行操作,可以省略通信器70接收信号72的操作和卫星信号接收器75接收卫星信号77的操作中的至少一个。例如,当可移动对象1附近不存在合适的信号收发器2时,可以仅执行卫星信号接收器75接收卫星信号77的操作。此外,当可移动对象1位于不可能或难以接收卫星信号77的区域中时,例如室内空间或地下空间,可以仅执行通信器70接收信号72的操作。

可以在多个点p1到p4执行图像获取器50获取图像52的操作以及通信器70接收信号72的操作和卫星信号接收器75接收卫星信号77的操作中的至少一个。即,在p1到p4中的每个点,图像获取器50可以捕捉可移动对象1的环境的图像52,并且通信器70和卫星信号接收器75中的至少一个可以接收信号72或77。

当执行图像获取器50获取图像52的操作、通信器70接收信号72的操作和卫星信号接收器75接收卫星信号77的操作时,可移动对象1可以持续移动或在点p1到p4中的每个处临时停止移动。

图像获取器50获取的图像52、控制器10获取的全景图像54、通信器70接收的信号72以及卫星信号接收器75接收的信号77中的至少一个可以存储在存储装置30中。在该情况下,在p1到p4中同一点处获取的图像52、全景图像54、信号72和/或卫星信号77被相互关联地存储在存储装置30中。

图7例示了多条数据的集群化(clusterization)的视图。

如上所述,可以在多个点p1到p4的每个处接收具有不同强度的多个信号72和77。根据实施例,当接收到具有不同强度的多个信号72和77时,控制器10可以根据信号72和77的强度对多个信号72和77进行集群化。

例如,如图7所示,当通信器70在多个不同点接收信号72a-72i时,控制器10可以通过将所接收的信号72a-72i中具有相同或相似强度的信号分组来形成至少一个或更多个组G1-G3。

例如,控制器10可以检测所接收的信号72a-72i中强度低于特定值的信号,例如第一信号到第三信号72a-72c,并且可以将第一信号到第三信号72a-72c分类为一个组,例如,第一组G1。

此外,作为另一示例,控制器10可以确定与所接收的信号72a-72i相对应的信号向量74,并比较信号72a-72i的信号向量74的模式。控制器10可以检测多个信号72a-72i中具有相同或相似信号向量74的至少一个或更多个信号,并将检测到的信号分类为一组。更具体而言,例如,如图6所示,控制器10读取与任何一个信号(例如第一信号72a)相对应的信号向量74。作为读取的结果,控制器10确定从至少一个或更多个信号收发器接收的信号的强度。例如,从第一信号收发器s1和第五信号收发器到第七信号收发器s5-s7接收的信号的强度大于从其他信号收发器s2-s4和s8-s11接收的信号的强度。随后,控制器10读取其他信号72b-72i的信号向量,将这些信号向量和与第一信号72a相对应的信号向量74进行比较,并检测具有相同或相似向量的信号向量。控制器10可以检测与所检测的信号向量相对应的信号,例如第二信号72b和第三信号72c,并且可以将第一信号72a和检测到的信号72b和72c分组以将检测到的信号分类为一个组。

在将多个信号72a-72i分类为一个组后,例如第一组G1,控制器10可以将标记或标签添加到被分类为任何一个组(G1)的信号72a-72c,或将被分类为任何一个组(G1)的信号72a-72c存储在与被分类为其他组G2和G3的信号72d-72i的区域不同的区域中,使得被分类为第一组G1的信号72a-72c与被分类为其他组(例如第二组G2或第三组G3)的信号72d-72i区分开。这里,该区域可以与存储空间中的另一区域逻辑地或物理地不同。

多个信号72a-72i与在p1到p4中的同一点获取的图像52、全景图像54和/或卫星信号77相关联。因而,当多个信号72a-72i被集群化时,图像52、全景图像54和/或卫星信号77也可以随同多个信号72a-72i的集群化被集群化。

信号72a-72i的上述集群化还可以不加改变地被应用或部分修改然后被应用于图像52、全景图像54和/或卫星信号77的集群化。根据实施例,控制器10可以将图像52、全景图像54和卫星信号77中的至少一个集群化,来代替将信号72a-72i集群化。

根据实施例,信号集群化可以省略。

图8例示了第一子地图的示例的视图,图9例示了第二子地图的示例的视图。

当信号72a-72i被分类为至少一个或更多个组G1-G3时,控制器10可以通过使用集群化的结果形成与多个组G1-G3相对应的至少一个地图21。子地图21指示了目标的一部分的2D或3D地图。这里,目标可以包括位于可移动对象1将在其中移动的空间中的各种类型的结构(例如墙壁、门、家具或机器)。此外,目标可以包括提供了可移动对象将在其中移动的空间的建筑物结构的内部和外部结构。

例如,如图8所示,控制器10可以通过使用与第一组G1的信号72a-72c相对应的图像52和54生成第一子地图21a。例如,如图9所示,控制器10可以通过使用与第二组G2的信号72d-72f相对应的图像52和54生成第二子地图21b。这里,与第一组G1的信号72a-72c相对应的图像52和54可以包括在与接收第一组G1的信号72a-72c的点相同或附近的点捕捉的全向图像52,或可以包括从该相同或附近点捕捉的全向图像52获得的全景图像54。与第二组G2的信号72d-72f相对应的图像52和54也是相同的情形。

根据实施例,控制器10可以使用3D复原方法获取与G1-G3中的至少一个组相对应的至少一个子地图。3D复原方法可以包括例如从运动恢复结构(SFM)。

SFM是指测量与目标有关的信息的方法,例如从目标的改变测量改变程度并基于该测量获取目标的结构。根据SFM,能够从目标的2D图像确定目标的3D结构。此外,当使用SFM时,在获取目标的3D结构时能够设置或定义目标的3D结构的每个点的绝对或相对坐标。

G1-G3中的每个组可以分别包括多个信号72a-72c、72d-72f或72g-72i。多个信号72a-72c、72d-72f或72g-72i分别对应于多个图像52和54。因此,G1-G3中的每个组可以对应于多个全向图像52和/或多个全景图像54。此外,多个全向图像52和/或多个全景图像54是在多个不同点捕捉的,因此多个全向图像52和/或多个全景图像54彼此不同。因此,可以从多个全向图像52和/或多个全景图像54来检测目标的变化。此外,当将SMF应用于多个全向图像52和/或多个全景图像54时,能够获取在多个全向图像52和/或多个全景图像54中出现的目标的3D结构。此外,还能够获取在多个全向图像52和/或多个全景图像54中出现的目标的3D结构中每个点的位置信息,例如3D结构中每个点的3D坐标。

此外,可以采用各种3D复原方法来生成子地图21。

图10例示了基于子地图获取3D地图的示例的视图。

如图10所示,当获取多个子地图21a和21b时,控制器10可以将多个子地图21a和21b组合以获取可移动对象1将在其中行进的空间的地图29。通过组合获取的地图29可以是可移动对象1能够在其中移动的整个空间的地图。

控制器10可以从多个子地图21a和21b检测相应点p11和p21或p12和p22,并且可以组合相应点p11和p21或p12和p22以组合多个子地图21a和21b。例如,在控制器10在第一子地图21a的一端检测到至少一个或更多个点p11和p12并且在第二子地图21b的另一端检测到至少一个或更多个点p21和p22后,控制器10可以通过将第一子地图21a的一端的至少一个或更多个点p11和p12与第二子地图21b的另一端的至少一个或更多个点p21和p22匹配来组合多个子地图21a和21b。在该情况下,控制器10可以通过使用多个子地图21a和21b中每个上的至少一个点的坐标来组合多个子地图21a和21b。

根据实施例,通过组合获取的地图29可以是可移动对象1能够在其中移动的整个空间的一部分的地图。当通过组合多个子地图21a和21b获取了目标的一部分的地图时,控制器10可以通过将另一子地图或通过组合其他子地图生成的目标的一部分的地图与通过组合多个子地图21a和21b生成的目标的一部分的地图进行组合,来获取可移动对象1将在其中行进的空间的地图28。

相应坐标可以被映射到可移动对象1将在其中行进的空间的地图29的点p31和p32。此外,相应图像52、全景图像54、信号74和/或卫星信号77可以被映射到可移动对象1将在其中行进的空间的地图29的点p21和p22。

根据实施例,信号集群化将被省略,因此将省略多个子地图的生成。在该情况下,控制器10可以将SFM应用于所有被获取的图像52和54以获取整个目标的地图29。

图11例示了学习算法的示例的图。图11例示了学习算法,例如深度神经网络算法。

控制器10可以通过将所获得的地图20应用于算法31来学习至少一个算法31。

如图11所示,深度神经网络算法33可以包括至少一个或更多个隐藏层34和35。

下面将参照深度神经网络算法33包括两个隐藏层(以下称为第一隐藏层34和第二隐藏层35)的实施例来描述算法的学习。然而,深度神经网络算法33的隐藏层34和35的数目和类型不限于下面描述。根据实施例,深度神经网络算法33可以包括三个或更多个隐藏层。

预定图像52和54可以输入到第一隐藏层34。输入到第一隐藏层34的图像可以是图像获取器50获取的全向图像52或控制器10获取的全景图像54。

根据实施例,第一隐藏层34可以包括至少一个或更多个卷积层c1和c2以及至少一个或更多个池化层d1和d2。

输入图像52和54被输入到第一卷积层c1。在第一卷积层c1中,对输入图像52和54执行卷积。通过在第一卷积层c1中执行的卷积,输入图像52和54的大小可以被减小,并且其形状也可以被部分地修改。

第一卷积层c1根据所执行的卷积输出输入图像52和54的至少一个特征地图。更具体而言,在第一卷积层c1中,卷积核可以应用于输入图像52和54中的全部或一些,因此可以为每个像素计算新的像素值。如上所述的,特征地图可以通过所计算的像素值获得。

例如,在第一卷积层c1中从构成输入图像52和54的多个元素(例如,像素或体素)中选择至少一个片段(section),并且对与至少一个片段(即,两个像素值)相对应的至少两个元素求和或加权求和。因此,能够获取与至少一个片段相对应的结果值。上述过程可以被重复至少一次。因此,能够确定多个片段的结果值。该多个结果值可以被组合,并且作为组合的结果,可以获取与输入图像52和54相对应的特征地图。

根据实施例,至少一个片段可以与其他片段重叠。换而言之,在任何一个所选的片段中包含的图像52和54的至少一个元素也可以被包含在另一所选的片段中。

特征地图被传送到第一池化层d1。被传送的特征地图可以具有例如2D矩阵的形式。根据实施例,可以将激活函数进一步应用于所获取的特征地图。

可以对第一池化层d1执行子采样。由于执行的子采样,因而可以从第一池化层d1输出比输入特征地图的结果值更小的结果值。

更具体而言,可以从第一池化层d1中选择特征地图的至少一个片段,并且基于该至少一个片段中的多个元素的值执行子采样。子采样可以被用于通过经由平均池化来计算该至少一个片段中的多个元素的值的平均值,或通过经由最大池化来从多个元素的值中选择与指定标准相对应的值(例如最大值),来获取结果值。

通过在第一池化层d1中执行子采样所获取的数据可以被顺序地传送到第二卷积层c2和第二池化层d2。与第一卷积层c1类似,在第二卷积层c2中对由第一池化层d1传送的结果数据执行卷积。由第二卷积层c2输出的结果数据可以被传送到第二池化层d2。与第一池化层d1类似,可以在第二池化层d2中再次执行子采样。

图11例示了第一隐藏层34包括两个卷积层c1和c2以及两个池化层d1和d2的示例,但这只是示例。根据实施例,第一隐藏层34可以包括一个卷积层和一个池化层,或可以包括三个或更多个卷积层和三个或更多个池化层。

通过穿过卷积层c1和c1以及池化层d1和d2所获取的结果数据可以被传送到第二隐藏层35。由第一隐藏层34输出的结果数据被用作第二隐藏层35的输入值。

此外,信号向量74可以进一步输入到第二隐藏层35。信号向量74使得通过使用学得算法获得的位置确定结果更稳健。

第二隐藏层35可以包括全向层(前向反馈层)。

根据实施例,可以识别和/或分类从第二隐藏层35获取的数据,即,第一隐藏层34的输出结果和信号向量74。第二隐藏层35可以包括完全连接的神经网络。完全连接神经网络包括多个神经元,并且该多个神经元中的至少两个彼此连接,以便输入(即,图像52和54)可以完全连接到输出(即,位置信息39)。

根据实施例,可以使用回归法实现第二隐藏层35,回归法可以包括在学习过程期间可用的各种回归方法,例如线性回归或逻辑回归。

将与输入全向图像52和全景图像54中的至少一个相对应的点p1到p4有关的信息38应用于第二隐藏层35的输出。与点p1到p4有关的信息38可以包括在其上获取全向图像52的p1到p4中的点的3D坐标。在该情况下,可以从所获取的地图20获取点p1到p4的3D坐标。当如上所述使用3D复原方法时,能够获取所复原3D结构的点的坐标,并且还能够基于所获取的坐标来获取点p1到p4的3D坐标。

因此,输入图像52和54可以由卷积层c1和c2以及池化层d1和d2减小,然后输入到第二隐藏层35。第二隐藏层35被形成为使得输入图像52和54以及与输入图像52和54相对应的信号向量74可以和与输入图像52和54相对应的位置信息相关联。因而,能够获取学习了图像52和54以及信号74的位置信息的算法。

此外,根据实施例,可以进一步应用关于可移动对象1在点p1到p4处的方位的信息作为第二隐藏层35的输出值。因此,可移动对象1的方位以及与输入全向图像52和全景图像54中的至少一个相对应的位置可以由算法31学得。

图12例示了全景图像的移位的图。

参照图12,根据实施例,多个全景图像54、541和542可以输入到深度神经网络算法33。多个全景图像54、541和542可以被顺序地输入算法31,并且可以通过多个全景图像54、541和542来对算法31进行学习。

在该情况下,多个全景图像541和542中的至少一个可以通过将控制器10获取的全景图像54移位特定距离m1或m2来获得。

换而言之,如图5所示,当获取基于全向图像52的全景图像54时,将所获取的全景图像54应用于算法31。

随后,控制器10将全景图像54沿纵向方向移位预定距离m1,并且可以通过将邻近全景图像54一端的片段的一部分或全部向另一端541a2移动第一距离m1来获取第一移位全景图像541。这里,第一距离m1可以由用户、设计者或控制器10确定。在第一移位全景图像541中,全景图像54的片段54b、54c和54d沿朝向其一端的方向已经移动了第一距离m1,从而变成全景图像541的片段541b、541c和541d。

第一移位全景图像541可以应用于算法31和/或学得算法32。

此外,控制器10可以在获取全景图像541时通过将第一移位全景图像541沿与移位图像54的方向相同的方向移动第二距离m2来获取第二移位全景图像542。这里,第二距离m2可以由用户、设计者或控制器10确定。第二距离m2可以被定义成与第一距离m1相等或不同。

因此,位于第一移位全景图像541一端的片段541a1的全部或一部分出现在第二移位全景图像542中的另一端(参见542a3),第一移位全景图像541的片段541b、541c和541d出现在被移位第二距离m2后的第二移位全景图像542中(参见542a4、542b、542c和542d)。

第二移位全景图像542可以应用于算法31和/或学得算法32。

图12例示了全景图像54、541和542被移位两次后的示例。然而,全景图像54、541和542可以被移位三次。控制器10可以获取与执行移位的次数相对应的全景图像的数目。在该情况下,例如,可以给出的所获取的全景图像的数目为执行移位的次数加1(全景图像的总数=移位次数+1)。如上所述的,可以将三个或更多个全景图像顺序地应用于算法31或学得算法32。算法31可以由三个或更多个全景图像学得。此外,学得算法32可以进一步由三个或更多个全景图像学得。

以上描述了由控制器10执行生成地图20和学习所述算法31的实施例。然而,生成所述地图20和学习所述算法31不仅由可移动对象1的控制器10执行。例如,生成所述地图20和学习所述算法31中的至少一个可以由单独计算设备和代替可移动对象1的其他可移动对象中的至少一个来执行。在该情况下,通信器70可以从计算设备和其他可移动对象中的至少一个接收所生成的地图20和学得算法32中的至少一个,控制器10可以基于所接收的地图20来学习所述算法31和/或可以基于学得算法32执行定位操作。

下面将描述可移动对象1通过使用学得算法32确定其自身位置的过程的实施例。

图13例示了可移动对象正在其中行进的空间的示例的视图。

在与行进空间99相对应的学得算法32被获取并存储在存储装置30中后,可移动对象1根据用户的调整或预定设置在行进空间99中行进。

可移动对象1根据用户的调整、用户或设计者预定义的设置或控制器10的任意确定,在预定位置p40(以下称为位置确定点)处发起位置确定。

图14例示了被获取用来定位可移动对象的全向图像的示例的图,图15例示了与所获取的全向图像相对应的全景图像的示例的图。

可移动对象1的图像获取器50响应于位置确定的发起来获取在位置确定点p40处可移动对象1的环境的图像。图像获取器50可以是全向相机。在该情况下,所获取的图像可以是全向图像53。

根据实施例,如上所述的,可移动对象1的控制器10可以将全向图像53转换为全景图像55。例如,当基于全景图像55学习了算法31时,控制器10可以将全向图像53转换为全景图像55,以获取与位置确定点p40相对应的全景图像55。当基于全向图像53学习了算法31时,控制器10可以不将全向图像53转换为全景图像55。换而言之,控制器19可以直接使用在位置确定点p40获取的全向图像53来定位可移动对象1。

图16例示了所获取信号的向量化的示例的图。

此外,通信器70可以与图像获取器50获取图像同时地或顺序地从信号收发器2接收信号72。接收的信号72可以传送到控制器10。

根据实施例,如图16所示,控制器10可以基于所接收的信号72生成信号向量74a。如上所述的,控制器10可以将至少一个或更多个信号收发器s1-s11和与至少一个或更多个信号收发器s1-s11相对应的信号的强度进行匹配,以获取与位置确定点p40相对应的信号向量74a。

当获取了与位置确定点p40相对应的全向图像53或全景图像55并且获取了与位置确定点p40相对应的信号向量74a时,控制器10可以将全向图像53和信号向量74a输入或应用于学得算法32,或可以将全景图像55和信号向量74a输入或应用于学得算法32。

当输入信号向量74a以及全向图像53和全景图像55中的任意一个时,学得算法32可以根据学习的结果输出全向图像53和全景图像55中的任意一个,并且还可以输出与信号向量74a相对应的位置信息,例如位置坐标。

因此,控制器10可以获取全向图像53和全景图像55中的任意一个以及与信号向量74a相对应的位置信息,并确定可移动对象1位于与所获取的位置信息相对应的点p40处。因而,控制器10可以识别并确定可移动对象1的位置。

控制器10可以将卫星信号接收器75接收的卫星信号77代替通信器70接收的信号72来输入到学得算法32。控制器10可以将卫星信号77转换为信号向量并将卫星信号77的信号向量输入到学得算法32。

此外,根据实施例,控制器10可以将通信器70接收的信号72和卫星信号接收器75接收的卫星信号77二者输入到学得算法32。在该情况下,在信号72和卫星信号77被输入到学得算法32之前,控制器10可以将接收的信号72和接收的卫星信号77二者转换为信号向量。

当确定可移动对象1的位置时,控制器10可以执行与所确定的位置p40相对应的各种操作和/或处理。

例如,控制器10可以基于所确定的位置p40来确定可移动对象1是否位于预设的路径上。当可移动对象1不位于预设的路径上时,控制器10可以确定是否需要重置路径,并且可以将路径重置为朝向目标点。随后,控制器10可以为每个组件(例如驱动器90)生成控制信号,以便可移动对象1可以沿着重置的路径移动,然后将生成的控制信号传送到相应组件。

此外,当可移动对象1需要被充电时,控制器10可以基于与所确定的位置p40和充电位置有关的信息来确定从当前位置到充电位置的路径。控制器10可以控制驱动器90,使得可移动对象1可以基于所确定的从当前位置到充电位置的路径移动。

此外,控制器10可以根据所确定的位置p40停止移动可移动对象1或停止旋转可移动对象1,或可以根据所确定的位置p40确定是否上传在可移动对象1上加载的项目。

此外,如用户、设计者或控制器10所设置的,控制器10可以生成与可移动对象1的操作相关联的各种控制信号,并且可移动对象1可以在控制器10的控制下执行指定操作。

图17例示了清洁机器人的实施例的透视图,图18例示了清洁机器人的实施例的仰视图,图19例示了清洁机器人的实施例的内部结构的平面图。图20例示了清洁机器人的实施例的框图。在图18中,示出了灰尘收集腔132与图14的清洁机器人100分离的状态。

当描述清洁机器人100时,吸入设备关于清洁机器人100的中心形成的方向被定义为前向,与前向相反的方向被定义为后向。此外,当清洁机器人100典型地工作时,朝向地面的方向被定义为下向,与下向相反的方向被定义为上向。此外,与前向与后向之间的一段垂直的一段的方向定义为横向。横向可以包括左向以及与左向相反的右向。

如图17到图19所示,清洁机器人100可以包括形成其外观的主体101,主体101可以包括在清洁机器人100的前侧形成的第一主体110和在第一主体100后方形成的第二主体130。

第一主体110和第二主体130可以被制造成一个本体,或可以单独地制造然后被组合。当第一主体110和第二主体130单独地制造然后被组合时,可以在第一主体110与第二主体130之间形成用于连接第一主体110和第二主体130的连接件120。

根据实施例,可以在第一主体110中设置用于收集与清洁机器人100的行进有关的各种类型信息或用于从地板表面吸取灰尘的各种组件。

例如,用于吸入灰尘的吸入孔112可以被包括在第一主体110的下表面上。通过吸入孔112吸入的灰尘穿过设置在第一主体110内部的至少一个管体138a、连接件120和/或第二主体130流动到灰尘收集器138的内部空间。吸入孔112可以从第一主体110的左方延伸到第一主体110的右方。

外表面上形成有多个突出部使得可以从底部底板收集灰尘的刷模块111可以设置在吸入孔112中用于吸入灰尘。刷模块111可以包括被配置为绕指定轴旋转的枢转件111b和以指定模式形成在枢转件111b的外周表面上的至少一个突出部111a。枢转件111b可以沿着在第一主体110的底表面上形成的吸入孔112的纵向方向形成。突出部111a可以根据枢转件111b的旋转而扫除地板表面上的灰尘。突出部111a可以使用刚性材料和/或柔性材料实现。

刷模块111可以根据枢转件111b的旋转沿着后向和上向的至少一个来移动地板表面的灰尘,使得地板表面的灰尘进入吸入孔112。

根据实施例,用于存储收集的灰尘的装置或控制与清洁机器人100相关联的各种类型操作的装置可以设置在第二主体130中。

用于移动主体的驱动轮150可以设置在第二主体130中。驱动轮150可以包括第一驱动轮151和第二驱动轮152。例如,第一驱动轮151和第二驱动轮152可以在第二主体130的两侧上彼此相对地安装。

驱动轮151和152可以沿指定方向R11、R12、R21和R22枢转地连接到第二主体130的两侧。例如,第一驱动轮151可以安装在第二主体130的左向上,第二驱动轮152可以安装在第二主体130的右向上。

第一驱动轮151和第二驱动轮152可以沿相同方向或相反方向旋转。根据第一驱动轮151和第二驱动轮152的旋转方向R11、R12、R21和R22,清洁机器人100可以执行例如向前移动、向后移动、旋转移动、环绕移动或转向移动的操作。

此外,如图20所示,清洁机器人100可以包括被配置为生成第一驱动轮151的驱动力的第一驱动器181和被配置为生成第二驱动轮152的驱动力的第二驱动器182。第一驱动器181和第二驱动器182中的每个可以使用电机或致动器实现。这里,电机可以包括典型地用于旋转轮151和152的各种类型的电机,例如直流(DC)电机、交流(AC)电机、DC无刷电机或AC无刷电机。

此外,清洁机器人100可以进一步包括第一驱动检测器183和第二驱动检测器184。第一驱动检测器183和第二驱动检测器184可以分别检测第一驱动轮151和第二驱动轮152的操作,并将检测结果传送到控制器190。控制器190可以通过基于所传送的检测结果控制第一驱动器181和第二驱动器182允许清洁机器人100以任何方式适当地行进。第一驱动检测器183和第二驱动检测器184可以使用例如旋转编码器或电位器来实现。

此外,用于支撑清洁机器人100并辅助清洁机器人100的旋转或转向操作的至少一个辊子139可以安装在第二主体130的底表面上。辊子139可以使用能够旋转360度的球形件实现。

可以进一步在第二主体130的顶表面上设置用于从用户接收指定命令的输入单元121(例如按钮或旋钮)以及用于显示清洁机器人100的状态并向用户提供各种类型信息的显示器122中的至少一个。根据实施例,可以不设置输入单元121或显示器122。

图像获取器170可以固定安装在清洁机器人100的壳体上。

图像获取器170可以获取清洁机器人100的前向、横向和后向中的至少一个上的图像。

图像获取器170可以使用例如全向相机实现。当使用全向相机时,图像获取器170可以安装在第二主体130的顶部并从其顶部暴露,以便图像获取器170以360度捕捉图像,如图17所示。此外,根据实施例,使用全向相机实现的图像获取器170可以安装在第一主体110的顶部上,或可以安装在用于连接第一主体110与第二主体130的连接件120的顶部上。

图像获取器170可以使用相机、红外相机等来实现。在该情况下,图像获取器可以安装在第二主体130的顶部上,如图17所示,并且可以安装在第一主体110的顶部或连接件120的顶部上。当使用相机或红外相机时,图像获取器170可以沿指定方向(例如前向或后向)安装在第一主体110、连接件120或第二主体130的外表面上。

图像获取器170可以通过电线或电路与安装在第二主体130内的基板135电连接。

如图18所示,用于对清洁机器人100执行各种电控制的基板135可以安装在第二主体130内。

与清洁机器人100的操作控制相关联的各种类型组件可以安装在基板135内。例如,用于执行控制器190的功能的至少一个半导体芯片、电路、天线和/或相关联组件、主存储器设备192、方位检测器193、卫星信号接收器194、存储装置195或通信器199可以安装在基板135上。

被配置为吸入并存储灰尘的灰尘收集器138可以被包括在第二主体130的内部。灰尘收集器138可以包括被配置为提供吸尘动力的吸入电机134、由吸入电机134操作的鼓风扇237以及被配置为聚集吸入的灰尘的灰尘收集腔132。

如图17所示,灰尘收集腔132可以至少部分地在第二主体130上暴露。用户可以将灰尘收集腔132与第二主体130分离。在该情况下,为了用户方便起见,灰尘收集腔132可以具有指定形状的握持部131。灰尘收集腔132的壳体可以使用透明材料(例如玻璃或合成树脂)实现。这允许用户能够可视地检查在灰尘收集腔132中聚集的灰尘。

鼓风扇137生成气流以使能外部灰尘被吸入然后被移动到灰尘收集腔132。鼓风扇137可以从吸入电机134获得驱动力。

吸入电机134为鼓风扇137提供动力。吸入电机134可以采用例如DC电机、AC电机、DC无刷电机、线性感应电机等实现。吸入电机134可以在控制器190的控制下开始工作。当吸入电机134工作时,鼓风扇137在至少一个方向上旋转,因此清洁机器人100可以从地板表面收集灰尘。

控制器190控制清洁机器人100的整体操作。

根据实施例,如上所述的,控制器190可以通过使用图像获取器170获取的图像和通信器199接收的信号生成地图196。

在该情况下,当图像获取器170获取的图像是全向图像时,控制器190可以将全向图像转换为全景图像。将全向图像转换为全景图像的过程可以在生成地图196之前或之后执行。

此外,根据设置,控制器190可以将从多个信号收发器接收的不同信号转换为信号向量。

此外,控制器190将多个信号或多个信号向量分组以生成多个组,生成与多个组中每个相对应的子地图,并将子地图合并以生成地图196。

根据实施例,控制器190可以将生成的地图196存储在算法197中以获取学得算法198。

具体而言,控制器190从地图196中提取至少一个点,并顺序地或同时地将与该至少一个点相对应的图像(全向图像或全景图像)和信号(或信号向量)应用于算法197,以使能学习所述算法197。在该情况下,控制器190可以将在地图196上定义或设置的所有点的图像或信号应用于算法197以获取学得算法198。根据实施例,当输入全景图像时,控制器190可以对全景图像进行移位以获取至少一个移位全景图像,并将所获取的全景图像顺序地或同时地输入到算法197。

根据实施例,如上所述的,生成地图196和学习所述算法197可以由清洁机器人100的控制器190执行。根据另一实施例,生成地图196和学习所述算法197可以由与清洁机器人100分离设置的计算设备或由另一清洁机器人执行。

此外,根据实施例,控制器190可以基于学得算法198确定清洁机器人100的位置。具体而言,控制器190可以通过将图像获取器170获取的图像和通信器199接收的信号(和/或卫星信号接收器194接收的卫星信号)输入到学得算法198并响应于该图像和信号的应用获取从学得算法198输出的结果来确定清洁机器人100的位置,即,与输入图像和信号相对应的位置信息。控制器190还可以通过将图像和信号输入到学得算法198来确定清洁机器人100的方位。

在该情况下,控制器190可以将图像获取器170获取的全向图像输入到学得算法198,或可以将全向图像转换为全景图像然后将全景图像输入到学得算法198。当输入全景图像时,控制器190可以对全景图像进行移位并将被移位的全景图像输入到学得算法198。

此外,控制器190可以将通信器199接收的信号转换为信号向量并将信号向量输入到学得算法198。

通过描述可移动对象1的控制器10已经描述了控制器190的操作和功能,因此将省略其详细描述。

主存储器设备192可以存储用于控制器190操作的各种类型数据并辅助控制器190的操作。主存储器设备192可以使用只读存储器(ROM)或随机存取存储器(RAM)实现。

当控制器190执行生成地图196、学习所述算法197和/或确定清洁机器人100的位置的操作时,主存储器设备192可以临时存储全向图像、全景图像、地图196、算法197、学得算法198和通信器199接收的信号和/或信号向量,以使能控制器190更快地执行上述操作。

方位检测器193检测清洁机器人100的方位。清洁机器人100的方位可以包括清洁机器人100的所有方向上的斜率、横向上的斜率和旋转角度中的至少一个。

方位检测器193可以使用半导体倾斜传感器、加速度传感器、陀螺传感器和旋转角传感器中的至少一个来实现。

在学习算法197时,方位检测器193检测到的信号以及与清洁机器人100的位置有关的信息可以被用作输出值。

卫星信号接收器194可以接收卫星信号。卫星信号接收器194可以基于各种导航系统技术接收卫星信号。卫星信号接收器194接收的卫星信号可以传送到控制器190。除了通信器199接收的信号外或代替通信器199接收的信号,控制器190可以使用卫星信号生成地图196、学习所述算法197,并确定清洁机器人100的位置。

存储装置195可以存储用于控制器190的操作的各种类型的数据或程序。存储装置195可以存储例如学得算法198,并且可以进一步存储地图196和算法197中的至少一个。已经描述了地图196、算法197和学得算法198,因此将省略对它们的详细描述。

存储装置195可以使用半导体存储设备、磁盘存储设备或磁鼓存储设备实现。

通信器199可以从外部信号收发器(未示出)接收电磁波以与信号收发器通信。这里,外部信号收发器可以包括WiFi路由器,并且可以包括安装有通信模块的转接站。

通信器199可以使用各种组件(例如至少一个通信芯片、天线和基板)实现。例如,通信器70可以使用至少一种无线通信标准(诸如WiFi、WiFi直连、Zigbee、蓝牙、BLE、NFC或移动通信)与信号收发器通信。

输入单元121被提供以便用户可以输入各种命令,并且显示器122被提供以向用户可视地提供各种类型的信息。

例如,输入单元121可以接收清洁机器人100将在其中行进的地区的地图和要用于学习的算法197中的至少一个。输入单元121可以使用各种类型的输入终端实现,例如物理按钮、触摸按钮、触摸屏、操纵杆、轨迹球和统一串行总线(USB)端口。

显示器122可以显示与用于获取虚拟数据的地图有关的信息或与清洁机器人100的操作相关联的各种类型的信息,例如是否开始学习或是否结束学习。显示器122可以使用预定显示板(例如液晶显示器)实现。此外,显示器122可以使用发光设备(例如发光二极管(LED))实现。当触摸屏用作输入单元121时,可以省略单独的显示器122。

用于为清洁机器人100的操作供应电力的电源123可以被设置在第二主体130的内部。根据实施例,电源123可以布置在灰尘收集器138后面。电源123可以包括电池,该电池可以是可充电蓄电池。当主体101与单独的转接站连接时,电池可以由从转接站提供的商用电力充电。

下面将详细描述清洁机器人100的操作。

图21例示了清洁机器人的示例操作的图,图22例示了清洁机器人的另一示例操作的图。图23例示了清洁机器人的另一示例操作的图,图24例示了清洁机器人的又一示例操作的图。

如图21所示,清洁机器人100可以沿着预定路径200在清洁机器人100可以穿过的行进空间99的地区97中移动。在该情况下,清洁机器人100可以以预定行进模式行进或根据用户的调整行进。此外,清洁机器人100可以根据控制器190的自行判断行进。

当清洁机器人100开始生成地图196和学习所述算法197的操作时,清洁机器人100在预定义或任意第一点201执行捕捉图像和记录接收信号的操作。

根据实施例,当清洁机器人100到达预定义或任意第一点201时,清洁机器人100不停止移动,并且可以通过图像获取器170捕捉图像。

根据另一实施例,如图22所示,清洁机器人100在预定义或任意第一点201停止,并且通过图像获取器170在所有方向上获取清洁机器人100的环境的图像。构成目标的各种类型结构,例如清洁机器人不能穿过的地区98,可以出现在由清洁机器人100捕捉的图像中。

所获取的图像中的每个可以是全向图像。

清洁机器人100的控制器190在与获取环境图像的同时、在其之前或在其之后,记录从至少一个信号收发器传送的信号的强度。

如图23所示,当在第一点201捕捉图像和记录所接收的信号的操作结束时,清洁机器人可以沿着预定路径202开始在行进空间99中行进。当清洁机器人100在第一点201停止行进时,清洁机器人200可以旋转驱动轮151和152以恢复行进。

当清洁机器100人到达预定义或任意选择的第二点203时,清洁机器人100可以重复执行捕捉图像和记录所接收的信号的操作。因此,与清洁机器人100相关联的信号和环境的其他图像被获取并被存储。

此外,清洁机器人100可以在多个点重复上述操作来获取图像和信号。

根据设置,在获取全向图像或信号之后但在清洁机器人100恢复移动操作202之前的一定时段内,和/或在清洁机器人100执行移动操作202时,清洁机器人100可以将全向图像转换为全景图像或将从至少一个信号收发器传送的信号转换为信号向量。此外,可以在清洁机器人100充分获取与多个点相对应的多个全向图像和信号后,可以执行获取全景图像和获取信号向量中的至少一个。

随后,可移动对象1可以使用图像和信号生成地图196,并且可以通过将生成的地图196应用于算法197获取学得算法198。在清洁机器人100沿着预定路径200和202移动时,或每当在各个点201和203获取图像和信号时,可以执行地图196的生成和算法197的学习。此外,在清洁机器人100充分获取与多个点相对应的多个全向图像和信号后,可以执行地图196的生成和算法197的学习。

在学得算法198被获取并被存储后,需要清洁机器人100确定其自身的位置。在该情况下,在停止于预定点211后或在清洁机器人100沿着路径210行进时,清洁机器人100获取其环境的图像并还记录从信号收发器传送的信号。

随后,清洁机器人100将获取的图像和信号输入到学得算法198以获得位置信息的输出值。因此,清洁机器人100可以获取与其当前位置有关的信息。在获取的图像和信号输入到学得算法198之前,清洁机器人100可以将获取的全向图像转换为全景图像,基于由至少一个信号收发器发送的信号生成信号向量,并将生成的全景图像和信号向量应用于学得算法198。

通过这种方式,通过清洁机器人100基于全向图像和接收的信号学习算法197,获取学得算法198,并基于获取的学得算法198估计或确定位置,能够适当地识别清洁机器人100的当前位置而无需考虑行进空间99中环境因素的变化,例如照明的变化等。

下面将参照图25和26描述可移动对象控制方法的实施例。

图25例示了可移动对象控制方法的实施例的流程图。

如图25所示,可移动对象根据预先定义或根据用户或设计者输入的命令发起地图生成操作(300)。

可移动对象可以朝向至少一个或更多个点移动并根据实施例在每个点停止(301)。

可移动对象可以在每个点获取全向图像和信号(302)。当可移动对象在每个点旋转时,可以使用全向相机获取全向图像,或可以使用相机或红外相机获取全向图像。所获取的信号可以包括由信号收发器传送的信号和由卫星传送的卫星信号中的至少一个。

由信号收发器传送的信号可以具有根据可移动对象的位置变化的强度。更具体而言,所获取的信号的强度可以根据可移动对象与信号收发器之间的距离变化。由信号收发器传送的信号可以包括例如WiFi信号、WiFi直连信号、Zigbee信号、蓝牙信号、BLE信号和NFC信号中的至少一个。

根据实施例,可移动对象可以进一步包括与通过方位检测器(例如陀螺传感器)在每个点处检测的可移动对象的方位有关的信息。

可移动对象可以将全向图像转换为全景图像。此外,可移动对象可以将接收的信号向量化。具体而言,例如,可移动对象可以通过组合由多个信号收发器发送的信号来将接收的信号向量化以生成信号向量。

根据实施例,可移动对象可以将在至少一个点处获取的至少一个全向图像和至少一个信号分组,以获取至少一个组(303)。

当生成了至少一个组时,可移动对象可以通过使用指定3D复原方法,例如从运动获取结构的方法,获取与至少一个组相对应的至少一个子地图(304)。这里,子地图可以是2D地图或3D地图。

当获取了至少一个子地图时,可移动对象可以组合该至少一个子地图(305),因此可以获取可移动对象将在其中移动的行进空间的整个2D或3D地图。

可移动对象可以将构成整个地图的全部或一些数据应用于预定算法(310),并且可以学习算法(311)。因此,获取了学得算法(312)。

例如,可移动对象可以通过应用经由包含在地图中的可移动对象的环境的图像、所接收的信号以及3D复原方法获取的可移动对象的位置,来获取学得算法。在该情况下,包含在地图中的可移动对象的环境的图像和所接收信号作为输入值被应用于所述算法,可移动对象的位置作为输出值被应用于所述算法。可移动对象的位置可以从在步骤306中获取的地图中提取,或可以使用从所获取地图提取的位置信息(例如坐标)来获取。

除了所接收的信号外或代替所接收的信号,可移动对象可以将卫星信号作为输入值应用于所述算法,来获取学得算法。

此外,根据实施例,可移动对象可以进一步将与方位有关的信息以及可移动对象的位置作为输入值应用于所述算法。

应用了全部或一些数据的算法以及学得算法可以通过单独地或相结合地使用深度神经网络、卷积神经网络、递归神经网络、深度信念网络、深度Q网络来实现。

学得算法被临时地或非临时地存储在设置于可移动对象中的存储装置中,并且当由控制器传唤时可以由可移动对象的控制器提供。控制器可以通过使用传唤的学得算法来确定可移动对象的位置。

图26例示了可移动对象控制方法的实施例的流程图。

如图26所示,确定可移动对象的位置的操作(320),可移动对象可以获取可移动对象在行进时或停止在要被确定位置的点后,可移动对象附近的全向图像和信号。这里,该信号可以是从信号收发器传送的信号和/或从卫星传送的卫星信号。

可移动对象可以将全向图像和信号输入到在步骤312中获取的学得算法。在该情况下,可移动对象可以将全向图像转换为全景图像,然后输入全景图像来代替输入全向图像。

当全向图像(或全景图像)和信号输入到学得算法时,输出与位置有关的信息,例如从学得算法获得的可移动对象的坐标(323)。根据实施例,可以进一步输出与从学得算法获得的可移动对象的方位有关的信息。

已经参照图25和26描述的可移动对象控制方法还可以直接应用于或部分修改然后应用于清洁机器人的控制方法。此外,上述可移动对象控制方法可以直接应用于或部分修改然后应用于车辆、购物车、各种类型建造设备、玩具汽车、医疗设备、或各种工业、医疗或军用机器人。

根据上述实施例的可移动对象控制方法可以以可由各种计算设备执行的程序的形式实现。这里,程序能够单独地或组合地包括程序指令、数据文件、数据结构等。程序不仅可以使用由编译器生成的机器语言代码设计和产生,而且可以使用可由计算机通过解释器执行的高级语言代码设计和产生。程序可以专门设计用于实现上述可移动对象控制方法,或可以使用计算机软件领域技术人员已知的各种可用函数和定义来实现。

用于实现上述可移动对象控制方法的程序可以记录在计算机可记录的记录介质上。计算机可记录的记录介质可以包括能够存储由计算机等调用和执行的具体程序的各种类型的硬件设备,例如,磁介质(诸如硬盘或软盘)、磁带、光学介质(诸如CD-ROM或DVD)、磁光介质(诸如光磁盘)以及半导体存储设备(诸如ROM、RAM或闪存)。

从以上描述明显的是,根据可移动对象及可移动对象控制方法,能够识别可移动对象的当前位置而无需考虑环境因素的变化,因此能够以任何方式适当并有效地控制可移动对象。

根据可移动对象和可移动对象控制方法,能够有利地是可移动对象精确识别可移动对象的位置而无需考虑各种外部因素的变化。

此外,根据可移动对象和可移动对象控制方法,即使由于特性(即,图像的对象的形状或材料,或例如照明变化的环境因素)而不能从捕捉的图像提取适当特征点的情况下,可移动对象仍能够识别其位置。

已经描述了可移动对象和可移动对象控制方法的多个实施例,但可移动对象和可移动对象控制方法不限于上述实施例。本领域技术人员通过修改上述实施例可以实现的各个实施例可以对应于上述可移动对象和可移动对象控制方法的实施例。例如,虽然上述技术以不同的顺序执行和/或虽然所描述的系统、架构、设备或电路中的组件以不同方式组合和/或由其他组件或其等同物代替或补充,但可以实现与上述可移动对象和可移动对象控制方法相同或相似的结果。

虽然已经参照示例性实施例描述了本公开,但可以向本领域技术人员建议多种改变和修改。本公开旨在包含落入所附权利要求书的范围中的此种改变和修改。

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