发明内容
鉴于以上所述现有技术的缺点,本申请的目的在于提供一种导航、划分清洁区域方法及系统、移动及清洁机器人,用于解决现有技术中移动机器人无法对场景中实体对象实现精准的定位,进而无法根据场景中的实体对象实现精确的导航路线的规划和区域的划分的问题。
为实现上述目的及其他相关目的,本申请的第一方面提供一种移动机器人的导航方法,所述移动机器人包含测量装置和摄像装置,所述方法包括以下步骤:令所述测量装置测量所述移动机器人所在区域内障碍物相对于移动机器人的位置信息,并确定在所述区域内的候选识别对象所占的位置信息;根据所确定的候选识别对象所占的位置信息,令所述摄像装置获取包含所述候选识别对象的图像,并确定所述候选识别对象相应的实体对象信息;依据所述实体对象信息及其位置信息确定所述移动机器人在所述区域内的导航路线。
在本申请的第一方面的某些实施方式中,所述确定在区域内候选识别对象所占的位置信息的步骤包括:依据测量所述区域内各障碍物测量点的位置信息以获得一个扫描轮廓及其所占位置信息;按照所述扫描轮廓上的不连续部分,将所述扫描轮廓划分为多个候选识别对象,并确定各候选识别对象所占的位置信息。
在本申请的第一方面的某些实施方式中,所述依据测量所述区域内各障碍物测量点的位置信息以获得一个扫描轮廓及其所占位置信息的步骤包括:基于所述测量装置所测得的各障碍物测量点的位置信息面阵列,拟合所述移动机器人的行进平面,以及确定位于所述行进平面上扫描轮廓及其所占位置信息;或者基于所述测量装置所测得的平行于行进平面的位置信息线阵列,确定位于所述行进平面上扫描轮廓及其所占位置信息。
在本申请的第一方面的某些实施方式中,所述基于扫描轮廓上的不连续部分,将所述扫描轮廓划分为多个候选识别对象的步骤包括:基于所述扫描轮廓上由不连续部分所形成的缺口,确定相应候选识别对象为包含缺口的第一候选识别对象;将所述扫描轮廓上由不连续部分所分隔的连续部分,确定相应候选识别对象为妨碍移动机器人移动的第二候选识别对象。
在本申请的第一方面的某些实施方式中,所述基于扫描轮廓上由不连续部分所形成的缺口,确定相应候选识别对象为包含缺口的第一候选识别对象的步骤包括:按照预设的筛选条件,对所形成的缺口进行筛选;其中,所述筛选条件包含:缺口位于与其相邻的至少一侧的连续部分所在沿线上、和/或预设的缺口宽度阈值;以及基于筛选后的缺口确定相应候选识别对象为包含所述缺口的第一候选识别对象。
在本申请的第一方面的某些实施方式中,所述令测量装置测量所述移动机器人所在区域内障碍物相对于移动机器人的位置信息的步骤包括:令所述测量装置测量所述摄像装置的视场范围内障碍物相对于移动机器人的位置信息。
在本申请的第一方面的某些实施方式中,所述根据所确定的候选识别对象所占的位置信息,令所述摄像装置获取包含所述候选识别对象的图像的步骤包括:令所述摄像装置摄取所述候选识别对象投影至所述移动机器人的行进平面的图像;或者根据所得到的候选识别对象所占位置信息,控制所述移动机器人移动,并令所述摄像装置摄取包含相应候选识别对象的图像。
在本申请的第一方面的某些实施方式中,所述确定候选识别对象相应的实体对象信息的步骤包括:根据所述候选识别对象所占位置信息中的角度范围,确定所述图像中对应角度范围内的图像区域;对所述图像区域进行特征识别以确定所述候选识别对象相应的实体对象信息。
在本申请的第一方面的某些实施方式中,若所述候选识别对象包含带有缺口的第一候选识别对象;对应地,所述根据候选识别对象所占位置信息中的角度范围,确定所述图像中对应角度范围内的图像区域的步骤包括:基于所述候选识别对象两端的位置信息确定至少一个角度范围;按照所确定的角度范围从所述图像中确定用于识别相应第一候选识别对象的实体对象信息的图像区域。
在本申请的第一方面的某些实施方式中,所述候选识别对象包含带有缺口的第一候选识别对象;对应地,所述确定候选识别对象相应的实体对象信息的步骤包括:根据所述第一候选识别对象所占的位置信息,在所述图像中识别出至少两条用于表示垂直于所述行进平面的特征线;基于所识别出的特征线确定所述第一候选识别对象为用于表示门的实体对象信息。
在本申请的第一方面的某些实施方式中,所述确定候选识别对象相应的实体对象信息的步骤包括:基于预设已知的多种实体对象的特征信息,识别所述图像中的候选识别对象的实体对象信息;利用预设的图像识别算法,构建所述图像中候选识别对象与已知的多种实体对象信息的映射关系,以确定候选识别对象所对应的实体对象信息。
在本申请的第一方面的某些实施方式中,还包括:将所确定的实体对象信息及其位置信息标记在用于设置导航路线的地图中。
在本申请的第一方面的某些实施方式中,所述移动机器人为清洁机器人;所述依据实体对象信息及其位置信息确定所述移动机器人在所述区域内的导航路线的步骤包括:依据所述实体对象信息及所述移动机器人所在区域划分移动机器人的清洁区域,并设计在所述行走区域中的导航路线。
在本申请的第一方面的某些实施方式中,所述清洁区域包括以下任一种:基于所述实体对象信息而确定的房间区域;按照预设区域范围和位于所述区域范围内的实体对象信息所占位置信息而划分的区域。
在本申请的第一方面的某些实施方式中,当所确定的实体对象信息包含实体门时,还包括在所述实体门所对应的位置信息处设置虚拟墙的步骤;以便依据所述虚拟墙及所述移动机器人所在区域划分移动机器人的清洁区域,并设计在所述行走区域中的导航路线。
为实现上述目的及其他相关目的,本申请的第二方面提供一种划分清洁区域的方法,用于清洁机器人,所述清洁机器人包含测量装置和摄像装置,所述方法包括以下步骤:令所述测量装置测量所述清洁机器人所在区域内障碍物相对于清洁机器人的位置信息,并确定在所述区域内的候选门所占的位置信息;根据所确定的候选门所占的位置信息,令所述摄像装置获取包含所述候选门的图像,并确定所述候选门为实体门;依据所述实体门及其位置信息划分所述清洁机器人的清洁区域,以约束所述清洁机器人的行走范围。
在本申请的第二方面的某些实施方式中,所述确定在区域内候选门所占的位置信息的步骤包括:依据测量所述区域内各障碍物测量点的位置信息以获得一个扫描轮廓及其所占位置信息;按照所述扫描轮廓上的不连续部分,确定各候选门所占的位置信息。
在本申请的第二方面的某些实施方式中,所述依据测量所述区域内各障碍物测量点的位置信息以获得一个扫描轮廓及其所占位置信息的步骤包括:基于所述测量装置所测得的各障碍物测量点的位置信息面阵列,拟合所述清洁机器人的行进平面,以及确定位于所述行进平面上扫描轮廓及其所占位置信息;基于所述测量装置所测得的平行于行进平面的位置信息线阵列,确定位于所述行进平面上扫描轮廓及其所占位置信息。
在本申请的第二方面的某些实施方式中,所述基于扫描轮廓上的不连续部分,确定各候选门所占的位置信息的步骤包括:按照预设的筛选条件对由不连续部分所形成的缺口进行筛选,并确定筛选后的缺口属于候选门;其中,所述筛选条件包含:缺口位于与其相邻的至少一侧的连续部分所在沿线上、和/或预设的缺口宽度阈值。
在本申请的第二方面的某些实施方式中,所述令测量装置测量所述清洁机器人所在区域内障碍物相对于清洁机器人的位置信息的步骤包括:令所述测量装置测量所述摄像装置的视场范围内障碍物相对于清洁机器人的位置信息。
在本申请的第二方面的某些实施方式中,所述根据所确定的候选门所占的位置信息,令所述摄像装置获取包含所述候选门的图像的步骤包括:令所述摄像装置摄取所述候选门投影至所述清洁机器人的行进平面的图像;或者根据所得到的候选门所占位置信息,控制所述清洁机器人移动,并令所述摄像装置摄取包含相应候选门的图像。
在本申请的第二方面的某些实施方式中,所述确定候选门为实体门的步骤包括:根据所述候选门所占位置信息中的角度范围,确定所述图像中对应角度范围内的图像区域;对所述图像区域进行特征识别以确定所述候选门为实体门。
在本申请的第二方面的某些实施方式中,所述根据候选门所占位置信息中的角度范围,确定所述图像中对应角度范围内的图像区域的步骤包括:基于所述候选门两端的位置信息确定至少一个角度范围;按照所确定的角度范围从所述图像中确定用于识别该候选门是否为实体门的图像区域。
在本申请的第二方面的某些实施方式中,所述确定候选门为实体门的步骤包括:在所述图像中识别出至少两条用于表示垂直于所述行进平面的特征线,并基于所识别出的特征线确定所述候选门为实体门。
在本申请的第二方面的某些实施方式中,还包括:将所确定的实体门及其位置信息标记在用于设置清洁路线的地图中。
在本申请的第二方面的某些实施方式中,所述依据实体门及其位置信息划分所述清洁机器人的清洁区域的步骤包括:在所述实体门处设置虚拟墙;以及依据所述虚拟墙及所述清洁机器人所在区域划分清洁机器人的清洁区域。
在本申请的第二方面的某些实施方式中,所述清洁区域包括以下任一种:基于所述实体门而确定的房间区域;按照预设区域范围和位于所述区域范围内的实体门所占位置信息而划分的区域。
为实现上述目的及其他相关目的,本申请的第三方面提供一种移动机器人的导航系统,其特征在于,包括:测量装置,设置于所述移动机器人,用于测量所述移动机器人所在区域内障碍物相对于移动机器人的位置信息;摄像装置,设置于所述移动机器人,用于获取包含所述候选识别对象的图像;处理装置,连接所述测量装置和摄像装置,用于运行至少一程序,以执行如上任一所述的导航方法。
在本申请的第三方面的某些实施方式中,所述摄像装置嵌设于所述移动机器人,且主光轴垂直于所述移动机器人的行进平面。
在本申请的第三方面的某些实施方式中,所述测量装置嵌设于所述移动机器人的体侧,所述测量装置包括:测距传感装置和角度传感装置,或者TOF测量装置。
为实现上述目的及其他相关目的,本申请的第四方面提供一种移动机器人,包括:测量装置,设置于所述移动机器人,用于测量所述移动机器人所在区域内障碍物相对于移动机器人的位置信息;摄像装置,设置于所述移动机器人,用于获取包含所述候选识别对象的图像;第一处理装置,连接所述测量装置和摄像装置,用于运行至少一程序,以执行如上任一所述的导航方法,以生成导航路线;移动装置,设置于所述移动机器人,用于受控地调整所述移动机器人的位置和姿态;第二处理装置,连接于所述第一处理装置和移动装置,用于运行至少一程序,以基于所述第一处理装置所提供的导航路线,控制所述移动装置调整位置和姿态,以沿所述导航路线进行自主移动。
在本申请的第四方面的某些实施方式中,所述摄像装置嵌设于所述移动机器人,且主光轴垂直于所述移动机器人的行进平面。
在本申请的第四方面的某些实施方式中,所述测量装置嵌设于所述移动机器人的体侧,所述测量装置包括:测距传感装置和角度传感装置,或者TOF测量装置。
为实现上述目的及其他相关目的,本申请的第五方面提供一种划分清洁区域的系统,用于清洁机器人,包括:测量装置,设置于所述清洁机器人,用于测量所述清洁机器人所在区域内障碍物相对于清洁机器人的位置信息;摄像装置,设置于所述清洁机器人,用于获取包含所述候选门的图像;处理装置,连接所述测量装置和摄像装置,用于运行至少一程序,以执行如上任一所述的划分清洁区域的方法,以便在所生成的清洁区域内设置导航路线。
在本申请的第五方面的某些实施方式中,所述摄像装置嵌设于所述清洁机器人,且主光轴垂直于所述清洁机器人的行进平面。
在本申请的第五方面的某些实施方式中,所述测量装置嵌设于所述清洁机器人的体侧,所述测量装置包括:测距传感装置和角度传感装置,或者TOF测量装置。
为实现上述目的及其他相关目的,本申请的第六方面提供一种清洁机器人,包括:测量装置,设置于所述清洁机器人,用于测量所述清洁机器人所在区域内障碍物相对于清洁机器人的位置信息;摄像装置,设置于所述清洁机器人,用于获取包含所述候选识别对象的图像;第一处理装置,连接所述测量装置和摄像装置,用于运行至少一程序,以执行如上任一所述的划分清洁区域的方法,并利用所得到的清洁区域生成导航路线;移动装置,设置于所述清洁机器人,用于受控地调整所述清洁机器人的位置和姿态;清洁装置,设置于所述清洁机器人,用于在清洁机器人移动期间清洁所途经的行进平面;第二处理装置,连接于所述第一处理装置并分别控制清洁装置和移动装置,用于运行至少一程序,以基于所述第一处理装置所提供的导航路线,控制所述移动装置调整位置和姿态以沿所述导航路线进行自主移动,以及控制清洁装置执行清洁操作。
在本申请的第六方面的某些实施方式中,所述摄像装置嵌设于所述清洁机器人,且主光轴垂直于所述清洁机器人的行进平面。
在本申请的第六方面的某些实施方式中,所述测量装置嵌设于所述清洁机器人的体侧,所述测量装置包括:测距传感装置和角度传感装置,或者TOF测量装置。
为实现上述目的及其他相关目的,本申请的第七方面提供一种数据处理装置,用于移动机器人,包括:数据接口,用于连接所述移动机器人的摄像装置和测量装置;存储单元,用于存储至少一程序;处理单元,与所述存储单元和数据接口相连,用于藉由所述数据接口获取所述测量装置所提供的位置信息,以及获取所述摄像装置拍摄的图像,以及用于执行所述至少一程序以执行如上任一所述的导航方法;或者执行如上任一所述的划分清洁区域的方法。
为实现上述目的及其他相关目的,本申请的第八方面提供一种计算机可读的存储介质,其特征在于,存储至少一种程序,所述至少一种程序在被调用时执行如上任一所述的导航方法;或者执行如上任一所述的划分清洁区域的方法。
如上所述,本申请的导航、划分清洁区域方法及系统、移动及清洁机器人,可以根据测距传感装置和角度传感装置,或者TOF测量装置测量移动机器人所在区域内障碍物相对于移动机器人的角度和距离,准确的确定在所述区域内的候选识别对象的位置信息,并令摄像装置获取包含该候选识别对象的图像,进而确定该候选识别对象相应的实体对象信息,且根据该实体对象信息及其位置信息确定该移动机器人在所述区域内的导航路线。本申请在已获得较为精确的关于实体对象信的位置信息后,直接根据该实体对象信息规划精确的导航路线以及进行区域的划分,增加导航路线规划以及区域划分的准确性,且提高移动机器人的人机交互性。
具体实施方式
以下由特定的具体实施例说明本申请的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本申请的其他优点及功效。
在下述描述中,参考附图,附图描述了本申请的若干实施例。应当理解,还可使用其他实施例,并且可以在不背离本公开的精神和范围的情况下进行机械组成、结构、电气以及操作上的改变。下面的详细描述不应该被认为是限制性的,并且本申请的实施例的范围仅由公布的专利的权利要求书所限定。这里使用的术语仅是为了描述特定实施例,而并非旨在限制本申请。空间相关的术语,例如“上”、“下”、“左”、“右”、“下面”、“下方”、“下部”、“上方”、“上部”等,可在文中使用以便于说明图中所示的一个元件或特征与另一元件或特征的关系。
虽然在一些实例中术语第一、第二等在本文中用来描述各种元件,但是这些元件不应当被这些术语限制。这些术语仅用来将一个元件与另一个元件进行区分。例如,第一预设阈值可以被称作第二预设阈值,并且类似地,第二预设阈值可以被称作第一预设阈值,而不脱离各种所描述的实施例的范围。第一预设阈值和预设阈值均是在描述一个阈值,但是除非上下文以其他方式明确指出,否则它们不是同一个预设阈值。相似的情况还包括第一音量与第二音量。
再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、步骤、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、步骤、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。因此,“A、B或C”或者“A、B和/或C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A、B和C”。仅当元件、功能、步骤或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
移动机器人基于导航控制技术执行移动操作。其中,受移动机器人所应用的场景影响,当移动机器人处于未知环境的未知位置时,利用VSLAM(Visual SimultaneousLocalization and Mapping,基于视觉的即时定位与地图构建)技术可以帮助移动机器人构建地图并执行导航操作。具体地,移动机器人通过视觉传感器所提供的视觉信息以及移动传感器所提供的移动信息来构建地图,并根据所构建的地图为移动机器人提供导航能力,使得移动机器人能自主移动。其中,所述视觉传感器举例包括摄像装置,对应的视觉信息为图像数据(以下简称为图像)。所述移动传感器举例包括速度传感器、里程计传感器、距离传感器、悬崖传感器等。然而,在实际应用中,所述移动机器人根据预先构建的地图在其所在区域的行进平面进行移动,所构建的地图上仅显示应用场景中所包括物体的位置信息,当用户远程遥控移动机器人发送指定地点的视频或图片时,或者当用户遥控移动机器人清扫指定地点时,用户需要辨识移动机器人所保存的地图中待指示的位置,再依据地图中对应位置的坐标对移动机器人发送控制指令,这带来人机交互性差的问题。
本申请提供一种移动机器人的导航方法,在该移动机器人的所在区域内(房间内),通过测量装置准确的测量障碍物相对于移动机器人的位置,并根据摄像装置对包含障碍物的图像的识别,获取与障碍物对应的具体的实体对象,进而根据所定位的实体对象及其位置信息,确定所述移动机器人在所述区域内的导航路线。其中,所述实体对象包含移动机器人所移动的物理空间中任何可根据所述测量装置测量的障碍物形成的实体对象,该实体对象为物理实体,其举例但不限于:球、鞋、墙壁、门、花盆、衣帽、树、桌子、椅子、冰箱、电视、沙发、袜以及杯子等。所述摄像装置包括但不限于鱼眼摄像模块、广角(或非广角)摄像模块中的任一种。所述移动机器人包括但不限于:家庭陪伴式移动机器人、清洁机器人、巡逻式移动机器人、擦玻璃的机器人等。
在此,参阅图1,图1显示为本申请的移动机器人的导航方法在一具体实施例中的流程示意图。其中,所述移动机器人的导航方法可由移动机器人包括的处理装置来执行。其中,所述处理装置为一种能够进行数值运算、逻辑运算及数据分析的电子设备,其包括但不限于:CPU、GPU、FPGA等,以及用于暂存运算期间所产生的中间数据的易失性存储器,用于存储可执行所述方法的程序的非易失性存储器等。所述移动机器人包含测量装置和摄像装置。所述摄像装置包括但不限于鱼眼摄像模块、广角(或非广角)摄像模块中的任一种。所述移动机器人包括但不限于:家庭陪伴式移动机器人、清洁机器人、巡逻式移动机器人、擦玻璃的机器人等。所述测量装置可安装于所述移动机器人的体侧,所述测量装置举例可为扫描激光器或TOF(Time of Flight,飞行时间)传感器。其中扫描激光器包括角度传感装置和测距传感器,且通过所述角度传感器获取对应测距传感器所测量的距离信息的角度信息,且通过激光或者红外来测得障碍物测量点在所述扫描激光器当前角度上与所述测距传感器的距离。所述扫描激光器是相对于一固定参照系随时间改变方向、传播的起点或图样的激光器。扫描激光器基于激光测距原理,通过可旋转的光学部件(激光发射器)发射形成二维的扫描面,以实现区域扫描及轮廓测量功能。扫描激光器的测距原理包括:激光发射器发出激光脉冲波,当激光波碰到物体后,部分能量返回,当激光接收器收到返回激光波时,且返回波的能量足以触发门槛值,则扫描激光器计算它到物体的距离值。扫描激光器连续不停的发射激光脉冲波,激光脉冲波打在高速旋转的镜面上,将激光脉冲波发射向各个方向从而形成一个二维区域的扫描。此二维区域的扫描例如可以实现以下两个功能:1)在扫描激光器的扫描范围内,设置不同形状的保护区域,当有物体进入该区域时,发出报警信号;2)在扫描激光器的扫描范围内,扫描激光器输出每个障碍物测量点的距离,根据此距离信息,可以计算物体的外型轮廓,坐标定位等。
所述TOF测量装置基于TOF技术。TOF技术属于光学非接触式三维深度测量感知方式中的一种,通过给目标连续发送光脉冲,然后用传感器接收从物体返回的光,通过探测这些发射和接收光脉冲的飞行(往返)时间来得到目标物距离。TOF的照射单元都是对光进行高频调制之后再进行发射,一般采用LED或激光(包含激光二极管和VCSEL(VerticalCavity Surface Emitting Laser,垂直腔面发射激光器))来发射高性能脉冲光,本申请的实施例中,采用激光来发射高性能脉冲光。脉冲可达到100MHz左右,主要采用红外光。TOF测量装置应用的原理有以下两类,1)基于光学快门的方法;主要实现方式为:发射一束脉冲光波,通过光学快门快速精确获取照射到三维物体后反射回来的光波的时间差t,由于光速c已知,只要知道照射光和接收光的时间差,来回的距离可以通过公示d=t/2·c。2)基于连续波强度调制的方法;主要实现方式为:发射一束照明光,利用发射光波信号与反射光波信号的相位变化来进行距离测量。其中,照明模组的波长一般是红外波段,且需要进行高频率调制。TOF感光模组与普通手机摄像模组类似,由芯片,镜头,线路板等部件构成,TOF感光芯片每一个像元对发射光波的往返相机与物体之间的具体相位分别进行记录,通过数据处理单元提取出相位差,由公式计算出深度信息。TOF测量装置的体积小,可以直接输出被探测物体的深度数据,且TOF测量装置的深度计算结果不受物体表面灰度和特征的影响,可以非常准确的进行三维探测。
在此,所述移动机器人的导航方法S1包括如图1所示的步骤S11~步骤S13。
在所述步骤S11中,令所述测量装置测量所述移动机器人所在区域内障碍物相对于移动机器人的位置信息,并确定在所述区域内的候选识别对象所占的位置信息;其中,所述区域例如为房间,所述障碍物可以为该房间中任何能反射测量介质的实体对象。利用上述任一示例所提及的测量装置可测得障碍物相对于测量装置的位置信息,得到障碍物的轮廓信息,利用所述轮廓信息来确定在所述区域内的候选识别对象及其占的位置信息。其中,所述位置信息包括:偏角信息及所对应的距离信息,所述距离信息和偏角信息被称为障碍物相对于清洁机器人的位置信息,或简称为障碍物的位置信息。
参阅图2,图2显示为本申请的一具体实施例中确定在区域内候选识别对象所占的位置信息的流程示意图。即在一些实施例中,步骤S11中的所述确定在区域内候选识别对象所占的位置信息的步骤包括图2所示的步骤S111和步骤S112。
在所述步骤S111中,所述处理装置可依据测量所述区域内各障碍物测量点的位置信息以获得一个扫描轮廓及其所占位置信息。
在此,利用上述任一示例所提及的测量装置遍历地测量所在区域内二维或三维平面内的障碍物,可获得所在区域内二维或三维平面内由障碍物测量点构成的扫描轮廓。其中,所述障碍物测量点是障碍物上的、用于反射测距传感器所发出的测量介质处的反射点。其中,测量介质举例为激光光束、LED灯束、或红外光束等。所得到的扫描轮廓为一种由各障碍物测量点的位置信息构成的点阵矩阵,其中,所述位置信息包括障碍物测量点相对于测量装置的距离信息和偏角信息,或简称为障碍物测量点的位置信息。利用所测得的各测量障碍点的位置信息所构成的二维或三维阵列,构建障碍物的扫描轮廓。
对于位置信息的面阵列,所述步骤S111包括:基于所述测量装置测得各障碍物测量点的位置信息面阵列,拟合所述移动机器人的行进平面,以及确定位于所述行进平面上扫描轮廓及其所占位置信息。以所述测量装置为TOF测量装置、且所述TOF测量装置包含激光传感器阵列为例,所述位置信息面阵列为由激光传感器阵列测得。
在此,以所述移动机器人为清洁机器人为例进行说明。为测得清洁机器人周围的障碍物,所述测量装置被安装在体侧且靠近行进平面的位置处,例如测量装置安装在清洁机器人的体侧。因此,所获取的各障碍物测量点的位置信息面阵列中可包含地面、放置在上的物体、悬挂于空中的物体等多种障碍物的测量点的位置信息。鉴于所述测量装置的安装位置,根据所测得的障碍物测量点通常包含所述清洁机器人的行进平面,如地面,利用平面拟合方式确定障碍物测量点所构成的平面,所构成的平面被认为是所述行进平面,再根据所确定的行进平面,确定放置在所述行进平面上的扫描轮廓及其所占位置信息。例如,随机地从所述位置信息面阵列中选取到若干个障碍物测量点的位置信息,利用平面拟合方式选取一平面,其中构成该平面的障碍物测量点的数量最多,并将所述位置信息面阵列中位于所选取的平面上的各障碍物测量点作为处于所述清洁机器人的行进平面的障碍物测量点;按照位置信息面阵列中各像素点的位置信息,将位于所述行进平面上部的像素点的位置信息投影到所述行进平面,由此得到位于所述行进平面上扫描轮廓及其所占位置信息。例如,请参阅图3和图4,其中图3仅示意性的提供了按照清洁机器人中测量装置的安装位置而获取的包含凳子的位置信息面阵列的示意图,图4为基于图3的位置信息面阵列而确定的投影在地面的凳脚投影示意图。其中,按照前述拟合和投影方式,并结合图3和4所示,处理装置根据所得到的位置信息面阵列将从凳子的凳脚高度至地面各位置信息投影到所述行进平面后,会得到对应所述凳脚的块状投影。
对于位置信息的线阵列,所述步骤S111包括:基于所述测量装置所测得的平行于行进平面的位置信息线阵列,确定位于所述行进平面上扫描轮廓及其所占位置信息。以所述测量装置为扫描激光器为例,所述位置信息的线阵列由扫描激光器测得。
在此,所述激光扫描器可被安装于所述清洁机器人的顶部中间、顶部边缘或体侧。其中,所述扫描激光器的激光发射方向可与所述行进平面平行,且令所述扫描激光器在所述清洁机器人所在的位置以360度的角度进行旋转扫描,并通过所述扫描激光器的角度传感装置获取各障碍物测量点关于所述移动机器人的角度,且通过扫描激光器的测距传感装置(激光或红外测距装置),以测得障碍物测量点与所述清洁机器人之间的距离,进而获得平行于所述行进平面的位置信息线阵列,且由于所述位置信息线阵列与所述行进平面平行,所以,可以直接根据所述位置信息线阵列确定位于所述行进平面上扫描轮廓及其所占位置信息。以所述移动机器人为清洁机器人为例,由于扫描激光器相距地面的距离相当于清洁机器人的高度,因此,利用扫描激光器所得到的位置信息线阵列可表示地面上妨碍清洁机器人移动的障碍物的位置信息。
在一些实际应用中,测量装置的量程举例可以达到8米,而摄像装置通常并不能摄取到相应距离处的清晰图像。为使两种装置能匹配使用,在一些实施例中,所述处理装置令所述测量装置测量所述摄像装置的视场范围内障碍物相对于清洁机器人的位置信息,以令摄像装置获取包含所述测量装置测量的障碍物的图像。例如,处理装置对测量装置测得的位置信息进行筛选,即剔除所述测量装置对超出所述摄像装置的摄像范围的区域的障碍物测量点的位置信息,以根据剩余的有效位置信息获得测量装置测量的所述摄像装置的视场范围内障碍物相对于清洁机器人的位置信息。换言之,利用有效位置信息得到扫描轮廓及其所占位置信息。在另一些实施例中,所述处理装置令测量装置获取预设距离以内的各位置信息,其预设距离为固定值。例如,根据通常的屋内使用面积而确定预设距离,以确保测量装置能获取一间房间内各障碍物的位置信息,以及根据所获取的位置信息获得扫描轮廓及其所占位置信息。
在获得了所述扫描轮廓及其所占位置信息后,处理装置可利用特征线、特征点等组合确定扫描轮廓所描绘的候选识别对象及其位置信息。在一些实施方式中,处理装置还利用线化算法将构成扫描轮廓的点阵信息进行线化处理,得到用长线、短线来描述的扫描轮廓。其中,所述线化算法举例包括:膨胀与腐蚀算法等。参阅图5和图6,其中,图5仅示意性的显示了经测量装置测量而得到的扫描轮廓投影在行进平面的俯视示意图,其中,图6显示为对应图5的扫描轮廓经线化处理后的扫描轮廓投影在行进平面的俯视示意图。其中,图5中,原始获取的扫描轮廓包含间隔小于预设阈值的障碍物测量点构成的轮廓部分B1-B2,间隔大于预设阈值的障碍物测量点构成的轮廓部分B2-B3、和B4-B5。与图5对应地,由图6可见,经由线化算法处理后的扫描轮廓包含连续的长线构成的轮廓部分A1-A2,不连续短线构成的轮廓部分A2-A3和A4-A5。
藉由图5和图6所示示例推及至更具普适性的扫描轮廓,扫描轮廓可由连续部分和不连续部分组成。其中,在一些实施方式中,构成连续部分的条件pre1包括以下至少一种或多种组合:1)扫描轮廓中相邻的障碍物测量点之间的间距小于预设长度阈值且这些障碍物测量点的数量大于预设数量阈值的障碍物测量点所构成的轮廓部分,例如图5所示的B1-B2;2)扫描轮廓中线长大于预设长度阈值的连续线所构成的轮廓部分,例如,图6所示的A1-A2;3)基于1)和/或2)而确定的轮廓部分上各障碍物测量点中,其各位置信息符合预设的连续变化条件,其中,所述连续变化条件包括:相邻障碍物测量点的距离信息的差值小于预设距离突变阈值。例如,图5所示的B4-B5轮廓部分以及图6所示的A4-A5轮廓部分不构成连续部分。在此,前述提及的完整的扫描轮廓由不连续部分与连续部分构成,因此,不连续部分与连续部分可视为逻辑上的“或”关系。例如,图5中的B2-B3及B4-B5轮廓部分为不连续部分,图6中的A2-A3及A4-A5轮廓部分为不连续部分。
在另一些实施方式中,构成不连续部分的条件pre2包括以下至少一种或多种组合:1)扫描轮廓中相邻的障碍物测量点之间的间距大于预设长度阈值、且至少两端的的障碍物测量点与连续部分相连的轮廓部分,例如图5所示的B2-B3、和B4-B5;2)扫描轮廓中由线长小于预设长度阈值的至少一条且连续的短线所构成的轮廓部分,例如,图6所示的A2-A3、和A4-A5。在此,前述提及的完整的扫描轮廓由不连续部分与连续部分构成,因此,不连续部分与连续部分可视为逻辑上的“或”关系。例如,图5中的B2-B3及B4-B5轮廓部分为不连续部分,图6中的A2-A3及A4-A5轮廓部分为不连续部分。
为此,所述步骤S11包括步骤S112,即述按照所述扫描轮廓上的不连续部分,将所述扫描轮廓划分为多个候选识别对象,并确定各候选识别对象所占的位置信息的步骤。
在此,处理装置以不连续部分的边界将扫描轮廓进行分段处理,得到由连续部分构成的轮廓部分和由不连续部分构成的轮廓部分。在一些示例中,将连续部分和不连续部分分别作为候选识别对象,以及分别根据连续部分和不连续部分中的障碍物测量点的位置信息,确定对应候选识别对象所占的位置信息。在另一些示例中,利用预设的特征线、特征点等组合从连续部分确定至少一个候选识别对象,以及将不连续部分作为单独的候选识别对象,以及分别根据连续部分和不连续部分中的障碍物测量点的位置信息,确定对应候选识别对象所占的位置信息。应当理解,处理装置也可按照连续部分的边界将扫描轮廓进行分段处理,其应当视为与按照不连续部分的边界将扫描轮廓进行分段处理的方式相同或相似。
在一些示例中,基于扫描轮廓中的不连续部分确定候选识别对象的方式包括:基于所述扫描轮廓上由不连续部分所形成的缺口,确定相应候选识别对象为包含缺口的第一候选识别对象;以及根据所述扫描轮廓上由不连续部分所分隔的连续部分,确定相应候选识别对象为妨碍清洁机器人移动的第二候选识别对象。其中,第一候选识别对象和第二候选识别对象表示按照物体种类命名的、待识别的实体对象信息。其中,所述种类命名举例但不限于:门、窗、墙壁、桌子、椅子、球、柜子、袜子等。在一个候选识别对象中可包含一个或多个待识别的实体对象信息。
其中,所述第二候选识别对象意图包含待识别的、妨碍清洁机器人移动的实体对象,其举例包括但不限于以下至少一种:墙、柜子、风扇、沙发、箱子、袜子、球、桌(椅)脚等。所述第一候选识别对象意图表示待识别的能够连通/隔断两个空间区域的实体对象;其中,当连通两个空间区域时,该实体对象能可在扫描轮廓上形成缺口。例如,实体对象为门,当门敞开时连通屋里和屋外两个空间区域,当门关闭时隔断屋里和屋外两个空间区域。在此,所述第一候选识别对象主要用于为处于敞开状态的实体门而提供进一步筛选及确认的候选识别对象。事实上,受清洁机器人与屋内各实体对象之间的位置关系、实体对象的形状等影响,扫描轮廓上形成的缺口还可能是由两个实体对象之间形成的间隙、或实体对象的形状引起的。例如,扫描轮廓上的缺口可由两个衣柜之间的间隔、衣柜和墙之间的间隔等产生的。又如,扫描轮廓上的缺口为桌腿之间的间隔产生的。因此,需要进一步对所得到的第一候选识别对象进行筛选识别。
其中,为提高对第一候选识别对象的识别效率,在一些示例中,对所得到的扫描轮廓上的缺口及构成缺口两端的连续部分的位置信息进行进一步分析,以对所得到的缺口进行筛除处理。为此,所形成的缺口被限制为依附于所述连续部分而形成的缺口,一些孤立的、不依附于任何连续部分的缺口,例如桌子腿或凳子腿之间所形成的缺口,可为不属于所述第一候选识别对象所包含的缺口,应不属于所述第一候选识别对象所包含的缺口,则这些孤立的缺口所对应的候选识别对象并不是所述第一候选识别对象,需要进行筛除。另外,太小或太大的缺口也不应属于所述第一候选识别对象所包含的缺口。基于上述描述,可执行步骤S1121和步骤S1122。
在步骤S1121中,按照预设的筛选条件,对所形成的缺口进行筛选;其中,所述筛选条件包含:缺口位于与其相邻的至少一侧的连续部分所在沿线上、和/或预设的缺口宽度阈值。
在一些示例中,所述筛选条件包括缺口位于与其相邻的至少一侧的连续部分所在沿线上,则该缺口为与所述第一候选识别对象对应的缺口。举例所述缺口为实体门所对应的缺口,由于实体门一般是依附于墙而设立,镶嵌实体门的至少一侧墙体位于与所述缺口相邻的连续部分的沿线上。因此所述实体门打开时所形成所对应的缺口为对应所述第一候选识别对象的缺口。而凳子的两条凳腿对应的缺口一般是独立放置于物理空间中的,因此凳子的两条凳腿不处于任何连续部分的沿线上,属于孤立的缺口,则将这些孤立的缺口所对应的候选识别对象剔除在第一候选识别对象之外,并筛除相应的缺口。
在又一些示例中,所述筛选条件包括预设的缺口宽度阈值。其中,所述缺口宽度阈值可为单一数值或一数值区间。例如,若缺口的宽度在预设的缺口宽度阈值(举例为60cm~120cm)内,则该缺口为与所述第一候选识别对象对应的缺口。处理装置对构成缺口的障碍物测量点的位置信息进行缺口宽度的计算,并依据筛选条件对所得到的缺口进行筛除,即该缺口太大或大小都不是所述第一识别对象对应的缺口。
在另一些示例中,所述筛选条件包括缺口位于与其相邻的至少一侧的连续部分所在沿线上,且同时相应缺口的宽度在所述预设的缺口宽度阈值范围内。所述处理装置依据该筛选条件确定所述缺口对应的候选识别对象为包含所述缺口的第一候选识别对象。换言之,对扫描轮廓上的缺口的两侧均不处于与其相邻的连续部分所在沿线上,或所述缺口的宽度不处于所述预设的缺口宽度阈值范围内的缺口,确定为需要筛除的缺口。
在步骤S1122中,基于筛选后的缺口确定相应候选识别对象为包含所述缺口的第一候选识别对象。在此,基于由步骤S1121筛除后得到的缺口,确定相应的候选识别对象为包含所述缺口的第一候选识别对象。例如,当经筛除后得到的缺口位于与其相邻的至少一侧的连续部分所在沿线上且该缺口的宽度在预设的缺口宽度阈值范围内时,将该缺口及其两端确定为包含所述缺口的第一候选识别对象。又如,当所述缺口位于与其相邻的至少一侧的连续部分所在沿线上或缺口的宽度在预设的缺口宽度阈值范围内时,将该缺口及其两端确定为包含所述缺口的第一候选识别对象。
为确保第一候选识别对象和第二候选识别对象被准确识别,参见图1,其还包括步骤S12:根据所确定的候选识别对象所占的位置信息,令所述摄像装置获取包含所述候选识别对象的图像。
在此,所述移动机器人包括至少一个摄像装置。所述摄像装置在移动机器人所在位置摄取视场范围内实体对象并投影至所述移动机器人的行进平面,以得到投影图像。例如,移动机器人包含一个摄像装置,其设置于所述移动机器人顶部、肩部或背部,且主光轴垂直于所述移动机器人的行进平面。又如,移动机器人包含多个摄像装置,其中一个摄像装置的主光轴垂直于所述移动机器人的行进平面。再如,所述清洁机器人所包含的摄像装置,其嵌设在体侧或顶部且主光轴与行进平面具有一非垂直的倾斜角度;所述倾斜角度举例为在0°~60°之间的倾斜角度。
在一些实施方式中,所述摄像装置的主光轴垂直于行进平面,摄像装置所摄取的二维图像所在平面与所述行进平面具有平行关系。请参阅图7,其显示为移动机器人拍摄包含实体对象a的投影图像时,其与实体对象a在相应物理空间的示意图。图7中的移动机器人的至少一摄像装置的主光轴垂直于所述移动机器人的行进平面,在摄像装置拍摄一幅投影图像时,所拍摄到的实体对象a投影到该投影图像M1中的位置D1与同一实体对象a投影到行进平面M2中的位置D2,其中位置D1和D2相对于移动机器人的位置D具有相同角度的特点。以此类推,我们用摄像装置所摄取的实体对象在投影图像中的位置来表示该实体对象投影至所述移动机器人的行进平面的位置,且利用所述实体对象在投影图像中的位置相对于所述移动机器人移动方向的角度来表征该实体对象投影至所述移动机器人的行进平面的位置相对于所述移动机器人移动方向的角度。
在此,所述处理装置令所述测量装置测量所述摄像装置的视场范围内障碍物相对于移动机器人的位置信息;以及令所述摄像装置摄取所述候选识别对象投影至所述移动机器人的行进平面的图像。其中,利用摄像装置所摄取的候选识别对象在所述图像中的位置来表示该候选识别对象投影至所述移动机器人的行进平面的位置,且利用所述候选识别对象在所述图像中的位置相对于所述移动机器人移动方向的角度来表征该候选识别对象投影至所述移动机器人的行进平面的位置相对于所述移动机器人移动方向的角度。
在另一些实施例中,所述移动机器人还包括移动装置,当测量装置测得的候选识别对象所占位置信息在所述摄像装置的视场范围以外时,所述处理装置根据摄像装置的摄像参数控制移动装置运行,即根据所得到的候选识别对象所占位置信息控制所述清洁机器人移动,以摄取到包含候选识别对象的图像。其中,所述摄像参数包括视场范围、变焦区间等。例如,所述摄像装置的主光轴垂直于行进平面,所述处理装置控制移动装置按照测量装置所提供的候选识别对象的角度信息所指示的角度方向移动,并令所述摄像装置摄取所述候选识别对象投影至所述清洁机器人的行进平面的图像。又如,所述摄像装置的主光轴与行进平面之间具有前述提及的倾斜角度,处理装置控制移动装置按照测量装置所提供的候选识别对象的角度信息所指示的角度方向移动,并令所述摄像装置摄取包含候选识别对象的图像。其中,所述移动机器人可以为清洁机器人,所述清洁机器人的移动装置可包括行走机构和行走驱动机构,其中,所述行走机构可设置于所述机器人本体的底部,所述行走驱动机构内置于所述机器人本体内。所述行走机构可例如包括两个直行行走轮和至少一个辅助转向轮的组合,所述两个直行行走轮分别设于机器人本体的底部的相对两侧,所述两个直行行走轮可分别由对应的两个行走驱动机构实现独立驱动,即,左直行行走轮由左行走驱动机构驱动,右直行行走轮由右行走驱动机构驱动。所述的万向行走轮或直行行走轮可具有偏置下落式悬挂系统,以可移动方式紧固,例如以可旋转方式安装到机器人本体上,且接收向下及远离机器人本体偏置的弹簧偏置。所述弹簧偏置允许万向行走轮或直行行走轮以一定的着地力维持与地面的接触及牵引。在实际的应用中,所述至少一个辅助转向轮未参与的情形下,所述两个直行行走轮主要用于前进和后退,而在所述至少一个辅助转向轮参与并与所述两个直行行走轮配合的情形下,就可实现转向和旋转等移动。所述行走驱动机构可包括驱动电机和控制所述驱动电机的控制电路,利用所述驱动电机可驱动所述行走机构中的行走轮实现移动。在具体实现上,所述驱动电机可例如为可逆驱动电机,且所述驱动电机与所述行走轮的轮轴之间还可设置有变速机构。所述行走驱动机构可以可拆卸地安装到机器人本体上,方便拆装和维修。
在基于上述任一种装配的所述摄像装置摄取到包含所述候选识别对象的图像后,对所获取的图像进行识别处理。在一些实施方式中,所述步骤S12包括步骤S121,基于预设已知的多种实体对象的特征信息,识别所述图像中的候选识别对象的实体对象信息;所述特征信息可为所述多种实体对象的图像特征,所述图像特征能够标识图像中的实体对象信息,所述图像特征例如为关于所述实体对象信息的轮廓特征。例如,清洁机器人应用于室内环境中,所述预设已知的多种实体对象包括但不限于:桌子、椅子、沙发、花盆、鞋、袜、门、柜子、杯子等。其中,所述图像特征包括预设的对应实体对象种类的图形特征,或者经图像处理算法而得到的图像特征。其中,所述图像处理算法包括但不限于以下至少一种:灰度处理、锐化处理、轮廓提取、角提取、线提取,利用经机器学习而得到的图像处理算法。利用经机器学习而得到的图像处理算法包括但不限于:神经网络算法、聚类算法等。利用步骤S121,所述处理装置可从基于扫描轮廓的连续部分和不连续部分而划分的第二候选识别对象和第一候选识别对象中识别各自对应的实体对象信息。例如,利用图像处理算法确定第一候选识别对象是否为实体门,确定第二候选识别对象包含墙壁、衣柜等,并得到所确定的实体对象信息及其位置信息。
在另一些实施方式中,所述步骤S12包括步骤S122,利用预设的图像识别算法,构建所述图像中候选识别对象与已知的多种实体对象信息的映射关系,以确定候选识别对象所对应的实体对象信息。例如,移动机器人中的存储装置所存储的程序包含神经网络模型的网络结构及连接方式。在某些实施例中,所述神经网络模型可以为卷积神经网络,所述网络结构包括输入层、至少一层隐藏层和至少一层输出层。其中,所述输入层用于接收所拍摄的图像或者经预处理后的图像;所述隐藏层包含卷积层和激活函数层,甚至还可以包含归一化层、池化层、融合层中的至少一种等;所述输出层用于输出标记有物体种类标签的图像。所述连接方式根据各层在神经网络模型中的连接关系而确定。例如,基于数据传输而设置的前后层连接关系,基于各隐藏层中卷积核尺寸而设置与前层数据的连接关系,以及全连接等。所述神经网络模型从图像中识别出的各物体分类。当所述实体对象为门时,其对应的特征信息可为包括两条垂直于所述清洁机器人的行进平面的特征线,且两条特征线间的距离在一预设的宽度阈值范围内,即:利用所述图像识别算法,构建所述图像中候选识别对象与已知的多种实体对象信息的映射关系,且查找到所述图像中候选识别对象与已知的实体门相对应,则确定候选识别对象所对应的实体对象信息为门所对应的实体对象信息。利用步骤S122,所述处理装置可从基于扫描轮廓的连续部分和不连续部分而得到的第二候选识别对象和第一候选识别对象中识别器对应的实体对象信息。
在又一些实施方式中,所述步骤S12包括步骤S123和步骤S124,在步骤S123中,根据所述候选识别对象所占位置信息中的角度范围,确定所述图像中对应角度范围内的图像区域。在步骤S124中,对所述图像区域进行特征识别以确定所述候选识别对象相应的实体对象信息。在此实施例中,所述摄像装置的主光轴垂直于行进平面,且参阅图3及其相关描述,所述候选识别对象在图像中的角度范围可表征该候选识别对象所对应的实体对象投影至所述移动机器人的行进平面的角度范围,利用测量装置所测得的候选识别对象所占位置信息中的角度范围,确定所述图像中对应角度范围内的图像区域。在一些实施例中,处理装置可利用前述步骤S121或S122所提供的识别方式在所述图像区域中识别候选识别对象,以提高识别运算效率。
在另一些实施例中,当所述候选识别对象为包含带有缺口的第一候选识别对象,所述步骤S123可包含步骤S1231和步骤S1232。
在所述步骤S1231中,基于所述第一候选识别对象两端的位置信息确定至少一个角度范围;在所述步骤S1232中,按照所确定的角度范围从所述图像中确定用于识别相应第一候选识别对象的实体对象信息的图像区域。
在一些实施例中,按照第一候选识别对象两端的位置信息,确定包含所述候选识别对象两端的位置信息的一个角度范围,即该角度范围包含所述第一候选识别对象的整个缺口,且按照该包含与所述候选识别对象对应的缺口的角度范围,作为用于识别所述第一候选识别对象的实体对象信息的图像区域,例如,请参阅图8,图8显示为本申请的一具体实施例中场景应用示意图。图8中,所述第一候选识别对象例如为候选门81,所述移动机器人为清洁机器人82,候选门81的两端分别与所述清洁机器人82的移动方向所呈的角度为10度和25度,则选取该10度到25度的角度范围内的区域作为用于识别所述第一候选识别对象的实体对象信息的图像区域。另一些实施例中,分别对所述第一候选识别对象的两端进行包含单端的小角度范围的选取,即选取关于所述第一候选识别对象的两端的两个小的角度范围,并将其作为用于识别所述第一候选识别对象的实体对象信息的图像区域。例如,请参阅图9,图9显示为本申请的一具体实施例中场景应用示意图。图9中,所述第一候选识别对象例如为候选门91,所述移动机器人为清洁机器人92,所述候选门91的两端分别与所述清洁机器人92的移动方向所呈的角度为10度和25度,则在所述候选门91与所述清洁机器人92的移动方向所呈的角度为10度的一端,选取关于所述清洁机器人92的移动方向呈9度到11度的第一角度范围,以及在所述候选门91与所述清洁机器人92的移动方向所呈的角度为25度的另一端,选取关于所述清洁机器人92的移动方向呈24度到26度的第二角度范围,选取所述第一角度范围和第二角度范围作为用于识别所述候选门91的实体对象信息的图像区域。
在一些示例中,所述步骤S124可包括前述步骤S121或S122,即处理装置可按照前述步骤S121或S122所提供的识别方式在所选取的图像区域中识别第一候选识别对象。
在又一些示例中,根据摄像装置的主光轴与清洁机器人的行进平面的角度关系,使得实体门的门框投影在图像中会呈现具有灭点的特征,则利用测量装置所得到的第一候选识别对象若可被识别为实体门,将在所选取的图像区域中包含对应上述特点的特征线。以摄像装置的主光轴与清洁机器人的行进平面为垂直角度关系为例,在实际应用中,清洁机器人的高度一般比较低,摄像装置对门的摄取角度,一般为从下往上的角度,当所述第一候选识别对象为待识别的实体门时,摄像装置距离实体门的下部较近,而距离实体门的上部较远。由于图像的透视关系,在所述摄像装置所摄取的图像中,距离所述摄像装置较近的实体对象对应的图像较大,而距离所述摄像装置较远的实体对象对象的图像较小,在所述摄像装置摄取的图像中会出现在第一候选识别对象所在角度范围内的多条特征线及其延长线汇聚于一个点,该点被视为灭点。为此,所述步骤S124还包括步骤S1241和S1242,即处理装置通过执行下述步骤S1241和S1242来确定第一候选识别对象是否为实体门。
步骤S1241:根据所述第一候选识别对象所占的位置信息,在所述图像中识别出至少两条用于表示垂直于所述行进平面的特征线。
步骤S1242:基于所识别出的特征线确定所述第一候选识别对象为用于表示门的实体对象信息。在此,根据第一候选识别对象所占的位置信息,对与所述位置信息相关的角度范围内的图像区域进行识别,在所述图像区域中识别出至少三条特征线所在直线交汇于一点,则确定该至少三条用于表示垂直于所述行进平面的特征线;进而基于所识别出的特征线确定所述第一候选识别对象为用于表示门的实体对象信息,即确定第一候选识别对象的实体对象信息为门。
在一些实施例中,所述移动机器人的导航方法S1还包括将所确定的实体对象信息及其位置信息标记在用于设置导航路线的地图中的步骤。在一些实施例中,所述地图为一种栅格地图,预先确定单位栅格尺寸与物理空间的单位尺寸之间的映射关系,将所得到的实体对象信息及其位置信息标记到所述地图的对应栅格位置。例如可以将对应各所述实体对象信息的文字描述、图像标识、或者编号标记于所述地图中,所述文字描述可以为对各实体对象信息的种类的名称描述,例如包括对桌子、椅子、花盆、电视以及冰箱等物体的名称描述。例如对应所述桌子的名称描述为“桌子”,对应所述电视的名称描述为“电视”。所述图像标识可以为对应各实体对象信息的种类的实际形象的图标。所述编号可以为预先对应各所述实体对象信息进行编排的数字标号。例如“001”代表冰箱,“002”代表椅子,“003”代表桌子、“004”代表门等。所述移动机器人为清洁机器人,在一些示例中,移动机器人基于预先确定的清扫区域设计遍历该清扫区域的导航路线,例如,根据地图中位于所述清扫区域内的实体对象的标记信息,移动机器人根据相应的标记信息确定便于清洁的导航路线。其中,所述清扫区域包括但不限于以下至少一种:按照预设栅格数量划分的清扫区域、以及按照房间分割的清扫区域等。例如,在所获取的地图中的一清扫区域内,标记有桌子及其位置信息,故,在设计导航路线时设计包含围绕桌腿旋转的导航路线。
利用标记有实体对象的标记信息的地图,所述导航方法还包括步骤S13,即依据所述实体对象信息及其位置信息确定所述移动机器人在所述区域内的导航路线。
在一些实施例中,所述移动机器人为清洁机器人,且依据所述实体对象信息及所述清洁机器人所在区域划分移动机器人的清洁区域,并设计在所述行走区域中的导航路线。其中所述位置信息包括所述实体对象的测量点相对于所述清洁机器人的距离和角度。在一些实施例中,所述清洁区域为基于所述实体对象信息而确定的房间区域;例如当由实体对象“墙”和实体对象“门”所组成的房间区域中包含实体对象“床”时,该包含床这一实体对象的房间区域则为卧室。且当由实体对象“墙”和实体对象“门”所组成的房间区域中包含沙发这一实体对象时,该包含沙发这一实体对象的房间区域为客厅。且根据获得的所述客厅、卧室等区域划分清洁区域,且可向所述清洁机器人发送依次遍历所述客厅和卧室的清洁指令。且所述清洁机器人可以以预先设置遍历所述清洁区域的清洁单位范围,每个所述清洁单位范围可以包含九个栅格区域,每次为所述清洁机器人规划接下来需要清扫的九个栅格,且在该九个栅格区域被清洁完毕后,为所述清洁机器人规划下一个清洁单位范围,且当规划的清洁单位范围由于障碍物(例如墙或柜子)的阻隔而无法规划到九个栅格区域时,则以所述障碍物为截止点,将未被障碍物阻挡的栅格区域作为所述清洁机器人接下来需要遍历清洁的清洁范围,例如由于墙的阻隔,下个规划的清扫区域只能达到六个栅格区域时,则以该六个栅格区域作为所述清洁机器人接下来需要遍历的清扫区域,并以此类推,直到所述清洁机器人遍历了当前所在的清洁区域。
在另一些实施例中,所述清洁区域为按照预设区域范围和位于所述区域范围内的实体对象信息所占位置信息而划分的区域。且当所确定的实体对象信息包含实体门时,还包括在所述实体门所对应的位置信息处设置虚拟墙的步骤;以便依据所述虚拟墙及所述清洁机器人所在区域划分清洁机器人的清洁区域,并设计在所述行走区域中的导航路线。所述预设区域范围例如为用户的家,用户的家可包括客厅、卧室、厨房以及卫生间这三个区域,且每个区域都存在实体门,且当通过所述测量装置和所述摄像装置获取到各实体们对象所占位置信息后,在所述实体门所对应的位置信息处设置虚拟墙,且虚拟墙以及与虚拟墙连接的实体墙的结合组成一个独立的区域,进而根据所述虚拟墙以及所述清洁机器人所在区域划分清洁机器人的清洁区域,例如根据所述虚拟墙将所述用户的家这个区域范围划分为四个清洁区域,分别为客厅、卧室、厨房以及卫生间。且在每个所述清洁区域内以预设的遍历方式进行遍历清洁。
在另一些实施例中,在将所确定的实体对象信息及其位置信息标记在用于设置导航路线的地图中后,依据所述实体对象信息及其位置信息确定所述移动机器人在所述区域内的导航路线的步骤还包括:基于包含实体对象信息的指令信息,设置导航至所述实体对象信息的导航路线;于本实施例中,所述实体对象信息例如为对各实体对象信息的种类的名称描述,例如包括对桌子、椅子、花盆、电视、冰箱以及门等物体的名称描述。
其中,获取包含实体对象信息的指令信息的方式包括但不限于:语音方式、文本方式等。在此,根据用户对移动机器人的操作目的,所述指令中还可以包含移动机器人的执行指令。例如,所述指令还包括清扫指令、巡视指令、远程操控指令等。
在一种实施例中,所述基于包含实体对象信息的指令信息,设置导航至所述实体对象信息的导航路线的步骤可以包括:获取一语音信息,并从所述语音信息中识别包含实体对象信息的指令。在一示例中,移动机器人可以直接接收用户的语音信息并识别所述信息中包括的实体对象信息的指令。例如,用户可以直接向移动机器人语音“桌子”,移动机器人在接收到所述指令后移动至桌子以进行预先设定的相应处理。且可以根据路线上经过的实体对象信息规划所述移动机器人从当前的位置移动至桌子的导航路线。所述移动机器人从当前位置移动到所述桌子的导航路线上可经过花盆、电视、沙发等。以移动机器人为例,预先设定移动机器人在接收到用户包含实体对象信息的指令后,根据所构建的地图规划导航路线,以令所述移动机器人移动至该实体对象信息对应的位置以进行清扫,则在用户向移动机器人语音“桌子”的情况下,移动机器人在接收到该语音指令后,根据所构建的地图,形成令所根据花盆、电视和沙发形成的导航路线,且所述移动机器人在经过根据所述花盆、电视和沙发形成的导航路线后移动至桌子处并执行清扫操作。另外,所述语音信息并不限于仅表示实体对象信息的短指令,还可以是包括实体对象信息的长指令,例如,用户语音“去桌子处”,则移动机器人可以识别语音信息中所包括的实体对象信息“桌子”指令,然后进行后续操作。
在另一种实施例中,所述基于包含实体对象信息的指令信息,设置导航至所述实体对象信息的导航路线的步骤还包括:自一终端设备获取包含实体对象信息的指令。其中,所述终端设备与移动机器人无线连接。在一示例中,用户经由终端设备以文本方式输入包含实体对象信息的指令。例如,用户通过手机APP以文本方式输入“桌子”。在另一示例中,用于经由终端设备以语音方式输入包含实体对象信息的指令。例如,用户通过手机APP以语音方式输入“桌子”。另外,用户输入的语音信息并不限于仅表示实体对象信息的短指令,还可以是包括实体对象信息的长指令,例如,用户语音“去桌子处”,则终端设备将其翻译成文本并提取其中桌子等关键词,将所翻译的文本匹配到相应的指令上发送给移动机器人。在此,终端设备可以与移动机器人以wifi连接、近场通信或蓝牙配对等无线方式连接,以将终端设备接收的指令传送给移动机器人进行后续操作。所述终端设备例如为智能手机、平板电脑、可穿戴设备或其他具有智能处理功能的智能设备。
本申请的移动机器人的导航方法,可以根据测距传感装置和角度传感装置,或者TOF测量装置测量移动机器人所在区域内障碍物相对于移动机器人的角度和距离,准确的确定在所述区域内的候选识别对象的位置信息,并令摄像装置获取包含该候选识别对象的图像,进而确定该候选识别对象相应的实体对象信息,且根据该实体对象信息及其位置信息确定该移动机器人在所述区域内的导航路线,本申请在已获得较为精确的关于实体对象信的位置信息后,直接根据该实体对象信息规划导航路线,增加导航路线规划的准确性,且提高运行该导航方法的移动机器人的人机交互性。
对于清洁机器人来说,在遍历所清洁的室内地面期间,一些清洁机器人采用按照预设长宽尺寸划分区域的方式设计遍历相应区域内的导航路线,以便在移动期间完成清洁工作。另一些清洁机器人采用按照房间划分区域方式设计遍历房间区域内的导航路线,以便在移动期间完成清洁工作。对于采用前一种清洁方式进行地面清洁的机器人来说,当门敞开时,清洁机器人易于在房间尚未清洁完毕时,移出相应房间转而清洁其他房间。这是因为清洁机器人在划分区域时按照预设方向设计相邻清洁区域的优先级,由此导致房间内产生需要补扫的区域。对于采用后一种清洁方式进行地面清洁的机器人来说,当门敞开时,清洁机器人易于误判单个房间的区域,同样出现在一个房间尚未清洁完毕时移出相应房间转而清洁其他房间的情况。这是因为清洁机器人误将门作为房间内的通道,错误的划分了房间,由此房间内也会产生需要补扫的区域。当清洁机器人遗留了过多的补扫区域时,需要对补扫区域逐个补充清洁,这降低了清洁机器人的工作效率。为减少清洁机器人在清洁期间遗留的补扫区域的数量,本申请还提供一种划分清洁区域的方法,其旨在通过识别实体门,特别是识别处于敞开状态的实体门,相对于清洁机器人的位置,实现在划分清洁区域时参考实体门及其所占位置,以减少房间内的补扫区域,提高单次的清洁效率。
参阅图10,图10显示为本申请的划分清洁区域的方法在一具体实施例中的流程示意图。所述划分清洁区域的方法S2应用于一清洁机器人中,所述划分清洁区域的方法S2可由清洁机器人来执行。其中,所述清洁机器人包括处理装置、测量装置、摄像装置等。所述处理装置为一种能够进行数值运算、逻辑运算及数据分析的电子设备,其包括但不限于:CPU、GPU、FPGA等,以及用于暂存运算期间所产生的中间数据的易失性存储器,用于存储可执行所述方法的程序的非易失性存储器等。所述清洁机器人包含测量装置和摄像装置。所述摄像装置包括但不限于鱼眼摄像模块、广角(或非广角)摄像模块中的任一种。所述测量装置可安装于所述清洁机器人的体侧,所述测量装置举例可为扫描激光器或TOF传感器。其中扫描激光器包括角度传感装置和测距传感器,且通过所述角度传感器获取对应测距传感器所测量的距离信息的角度信息,且通过激光或者红外来测得障碍物测量点在所述扫描激光器当前角度上与所述测距传感器的距离。所述扫描激光器是相对于一固定参照系随时间改变方向、传播的起点或图样的激光器。扫描激光器基于激光测距原理,通过可旋转的光学部件(如激光发射器)发射形成二维的扫描面,以实现区域扫描及轮廓测量功能。扫描激光器的测距原理包括:激光发射器发出激光脉冲波,当激光波碰到物体后,部分能量返回,当激光接收器收到返回激光波时,且返回波的能量足以触发门槛值,则扫描激光器计算它到物体的距离值。扫描激光器连续不停的发射激光脉冲波,激光脉冲波打在高速旋转的镜面上,将激光脉冲波发射向各个方向从而形成一个二维区域的扫描。此二维区域的扫描例如可以实现以下两个功能:1)在扫描激光器的扫描范围内,设置不同形状的保护区域,当有物体进入该区域时,发出报警信号;2)在扫描激光器的扫描范围内,扫描激光器输出每个障碍物测量点的距离,根据此距离信息,可以计算物体的外型轮廓,坐标定位等。
所述TOF测量装置基于TOF技术。TOF技术属于光学非接触式三维深度测量感知方式中的一种,通过给目标连续发送光脉冲,然后用传感器接收从物体返回的光,通过探测这些发射和接收光脉冲的飞行(往返)时间来得到目标物距离。TOF的照射单元都是对光进行高频调制之后再进行发射,一般采用LED或激光(包含激光二极管和VCSEL(VerticalCavity Surface Emitting Laser,垂直腔面发射激光器))来发射高性能脉冲光,本申请的实施例中,采用激光来发射高性能脉冲光。脉冲可达到100MHz左右,主要采用红外光。TOF测量装置应用的原理有以下两类,1)基于光学快门的方法;主要实现方式为:发射一束脉冲光波,通过光学快门快速精确获取照射到三维物体后反射回来的光波的时间差t,由于光速c已知,只要知道照射光和接收光的时间差,来回的距离可以通过公示d=t/2·c。2)基于连续波强度调制的方法;主要实现方式为:发射一束照明光,利用发射光波信号与反射光波信号的相位变化来进行距离测量。其中,照明模组的波长一般是红外波段,且需要进行高频率调制。TOF感光模组与普通手机摄像模组类似,由芯片,镜头,线路板等部件构成,TOF感光芯片每一个像元对发射光波的往返相机与物体之间的具体相位分别进行记录,通过数据处理单元提取出相位差,由公式计算出深度信息。TOF测量装置的体积小,可以直接输出被探测物体的深度数据,且TOF测量装置的深度计算结果不受物体表面灰度和特征的影响,可以非常准确的进行三维探测。
在此,所述划分清洁区域的方法S2包括如图10所示的步骤S21~步骤S23,用以根据所述清洁机器人的测量装置和摄像装置获取所述清洁机器人所在区域内的实体门的位置,并根据该实体门及其位置信息,约束所述清洁机器人的清洁范围。
其中,在所述步骤S21中,令所述测量装置测量所述清洁机器人所在区域内障碍物相对于清洁机器人的位置信息,并确定在所述区域内的候选门所占的位置信息。其中,所述区域例如为房间。所述障碍物可以为该房间中任何能反射测量介质的实体对象。利用上述任一示例所提及的测量装置可测得障碍物相对于测量装置的位置信息,得到障碍物的轮廓信息,利用所述轮廓信息来确定在所述区域内的候选门及其占的位置信息。其中,所述位置信息包括:偏角信息及所对应的距离信息,所述距离信息和偏角信息被称为障碍物相对于清洁机器人的位置信息,或简称为障碍物的位置信息。
参阅图11,图11显示为本申请的一具体实施例中确定在区域内候选门所占的位置信息的流程示意图。即在一些实施例中,步骤S21中的所述确定在区域内候选门所占的位置信息的步骤包括图11所示的步骤S211和步骤S212。
在所述步骤S211中,所述处理装置可依据测量所述区域内各障碍物测量点的位置信息以获得一个扫描轮廓及其所占位置信息。
在此,利用上述任一示例所提及的测量装置遍历地测量所在区域内二维或三维平面内的障碍物,可获得所在区域内二维或三维平面内由障碍物测量点构成的扫描轮廓。其中,所述障碍物测量点是障碍物上的、用于反射测距传感器所发出的测量介质处的反射点。其中,测量介质举例为激光光束、LED灯束、或红外光束等。所得到的扫描轮廓为一种由各障碍物测量点的位置信息构成的点阵矩阵,其中,所述位置信息包括障碍物测量点相对于测量装置的距离信息和偏角信息,或简称为障碍物测量点的位置信息。利用所测得的各测量障碍点的位置信息所构成的二维或三维阵列,构建障碍物的扫描轮廓。
对于位置信息的面阵列,所述步骤S211包括:基于所述测量装置测得各障碍物测量点的位置信息面阵列,拟合所述清洁机器人的行进平面,以及确定位于所述行进平面上扫描轮廓及其所占位置信息。以所述测量装置为TOF测量装置、且所述TOF测量装置包含激光传感器阵列为例,所述位置信息面阵列为由激光传感器阵列测得。
为测得清洁机器人周围的障碍物,所述测量装置被安装在体侧且靠近行进平面的位置处,例如测量装置安装在清洁机器人的体侧。因此,所获取的各障碍物测量点的位置信息面阵列中可包含地面、放置在上的物体、悬挂于空中的物体等多种障碍物的测量点的位置信息。鉴于所述测量装置的安装位置,根据所测得的障碍物测量点通常包含所述清洁机器人的行进平面,如地面,利用平面拟合方式确定障碍物测量点所构成的平面,所构成的平面被认为是所述行进平面,再根据所确定的行进平面,确定放置在所述行进平面上的扫描轮廓及其所占位置信息。例如,随机地从所述位置信息面阵列中选取到若干个障碍物测量点的位置信息,利用平面拟合方式选取一平面,其中构成该平面的障碍物测量点的数量最多,并将所述位置信息面阵列中位于所选取的平面上的各障碍物测量点作为处于所述清洁机器人的行进平面的障碍物测量点;按照位置信息面阵列中各像素点的位置信息,将位于所述行进平面上部的像素点的位置信息投影到所述行进平面,由此得到位于所述行进平面上扫描轮廓及其所占位置信息。例如,请参阅图3和图4,其中图3仅示意性的提供了按照清洁机器人中测量装置的安装位置而获取的位置信息面阵列的示意图,图4为基于图3的位置信息面阵列而确定的投影在地面的凳脚投影示意图。其中,按照前述拟合和投影方式,并结合图3和4所示,处理装置根据所得到的位置信息面阵列将从凳子的凳脚高度至地面各位置信息投影到所述行进平面后,会得到对应所述凳脚的块状投影。
对于位置信息的线阵列,所述步骤S211还包括:基于所述测量装置所测得的平行于行进平面的位置信息线阵列,确定位于所述行进平面上扫描轮廓及其所占位置信息。以所述测量装置为扫描激光器为例,所述位置信息的线阵列由扫描激光器测得。
在此,所述激光扫描器可被安装于所述清洁机器人的顶部中间、顶部边缘或体侧。其中,所述扫描激光器的激光发射方向可与所述行进平面平行,且令所述扫描激光器在所述清洁机器人所在的位置以360度的角度进行旋转扫描,并通过所述扫描激光器的角度传感装置获取各障碍物测量点关于所述移动机器人的角度,且通过扫描激光器的测距传感装置(激光或红外测距装置),以测得障碍物测量点与所述清洁机器人之间的距离,进而获得平行于所述行进平面的位置信息线阵列,且由于所述位置信息线阵列与所述行进平面平行,所以,可以直接根据所述位置信息线阵列确定位于所述行进平面上扫描轮廓及其所占位置信息。以所述移动机器人为清洁机器人为例,由于扫描激光器相距地面的距离相当于清洁机器人的高度,因此,利用扫描激光器所得到的位置信息线阵列可表示地面上妨碍清洁机器人移动的障碍物的位置信息。
在一些实际应用中,测量装置的举例量程可以达到8米,而摄像装置通常并不能摄取到相应距离处的清晰图像。为使两种装置能匹配使用,在一些实施例中,所述处理装置令所述测量装置测量所述摄像装置的视场范围内障碍物相对于清洁机器人的位置信息,以令摄像装置获取包含所述测量装置测量的障碍物的图像。例如,处理装置对测量装置测得的位置信息进行筛选,即:剔除所述测量装置对超出所述摄像装置的摄像范围的区域的障碍物测量点的位置信息,以根据剩余的有效位置信息获得测量装置测量的所述摄像装置的视场范围内障碍物相对于清洁机器人的位置信息。换言之,利用有效位置信息得到扫描轮廓及其所占位置信息。在另一些实施例中,所述处理装置令测量装置获取预设距离以内的各位置信息,其预设距离为固定值。例如,根据通常的屋内使用面积而确定预设距离,以确保测量装置能获取一间房间内各障碍物的位置信息,以及根据所获取的位置信息获得扫描轮廓及其所占位置信息。
在获得了所述扫描轮廓及其所占位置信息后,处理装置可利用特征线、特征点等组合确定扫描轮廓所描绘的候选识别对象及其位置信息。在一些实施方式中,处理装置还利用线化算法将构成扫描轮廓的点阵信息进行线化处理,得到用长线、短线来描述的扫描轮廓。其中,所述线化算法举例包括:膨胀与腐蚀算法等。参阅图5和图6,其中,图5仅示意性的显示了经测量装置测量而得到的扫描轮廓投影在行进平面的俯视示意图,其中,图6显示为对应图5的扫描轮廓经线化处理后的扫描轮廓投影在行进平面的俯视示意图。其中,图5中,原始获取的扫描轮廓包含间隔小于预设阈值的障碍物测量点构成的轮廓部分B1-B2,间隔大于预设阈值的障碍物测量点构成的轮廓部分B2-B3和B4-B5。与图5对应地,由图6可见,经由线化算法处理后的扫描轮廓包含连续的长线构成的轮廓部分A1-A2,不连续短线构成的轮廓部分A2-A3和A4-A5。
藉由图5和图6所示示例推及至更具普适性的扫描轮廓,扫描轮廓可由连续部分和不连续部分组成。其中,在一些实施方式中,构成连续部分的条件pre1包括以下至少一种或多种组合:1)扫描轮廓中相邻的障碍物测量点之间的间距小于预设长度阈值且这些障碍物测量点的数量大于预设数量阈值的障碍物测量点所构成的轮廓部分,例如图5所示的B1-B2;2)扫描轮廓中线长大于预设长度阈值的连续线所构成的轮廓部分,例如,图6所示的A1-A2;3)基于1)和/或2)而确定的轮廓部分上各障碍物测量点中,其各位置信息符合预设的连续变化条件,其中,所述连续变化条件包括:相邻障碍物测量点的距离信息的差值小于预设距离突变阈值。例如,图5所示的B4-B5轮廓部分以及图6所示的A4-A5轮廓部分不构成连续部分。在此,前述提及的完整的扫描轮廓由不连续部分与连续部分构成,因此,不连续部分与连续部分可视为逻辑上的“或”关系。例如,图5中的B2-B3及B4-B5轮廓部分为不连续部分,图6中的A2-A3及A4-A5轮廓部分为不连续部分。
在另一些实施方式中,构成不连续部分的条件pre2包括以下至少一种或多种组合:1)扫描轮廓中相邻的障碍物测量点之间的间距大于预设长度阈值、且至少两端的的障碍物测量点与连续部分相连的轮廓部分,例如图5所示的B2-B3、和B4-B5;2)扫描轮廓中由线长小于预设长度阈值的至少一条且连续的短线所构成的轮廓部分,例如,图6所示的A2-A3、和A4-A5。在此,前述提及的完整的扫描轮廓由不连续部分与连续部分构成,因此,不连续部分与连续部分可视为逻辑上的“或”关系。例如,图5中的B2-B3及B4-B5轮廓部分为不连续部分,图6中的A2-A3及A4-A5轮廓部分为不连续部分。
为利用位置信息和图像识别处于敞开状态的实体门,以使清洁机器人在清洁完一间房间后再清洁下一房间,由此减少补扫区域。所述步骤S21包括步骤S212,即按照所述扫描轮廓上的不连续部分,确定各候选门所占的位置信息。在此,所述候选门主要用于为处于敞开状态的实体门而提供进一步筛选及确认。
在此,处理装置以不连续部分的边界将扫描轮廓进行分段处理,得到由连续部分构成的轮廓部分和由不连续部分构成的轮廓部分。在一些实施例中,将所述不连续部分作为候选识别对象,以及根据不连续部分中的障碍物测量点的位置信息,确定各候选门所占的位置信息。在另一些示例中,利用预设的特征线、特征点等组合将不连续部分作为单独的候选识别对象,以及根据不连续部分中的障碍物测量点的位置信息,确定对应候选门所占的位置信息。应当理解,处理装置也可按照连续部分的边界将扫描轮廓进行分段处理,其应当视为与按照不连续部分的边界将扫描轮廓进行分段处理的方式相同或相似。
所述扫描轮廓的不连续部分可形成对应相应实体对象的缺口。例如,实体对象为门,当门打开时连通屋里和屋外两个空间区域,当门关闭时隔断屋里和屋外两个空间区域。事实上,受清洁机器人与屋内各实体对象之间的位置关系、实体对象的形状等影响,扫描轮廓上形成的缺口还可能是由两个实体对象之间形成的间隙、或实体对象的形状引起的。例如,扫描轮廓上的缺口可由两个衣柜之间的间隔、衣柜和墙之间的间隔等产生的。又如,扫描轮廓上的缺口为桌腿之间的间隔产生的。因此,需要进一步对所得到的缺口进行筛选识别。
其中,为提高对候选门的识别效率,在一些示例中,对所得到的扫描轮廓上的缺口及构成缺口两端的连续部分的位置信息进行进一步分析,以对所得到的缺口进行筛除处理。为此,所形成的缺口被限制为依附于所述连续部分而形成的缺口,一些孤立的、不依附于任何连续部分的缺口,例如桌子腿或凳子腿之间所形成的缺口,可为不属于所述候选门所包含的缺口,则这些孤立的缺口所对应的实体对象并不是所述候选门,需要进行筛除。另外,太小或太大的缺口也不应属于所述候选门所包含的缺口。基于上述描述,可执行步骤S2121。
在所述步骤S2121中,按照预设的筛选条件对由不连续部分所形成的缺口进行筛选,并确定筛选后的缺口属于候选门。其中,所述筛选条件包含:缺口位于与其相邻的至少一侧的连续部分所在沿线上、和/或预设的缺口宽度阈值。
在一些示例中,所述筛选条件包括缺口位于与其相邻的至少一侧的连续部分所在沿线上,则该缺口为与所述候选门对应的缺口。举例所述缺口为实体门所对应的缺口,由于实体门一般是依附于墙而设立,镶嵌实体门的至少一侧墙体位于与所述缺口相邻的连续部分的沿线上。因此所述实体门打开时所形成所对应的缺口为对应所述候选门的缺口。而凳子的两条凳腿对应的缺口一般是独立放置于物理空间中的,因此凳子的两条凳腿不处于任何连续部分的沿线上,属于孤立的缺口,则将这些孤立的缺口所对应的对象剔除在候选门之外,并筛除相应的缺口。
在又一些示例中,所述筛选条件包括预设的缺口宽度阈值。其中,所述缺口宽度阈值可为单一数值或一数值区间。例如,门的门框间的宽度一般在60cm~120cm之间,所以还可以以此参数作为筛选候选门的条件,即缺口的宽度在预设的缺口宽度阈值(举例为60cm~120cm)内,则该缺口为与所述候选门象对应的缺口。处理装置对构成缺口的障碍物测量点的位置信息进行缺口宽度的计算,并依据筛选条件对所得到的缺口进行筛除,即该缺口太大或大小都不是所述候选门对应的缺口。
在另一些示例中,所述筛选条件包括缺口位于与其相邻的至少一侧的连续部分所在沿线上,且同时相应缺口的宽度在所述预设的缺口宽度阈值范围内。所述处理装置依据该筛选条件确定所述缺口对应候选门。换言之,对扫描轮廓上的缺口的两侧均不处于与其相邻的连续部分所在沿线上,或所述缺口的宽度不处于所述预设的缺口宽度阈值范围内的缺口,确定为需要筛除的缺口。
为确保所述候选门被准确识别,参见图10,其还包括步骤S22:根据所确定的候选门所占的位置信息,令所述摄像装置获取包含所述候选门的图像,并确定所述候选门为实体门。
在此,所述移动机器人包括至少一个摄像装置。所述摄像装置在移动机器人所在位置摄取视场范围内实体对象并投影至所述移动机器人的行进平面,以得到投影图像。例如,移动机器人包含一个摄像装置,其设置于所述移动机器人顶部、肩部或背部,且主光轴垂直于所述移动机器人的行进平面。又如,移动机器人包含多个摄像装置,其中一个摄像装置的主光轴垂直于所述移动机器人的行进平面。再如,所述清洁机器人所包含的摄像装置,其嵌设在体侧或顶部且主光轴与行进平面具有一非垂直的倾斜角度;所述倾斜角度举例为在0°~60°之间的倾斜角度。
在一些实施方式中,所述摄像装置的主光轴垂直于行进平面,摄像装置所摄取的二维图像所在平面与所述行进平面具有平行关系。请参阅图7,其显示为移动机器人拍摄包含实体对象a的投影图像时,其与实体对象a在相应物理空间的示意图。图7中的移动机器人的至少一摄像装置的主光轴垂直于所述移动机器人的行进平面,在摄像装置拍摄一幅投影图像时,所拍摄到的实体对象a投影到该投影图像M1中的位置D1与同一实体对象a投影到行进平面M2中的位置D2,其中位置D1和D2相对于移动机器人的位置D具有相同角度的特点。以此类推,我们用摄像装置所摄取的实体对象在投影图像中的位置来表示该实体对象投影至所述移动机器人的行进平面的位置,且利用所述实体对象在投影图像中的位置相对于所述移动机器人移动方向的角度来表征该实体对象投影至所述移动机器人的行进平面的位置相对于所述移动机器人移动方向的角度。
在此,所述处理装置令所述测量装置测量所述摄像装置的视场范围内障碍物相对于清洁机器人的位置信息以及令所述摄像装置摄取所述候选门投影至所述清洁机器人的行进平面的图像。其中,利用摄像装置所摄取的候选门在所述图像中的位置来表示该候选门投影至所述清洁机器人的行进平面的位置,且利用所述候选门在所述图像中的位置相对于所述清洁机器人移动方向的角度来表征该候选门投影至所述清洁机器人的行进平面的位置相对于所述清洁机器人移动方向的角度。
在另一些实施例中,所述清洁机器人还包括移动装置,当所述测量装置测得的所述候选门所占位置信息在所述摄像装置的视场范围以外时,所述处理装置根据摄像装置的摄像参数控制移动装置运行,即根据所得到的候选门所占位置信息控制所述清洁机器人移动,以摄取到包含候选门的图像。其中,所述摄像参数包括视场范围、变焦区间等。例如,所述摄像装置的主光轴垂直于行进平面,所述处理装置控制移动装置按照测量装置所提供的候选门的角度信息所指示的角度方向移动,并令所述摄像装置摄取所述候选门投影至所述清洁机器人的行进平面的图像。又如,所述摄像装置的主光轴与行进平面之间具有前述提及的倾斜角度,处理装置控制移动装置按照测量装置所提供的候选门的角度信息所指示的角度方向移动,并令所述摄像装置摄取包含候选门的图像。在此,所述清洁机器人的移动装置可包括行走机构和行走驱动机构,其中,所述行走机构可设置于所述机器人本体的底部,所述行走驱动机构内置于所述机器人本体内。所述行走机构可例如包括两个直行行走轮和至少一个辅助转向轮的组合,所述两个直行行走轮分别设于机器人本体的底部的相对两侧,所述两个直行行走轮可分别由对应的两个行走驱动机构实现独立驱动,即,左直行行走轮由左行走驱动机构驱动,右直行行走轮由右行走驱动机构驱动。所述的万向行走轮或直行行走轮可具有偏置下落式悬挂系统,以可移动方式紧固,例如以可旋转方式安装到机器人本体上,且接收向下及远离机器人本体偏置的弹簧偏置。所述弹簧偏置允许万向行走轮或直行行走轮以一定的着地力维持与地面的接触及牵引。在实际的应用中,所述至少一个辅助转向轮未参与的情形下,所述两个直行行走轮主要用于前进和后退,而在所述至少一个辅助转向轮参与并与所述两个直行行走轮配合的情形下,就可实现转向和旋转等移动。所述行走驱动机构可包括驱动电机和控制所述驱动电机的控制电路,利用所述驱动电机可驱动所述行走机构中的行走轮实现移动。在具体实现上,所述驱动电机可例如为可逆驱动电机,且所述驱动电机与所述行走轮的轮轴之间还可设置有变速机构。所述行走驱动机构可以可拆卸地安装到机器人本体上,方便拆装和维修。
在又一些实施方式中,所述步骤S22包括步骤S221和步骤S222,在步骤S221中,根据所述候选门所占位置信息中的角度范围,确定所述图像中对应角度范围内的图像区域。在所述步骤S222中,对所述图像区域进行特征识别以确定所述候选门为实体门。在此实施例中,所述摄像装置的主光轴垂直于行进平面,且参阅图3及其相关描述,所述候选门在图像中的角度范围可表征该候选门所对应的实体对象投影至所述移动机器人的行进平面的角度范围,利用测量装置所测得的候选门所占位置信息中的角度范围,确定所述图像中对应角度范围内的图像区域。且所述步骤S221还包括步骤S2211和步骤S2212。
在所述步骤S2211中,基于所述候选门两端的位置信息确定至少一个角度范围;在所述步骤S2212中,按照所确定的角度范围从所述图像中确定用于识别该候选门是否为实体门的图像区域。
在一些实施例中,按照候选门两端的位置信息,确定包含所述候选门两端的位置信息的一个角度范围,即该角度范围包含所述候选门的整个缺口,且按照该包含与所述候选门对应的缺口的角度范围,作为用于识别所述候选门是否为实体门的图像区域,例如,请参阅图8,图8显示为本申请的一具体实施例中场景应用示意图。图8中,所述候选门81的两端分别与所述清洁机器人82的移动方向所呈的角度为10度和25度,则选取该10度到25度的角度范围内的区域作为用于识别所述候选门是否为实体门的图像区域。另一些实施例中,分别对所述候选门的两端进行包含单端的小角度范围的选取,即选取关于所述候选门的两端的两个小的角度范围,并将其作为用于识别所述候选门是否为实体门的图像区域。例如,例如,请参阅图9,图9显示为本申请的一具体实施例中场景应用示意图。图9中,所述候选门91的两端分别与所述清洁机器人92的移动方向所呈的角度为10度和25度,则在所述候选门91与所述清洁机器人92的移动方向所呈的角度为10度的一端,选取关于所述清洁机器人92的移动方向呈9度到11度的第一角度范围,以及在所述候选门91与所述清洁机器人92的移动方向所呈的角度为25度的另一端,选取关于所述清洁机器人92的移动方向呈24度到26度的第二角度范围,选取所述第一角度范围和第二角度范围作为用于识别所述候选门91是否为实体门的图像区域。
在一些示例中,根据摄像装置的主光轴与清洁机器人的行进平面的角度关系,使得实体门的门框投影在图像中会呈现具有灭点的特征,则利用测量装置所得到的候选门若可被识别为实体门,将在所选取的图像区域中包含对应上述特点的特征线。以摄像装置的主光轴与清洁机器人的行进平面为垂直角度关系为例,在实际应用中,清洁机器人的高度一般比较低,摄像装置对门的摄取角度,一般为从下往上的角度,当所述候选门为待识别的实体门时,摄像装置距离实体门的下部较近,而距离实体门的上部较远。由于图像的透视关系,在所述摄像装置所摄取的图像中,距离所述摄像装置较近的实体对象对应的图像较大,而距离所述摄像装置较远的实体对象对象的图像较小,在所述摄像装置摄取的图像中会出现在候选门所在角度范围内的多条特征线会汇聚于一个灭点。为此,所述步骤S222可包括步骤S2221,即处理装置通过执行步骤S2221来确定候选门是否为实体门。在所述步骤S2221中,在所述图像中识别出至少两条用于表示垂直于所述行进平面的特征线,并基于所识别出的特征线确定所述候选门为实体门。在此,根据候选门所占的位置信息,对与所述位置信息相关的角度范围内的图像区域进行识别,在所述图像区域中识别出至少三条特征线所在直线交汇于一点,则确定该至少三条用于表示垂直于所述行进平面的特征线;进而基于所识别出的特征线确定所述候选门为实体门。
在另一些实施例中,还可以基于预设已知的实体门的特征信息,确定所述候选门为实体门;所述实体门的特征信息可为所述实体门的图像特征,所述图像特征能够标识图像中的实体门,所述图像特征例如为关于所述实体门的轮廓特征。其中,所述图像特征包括预设的对应实体门的图形特征,或者经图像处理算法而得到的图像特征。其中,所述图像处理算法包括但不限于以下至少一种:灰度处理、锐化处理、轮廓提取、角提取、线提取,利用经机器学习而得到的图像处理算法。利用经机器学习而得到的图像处理算法包括但不限于:神经网络算法、聚类算法等。且利用预设的图像识别算法,构建所述图像中候选门与已知的实体门的映射关系,以确定候选门为实体门。例如,存储器所存储的程序包含神经网络模型的网络结构及连接方式。在某些实施例中,所述神经网络模型可以为卷积神经网络,所述网络结构包括输入层、至少一层隐藏层和至少一层输出层。其中,所述输入层用于接收所拍摄的图像或者经预处理后的图像;所述隐藏层包含卷积层和激活函数层,甚至还可以包含归一化层、池化层、融合层中的至少一种等;所述输出层用于输出标记有物体种类标签的图像。所述连接方式根据各层在神经网络模型中的连接关系而确定。例如,基于数据传输而设置的前后层连接关系,基于各隐藏层中卷积核尺寸而设置与前层数据的连接关系,以及全连接等。所述神经网络模型从图像中识别出的各物体分类。所述实体门对应的特征信息可为包括两条垂直于所述清洁机器人的行进平面的特征线,且两条特征线间的距离在一预设的宽度阈值范围内,即利用所述图像识别算法,构建所述图像中候选门与实体门的映射关系,进而确定候选门为实体门。
在一些实施例中,所述划分清洁区域的方法法S2还包括将所确定的实体门及其位置信息标记在用于设置清洁路线的地图中的步骤。在一些实施例中,所述地图为一种栅格地图,预先确定单位栅格尺寸与物理空间的单位尺寸之间的映射关系,将所得到的实体门及其位置信息标记到所述地图的对应栅格位置。例如可以将对应实体门的文字描述、图像标识、或者编号标记于所述地图中,所述文字描述可以为对实体门的名称描述,例如实体门的名称描述为“门”。所述图像标识可以为对应实体门的实际形象的图标。所述编号可以为预先设置的关于实体门的数字标号,例如“001”。在一些示例中,清洁机器人基于预先确定的清扫区域设计遍历该清扫区域的导航路线,且根据地图中位于所述清扫区域内的实体门的标记信息,确定便于清洁的清洁路线。
利用标记有实体对象的标记信息的地图,所述划分清洁区域的方法还包括步骤S23,即依据所述实体门及其位置信息划分所述清洁机器人的清洁区域,以约束所述清洁机器人的行走范围。在一些实施例中,在所述实体门处设置虚拟墙;以及依据所述虚拟墙及所述清洁机器人所在区域划分清洁机器人的清洁区域。在一些实施例中,所述清洁区域为基于所述实体门而确定的房间区域;例如每个所述房间区域由所述虚拟墙以及实体墙组成,则根据设置的虚拟墙和测量得出的实体墙,可以确定多个房间区域,进而在所述清洁机器人所在的区域划分清洁区域。且所述清洁机器人可以以预先设置遍历所述清洁区域的清洁单位范围,每个所述清洁单位范围可以包含九个栅格区域,每次为所述清洁机器人规划接下来需要清扫的九个栅格,且在该九个栅格区域被清洁完毕后,为所述清洁机器人规划下一个清洁单位范围,且当规划的清洁单位范围由于障碍物(例如墙或柜子)的阻隔而无法规划到九个栅格区域时,则以所述障碍物为截止点,将未被障碍物阻挡的栅格区域作为所述清洁机器人接下来需要遍历清洁的清洁范围,例如由于墙的阻隔,下个规划的清扫区域只能达到六个栅格区域时,则以该六个栅格区域作为所述清洁机器人接下来需要遍历的清扫区域,并以此类推,直到所述清洁机器人遍历了当前所在的清洁区域。
在另一些实施例中,所述清洁区域为按照预设区域范围和位于所述区域范围内的实体门所占位置信息而划分的区域。例如,依据所述虚拟墙及所述清洁机器人所在区域划分清洁机器人的清洁区域,并约束所述清洁机器人的行走范围。所述预设区域范围例如为用户的家,用户的家可包括客厅、卧室、厨房以及卫生间这三个区域,且每个区域都存在实体门,且当通过所述测量装置和所述摄像装置获取到各实体们对象所占位置信息后,在所述实体门所对应的位置信息处设置虚拟墙,且虚拟墙以及与虚拟墙连接的实体墙的结合组成一个独立的区域,进而根据所述虚拟墙以及所述清洁机器人所在区域划分清洁机器人的清洁区域,例如根据所述虚拟墙将所述用户的家这个区域范围划分为四个清洁区域,分别为客厅、卧室、厨房以及卫生间。且在每个所述清洁区域内以预设的遍历方式进行遍历清洁。
本申请的划分清洁区域的方法,可以根据测距传感装置和角度传感装置,或者TOF测量装置测量清洁机器人所在区域内障碍物相对于清洁机器人的角度和距离,准确的确定在所述区域内的候选门的位置信息,并令摄像装置获取包含该候选门的图像,进而确定该候选门为实体门,依据所述实体门及其位置信息划分所述清洁机器人的清洁区域,以约束所述清洁机器人的行走范围,本申请在已获得较为精确的关于实体门的位置信息后,直接根据该实体门划分清洁机器人的清洁区域,可以较为准确且合理的划分清洁区域,符合用户平常对区域的划分习惯,且提高运行该划分清洁区域的方法的清洁机器人的人机交互性。
参阅图12,图12显示为本申请的移动机器人的导航系统在一具体实施例中的组成示意图。移动机器人的导航系统30包括测量装置31、摄像装置32和处理装置33。所述移动机器人包括但不限于:家庭陪伴式移动机器人、清洁机器人、巡逻式移动机器人、擦玻璃的机器人等。
所述测量装置31设置于所述移动机器人,用于测量所述移动机器人所在区域内障碍物相对于移动机器人的位置信息。在一些实施例中,所述测量装置可安装于所述移动机器人的体侧(嵌设于所述移动机器人的体侧),所述测量装置31举例可为扫描激光器或TOF传感器。其中扫描激光器包括角度传感装置和测距传感器,且通过所述角度传感器获取对应测距传感器所测量的距离信息的角度信息,且通过激光或者红外来测得障碍物测量点在所述扫描激光器当前角度上与所述测距传感器的距离。所述扫描激光器是相对于一固定参照系随时间改变方向、传播的起点或图样的激光器。扫描激光器基于激光测距原理,通过可旋转的光学部件(激光发射器)发射形成二维的扫描面,以实现区域扫描及轮廓测量功能。扫描激光器的测距原理包括:激光发射器发出激光脉冲波,当激光波碰到物体后,部分能量返回,当激光接收器收到返回激光波时,且返回波的能量足以触发门槛值,则扫描激光器计算它到物体的距离值。扫描激光器连续不停的发射激光脉冲波,激光脉冲波打在高速旋转的镜面上,将激光脉冲波发射向各个方向从而形成一个二维区域的扫描。此二维区域的扫描例如可以实现以下两个功能:1)在扫描激光器的扫描范围内,设置不同形状的保护区域,当有物体进入该区域时,发出报警信号;2)在扫描激光器的扫描范围内,扫描激光器输出每个障碍物测量点的距离,根据此距离信息,可以计算物体的外型轮廓,坐标定位等。
所述TOF测量装置31基于TOF技术。TOF技术属于光学非接触式三维深度测量感知方式中的一种,通过给目标连续发送光脉冲,然后用传感器接收从物体返回的光,通过探测这些发射和接收光脉冲的飞行(往返)时间来得到目标物距离。TOF的照射单元都是对光进行高频调制之后再进行发射,一般采用LED或激光(包含激光二极管和VCSEL(VerticalCavity Surface Emitting Laser,垂直腔面发射激光器))来发射高性能脉冲光,本申请的实施例中,采用激光来发射高性能脉冲光。脉冲可达到100MHz左右,主要采用红外光。TOF测量装置31应用的原理有以下两类,1)基于光学快门的方法;主要实现方式为:发射一束脉冲光波,通过光学快门快速精确获取照射到三维物体后反射回来的光波的时间差t,由于光速c已知,只要知道照射光和接收光的时间差,来回的距离可以通过公示d=t/2·c。2)基于连续波强度调制的方法;主要实现方式为:发射一束照明光,利用发射光波信号与反射光波信号的相位变化来进行距离测量。其中,照明模组的波长一般是红外波段,且需要进行高频率调制。TOF感光模组与普通手机摄像模组类似,由芯片,镜头,线路板等部件构成,TOF感光芯片每一个像元对发射光波的往返相机与物体之间的具体相位分别进行记录,通过数据处理单元提取出相位差,由公式计算出深度信息。TOF测量装置31的体积小,可以直接输出被探测物体的深度数据,且TOF测量装置31的深度计算结果不受物体表面灰度和特征的影响,可以非常准确的进行三维探测。
所述摄像装置32,设置于所述移动机器人,用于获取包含所述候选识别对象的图像;所述摄像装置32包括但不限于鱼眼摄像模块、广角(或非广角)摄像模块中的任一种。在此,所述移动机器人包括至少一个摄像装置32。所述摄像装置32在移动机器人所在位置摄取视场范围内实体对象并投影至所述移动机器人的行进平面,以得到投影图像。例如,移动机器人包含一个摄像装置,其设置于所述移动机器人顶部、肩部或背部,且主光轴垂直于所述移动机器人的行进平面。又如,移动机器人包含多个摄像装置32,其中一个摄像装置32的主光轴垂直于所述移动机器人的行进平面。且以上述方式设置的摄像装置32所拍摄的图像在所述移动机器人的行进平面的投影形成的投影图像,相当于所述摄像装置32所拍摄的图像在所述行进平面的垂直投影,例如,所述摄像装置32嵌设于所述移动机器人,且主光轴垂直于所述移动机器人的行进平面。
所述处理装置33连接所述测量装置31和摄像装置32,所述处理装置33为一种能够进行数值运算、逻辑运算及数据分析的电子设备,其包括但不限于:CPU、GPU、FPGA等,以及用于暂存运算期间所产生的中间数据的易失性存储器等。所述处理装置33用于运行至少一程序,以执行所述移动机器人的导航方法。所述移动机器人的导航方法参阅图1及关于图1的相关描述,在此不加赘述。
参阅图13,图13显示为本申请的移动机器人在一具体实施例中的组成示意图。移动机器人40包括测量装置41、摄像装置42、第一处理装置43、移动装置44以及第二处理装置45。
所述测量装置41设置于所述移动机器人,用于测量所述移动机器人所在区域内障碍物相对于移动机器人的位置信息。在一些实施例中,所述测量装置41可安装于所述移动机器人的体侧(嵌设于所述移动机器人的体侧),所述测量装置41举例可为扫描激光器或TOF传感器。
所述摄像装置42,设置于所述移动机器人,用于获取包含所述候选识别对象的图像;所述摄像装置42包括但不限于鱼眼摄像模块、广角(或非广角)摄像模块中的任一种。在此,所述移动机器人包括至少一个摄像装置42。所述摄像装置42在移动机器人所在位置摄取视场范围内实体对象并投影至所述移动机器人的行进平面,以得到投影图像。例如,移动机器人包含一个摄像装置,其设置于所述移动机器人顶部、肩部或背部,且主光轴垂直于所述移动机器人的行进平面。又如,移动机器人包含多个摄像装置42,其中一个摄像装置42的主光轴垂直于所述移动机器人的行进平面。且以上述方式设置的摄像装置42所拍摄的图像在所述移动机器人的行进平面的投影形成的投影图像,相当于所述摄像装置42所拍摄的图像在所述行进平面的垂直投影,例如,所述摄像装置42嵌设于所述移动机器人,且主光轴垂直于所述移动机器人的行进平面。
所述第一处理装置43连接所述测量装置41和摄像装置42,所述第一处理装置43为一种能够进行数值运算、逻辑运算及数据分析的电子设备,其包括但不限于:CPU、GPU、FPGA等,以及用于暂存运算期间所产生的中间数据的易失性存储器等。所述第一处理装置43用于运行至少一程序,以执行所述移动机器人的导航方法,以生成导航路线。所述移动机器人的导航方法参阅图1及关于图1的相关描述,在此不加赘述。
所述移动装置44设置于所述移动机器人,用于受控地调整所述移动机器人的位置和姿态;所述移动装置44可包括行走机构和行走驱动机构,其中,所述行走机构可设置于所述机器人本体的底部,所述行走驱动机构内置于所述机器人本体内。所述行走机构可例如包括两个直行行走轮和至少一个辅助转向轮的组合,所述两个直行行走轮分别设于机器人本体的底部的相对两侧,所述两个直行行走轮可分别由对应的两个行走驱动机构实现独立驱动,即,左直行行走轮由左行走驱动机构驱动,右直行行走轮由右行走驱动机构驱动。所述的万向行走轮或直行行走轮可具有偏置下落式悬挂系统,以可移动方式紧固,例如以可旋转方式安装到机器人本体上,且接收向下及远离机器人本体偏置的弹簧偏置。所述弹簧偏置允许万向行走轮或直行行走轮以一定的着地力维持与地面的接触及牵引。在实际的应用中,所述至少一个辅助转向轮未参与的情形下,所述两个直行行走轮主要用于前进和后退,而在所述至少一个辅助转向轮参与并与所述两个直行行走轮配合的情形下,就可实现转向和旋转等移动。所述行走驱动机构可包括驱动电机,利用所述驱动电机可驱动所述行走机构中的行走轮实现移动。在具体实现上,所述驱动电机可例如为可逆驱动电机,且所述驱动电机与所述行走轮的轮轴之间还可设置有变速机构。所述行走驱动机构可以可拆卸地安装到机器人本体上,方便拆装和维修。
所述第二处理装置45连接于所述第一处理装置43和移动装置44,用于运行至少一程序,以基于所述第一处理装置43所提供的导航路线,控制所述移动装置44调整位置和姿态,以沿所述导航路线进行自主移动。所述第二处理装置45例如为控制所述移动装置44的驱动电机(马达)运行的控制电路,所述第二处理装置45接收所述第一处理装置43发送的导航路线后,向所述驱动电机发送驱动命令,以控制所述移动装置调整位置和姿态,且根据预设的栅格地图,移动若干个单位栅格,以令所述移动机器人根据所述导航路线进行移动。
参阅图14,图14显示为本申请的划分清洁区域的系统在一具体实施例中的组成示意图。所述划分清洁区域的系统50用于清洁机器人,所述划分清洁区域的系统50包括:测量装置51、摄像装置52以及处理装置53。
所述测量装置51设置于所述清洁机器人,用于测量所述清洁机器人所在区域内障碍物相对于清洁机器人的位置信息。在一些实施例中,所述测量装置51可安装于所述清洁机器人的体侧(嵌设于所述移动机器人的体侧),所述测量装置51举例可为扫描激光器或TOF传感器。
所述摄像装置52,设置于所述清洁机器人,用于获取包含候选门的图像;所述摄像装置52包括但不限于鱼眼摄像模块、广角(或非广角)摄像模块中的任一种。在此,所述清洁机器人包括至少一个摄像装置52。所述摄像装置52在清洁机器人所在位置摄取视场范围内实体对象并投影至所述清洁机器人的行进平面,以得到投影图像。例如,清洁机器人包含一个摄像装置52,其设置于所述清洁机器人顶部、肩部或背部,且主光轴垂直于所述清洁机器人的行进平面。又如,清洁机器人包含多个摄像装置52,其中一个摄像装置52的主光轴垂直于所述清洁机器人的行进平面。且以上述方式设置的摄像装置52所拍摄的图像在所述清洁机器人的行进平面的投影形成的投影图像,相当于所述摄像装置52所拍摄的图像在所述行进平面的垂直投影,例如,所述摄像装置52嵌设于所述清洁机器人,且主光轴垂直于所述清洁机器人的行进平面。
所述处理装置53连接所述测量装置51和摄像装置52,所述处理装置53为一种能够进行数值运算、逻辑运算及数据分析的电子设备,其包括但不限于:CPU、GPU、FPGA等,以及用于暂存运算期间所产生的中间数据的易失性存储器等。所述处理装置53用于运行至少一程序,以执行所述划分清洁区域的方法。所述划分清洁区域的方法参阅图10及关于图10的相关描述,在此不加赘述。
参阅图15,图15显示为本申请的清洁机器人在一具体实施例中的组成示意图。清洁机器人60包括测量装置61、摄像装置62、第一处理装置63、移动装置64、清洁装置65以及第二处理装置66。
所述测量装置61设置于所述清洁机器人,用于测量所述清洁机器人所在区域内障碍物相对于清洁机器人的位置信息。在一些实施例中,所述测量装置41可安装于所述清洁机器人的体侧(嵌设于所述清洁机器人的体侧),所述测量装置41举例可为扫描激光器或TOF传感器。
所述摄像装置62,设置于所述清洁机器人,用于获取包含所述候选识别对象的图像;所述摄像装置62包括但不限于鱼眼摄像模块、广角(或非广角)摄像模块中的任一种。在此,所述清洁机器人包括至少一个摄像装置62。所述摄像装置62在清洁机器人所在位置摄取视场范围内实体对象并投影至所述清洁机器人的行进平面,以得到投影图像。例如,清洁机器人包含一个摄像装置,其设置于所述清洁机器人顶部、肩部或背部,且主光轴垂直于所述清洁机器人的行进平面。又如,清洁机器人包含多个摄像装置62,其中一个摄像装置42的主光轴垂直于所述清洁机器人的行进平面。且以上述方式设置的摄像装置62所拍摄的图像在所述清洁机器人的行进平面的投影形成的投影图像,相当于所述摄像装置62所拍摄的图像在所述行进平面的垂直投影,例如,所述摄像装置62嵌设于所述清洁机器人,且主光轴垂直于所述清洁机器人的行进平面。
所述第一处理装置63连接所述测量装置61和摄像装置62,所述第一处理装置63为一种能够进行数值运算、逻辑运算及数据分析的电子设备,其包括但不限于:CPU、GPU、FPGA等,以及用于暂存运算期间所产生的中间数据的易失性存储器等。所述第一处理装置63用于运行至少一程序,以执行所述划分清洁区域的方法,并利用所得到的清洁区域生成导航路线。所述划分清洁区域的方法参阅图10及关于图10的相关描述,在此不加赘述。
所述移动装置64设置于所述清洁机器人,用于受控地调整所述清洁机器人的位置和姿态;所述移动装置64可包括行走机构和行走驱动机构,其中,所述行走机构可设置于所述机器人本体的底部,所述行走驱动机构内置于所述机器人本体内。所述行走机构可例如包括两个直行行走轮和至少一个辅助转向轮的组合,所述两个直行行走轮分别设于机器人本体的底部的相对两侧,所述两个直行行走轮可分别由对应的两个行走驱动机构实现独立驱动,即,左直行行走轮由左行走驱动机构驱动,右直行行走轮由右行走驱动机构驱动。所述的万向行走轮或直行行走轮可具有偏置下落式悬挂系统,以可移动方式紧固,例如以可旋转方式安装到机器人本体上,且接收向下及远离机器人本体偏置的弹簧偏置。所述弹簧偏置允许万向行走轮或直行行走轮以一定的着地力维持与地面的接触及牵引。在实际的应用中,所述至少一个辅助转向轮未参与的情形下,所述两个直行行走轮主要用于前进和后退,而在所述至少一个辅助转向轮参与并与所述两个直行行走轮配合的情形下,就可实现转向和旋转等移动。所述行走驱动机构可包括驱动电机,利用所述驱动电机可驱动所述行走机构中的行走轮实现移动。在具体实现上,所述驱动电机可例如为可逆驱动电机,且所述驱动电机与所述行走轮的轮轴之间还可设置有变速机构。所述行走驱动机构可以可拆卸地安装到机器人本体上,方便拆装和维修。
所述清洁装置65可至少包括清扫组件和吸尘组件。所述清扫组件可包括位于所述清洁机器人的壳体的底部的清洁边刷以及与用于控制所述清洁边刷的边刷电机,其中,所述清洁边刷的数量可为两个,分别对称设置于所述壳体后端的相对两侧,所述清洁边刷可采用旋转清洁边刷,可在所述边刷电机的控制下作旋转。所述吸尘组件可包括集尘室和吸尘器,其中,所述集尘室内置于所述壳体,所述吸尘器的出气口与所述集尘室连通,所述吸尘器的进气口设于所述壳体的底部。
所述第二处理装置66连接于所述第一处理装置63并分别控制清洁装置65和移动装置64,用于运行至少一程序,以基于所述第一处理装置63所提供的导航路线,控制所述移动装置64调整位置和姿态,以沿所述导航路线进行自主移动,以及控制清洁装置65执行清洁操作。所述第二处理装置66接收所述第一处理装置63发送的导航路线后,向所述移动装置63的驱动电机发送驱动命令,以控制所述移动装置调整位置和姿态,且根据预设的栅格地图,移动若干个单位栅格,以令所述清洁机器人根据所述导航路线进行移动,且在所述清洁机器人移动的同时,所述第二处理装置66向所述边刷电机发送控制命令,以令所述边刷电机驱动所述清洁边刷进行旋转,且控制所述吸尘器开始工作。
参阅图16,图16显示为本申请的数据处理装置在一具体实施例中的组成示意图。
数据处理装置70用于移动机器人,所述数据处理装置70包括数据接口71、存储单元72以及处理单元73。
所述数据接口71用于连接所述移动机器人的摄像装置和测量装置;所述摄像装置在移动机器人所在位置摄取视场范围内实体对象并投影至所述移动机器人的行进平面,以得到投影图像。例如,移动机器人包含一个摄像装置,其设置于所述移动机器人顶部、肩部或背部,且主光轴垂直于所述移动机器人的行进平面。又如,移动机器人包含多个摄像装置,其中一个摄像装置的主光轴垂直于所述移动机器人的行进平面。
所述存储单元72,用于存储至少一程序;
所述处理单元73,与所述存储单元72和数据接口71相连,用于藉由所述数据接口71获取所述测量装置所提供的位置信息,以及获取所述摄像装置拍摄的图像;以及用于执行所述导航方法或划分清洁区域的方法。其中,所述导航方法参阅图1及关于图1的相关描述,所述划分清洁区域的方法参阅图10及关于图10的相关描述,在此不加赘述。
本申请另一实施例中,还公开一种计算机可读的存储介质,所述计算机可读的存储介质存储至少一种程序,所述至少一种程序在被调用时执行所述导航方法或划分清洁区域的方法。其中,所述导航方法参阅图1及关于图1的相关描述,所述划分清洁区域的方法参阅图10及关于图10的相关描述,在此不加赘述。
另外需要说明的是,通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请的部分或全部可借助软件并结合必需的通用硬件平台来实现。基于这样的理解,所述存储介质存储有至少一个程序,所述程序在被调用时执行前述的任一所述的导航方法。
基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可包括其上存储有机器可执行指令的一个或多个机器可读介质,这些指令在由诸如计算机、计算机网络或其他电子设备等一个或多个机器执行时可使得该一个或多个机器根据本申请的实施例来执行操作。例如执行机器人的定位方法中的各步骤等。机器可读介质可包括,但不限于,软盘、光盘、CD-ROM(紧致盘-只读存储器)、磁光盘、ROM(只读存储器)、RAM(随机存取存储器)、EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)、磁卡或光卡、闪存、或适于存储机器可执行指令的其他类型的介质/机器可读介质。其中,所述存储介质可位于机器人也可位于第三方服务器中,如位于提供某应用商城的服务器中。在此对具体应用商城不做限制,如小米应用商城、华为应用商城、苹果应用商城等。
本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
上述实施例仅例示性说明本申请的原理及其功效,而非用于限制本申请。任何熟悉此技术的人士皆可在不违背本申请的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本申请所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本申请的权利要求所涵盖。