发明内容
本申请实施例提供一种定位修正方法、装置、割草机器人以及存储介质,可以提高对割草机器人定位的准确性。
第一方面,本申请实施例提供了一种定位修正方法,包括:
在割草机器人执行割草作业时,采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据;
对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理;
确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值;
根据所述特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正所述割草机器人的位置。
可选地,在一些实施例中,所述根据所述特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正所述割草机器人的位置,包括:
根据所述特征点匹配关系对所述同步后惯性定位数据以及同步后轮速数据的时间戳进行更新;
对更新后惯性定位数据以及更新后轮速数据进行预积分处理;
基于更新后卫星数据,对所述割草机器人进行单点定位;
根据预积分结果以及单点定位结果,构建多传感器对应的定位因子图;
基于所述定位因子图以及每个特征点对应的深度值,修正所述割草机器人的位置。
可选地,在一些实施例中,所述根据所述特征点匹配关系、预积分结果以及单点定位结果,构建多传感器对应的定位因子图,包括:
构建所述单点定位结果对应的定位误差项;
构建预积分结果对应的预积分误差项;
基于所述定位误差项以及预积分误差项,构建多传感器对应的定位因子图。
可选地,在一些实施例中,所述基于所述定位因子图以及每个特征点对应的深度值,修正所述割草机器人的位置,包括:
对所述定位因子图进行非线性优化解算,得到所述割草机器人对应的位置预估结果;
基于所述位置预估结果,在所述双目图像中确定图像关键帧;
根据所述图像关键帧,修正所述割草机器人的位置。
可选地,在一些实施例中,所述根据所述图像关键帧,修正所述割草机器人的位置,包括:
根据所述图像关键帧,建立当前割草环境下对应的图像地图;
基于预设点云地图对所述图像地图进行检测;
当检测结果满足预设条件时,则修正所述割草机器人的位置。
可选地,在一些实施例中,所述对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理,包括:
获取每组双目图像对应的时间戳;
基于每组双目图像对应的时间戳,将所述惯性定位数据、卫星数据以及轮速数据与对应的双目图像进行时间对齐。
可选地,在一些实施例中,所述确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值,包括:
识别第K帧双目图像的特征点对应的特征点信息和第K-1帧双目图像的特征点对应的特征点信息,所述K为大于1的整数;
基于识别的特征点信息,确定相邻的同步后双目图像之间的特征点匹配关系;
将所述双目图像输入至预设深度识别网络中,得到所述双目图像中每个特征点的深度值。
第二方面,本申请实施例提供了一种定位修正装置,包括:
采集模块,用于在割草机器人执行割草作业时,采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据;
同步模块,用于对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理;
确定模块,用于确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值;
修正模块,用于根据所述特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正所述割草机器人的位置。
本申请实施例在割草机器人执行割草作业时,采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据,然后,对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理,接着,确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值,最后,根据所述特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正所述割草机器人的位置,在本申请提供的定位修正方案中,利用相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值,并融合惯性定位数据、卫星数据以及轮速数据,对割草机器人的定位进行修正,避免出现割草机器人受到障碍物干扰时而出现定位不准确的问题,由此,可以提高对割草机器人定位的准确性,进而提高割草效率。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者间接在该另一个元件上。当一个元件被称为是“连接于”另一个元件,它可以是直接连接到另一个元件或间接连接至该另一个元件上。另外,连接既可以是用于固定作用也可以是用于电路连通作用。
需要理解的是,术语“长度”、“宽度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明实施例和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多该特征。在本申请实施例的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
本申请实施例提供一种定位修正方法、装置、割草机器人和存储介质。
其中,该定位修正装置具体可以集成在割草机器人的微控制单元(Microcontroller Unit,MCU)中,还可以集成在智能终端或服务器中,MCU又称单片微型计算机(Single Chip Microcomputer)或者单片机,是把中央处理器(Central ProcessUnit,CPU)的频率与规格做适当缩减,并将内存(memory)、计数器(Timer)、USB、模数转换/数模转换、UART、PLC、DMA等周边接口,形成芯片级的计算机,为不同的应用场合做不同组合控制。割草机器人可以自动行走,防止碰撞,范围之内自动返回充电,具备安全检测和电池电量检测,具备一定爬坡能力,尤其适合家庭庭院、公共绿地等场所进行草坪修剪维护,其特点是:自动割草、清理草屑、自动避雨、自动充电、自动躲避障碍物、外形小巧、电子虚拟篱笆、网络控制等。
终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器,本申请在此不做限制。
例如,请参阅图1a,本申请提供一种割草***,包括相互之间建立有通信连接的割草机器人10、服务器20以及用户设备30。用户可以预先通过用户设备30控制割草机器人10移动,基于移动轨迹设定割草区域,并将该割草区域对应的数据同步至割草机器人10和服务器20中。
当割草机器人10在割草区域中进行割草作业时,可以采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据,比如,可以采集割草作业全过程的双目图像、惯性定位数据、卫星数据以及轮速数据,也可以采集某一时段内的双目图像、惯性定位数据、卫星数据以及轮速数据,随后,对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理,接着,确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值,最后,根据特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正割草机器人的位置。
在本申请提供的定位修正方案中,利用相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值,并融合惯性定位数据、卫星数据以及轮速数据,对割草机器人的定位进行修正,避免出现割草机器人受到障碍物干扰时而出现定位不准确的问题,由此,可以提高对割草机器人定位的准确性,进而提高割草效率。
以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优先顺序的限定。
一种定位修正方法,包括:在割草机器人执行割草作业时,采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据;对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理;确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值;根据特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正割草机器人的位置。
请参阅图1b,图1b为本申请实施例提供的定位修正方法的流程示意图。该定位修正方法的具体流程可以如下:
101、在割草机器人执行割草作业时,采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据。
其中,双目图像是基于视差原理并利用成像设备从不同的位置获取被测物体的两幅图像,即,双目图像具体可以包括左目图像和右目图像,惯性定位数据可以通过惯性定位单元采集的,该惯性定位数据可以包括割草机器人的三轴加速度信息以及三轴角速度信息等,卫星数据可以是通过接收机采集的,轮速数据可以是通过轮速计采集的,该轮速数据可以包括割草机器人行驶的距离以及每段路程轮胎所对应的转速等等。
可选地,在一些实施例中,可以采集割草作业全过程的双目图像、惯性定位数据、卫星数据以及轮速数据,也可以采集部分割草作业过程中的双目图像、惯性定位数据、卫星数据以及轮速数据,比如,当检测到割草机器人的卫星定位信号小于预设值时,则触发数据采集的操作,即,采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据。
102、对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理。
由于不同的传感器其采集数据的速度不同,故,会出现采集的双目图像、惯性定位数据、卫星数据以及轮速数据在时间上不同步,不便于后续进行联合定位,进而修正割草机器人的位置,因此,在本申请中,需要对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理,可选地,在一些实施例中,可以基于双目图像的时间戳,对惯性定位数据、卫星数据以及轮速数据进行时间同步处理,即,步骤“对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理”,具体可以包括:
(11)获取每组双目图像对应的时间戳;
(12)基于每组双目图像对应的时间戳,将惯性定位数据、卫星数据以及轮速数据与对应的双目图像进行时间对齐。
需要说明的,双目摄像机采集的为一组双目图像,因此,在本申请中,可以利用同一组双目图像中左目图像的时间戳或右目图像的时间戳,将惯性定位数据、卫星数据以及轮速数据与对应的双目图像进行时间对齐。
103、确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值。
在本申请中,特征点为双目图像中含有特殊信息的像素点,如含有位置信息的像素点、含有角度信息的像素点或物体轮廓线的连接点(又称角点)等,后续可以基于特征点匹配关系以及深度值修正割草机器人的位置,其中,特征点匹配关系可以用于辅助确定割草机器人与标的(即图像中的对象)的相对位置,深度值可以用于辅助确定割草机器人与标的(即图像中的对象)的距离。
可选地,在一些实施例中,该特征点可以为角点,特征点匹配关系则为角点匹配关系,需要说明的是,角点匹配(corner matching)是指寻找两幅图像之间的特征像素点的对应关系,从而确定两幅图像的位置关系,角点匹配可以分为以下三个步骤:
步骤1:在两张待匹配的图像中寻找那些最容易识别的像素点(角点),比如纹理丰富的物体边缘点等。
步骤2:对于检测出的角点,用一些数学上的特征对其进行描述,如梯度直方图,局部随机二值特征等。
步骤3:通过各个角点的描述子来判断它们在两张图像中的对应关系。
同时,还可以将同步后双目图像输入至预设深度识别网络中,输出同步后双目图像中每个特征点对应的深度值,即,可选地,在一些实施例中,步骤“确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值”,具体可以包括:
(21)识别第K帧双目图像的特征点对应的特征点信息和第K-1帧双目图像的特征点对应的特征点信息;
(22)基于识别的特征点信息,确定相邻的同步后双目图像之间的特征点匹配关系;
(23)将双目图像输入至预设深度识别网络中,得到双目图像中每个特征点的深度值。
其中,K为大于1的整数,比如,识别第2帧左目图像的特征点对应的特征点信息和第1帧左目图像的特征点对应的特征点信息,该特征点信息可以为描述子信息,描述子信息可以为梯度直方图信息,该描述子信息用于描述图像局部区域中梯度方向的出现次数,当然,该描述子信息可以是特征变换信息或加速稳健特征信息,具体可以根据实际情况进行选择,在此不作赘述。
此外,双目图像输入至预设深度识别网络后,其首先输出的是双目图像对应的视差图,视差图指的是同一个场景在两个相机下成像的像素的位置偏差,因为通常下两个双目相机是水放置的,所以该位置偏差一般体现在水平方向。比如场景中的X点在左相机是横坐标(x坐标),那么在右相机成像则是(x+d)坐标。其中d就是视差图中x坐标点的值,随后,获取采集设备(如双目相机)的基线和焦距,随后,基于样本视差图、基线和焦距,计算双目图像中每个特征点对应的深度值。
需要说明的,在本申请中,对“确定相邻的同步后双目图像之间的特征点匹配关系”的步骤和“确定每个特征点对应的深度值”的步骤的执行顺序不作限定,具体可以根据实际情况进行设置。
104、根据特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正割草机器人的位置。
由于双目图像、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据分别是由不同的传感器采集到的,为了后续对割草机器人的位置进行修正,因此,需要对采集的数据进行数据融合,可选地,在本申请的一些实施例中,可以通过因子图对采集的数据进行数据融合,进而对割草机器人的位置进行修正,即,步骤“根据特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正割草机器人的位置”,具体可以包括:
(31)根据特征点匹配关系对同步后惯性定位数据以及同步后轮速数据的时间戳进行更新;
(32)对更新后惯性定位数据以及更新后轮速数据进行预积分处理;
(33)基于更新后卫星数据,对割草机器人进行单点定位;
(34)根据预积分结果以及单点定位结果,构建多传感器对应的定位因子图;
(35)基于定位因子图以及每个特征点对应的深度值,修正割草机器人的位置。
其中,因子图作为一种表示因式分解的建模工具,具有简单通用性,尤其在编码领域、统计学、信号处理和人工智能领域有广泛的应用价值。因子图是一种概率图形模型,与贝叶斯网或马尔可夫随机场不同,它由变量和因子节点组成的二部图表示。在本申请中,将传感器测量值作为变量节点,测量值与割草机器人的位姿之间的概率关系作为因子节点,构建定位因子图。
由于惯性检测单元的采样频率高于双目摄像机的采样频率,而在时间同步中是以双目图像的时间为基准进行时间对齐的,因此,需要对同步后惯性定位数据以及同步后轮速数据进行预积分处理,需要说明的是,由于在不同双目图像中匹配的特征点可能会小于识别到的特征点,比如,第1帧双目图像中识别的特征点为100个,第2帧双目图像中识别的特征点为150个,第1帧双目图像与第2帧双目图像匹配的特征点为60个,即,以匹配的特征点的时间戳为基准,对同步后惯性定位数据以及同步后轮速数据的时间戳进行更新,同步后惯性定位数据以及同步后轮速数据的预积分解算结果均是速度和加速度等信息,进一步的,可以基于双目图像,建立特征点匹配关系、预积分结果以及单点定位结果对应的误差,然后,采用非线性优化算法对定位因子图的误差进行求解,进而得到割草机器人在世界坐标系下的预估位置,最后,通过该预估位置修正割草机器人的位置,即,可选地,在一些实施例中,步骤“根据特征点匹配关系、预积分结果以及单点定位结果,构建多传感器对应的定位因子图”,具体可以包括:
(41)构建单点定位结果对应的定位误差项;
(42)构建预积分结果对应的预积分误差项;
(43)基于定位误差项以及预积分误差项,构建多传感器对应的定位因子图。
例如,具体的,可以通过单点定位技术对割草机器人进行单点定位,由此,确定每个双目图像对应的单点定位,接着,可以采用参数估计法或模型法估计每个单点定位的误差,由此,构建单点定位结果对应的误差项;针对于预积分结果,其包含惯性定位数据对应的预积分结果和轮速数据对应的预积分结果,可以通过加速度误差模型和陀螺仪误差模型,构建惯性定位数据对应的误差项以及轮速数据对应的误差项,最后,基于定位误差项以及预积分误差项,构建多传感器对应的定位因子图。
紧接着,可以对定位因子图进行非线性优化解算,如采用最小二乘法解算定位因子图,然后,再对该解算结果进行边缘化数据残差处理,以预估割草机器人的预估位置,并基于该预估位置修正割草机器人的位置,即,可选地,在一些实施例中,步骤“基于定位因子图以及每个特征点对应的深度值,修正割草机器人的位置”,具体可以包括:
(51)对定位因子图进行非线性优化解算,得到割草机器人对应的位置预估结果;
(52)基于位置预估结果,在双目图像中确定图像关键帧;
(53)根据图像关键帧,修正割草机器人的位置。
例如,具体的,根据该位置预估结果,确定割草机器人定位出现变化对应的双目图像,将位置变化的双目图像确定为图像关键帧,并基于该图像关键帧建立相应的图像地图,最后,基于该图像地图修正割草机器人的位置,即,可选地,在一些实施例中,步骤“根据图像关键帧,修正割草机器人的位置”,具体可以包括:
(61)根据图像关键帧,建立当前割草环境下对应的图像地图;
(62)基于预设点云地图对图像地图进行检测;
(63)当检测结果满足预设条件时,则修正割草机器人的位置。
比如,具体的,获取预设的图像词袋模型,将双目图像输入值该图像词袋模型中,输出每个双目图像对应的图像类别,然后,基于该图像类别建立当前割草环境下对应的图像地图,紧接着,基于预设点云地图对图像地图进行检测,如进行几何一致性检测,当检测到闭环时,进行闭环检测,最后,根据闭环检测对应的闭环误差修正割草机器人的位置
本申请实施例在割草机器人执行割草作业时,采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据,然后,对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理,接着,确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值,最后,根据特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正割草机器人的位置,在本申请提供的定位修正方案中,利用相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值,并融合惯性定位数据、卫星数据以及轮速数据,对割草机器人的定位进行修正,避免出现割草机器人受到障碍物干扰时而出现定位不准确的问题,由此,可以提高对割草机器人定位的准确性,进而提高割草效率。
为便于更好的实施本申请实施例的定位修正方法,本申请实施例还提供一种基于上述定位修正装置。其中名词的含义与上述定位修正方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图2,图2为本申请实施例提供的定位修正装置的结构示意图,其中该定位修正装置可以包括采集模块201、同步模块202、确定模块203以及修正模块204,具体可以如下:
采集模块201,用于在割草机器人执行割草作业时,采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据。
例如,采集模块201可以采集割草作业全过程的双目图像、惯性定位数据、卫星数据以及轮速数据,也可以采集部分割草作业过程中的双目图像、惯性定位数据、卫星数据以及轮速数据。
同步模块202,用于对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理。
由于不同的传感器其采集数据的速度不同,故,会出现采集的双目图像、惯性定位数据、卫星数据以及轮速数据在时间上不同步,不便于后续进行联合定位,进而修正割草机器人的位置,因此,在本申请中,需要对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理,可选地,在一些实施例中,同步模块202具体可以用于:获取每组双目图像对应的时间戳;基于每组双目图像对应的时间戳,将惯性定位数据、卫星数据以及轮速数据与对应的双目图像进行时间对齐。
确定模块203,用于确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值。
可选地,在一些实施例中,确定模块203具体可以用于:识别第K帧双目图像的特征点对应的特征点信息和第K-1帧双目图像的特征点对应的特征点信息;基于识别的特征点信息,确定相邻的同步后双目图像之间的特征点匹配关系;将双目图像输入至预设深度识别网络中,得到双目图像中每个特征点的深度值。
修正模块204,用于根据特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正割草机器人的位置。
由于双目图像、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据分别是由不同的传感器采集到的,为了后续对割草机器人的位置进行修正,因此,需要对采集的数据进行数据融合,可选地,在本申请的一些实施例中,修正模块204具体可以包括:
更新单元,用于根据特征点匹配关系对同步后惯性定位数据以及同步后轮速数据的时间戳进行更新;
处理单元,用于对更新后惯性定位数据以及更新后轮速数据进行预积分处理;
定位单元,用于基于更新后卫星数据,对割草机器人进行单点定位;
构建单元,用于根据预积分结果以及单点定位结果,构建多传感器对应的定位因子图;
修正单元,用于基于定位因子图以及每个特征点对应的深度值,修正割草机器人的位置。
可选地,在本申请的一些实施例中,构建单元具体可以用于:构建单点定位结果对应的定位误差项;构建预积分结果对应的预积分误差项;基于定位误差项以及预积分误差项,构建多传感器对应的定位因子图。
可选地,在本申请的一些实施例中,修正单元具体可以包括:
解算子单元,用于对定位因子图进行非线性优化解算,得到割草机器人对应的位置预估结果;
确定子单元,用于基于位置预估结果,在双目图像中确定图像关键帧;
修正子单元,用于根据图像关键帧,修正割草机器人的位置。
可选地,在本申请的一些实施例中,修正子单元具体可以用于:根据图像关键帧,建立当前割草环境下对应的图像地图;基于预设点云地图对图像地图进行检测;当检测结果满足预设条件时,则修正割草机器人的位置。
本申请实施例的采集模块201在割草机器人执行割草作业时,采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据,然后,处理模块202对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理,接着,确定模块203确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值,最后,修正模块204根据特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正割草机器人的位置,在本申请提供的定位修正方案中,利用相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值,并融合惯性定位数据、卫星数据以及轮速数据,对割草机器人的定位进行修正,避免出现割草机器人受到障碍物干扰时而出现定位不准确的问题,由此,可以提高对割草机器人定位的准确性,进而提高割草效率。
此外,本申请实施例还提供一种割草机器人,如图3所示,其示出了本申请实施例所涉及的割草机器人的结构示意图,具体来讲:
该割草机器人可以包括控制模块301、行进机构302、切割模块303以及电源304等部件。本领域技术人员可以理解,图3中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
控制模块301是该割草机器人的控制中心,该控制模块301具体可以包括中央处理器(Central Process Unit,CPU)、存储器、输入/输出端口、***总线、定时器/计数器、数模转换器和模数转换器等组件,CPU通过运行或执行存储在存储器内的软件程序和/或模块,以及调用存储在存储器内的数据,执行割草机器人的各种功能和处理数据;优选的,CPU可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到CPU中。
存储器可用于存储软件程序以及模块,CPU通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供CPU对存储器的访问。
行进机构302与控制模块301电性相连,用于响应控制模块301传递的控制信号,调整割草机器人的行进速度和行进方向,实现割草机器人的自移动功能。
切割模块303与控制模块301电性相连,用于响应控制模块传递的控制信号,调整切割刀盘的高度和转速,实现割草作业。
电源304可以通过电源管理***与控制模块301逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源304还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,该割草机器人还可以包括通信模块、传感器模块、提示模块等,在此不再赘述。
通信模块用于收发信息过程中信号的接收和发送,通过与用户设备、基站或服务器建立通信连接,实现与用户设备、基站或服务器之间的信号收发。
传感器模块用于采集内部环境信息或外部环境信息,并将采集到的环境数据反馈给控制模块进行决策,实现割草机器人的精准定位和智能避障功能。可选地,传感器可以包括:超声波传感器、红外传感器、碰撞传感器、雨水感应器、激光雷达传感器、惯性测量单元、轮速计、图像传感器、位置传感器及其他传感器,对此不做限定。
提示模块用于提示用户当前割草机器人的工作状态。本方案中,提示模块包括但不限于指示灯、蜂鸣器等。例如,割草机器人可以通过指示灯提示用户当前的电源状态、电机的工作状态、传感器的工作状态等。又例如,当检测到割草机器人出现故障或被盗时,可以通过蜂鸣器实现告警提示。
具体在本实施例中,控制模块301中的处理器会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器中,并由处理器来运行存储在存储器中的应用程序,从而实现各种功能,如下:
在割草机器人执行割草作业时,采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据;对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理;确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值;根据特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正割草机器人的位置。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
本申请实施例在割草机器人执行割草作业时,采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据,然后,对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理,接着,确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值,最后,根据特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正割草机器人的位置,在本申请提供的定位修正方案中,利用相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值,并融合惯性定位数据、卫星数据以及轮速数据,对割草机器人的定位进行修正,避免出现割草机器人受到障碍物干扰时而出现定位不准确的问题,由此,可以提高对割草机器人定位的准确性,进而提高割草效率。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种定位修正方法中的步骤。例如,该指令可以执行如下步骤:
在割草机器人执行割草作业时,采集连续时间内的双目图像、惯性定位数据、卫星数据以及轮速数据;对采集的双目图像、惯性定位数据、卫星数据以及轮速数据进行时间同步处理;确定相邻的同步后双目图像之间的特征点匹配关系以及每个特征点对应的深度值;根据特征点匹配关系、每个特征点对应的深度值、同步后惯性定位数据、同步后卫星数据以及同步后轮速数据,修正割草机器人的位置。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本申请实施例所提供的任一种定位修正方法中的步骤,因此,可以实现本申请实施例所提供的任一种定位修正方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种定位修正方法、装置、割草机器人以及存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。