CN112729349A - 里程计在线标定的方法、装置、电子设备及存储介质 - Google Patents
里程计在线标定的方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112729349A CN112729349A CN202110331403.4A CN202110331403A CN112729349A CN 112729349 A CN112729349 A CN 112729349A CN 202110331403 A CN202110331403 A CN 202110331403A CN 112729349 A CN112729349 A CN 112729349A
- Authority
- CN
- China
- Prior art keywords
- robot
- pose
- filtering algorithm
- kalman filtering
- preset
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 150
- 238000001914 filtration Methods 0.000 claims abstract description 129
- 239000011159 matrix material Substances 0.000 claims description 131
- 238000006243 chemical reaction Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 10
- 238000006073 displacement reaction Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 4
- 230000014509 gene expression Effects 0.000 description 37
- 239000003550 marker Substances 0.000 description 5
- 238000012937 correction Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C25/00—Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass
Landscapes
- Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本申请公开了一种里程计在线标定的方法、装置、电子设备及存储介质,基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻机器人的位姿,然后通过响应于识别到预设路标,基于预设路标的预设位姿以及机器人在当前时刻的位姿,确定机器人与预设路标的相对位置关系信息作为卡尔曼滤波算法的观测变量;最后基于观测变量和当前时刻机器人的位姿的预测结果,确定指定参数的标定值。在不引入额外设备的前提下,通过将影响机器人的运行里程的参数添加至卡尔曼滤波算法的状态变量中,进而在机器人自主定位和导航过程中,利用卡尔曼滤波算法更新指定参数,可以实现对里程计的在线标定。
Description
技术领域
本申请涉及里程计数据处理技术领域,尤其涉及一种里程计在线标定的方法、装置、电子设备及存储介质。
背景技术
现有技术中,针对里程计的标定方法主要包括两种方式:一是通过离线标定里程计,二是通过引入额外的设备对里程计进行标定。例如,针对使用激光雷达和反光条进行双轮差速移动机器人里程计标定的轮间距修正的方案,通过计算机器人的实际自旋角和里程计的旋转角,拟合得到轮间距的修正系数。该方案为通过离线标定里程计。
或者,针对基于运动捕捉系统对里程计进行标定的方案,当机器人在预设的区域内行走时,同时利用运动捕捉系统对机器人进行定位,读取里程计计算的行走位移,计算得到里程计的补偿参数。该方案在进行里程计参数标定的时候采用了运动捕捉系统,而运动捕捉系统为引入的额外设备。
由于在里程计进行标定的过程中,引入额外的设备,导致里程计标定的成本过高,并且通过离线标定里程计,又不能及时获取到里程计的信息。
发明内容
本申请实施例提供一种里程计在线标定的方法、装置、电子设备及存储介质,可以在不引入额外设备前提下,实现里程计的在线标定。
一方面,本申请一实施例提供了一种里程计在线标定的方法,应用于机器人,所述方法包括:
基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻所述机器人的位姿,其中,所述状态变量的参数包括所述机器人上一时刻的位姿以及指定参数的初始值,所述指定参数为影响所述机器人的运行里程的参数,所述控制变量的参数包括距离所述当前时刻指定时长内所述机器人的移动距离;
响应于识别到预设路标,基于所述预设路标的预设位姿以及所述机器人在所述当前时刻的位姿,确定所述机器人与所述预设路标的相对位置关系信息作为所述卡尔曼滤波算法的观测变量;
基于所述观测变量和所述当前时刻所述机器人的位姿的预测结果,确定所述指定参数的标定值。
本申请的一实施例中,所述指定参数为以下参数中的一种或多种:
所述机器人左轮与右轮之间的轮距值、所述机器人的左轮轮径值、所述机器人的右轮轮径值。
本申请的一实施例中,所述状态变量包括均值矩阵和第一协方差矩阵,所述控制变量包括第二协方差矩阵,所述方法还包括:
通过以下方法确定所述卡尔曼滤波算法的状态变量、以及控制变量:
基于所述机器人上一时刻的位姿以及所述指定参数的初始值,确定所述卡尔曼滤波算法的状态变量的均值矩阵;
基于所述机器人上一时刻的位姿、所述指定参数的初始值、以及所述指定参数的预设误差值,确定所述卡尔曼滤波算法的状态变量的第一协方差矩阵;
基于所述指定时间内所述机器人的左轮和右轮分别移动的距离、以及所述机器人对应的里程计计算装置关联的系数值,确定所述卡尔曼滤波算法的控制变量的第二协方差矩阵。
本申请的一实施例中,所述基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻所述机器人的位姿,包括:
根据以下位姿预测公式预测当前时刻所述机器人的位姿:
本申请的一实施例中,所述基于所述观测变量和所述当前时刻所述机器人的位姿的预测结果,确定所述指定参数的标定值,包括:
分别对所述位姿预测公式中的所述上一时刻对应的所述卡尔曼滤波算法的状态变量的参数、以及控制变量的参数求导,得到第一雅克比矩阵和第二雅克比矩阵;
基于所述第一雅克比矩阵和所述第二雅克比矩阵、以及所述上一时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量、以及控制变量,确定所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量;
基于所述观测变量和所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量,确定所述指定参数的标定值。
本申请的一实施例中,所述基于所述预设路标的预设位姿以及所述机器人在所述当前时刻的位姿,确定所述机器人与所述预设路标的相对位置关系信息作为所述卡尔曼滤波算法的观测变量,包括:
根据所述预设路标的预设位姿以及所述机器人在所述当前时刻的位姿,计算所述预设路标与所述机器人之间的距离、所述预设路标在世界坐标系相对预设轴的第一相对角度、以及所述预设路标与所述机器人在世界坐标系中的第二相对角度;
将所述预设路标与所述机器人之间的距离、以及所述第一相对角度和所述第二相对角度作为所述卡尔曼滤波算法的第一观测变量的参数;
根据所述机器人中的相机与所述预设路标之间的位姿转换关系、以及所述相机与所述机器人之间的位姿转换关系,计算得到所述预设路标和所述机器人之间的位姿转换关系;
基于所述预设路标和所述机器人之间的位姿转换关系,确定所述卡尔曼滤波算法的第二观测变量的参数;
基于所述第一观测变量的参数、所述第二观测变量的参数,确定所述卡尔曼滤波算法的观测变量的参数。
本申请的一实施例中,所述基于所述观测变量和所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量,确定所述指定参数的标定值,包括:
分别对观测模型中的所述当前时刻对应的所述卡尔曼滤波算法的状态变量的参数求导,得到第三雅可比矩阵;其中,根据所述机器人在所述当前时刻的位姿以及所述预设路标的预设位姿创建所述观测模型;
基于所述观测模型对应的观测误差矩阵、所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量、以及所述第三雅可比矩阵,确定卡尔曼增益矩阵;
基于所述卡尔曼增益矩阵、所述当前时刻的所述卡尔曼滤波算法的状态变量、所述第一观测变量的参数、所述第二观测变量的参数以及所述第三雅可比矩阵,确定所述指定参数的标定值。
一方面,本申请一实施例提供了一种里程计在线标定的装置,应用于机器人,所述装置包括:
预测模块,用于基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻所述机器人的位姿,其中,所述状态变量的参数包括所述机器人上一时刻的位姿以及指定参数的初始值,所述指定参数为影响所述机器人的运行里程的参数,所述控制变量的参数包括距离所述当前时刻指定时长内所述机器人的移动距离;
观测模块,用于响应于识别到预设路标,基于所述预设路标的预设位姿以及所述机器人在所述当前时刻的位姿,确定所述机器人与所述预设路标的相对位置关系信息作为所述卡尔曼滤波算法的观测变量;
标定模块,用于基于所述观测变量和所述当前时刻所述机器人的位姿的预测结果,确定所述指定参数的标定值。
本申请的一实施例中,所述指定参数为以下参数中的一种或多种:
所述机器人左轮与右轮之间的轮距值、所述机器人的左轮轮径值、所述机器人的右轮轮径值。
本申请的一实施例中,所述状态变量包括均值矩阵和第一协方差矩阵,所述控制变量包括第二协方差矩阵,所述装置还包括:
确定模块,用于通过以下方法确定所述卡尔曼滤波算法的状态变量、以及控制变量:
基于所述机器人上一时刻的位姿以及所述指定参数的初始值,确定所述卡尔曼滤波算法的状态变量的均值矩阵;
基于所述机器人上一时刻的位姿、所述指定参数的初始值、以及所述指定参数的预设误差值,确定所述卡尔曼滤波算法的状态变量的第一协方差矩阵;
基于所述指定时间内所述机器人的左轮和右轮分别移动的距离、以及所述机器人对应的里程计计算装置关联的系数值,确定所述卡尔曼滤波算法的控制变量的第二协方差矩阵。
本申请的一实施例中,所述预测模块中基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻所述机器人的位姿,具体用于:
根据以下位姿预测公式预测当前时刻所述机器人的位姿:
本申请的一实施例中,所述标定模块,具体用于:
分别对所述位姿预测公式中的所述上一时刻对应的所述卡尔曼滤波算法的状态变量的参数、以及控制变量的参数求导,得到第一雅克比矩阵和第二雅克比矩阵;
基于所述第一雅克比矩阵和所述第二雅克比矩阵、以及所述上一时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量、以及控制变量,确定所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量;
基于所述观测变量和所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量,确定所述指定参数的标定值。
本申请的一实施例中,所述观测模块,具体用于:
根据所述预设路标的预设位姿以及所述机器人在所述当前时刻的位姿,计算所述预设路标与所述机器人之间的距离、所述预设路标在世界坐标系相对预设轴的第一相对角度、以及所述预设路标与所述机器人在世界坐标系中的第二相对角度;
将所述预设路标与所述机器人之间的距离、以及所述第一相对角度和所述第二相对角度作为所述卡尔曼滤波算法的第一观测变量的参数;
根据所述机器人中的相机与所述预设路标之间的位姿转换关系、以及所述相机与所述机器人之间的位姿转换关系,计算得到所述预设路标和所述机器人之间的位姿转换关系;
基于所述预设路标和所述机器人之间的位姿转换关系,确定所述卡尔曼滤波算法的第二观测变量的参数;
基于所述第一观测变量的参数、所述第二观测变量的参数,确定所述卡尔曼滤波算法的观测变量的参数。
本申请的一实施例中,所述标定模块中的基于所述观测变量和所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量,确定所述指定参数的标定值,具体用于:
分别对观测模型中的所述当前时刻对应的所述卡尔曼滤波算法的状态变量的参数求导,得到第三雅可比矩阵;其中,根据所述机器人在所述当前时刻的位姿以及所述预设路标的预设位姿创建所述观测模型;
基于所述观测模型对应的观测误差矩阵、所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量、以及所述第三雅可比矩阵,确定卡尔曼增益矩阵;
基于所述卡尔曼增益矩阵、所述当前时刻的所述卡尔曼滤波算法的状态变量、所述第一观测变量的参数、所述第二观测变量的参数以及所述第三雅可比矩阵,确定所述指定参数的标定值。
一方面,本申请一实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行计算机程序时实现上述任一种方法的步骤。
一方面,本申请一实施例提供了一种计算机可读存储介质,其上存储有计算机程序指令,该计算机程序指令被处理器执行时实现上述任一种方法的步骤。
一方面,本申请一实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述任一种方法的步骤。
本申请实施例提供的里程计在线标定的方法、装置、电子设备及存储介质,首先基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻机器人的位姿,然后通过响应于识别到预设路标,基于预设路标的预设位姿以及机器人在当前时刻的位姿,确定机器人与预设路标的相对位置关系信息作为卡尔曼滤波算法的观测变量;最后基于观测变量和当前时刻机器人的位姿的预测结果,确定指定参数的标定值。其中,状态变量的参数包括机器人上一时刻的位姿以及指定参数的初始值,指定参数为影响机器人的运行里程的参数,控制变量的参数包括距离当前时刻指定时长内机器人的移动距离。
在不引入额外设备的前提下,通过将影响机器人的运行里程的参数添加至卡尔曼滤波算法的状态变量中,进而在机器人自主定位和导航过程中,利用卡尔曼滤波算法更新指定参数,可以实现对里程计的在线标定。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,显而易见地,下面所介绍的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的里程计在线标定的方法的应用场景示意图;
图2为本申请一实施例提供的里程计在线标定的方法的应用场景示意图;
图3为本申请一实施例提供的里程计在线标定的方法的流程示意图;
图4为本申请一实施例提供的里程计在线标定的装置的结构示意图;
图5为本申请一实施例提供的电子设备的结构示意图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应所述理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
以下,对本公开实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
(1)本公开实施例中术语“多个”是指两个或两个以上,其它量词与之类似。
(2)“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
(3)服务器,是为终端服务的,服务的内容诸如向终端提供资源,保存终端数据;服务器是与终端上安装的应用程序相对应的,与终端上的应用程序配合运行。
(4)终端设备,既可以指软件类的APP(Application,应用程序),也可以指客户端。能够将已安装的应用程序中提供的对象进行显示的设备,该电子设备可以是移动的,也可以是固定的。例如,机器人、桌面计算机、移动电话、移动电脑、平板电脑、媒体播放器、智能可穿戴设备、智能电视、车载设备、个人数字助理(personal digital assistant,PDA)、销售终端(point of sales,POS)或其它能够实现上述功能的电子设备等。
它具有可视的显示界面,能与用户进行交互;是与服务器相对应,为客户提供本地服务。针对软件类的应用程序,除了一些只在本地运行的应用程序之外,一般安装在普通的客户终端上,需要与服务端互相配合运行。因特网发展以后,较常用的应用程序包括了如收寄电子邮件时的电子邮件客户端,以及即时通讯的客户端等。对于这一类应用程序,需要网络中有相应的服务器和服务程序来提供相应的服务,如数据库服务,配置参数服务等,这样在客户终端和服务器端,需要建立特定的通信连接,来保证应用程序的正常运行。
在具体实践过程中,里程计的标定方法主要包括两种方式:一是通过离线标定里程计,二是通过引入额外的设备对里程计进行标定。例如,针对使用激光雷达和反光条进行双轮差速移动机器人里程计标定的轮间距修正的方案,通过计算机器人的实际自旋角和里程计的旋转角,拟合得到轮间距的修正系数。该方案为通过离线标定里程计。
或者,针对基于运动捕捉系统对里程计进行标定的方案,当机器人在预设的区域内行走时,同时利用运动捕捉系统对机器人进行定位,读取里程计计算的行走位移,计算得到里程计的补偿参数。该方案在进行里程计参数标定的时候采用了运动捕捉系统,而运动捕捉系统为引入的额外设备。
由于在里程计进行标定的过程中,引入额外的设备,导致里程计标定的成本过高,并且通过离线标定里程计,又不能及时获取到里程计的信息。
为此,本申请提供了一种里程计在线标定的方法,在不引入额外设备的前提下,通过将影响机器人的运行里程的参数添加至卡尔曼滤波算法的状态变量中,进而在机器人自主定位和导航过程中,利用卡尔曼滤波算法更新指定参数,可以实现对里程计的在线标定。
在介绍完本申请实施例的设计思想之后,下面对本申请实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本申请实施例而非限定。在具体实施时,可以根据实际需要灵活地应用本申请实施例提供的技术方案。
参考图1,其为本申请实施例提供的里程计在线标定的方法的应用场景示意图。该应用场景包括多个终端设备101(包括终端设备101-1、终端设备101-2、……终端设备101-n)、服务器102。其中,终端设备101、服务器102之间通过无线或有线网络连接,终端设备101包括但不限于桌面计算机、移动电话、移动电脑、平板电脑、媒体播放器、智能可穿戴设备、智能电视等电子设备。服务器102可以是一台服务器、若干台服务器组成的服务器集群或云计算中心。服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
当用户1将终端设备101-1对应的机器人开机运行并设置指定任务之后,机器人开始按照指定任务自主运动,并基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻机器人的位姿,然后在识别到预设路标时,基于预设路标的预设位姿以及机器人在当前时刻的位姿,确定机器人与预设路标的相对位置关系信息作为卡尔曼滤波算法的观测变量;最后基于观测变量和当前时刻机器人的位姿的预测结果,确定指定参数的标定值。其中,状态变量的参数包括机器人上一时刻的位姿以及指定参数的初始值,指定参数为影响机器人的运行里程的参数,控制变量的参数包括距离当前时刻指定时长内机器人的移动距离。
这里,识别到预设路标后,既可以通过机器人内置的传感器预测当前时刻机器人的位姿、以及确定卡尔曼滤波算法的观测变量,并最终确定指定参数的标定值,也可以将机器人采集到的数据发送至服务器102,在服务器102中计算得到当前时刻机器人的预测位姿、以及确定卡尔曼滤波算法的观测变量,并最终确定指定参数的标定值,还可以部分计算过程在机器人内置的传感器,部分计算过程在服务器102中,在此并不限定具体的计算方式,可根据实际应用场景进行调整。
当然,本申请实施例提供的方法并不限用于图1所示的应用场景中,还可以用于其它可能的应用场景,本申请实施例并不进行限制。对于图1所示的应用场景的各个设备所能实现的功能将在后续的方法实施例中一并进行描述,在此先不过多赘述。
为进一步说明本申请实施例提供的技术方案,下面结合附图以及具体实施方式对此进行详细的说明。虽然本申请实施例提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在所述方法中可以包括更多或者更少的操作步骤。在逻辑上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本申请实施例提供的执行顺序。
下面结合图1所示的应用场景,对本申请实施例提供的技术方案进行说明。
本申请实施例提供一种里程计在线标定的方法,应用于机器人,在不引入额外设备的前提下,通过将影响机器人的运行里程的参数添加至卡尔曼滤波算法的状态变量中,进而在机器人自主定位和导航过程中,利用卡尔曼滤波算法更新指定参数,可以实现对里程计的在线标定。因此,本申请中的里程计在线标定的方法包括:确定卡尔曼滤波算法的预测变量、确定卡尔曼滤波算法的观测变量、以及里程计的在线标定三部分。
针对机器人在指定的场景中,参考图2所示,为机器人在室内的应用场景,其中,该应用场景中还包括预设路标,预设路标可以是人工预先标记的标识物,如ArUco tag 、April tag等,也可以是指定的桌椅等物品信息。如图2所示,展示的柜子为预设标识物1、沙发为预设标识物2。
在确定机器人所在的应用场景之后,需要进一步确定机器人在该应用场景中的世界坐标系,例如,如图2所示,将机器人开始运动的初始位置确定为世界坐标系的原点,将机器人开始运动的正前方确定为世界坐标系中的x轴正方向,并将x轴逆时针旋转90度之后的方向确定为世界坐标系中的y轴正方向,将垂直于机器人水平方向向上的方向确定为世界坐标系中的z轴正方向。
一、确定卡尔曼滤波算法的预测变量
将机器人在世界坐标系下的位姿、以及里程计的指定参数确定为卡尔曼滤波算法
的状态空间。例如表达式(1)所示,为卡尔曼滤波算法的状态空间,其中,x为世界坐标系中
机器人所在位置的横坐标,y为世界坐标系中机器人所在位置的纵坐标,为世界坐标系
中机器人相对于x轴或者y轴所在位置的旋转角度,b为机器人的左轮与右轮之间的轮距值,
Dl为机器人的左轮轮径值,Dr为机器人的右轮轮径值。
卡尔曼滤波算法在预测过程中,包括分别对机器人的状态变量、以及控制变量进行预测,由于状态变量又包括均值矩阵和第一协方差矩阵,因此,在机器人的初始位置处,表达式(1)还可以通过表达式(2)来表示。
其中,由于机器人处于初始位置,因此表达式(1)中的x、y、均为0, b0为机器人
的左轮与右轮之间的轮距初始值,Dl0为机器人的左轮轮径初始值,Dr0为机器人的右轮轮径
初始值, 为状态变量中的均值矩阵的初始值。
这里,b0、Dl0、Dr0一般为人工手动测量得到,因此存在一些误差,在此,根据针对机器人的左轮与右轮之间的轮距值、以及机器人的左轮轮径值与机器人的右轮轮径值允许的误差值确定状态变量中的第一协方差矩阵的初始值。
又,在机器人处于初始位置时,状态变量中的第一协方差矩阵的初始值如表达式(3)所示。
其中,kb为机器人的左轮与右轮之间的轮距初始值,kdl为机器人的左轮轮径值允许的误差值,kdr为机器人的右轮轮径值允许的误差值,第一协方差矩阵中利用误差值可以反映出确定初始值的准确程度。
当机器人开始运动时,基于指定时间内机器人的左右轮分别的移动距离的预设倍数确定控制变量的第二协方差矩阵,如表达式(4)所示,为机器人的控制变量的第二协方差矩阵的初始值。
其中,为机器人的控制变量的第二协方差矩阵,k为机器人对应的里程计的属
性系数,为指定时间内机器人左轮的移动距离,为指定时间内机器人右轮的移动
距离,也即为机器人的左轮编码器增量数值与机器人的左轮编码器系数之积,为
机器人的右轮编码器增量数值与机器人的右轮编码器系数之积,所以可以分别通过以下公
式(5)和公式(6)确定。
在确定机器人初始位置的状态变量、以及控制变量之后,当机器人在初始位置按照指定路线开始运动时,参考图3,可以执行步骤S301,基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻机器人的位姿。
其中,状态变量的参数包括机器人上一时刻的位姿以及指定参数的初始值,指定参数为影响机器人的运行里程的参数,控制变量的参数包括距离当前时刻指定时长内机器人的移动距离。
本申请的一实施例中,指定参数为以下参数中的一种或多种:
机器人左轮与右轮之间的轮距值、机器人的左轮轮径值、机器人的右轮轮径值。
示例性地,如上所述,机器人左轮与右轮之间的轮距值用b表示,机器人的左轮轮径值用Dl表示,机器人的右轮轮径值用Dr表示。
本申请的一实施例中,状态变量包括均值矩阵和第一协方差矩阵,控制变量包括第二协方差矩阵,方法还包括:
通过以下方法确定卡尔曼滤波算法的状态变量、以及控制变量:
基于机器人上一时刻的位姿以及指定参数的初始值,确定卡尔曼滤波算法的状态变量的均值矩阵;
基于机器人上一时刻的位姿、指定参数的初始值、以及指定参数的预设误差值,确定卡尔曼滤波算法的状态变量的第一协方差矩阵;
基于指定时间内机器人的左轮和右轮分别移动的距离、以及机器人对应的里程计计算装置关联的系数值,确定卡尔曼滤波算法的控制变量的第二协方差矩阵。
示例性地,如上所述,基于表达式(1)以及表达式(2)确定卡尔曼滤波算法的状态变量的均值矩阵,参考表达式(3),基于机器人上一时刻的位姿、指定参数的初始值b0、Dl0、Dr0、以及指定参数的预设误差值kb、kdl、kdr,确定卡尔曼滤波算法的状态变量的第一协方差矩阵。参考表达式(4),确定卡尔曼滤波算法的控制变量的第二协方差矩阵。
本申请的一实施例中,基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻机器人的位姿,包括:
根据以下位姿预测公式(7)预测当前时刻机器人的位姿:
在卡尔曼滤波算法的预测过程中,状态变量的均值矩阵的指定参数b0、Dl0、Dr0不会发生变化,也即在预测过程中不会被更新。
其中,表达式(10)和表达式(11)中的A和B为以下表达式(12)和表达式(13)。
因此,经过卡尔曼滤波算法对机器人的位姿预测之后,当前时刻机器人对应的状态变量中的第一协方差矩阵如公式(14)所示。
二、确定卡尔曼滤波算法的观测变量
经过卡尔曼滤波算法对当前时刻对应的上一时刻机器人的位姿进行预测之后,得到机器人当前时刻的位姿,然后如图3所示,执行步骤S302,响应于识别到预设路标,基于预设路标的预设位姿以及机器人在当前时刻的位姿,确定机器人与预设路标的相对位置关系信息作为卡尔曼滤波算法的观测变量。
示例性地,如图2中的预设标识物1、预设标识物2为预设路标,机器人当前时刻在世界坐标系下的位姿可以利用表达式(1)表示,也可以利用以下表达式(15)表示。
同样地,预设路标在世界坐标系下的位姿可以利用表达式(16)表示。
本申请的一实施例中,在执行步骤S302时,具体通过以下方法:
根据预设路标的预设位姿以及机器人在当前时刻的位姿,计算预设路标与机器人之间的距离、预设路标在世界坐标系相对预设轴的第一相对角度、以及预设路标与机器人在世界坐标系中的第二相对角度;
将预设路标与机器人之间的距离、以及第一相对角度和第二相对角度作为卡尔曼滤波算法的第一观测变量的参数。
示例性地,根据表达式(15)中的机器人在当前时刻的位姿、以及表达式(16)中的预设路标的预设位姿,计算预设路标与机器人之间的距离如公式(17)所示,预设路标在世界坐标系相对预设轴的第一相对角度如公式(18)所示,预设路标与机器人在世界坐标系中的第二相对角度如公式(19)所示。
又,当机器人中的相机观测到预设路标时,通过PnP(Perspective-n-Point)算法
计算得到预设路标和相机之间的位姿转换关系 ,再根据相机和机器人之间预设
的外参转换关系,计算得到预设路标和机器人之间的位姿转换关系如公式
(25)所示。
其中,表达式(25)又可以通过表达式(26)进行表示。
其中,为预设路标和机器人之间的第一距离,可以通过表达式(29)进行表
示,为在世界坐标系下,预设路标和机器人之间的第三相对角度,可以通过表达式
(30)进行表示,为在世界坐标系下,预设路标相对预设轴的第四相对角度,可以
通过表达式(31)获得,并且欧拉角为一个三维向量,可以通过上述的旋转矩阵 转换得到。
另外,经过卡尔曼滤波算法对预设路标的位姿进行观测之后,还可以得到观测信息的误差矩阵如表达式(32)所示,
三、里程计的在线标定
在经过卡尔曼滤波算法对机器人的位姿进行预测以及经过卡尔曼滤波算法对预设路标的位姿进行观测之后,如图3所示,执行步骤S303,基于观测变量和当前时刻机器人的位姿的预测结果,确定指定参数的标定值。
本申请的一实施例中,通过以下方法执行步骤S303:
分别对位姿预测公式中的上一时刻对应的卡尔曼滤波算法的状态变量的参数、以及控制变量的参数求导,得到第一雅克比矩阵和第二雅克比矩阵;
基于第一雅克比矩阵和第二雅克比矩阵、以及上一时刻对应的机器人的卡尔曼滤波算法的状态变量、以及控制变量,确定当前时刻对应的机器人的卡尔曼滤波算法的状态变量;
基于观测变量和当前时刻对应的机器人的卡尔曼滤波算法的状态变量,确定指定参数的标定值。
可选地,上述已经介绍确定第一雅克比矩阵和第二雅克比矩阵以及当前时刻对应的机器人的卡尔曼滤波算法的状态变量的过程,在此不再赘述。
本申请的一实施例中,基于观测变量和当前时刻对应的机器人的卡尔曼滤波算法的状态变量,确定指定参数的标定值,包括:
分别对观测模型中的当前时刻对应的卡尔曼滤波算法的状态变量的参数求导,得到第三雅可比矩阵;其中,根据机器人在当前时刻的位姿以及预设路标的预设位姿创建观测模型;
基于观测模型对应的观测误差矩阵、当前时刻对应的机器人的卡尔曼滤波算法的状态变量、以及第三雅克比矩阵,确定卡尔曼增益矩阵;
基于卡尔曼增益矩阵、当前时刻的卡尔曼滤波算法的状态变量、第一观测变量的参数、第二观测变量的参数以及第三雅克比矩阵,确定指定参数的标定值。
同样地,上述已经介绍确定第三雅克比矩阵的过程,在此不再赘述。
最后,当前时刻的状态变量的均值矩阵和第一协方差矩阵分别通过公式(34)和公式(35)表示。
本申请在不引入额外设备的前提下,通过将影响机器人的运行里程的参数添加至卡尔曼滤波算法的状态变量中,进而在机器人自主定位和导航过程中,利用卡尔曼滤波算法更新指定参数,可以实现对里程计的在线标定。
如图4所示,基于与上述里程计在线标定的方法相同的发明构思,本申请实施例还提供了一种里程计在线标定的装置40,应用于机器人,所述装置包括:预测模块401、观测模块402、以及标定模块403。
预测模块401,用于基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻所述机器人的位姿,其中,所述状态变量的参数包括所述机器人上一时刻的位姿以及指定参数的初始值,所述指定参数为影响所述机器人的运行里程的参数,所述控制变量的参数包括距离所述当前时刻指定时长内所述机器人的移动距离;
观测模块402,用于响应于识别到预设路标,基于所述预设路标的预设位姿以及所述机器人在所述当前时刻的位姿,确定所述机器人与所述预设路标的相对位置关系信息作为所述卡尔曼滤波算法的观测变量;
标定模块403,用于基于所述观测变量和所述当前时刻所述机器人的位姿的预测结果,确定所述指定参数的标定值。
本申请的一实施例中,所述指定参数为以下参数中的一种或多种:
所述机器人左轮与右轮之间的轮距值、所述机器人的左轮轮径值、所述机器人的右轮轮径值。
本申请的一实施例中,所述状态变量包括均值矩阵和第一协方差矩阵,所述控制变量包括第二协方差矩阵,所述装置还包括:
确定模块,用于通过以下方法确定所述卡尔曼滤波算法的状态变量、以及控制变量:
基于所述机器人上一时刻的位姿以及所述指定参数的初始值,确定所述卡尔曼滤波算法的状态变量的均值矩阵;
基于所述机器人上一时刻的位姿、所述指定参数的初始值、以及所述指定参数的预设误差值,确定所述卡尔曼滤波算法的状态变量的第一协方差矩阵;
基于所述指定时间内所述机器人的左轮和右轮分别移动的距离、以及所述机器人对应的里程计计算装置关联的系数值,确定所述卡尔曼滤波算法的控制变量的第二协方差矩阵。
本申请的一实施例中,所述预测模块401中基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻所述机器人的位姿,具体用于:
根据以下位姿预测公式预测当前时刻所述机器人的位姿:
本申请的一实施例中,所述标定模块403,具体用于:
分别对所述位姿预测公式中的所述上一时刻对应的所述卡尔曼滤波算法的状态变量的参数、以及控制变量的参数求导,得到第一雅克比矩阵和第二雅克比矩阵;
基于所述第一雅克比矩阵和所述第二雅克比矩阵、以及所述上一时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量、以及控制变量,确定所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量;
基于所述观测变量和所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量,确定所述指定参数的标定值。
本申请的一实施例中,所述观测模块402,具体用于:
根据所述预设路标的预设位姿以及所述机器人在所述当前时刻的位姿,计算所述预设路标与所述机器人之间的距离、所述预设路标在世界坐标系相对预设轴的第一相对角度、以及所述预设路标与所述机器人在世界坐标系中的第二相对角度;
将所述预设路标与所述机器人之间的距离、以及所述第一相对角度和所述第二相对角度作为所述卡尔曼滤波算法的第一观测变量的参数;
根据所述机器人中的相机与所述预设路标之间的位姿转换关系、以及所述相机与所述机器人之间的位姿转换关系,计算得到所述预设路标和所述机器人之间的位姿转换关系;
基于所述预设路标和所述机器人之间的位姿转换关系,确定所述卡尔曼滤波算法的第二观测变量的参数;
基于所述第一观测变量的参数、所述第二观测变量的参数,确定所述卡尔曼滤波算法的观测变量的参数。
本申请的一实施例中,所述标定模块403中的基于所述观测变量和所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量,确定所述指定参数的标定值,具体用于:
分别对观测模型中的所述当前时刻对应的所述卡尔曼滤波算法的状态变量的参数求导,得到第三雅可比矩阵;其中,根据所述机器人在所述当前时刻的位姿以及所述预设路标的预设位姿创建所述观测模型;
基于所述观测模型对应的观测误差矩阵、所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量、以及所述第三雅可比矩阵,确定卡尔曼增益矩阵;
基于所述卡尔曼增益矩阵、所述当前时刻的所述卡尔曼滤波算法的状态变量、所述第一观测变量的参数、所述第二观测变量的参数以及所述第三雅可比矩阵,确定所述指定参数的标定值。
本申请实施例提供的里程计在线标定的装置与上述里程计在线标定的方法采用了相同的发明构思,能够取得相同的有益效果,在此不再赘述。
基于与上述里程计在线标定的方法相同的发明构思,本申请实施例还提供了一种电子设备,该电子设备具体可以为智能设备机器人内部的控制设备或控制系统,也可以是与智能设备机器人通信的外部设备,如可以为桌面计算机、便携式计算机、智能手机、平板电脑、个人数字助理(Personal Digital Assistant,PDA)、服务器等。如图5所示,该电子设备50可以包括处理器501和存储器502。
处理器501可以是通用处理器,例如中央处理器(CPU)、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random Access Memory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器502还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;上述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于:移动存储设备、随机存取存储器(RAM,Random Access Memory)、磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NAND FLASH)、固态硬盘(SSD))等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、随机存取存储器(RAM,Random Access Memory)、磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NAND FLASH)、固态硬盘(SSD))等各种可以存储程序代码的介质。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的里程计在线标定的方法。
以上实施例仅用以对本申请的技术方案进行了详细介绍,但以上实施例的说明只是用于帮助理解本申请实施例的方法,不应理解为对本申请实施例的限制。本技术领域的技术人员可轻易想到的变化或替换,都应涵盖在本申请实施例的保护范围之内。
Claims (16)
1.一种里程计在线标定的方法,其特征在于,应用于机器人,所述方法包括:
基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻所述机器人的位姿,其中,所述状态变量的参数包括所述机器人上一时刻的位姿以及指定参数的初始值,所述指定参数为影响所述机器人的运行里程的参数,所述控制变量的参数包括距离所述当前时刻指定时长内所述机器人的移动距离;
响应于识别到预设路标,基于所述预设路标的预设位姿以及所述机器人在所述当前时刻的位姿,确定所述机器人与所述预设路标的相对位置关系信息作为所述卡尔曼滤波算法的观测变量;
基于所述观测变量和所述当前时刻所述机器人的位姿的预测结果,确定所述指定参数的标定值。
2.根据权利要求1所述的方法,其特征在于,所述指定参数为以下参数中的一种或多种:
所述机器人左轮与右轮之间的轮距值、所述机器人的左轮轮径值、所述机器人的右轮轮径值。
3.根据权利要求1所述的方法,其特征在于,所述状态变量包括均值矩阵和第一协方差矩阵,所述控制变量包括第二协方差矩阵,所述方法还包括:
通过以下方法确定所述卡尔曼滤波算法的状态变量、以及控制变量:
基于所述机器人上一时刻的位姿以及所述指定参数的初始值,确定所述卡尔曼滤波算法的状态变量的均值矩阵;
基于所述机器人上一时刻的位姿、所述指定参数的初始值、以及所述指定参数的预设误差值,确定所述卡尔曼滤波算法的状态变量的第一协方差矩阵;
基于所述指定时间内所述机器人的左轮和右轮分别移动的距离、以及所述机器人对应的里程计计算装置关联的系数值,确定所述卡尔曼滤波算法的控制变量的第二协方差矩阵。
5.根据权利要求4所述的方法,其特征在于,所述基于所述观测变量和所述当前时刻所述机器人的位姿的预测结果,确定所述指定参数的标定值,包括:
分别对所述位姿预测公式中的所述上一时刻对应的所述卡尔曼滤波算法的状态变量的参数、以及控制变量的参数求导,得到第一雅克比矩阵和第二雅克比矩阵;
基于所述第一雅克比矩阵和所述第二雅克比矩阵、以及所述上一时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量、以及控制变量,确定所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量;
基于所述观测变量和所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量,确定所述指定参数的标定值。
6.根据权利要求1-5中任一所述的方法,其特征在于,所述基于所述预设路标的预设位姿以及所述机器人在所述当前时刻的位姿,确定所述机器人与所述预设路标的相对位置关系信息作为所述卡尔曼滤波算法的观测变量,包括:
根据所述预设路标的预设位姿以及所述机器人在所述当前时刻的位姿,计算所述预设路标与所述机器人之间的距离、所述预设路标在世界坐标系相对预设轴的第一相对角度、以及所述预设路标与所述机器人在世界坐标系中的第二相对角度;
将所述预设路标与所述机器人之间的距离、以及所述第一相对角度和所述第二相对角度作为所述卡尔曼滤波算法的第一观测变量的参数;
根据所述机器人中的相机与所述预设路标之间的位姿转换关系、以及所述相机与所述机器人之间的位姿转换关系,计算得到所述预设路标和所述机器人之间的位姿转换关系;
基于所述预设路标和所述机器人之间的位姿转换关系,确定所述卡尔曼滤波算法的第二观测变量的参数;
基于所述第一观测变量的参数、所述第二观测变量的参数,确定所述卡尔曼滤波算法的观测变量的参数。
7.根据权利要求6所述的方法,其特征在于,所述基于所述观测变量和所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量,确定所述指定参数的标定值,包括:
分别对观测模型中的所述当前时刻对应的所述卡尔曼滤波算法的状态变量的参数求导,得到第三雅可比矩阵;其中,根据所述机器人在所述当前时刻的位姿以及所述预设路标的预设位姿创建所述观测模型;
基于所述观测模型对应的观测误差矩阵、所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量、以及所述第三雅可比矩阵,确定卡尔曼增益矩阵;
基于所述卡尔曼增益矩阵、所述当前时刻的所述卡尔曼滤波算法的状态变量、所述第一观测变量的参数、所述第二观测变量的参数以及所述第三雅可比矩阵,确定所述指定参数的标定值。
8.一种里程计在线标定的装置,其特征在于,应用于机器人,所述装置包括:
预测模块,用于基于卡尔曼滤波算法的状态变量、以及控制变量预测当前时刻所述机器人的位姿,其中,所述状态变量的参数包括所述机器人上一时刻的位姿以及指定参数的初始值,所述指定参数为影响所述机器人的运行里程的参数,所述控制变量的参数包括距离所述当前时刻指定时长内所述机器人的移动距离;
观测模块,用于响应于识别到预设路标,基于所述预设路标的预设位姿以及所述机器人在所述当前时刻的位姿,确定所述机器人与所述预设路标的相对位置关系信息作为所述卡尔曼滤波算法的观测变量;
标定模块,用于基于所述观测变量和所述当前时刻所述机器人的位姿的预测结果,确定所述指定参数的标定值。
9.根据权利要求8所述的装置,其特征在于,所述指定参数为以下参数中的一种或多种:
所述机器人左轮与右轮之间的轮距值、所述机器人的左轮轮径值、所述机器人的右轮轮径值。
10.根据权利要求8所述的装置,其特征在于,所述状态变量包括均值矩阵和第一协方差矩阵,所述控制变量包括第二协方差矩阵,所述装置还包括:
确定模块,用于通过以下方法确定所述卡尔曼滤波算法的状态变量、以及控制变量:
基于所述机器人上一时刻的位姿以及所述指定参数的初始值,确定所述卡尔曼滤波算法的状态变量的均值矩阵;
基于所述机器人上一时刻的位姿、所述指定参数的初始值、以及所述指定参数的预设误差值,确定所述卡尔曼滤波算法的状态变量的第一协方差矩阵;
基于所述指定时间内所述机器人的左轮和右轮分别移动的距离、以及所述机器人对应的里程计计算装置关联的系数值,确定所述卡尔曼滤波算法的控制变量的第二协方差矩阵。
12.根据权利要求11所述的装置,其特征在于,所述标定模块,具体用于:
分别对所述位姿预测公式中的所述上一时刻对应的所述卡尔曼滤波算法的状态变量的参数、以及控制变量的参数求导,得到第一雅克比矩阵和第二雅克比矩阵;
基于所述第一雅克比矩阵和所述第二雅克比矩阵、以及所述上一时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量、以及控制变量,确定所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量;
基于所述观测变量和所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量,确定所述指定参数的标定值。
13.根据权利要求8-12中任一所述的装置,其特征在于,所述观测模块,具体用于:
根据所述预设路标的预设位姿以及所述机器人在所述当前时刻的位姿,计算所述预设路标与所述机器人之间的距离、所述预设路标在世界坐标系相对预设轴的第一相对角度、以及所述预设路标与所述机器人在世界坐标系中的第二相对角度;
将所述预设路标与所述机器人之间的距离、以及所述第一相对角度和所述第二相对角度作为所述卡尔曼滤波算法的第一观测变量的参数;
根据所述机器人中的相机与所述预设路标之间的位姿转换关系、以及所述相机与所述机器人之间的位姿转换关系,计算得到所述预设路标和所述机器人之间的位姿转换关系;
基于所述预设路标和所述机器人之间的位姿转换关系,确定所述卡尔曼滤波算法的第二观测变量的参数;
基于所述第一观测变量的参数、所述第二观测变量的参数,确定所述卡尔曼滤波算法的观测变量的参数。
14.根据权利要求13所述的装置,其特征在于,所述标定模块中的基于所述观测变量和所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量,确定所述指定参数的标定值,具体用于:
分别对观测模型中的所述当前时刻对应的所述卡尔曼滤波算法的状态变量的参数求导,得到第三雅可比矩阵;其中,根据所述机器人在所述当前时刻的位姿以及所述预设路标的预设位姿创建所述观测模型;
基于所述观测模型对应的观测误差矩阵、所述当前时刻对应的所述机器人的所述卡尔曼滤波算法的状态变量、以及所述第三雅可比矩阵,确定卡尔曼增益矩阵;
基于所述卡尔曼增益矩阵、所述当前时刻的所述卡尔曼滤波算法的状态变量、所述第一观测变量的参数、所述第二观测变量的参数以及所述第三雅可比矩阵,确定所述指定参数的标定值。
15.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述方法的步骤。
16.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,该计算机程序指令被处理器执行时实现权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110331403.4A CN112729349B (zh) | 2021-03-29 | 2021-03-29 | 里程计在线标定的方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110331403.4A CN112729349B (zh) | 2021-03-29 | 2021-03-29 | 里程计在线标定的方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112729349A true CN112729349A (zh) | 2021-04-30 |
CN112729349B CN112729349B (zh) | 2021-08-24 |
Family
ID=75595953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110331403.4A Active CN112729349B (zh) | 2021-03-29 | 2021-03-29 | 里程计在线标定的方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112729349B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114578811A (zh) * | 2022-02-17 | 2022-06-03 | 中国矿业大学 | 一种带式输送机巡检机器人系统高精度定位方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106123890A (zh) * | 2016-06-14 | 2016-11-16 | 中国科学院合肥物质科学研究院 | 一种多传感器数据融合的机器人定位方法 |
CN108955688A (zh) * | 2018-07-12 | 2018-12-07 | 苏州大学 | 双轮差速移动机器人定位方法及系统 |
CN110515088A (zh) * | 2019-08-27 | 2019-11-29 | 中国人民解放军国防科技大学 | 一种智能机器人的里程计估计方法及系统 |
CN110530399A (zh) * | 2019-09-06 | 2019-12-03 | 苏州寻迹智行机器人技术有限公司 | 双轮差速移动机器人里程计标定的轮间距修正方法 |
CN110849387A (zh) * | 2018-08-20 | 2020-02-28 | 北京京东尚科信息技术有限公司 | 一种传感器参数标定方法和装置 |
CN111098335A (zh) * | 2019-12-26 | 2020-05-05 | 浙江欣奕华智能科技有限公司 | 一种双轮差速驱动机器人里程计标定方法及装置 |
-
2021
- 2021-03-29 CN CN202110331403.4A patent/CN112729349B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106123890A (zh) * | 2016-06-14 | 2016-11-16 | 中国科学院合肥物质科学研究院 | 一种多传感器数据融合的机器人定位方法 |
CN108955688A (zh) * | 2018-07-12 | 2018-12-07 | 苏州大学 | 双轮差速移动机器人定位方法及系统 |
CN110849387A (zh) * | 2018-08-20 | 2020-02-28 | 北京京东尚科信息技术有限公司 | 一种传感器参数标定方法和装置 |
CN110515088A (zh) * | 2019-08-27 | 2019-11-29 | 中国人民解放军国防科技大学 | 一种智能机器人的里程计估计方法及系统 |
CN110530399A (zh) * | 2019-09-06 | 2019-12-03 | 苏州寻迹智行机器人技术有限公司 | 双轮差速移动机器人里程计标定的轮间距修正方法 |
CN111098335A (zh) * | 2019-12-26 | 2020-05-05 | 浙江欣奕华智能科技有限公司 | 一种双轮差速驱动机器人里程计标定方法及装置 |
Non-Patent Citations (2)
Title |
---|
NICHOLAS ROY ET AL.: "Online Self-Calibration For Mobile Robots", 《PROCEEDINGS OF THE 1999 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS & AUTOMATION》 * |
卢纪凤等: "基于UMBmark和EKF的差速移动机器人传感器系统误差标定方法", 《机械设计与研究》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114578811A (zh) * | 2022-02-17 | 2022-06-03 | 中国矿业大学 | 一种带式输送机巡检机器人系统高精度定位方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112729349B (zh) | 2021-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10852139B2 (en) | Positioning method, positioning device, and robot | |
CN112179330B (zh) | 移动设备的位姿确定方法及装置 | |
CN107748569B (zh) | 用于无人机的运动控制方法、装置及无人机系统 | |
CN110501036A (zh) | 传感器参数的标定检查方法及装置 | |
KR20210084622A (ko) | 시간 동기화 처리 방법, 전자 기기 및 저장 매체 | |
CN111319041B (zh) | 一种机器人位姿确定方法、装置、可读存储介质及机器人 | |
CN113759349B (zh) | 激光雷达与定位设备的标定方法、设备及自动驾驶车辆 | |
CN110887493A (zh) | 基于局部地图匹配的轨迹推算方法、介质、终端和装置 | |
CN110470333A (zh) | 传感器参数的标定方法及装置、存储介质和电子装置 | |
CN114111774B (zh) | 车辆的定位方法、系统、设备及计算机可读存储介质 | |
JP7356528B2 (ja) | 地図データ処理方法及び装置 | |
CN113256719A (zh) | 停车导航定位方法、装置、电子设备及存储介质 | |
CN114179825A (zh) | 多传感器融合获取量测值置信度方法及自动驾驶车辆 | |
CN113124872A (zh) | 一种机器人定位导航方法、装置、终端设备及机器人 | |
CN113008244A (zh) | 导航信息的处理方法、装置、电子设备及存储介质 | |
CN114413898B (zh) | 多传感器数据融合方法、装置、计算机设备及存储介质 | |
CN112729349B (zh) | 里程计在线标定的方法、装置、电子设备及存储介质 | |
CN116416277A (zh) | 一种基于运动方程轨迹预测的多目标跟踪方法及装置 | |
CN114593735A (zh) | 一种位姿预测方法及装置 | |
CN114088104B (zh) | 一种自动驾驶场景下的地图生成方法 | |
CN115727871A (zh) | 一种轨迹质量检测方法、装置、电子设备和存储介质 | |
CN114674320A (zh) | 基于粒子滤波的定位方法、系统、设备及存储介质 | |
Yao et al. | Mobile Robot Localization Based on Vision and Multisensor | |
CN112180910A (zh) | 一种移动机器人障碍物感知方法和装置 | |
CN113923774B (zh) | 目标终端的位置确定方法和装置、存储介质及电子设备 |
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 |