CN114234967A - 一种基于多传感器融合的六足机器人定位方法 - Google Patents

一种基于多传感器融合的六足机器人定位方法 Download PDF

Info

Publication number
CN114234967A
CN114234967A CN202111546078.XA CN202111546078A CN114234967A CN 114234967 A CN114234967 A CN 114234967A CN 202111546078 A CN202111546078 A CN 202111546078A CN 114234967 A CN114234967 A CN 114234967A
Authority
CN
China
Prior art keywords
frame
coordinate system
imu
integration
frames
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
Application number
CN202111546078.XA
Other languages
English (en)
Other versions
CN114234967B (zh
Inventor
金波
吕俊忠
王谦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN202111546078.XA priority Critical patent/CN114234967B/zh
Publication of CN114234967A publication Critical patent/CN114234967A/zh
Application granted granted Critical
Publication of CN114234967B publication Critical patent/CN114234967B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
    • G01C21/1656Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with passive imaging devices, e.g. cameras
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

本发明公开了一种基于多传感器融合的六足机器人定位方法,先利用相机、IMU、六足机器人运动里程计采集的数据进行数据预处理并计算出视觉位姿、IMU预积分、六足机器人运动里程计预积分;再采用条件加权计算法完善并完成初始化;然后基于滑窗内所有关键帧进行非线性优化,获得六足机器人的实时位姿;最后增添回环检测优化,对滑窗内的位姿修正,完成六足机器人定位。本发明提出的定位方法,提高了机器人的定位精度以及鲁棒性,在视觉惯性定位方法的应用优势基础上,解决了常见的实际场景应用问题,且在融合定位的基础上增添了回环检测优化,有效的降低机器人的累积误差,完善了整个机器人定位方法,提高了长时间执行下的定位精度。

Description

一种基于多传感器融合的六足机器人定位方法
技术领域
本发明涉及六足机器人技术领域,特别是涉及一种基于多传感器融合的六足机器人定位方法。
背景技术
移动机器人具有良好的灵活性与发展前景,其中,足式机器人相比其他类型结构的移动机器人更具有良好的环境适应能力以及运动灵活性,六足机器人作为一种典型的足式机器人,具有较强的环境适应性、良好的运动稳定性和容错性以及多变的运动方式,但其定位技术方面的研究局限了其应用场景和发展。
多传感器融合技术是机器人定位与导航的重要研究方向之一,单一传感器定位各有缺陷,多传感器融合定位具有互补性,通过安装在机器人身上的多类传感器来采集机器人周围的环境信息,相互融合估算出机器人的实时位姿信息以及周围环境的地图信息。视觉传感器具有体积小以及信息量丰富等特点,其中因单目相机低成本的优势,使基于单目视觉信息实现定位的算法研究成为热门,但视觉定位在弱纹理以及光照变化强烈等环境下定位精度急剧下降,且纯单目视觉定位存在尺度信息不明确的问题,使其常常需要引入其他传感器来恢复尺度信息。
单目相机与IMU(惯性传感器)之间的传感器融合是目前机器人定位技术方面的常见手段,称为视觉惯性定位方法,其IMU的引入在一定程度使尺度信息弱可观以及解决机器人短时间快速运动下纯视觉定位误差过大的不足,其视觉的引入也解决了IMU长时间运动定位误差随时间扩大的问题;但当机器人运动阶段出现加速度激励不足情况,将失去对尺度的约束,导致尺度不确定性逐渐增加,造成定位误差;并且机器人长期运动在无纹理以及弱光照环境下,相机无法获取有效信息,此时视觉惯性定位将退化为仅基于惯性的航位推算,因IMU采集数据的误差问题,使定位的位姿误差随时间快速增长。
比如,公开号为CN113608556A的发明公开了一种基于多传感器融合的多机器人相对定位方法,所采用的技术方案包括以下步骤:单机对视觉可见范围内其他无人机的视觉位姿估计;IMU信息与视觉估计和UWB测距信息融合;多机间定位结果融合。由于采用了确定尺寸的合作标识,使得视觉定位的鲁棒性、精度和计算速度均得以提高,加快观测更新频率;采用了IMU预测+UWB测距+视觉图像观测的多传感器组合解算,使得多机器人间的定位精度得以进一步提高,并且可以在不依靠GPS信息的情况下保持***相对构型。采用了环形网络拓扑进行阵型估计,使得***在部分观测失效的情况下仍能保持运作,具有一定的冗余性。该发明虽然在视觉惯性定位方法上引入了UWB测距信息,但并没有针对于应用的机器人本体传感器进行充分利用,其成本相对较高,工程适用性具有一定局限。
再比如,公开号为CN111739063A的发明公开了一种基于多传感器融合的电力巡检机器人定位方法,其步骤为:首先对相机、IMU和里程计采集的数据进行预处理以及***的标定,完成机器人***的初始化;其次,提取关键帧,利用关键帧的实时视觉位姿对机器人的位置、速度、角度和IMU中的陀螺仪的偏置进行后端优化,得到机器人的实时位姿;然后,构建关键帧数据库,并计算当前帧图像与关键帧数据库中的所有关键帧的相似度;最后,对形成闭环的关键帧数据库中的关键帧进行闭环优化,输出闭环优化后的位姿,完成对机器人的定位。本发明提出的后端优化方法提高了定位的精度;且在视觉定位过程中增加了闭环优化,有效的消除了定位过程中存在的累计误差,保证了长时间运行情况下的准确性。该发明在视觉惯性定位方法上引入了轮式机器人的轮速传感器,但并不适用于足式机器人。
发明内容
鉴于背景技术所述的诸多不足问题,本发明提供了一种基于多传感器融合的六足机器人定位方法,其目的在于解决现有六足机器人定位方法在实际场景下尺度信息弱可观、定位精度以及鲁棒性较差的技术问题。
一种基于多传感器融合的六足机器人定位方法,六足机器人包括机身和六条腿,每条腿分为多节,每条腿与机身之间以及每条腿的相邻两节之间均通过关节连接,每条腿的底部为足端,六足机器人定位方法包括以下步骤:
S1:在六足机器人上安置多款传感器,根据所述传感器采集的原数据进行数据预处理工作,传感器包括相机、IMU和带有位置反馈的舵机,利用相机采集图像信息,提取与跟踪图像特征点;利用IMU采集加速度与角速度,处理获取IMU预积分;利用带有位置反馈的舵机采集关节角度,处理获取六足机器人运动里程计预积分;
S2:根据步骤S1中图像特征点的提取与跟踪,利用SFM算法进行纯视觉估计滑窗内关键帧以及非关键帧的视觉位姿以及3D点坐标信息;
S3:分别将视觉位姿、IMU预积分、六足机器人运动里程计预积分两两结合进行对齐求解初始化参数,初始化参数包括陀螺仪零偏校正、重力以及速度初始化和尺度参数的初始化;
S4:针对滑窗中的关键帧,将视觉重投影残差、IMU预积分残差、六足机器人运动里程计预积分残差以及先验误差约束量联合构建残差函数,对残差函数进行非线性优化求解,得到六足机器人的实时位姿信息;
S5:基于DBoW2词袋算法对六足机器人的位姿信息进行回环检测,检测成功后进行重定位,再对整个相机轨迹进行回环优化,进而对滑窗内的位姿进行修正,最后完成基于多传感器融合的六足机器人定位。
本发明中使用的相机优选使用单目相机。滑窗,也叫滑动窗口,用于固定同时处理的图像帧数量。
优选的,步骤S1中利用相机采集图像信息,处理获得图像特征点的提取与跟踪,具体包括如下步骤:
S111:将相机采集到的原图像数据均衡化处理后,利用基于金字塔分层的光流法跟踪相邻两帧,并通过检测跟踪状态位、对极约束满足情况等方法来剔除异常点,并使用Shi-Tomasi角点检测算法对图像提取特征点信息加以补给;
S112:在保证每帧图像总特征点数不小于设定阈值基础上,对特征点提取过程进行四叉树均匀化处理算法,使图像特征点分布均匀。
优选的,步骤S1中IMU采集三轴加速度与角速度,处理获取IMU预积分,具体包括如下步骤:
S121:IMU包括加速度计与陀螺仪,分别用于读取IMU坐标系下的加速度和角速度测量信息;将相邻两帧图像第K帧与第K+1帧间的所有IMU数据进行积分,计算得到第K+1帧在世界坐标系下的位置、速度以及姿态信息;
S122:将步骤S121得到的第K+1帧位置、速度以及姿态信息的参考坐标系从世界坐标系w变换为第k个关键帧时刻的IMU坐标系bk,从而提取出积分结果为bk+1对于bk的相对运动量,即IMU预积分;IMU预积分项为:
Figure BDA0003415795730000031
其中,
Figure BDA0003415795730000032
为连续两帧之间IMU预积分提供的位移增量,
Figure BDA0003415795730000033
为连续两帧之间IMU预积分提供的速度增量,
Figure BDA0003415795730000034
为连续两帧之间IMU预积分提供的旋转增量(四元数),ba为IMU加速度计的零偏量,bw为IMU陀螺仪的零偏量。
优选的,步骤S1中带有位置反馈的舵机采集关节角度,处理获取六足机器人运动里程计预积分,具体包括如下步骤:
S131:六足机器人运动里程计:
S1311:六足机器人运动里程计位姿求解成立条件:(1)任何时刻,至少三条非共线足端的腿支撑,(2)求解位姿时,与地面接触的腿没有足端滑动,(3)在六足机器人行走过程中,一定存在足端构成的支撑三角形,即单站相,可定义出某个足端三脚架坐标系τ作为参考坐标系,(4)在相邻两个连续单站相之间一定存在双站相,即六足机器人所有脚支撑于地面,且相邻两个连续单站相定义的足端三角架坐标系与同一个机体坐标系B相关,(5)足够的双站相时间周期,两单站相足以完成位姿求解;
S1312:带有位置反馈的舵机,直接获得当前时刻各关节的角度信息,通过建立D-H坐标系,正运动学建模,求得当前时刻各足末端在机体坐标系Bn下的位置信息;
S1313:在单站相,定义了当前时刻某个足末端三脚架坐标系τn,τn系原点
Figure BDA0003415795730000035
及其余两足末端s2、s3在当前时刻机体坐标系Bn下的位置可知,从而换算出在机体坐标系Bn下以
Figure BDA0003415795730000036
为向量起始点的两条有向单位向量e1和e2,即
Figure BDA0003415795730000037
Figure BDA0003415795730000038
S1314:获得
Figure BDA0003415795730000039
足末端三角坐标系τn的三轴关系为:
Figure BDA00034157957300000310
Figure BDA0003415795730000041
S1315:
Figure BDA0003415795730000042
足末端三角坐标系τn的三轴
Figure BDA0003415795730000043
均为当前时刻机体坐标系Bn下的有向单位向量,转换成三角坐标系τn相对于机体坐标系Bn的旋转矩阵,即为
Figure BDA0003415795730000044
S1316:通过建立D-H坐标系,正运动学建模,获得三角坐标系τn原点
Figure BDA0003415795730000045
在机体坐标系下的位置
Figure BDA0003415795730000046
通过向量计算与投影变换,获得三角坐标系τn相对于机体坐标系Bn的旋转矩阵
Figure BDA0003415795730000047
即获得当前时刻三角坐标系τn相对于机体坐标系Bn的变换矩阵为
Figure BDA0003415795730000048
即当前时刻三脚架坐标系τn与机体坐标系Bn的变换矩阵为
Figure BDA0003415795730000049
S1317:两个连续单站相各自定义有三角架坐标系分别为τk、τk+1;各自解算出三脚架坐标系与机体坐标系的变换矩阵分别为
Figure BDA00034157957300000410
为建立两个连续单站相的三角架坐标系变换关系,单站相间一定存在双站相,其计算出的变换关系为:
Figure BDA00034157957300000411
S1318:足端处设有触底反馈装置,触底反馈装置反馈出各腿足端是否触底的二值信号,用于判断双站相的存在情况;
S1319:若假设第一单站相位的三脚架坐标系τ0对应的机体坐标系B0定义为里程计的世界坐标系w,为表示出六足机器人运动里程计的位姿信息,通过解算出变动的机体坐标系Bn与世界坐标系w之间的变换矩阵,递归地定义为:
Figure BDA00034157957300000412
Figure BDA00034157957300000413
S132:六足机器人运动里程计预积分:
S1321:六足机器人运动里程计估算出位姿信息为
Figure BDA00034157957300000414
其中包含位移量以及旋转量;在非线性优化过程中,在两个关键帧图像间,六足机器人运动里程计预积分中位移部分
Figure BDA00034157957300000415
来源于六足机器人运动里程计,旋转部分
Figure BDA00034157957300000416
来源于IMU预积分,即:
Figure BDA00034157957300000417
Figure BDA00034157957300000418
S1322:六足机器人运动里程计预积分项为:
Figure BDA0003415795730000051
其中,
Figure BDA0003415795730000052
为连续两帧之间里程计预积分提供的位移增量,
Figure BDA0003415795730000053
为连续两帧之间IMU预积分坐标变换得到的旋转增量,bw为IMU陀螺仪的零偏量。
上述进一步方案的有益效果是:在视觉特征点提取方面,采用Shi-Tomasi角点检测算法,其相对于常见的Harris角点更具有稳定性,确保特征跟踪的鲁棒性;并且在特征点均匀化处理方面,采用四叉树均匀化处理算法,其能更为有效的避免特征点聚集情况,更好的提高了特征点的匹配精度;针对六足机器人,充分利用机体自身带有位置反馈的舵机,通过角度信息建立D-H坐标系,正运动学建模,以及向量计算与投影变换,获取足端与机体之间的转换矩阵,通过有效的运动相位变化以及坐标变换关系分析,计算出六足机器人运动里程计,输出机体相对于世界坐标的位姿信息。
优选的,步骤S2包括以下子步骤:
S21:通过计算当前帧与滑窗中关键帧的平均视差与匹配特征点数,设定其平均视差大于某视差阈值且匹配特征点数最多的滑窗内关键帧作为枢纽帧;
S22:利用对极几何约束计算当前帧与枢纽帧之间的本质矩阵E=t^R,利用本质矩阵计算出当前帧相对于枢纽帧的转换矩阵
Figure BDA0003415795730000054
S23:设定枢纽帧的位姿信息为
Figure BDA0003415795730000055
故当前帧的位姿信息为
Figure BDA0003415795730000056
已知两帧位姿信息以及两帧共视的匹配特征点,即可通过三角化这些特征点,得到当前帧与枢纽帧之间均能观测到的3D路标点;
S24:当前帧与枢纽帧之间的滑窗内关键帧均能观测到步骤S23三角化出的3D路标点,即能通过3D点对应到这些关键帧提取和跟踪到的2D特征点,利用PnP法求解出当前帧与枢纽帧之间滑窗内所有关键帧的位姿信息;
S25:遍历枢纽帧到当前帧的所有关键帧,三角化枢纽帧与其他关键帧的特征点,得到更多的3D路标点;
S26:对于滑窗中的第一关键帧到枢纽帧之间的所有关键帧,同样基于PnP法求解出关键帧位姿信息,再将共视的匹配特征点三角化出更多的3D路标点;
S27:基于得到的滑窗内所有关键帧的位姿信息以及大量的3D路标点,通过PnP法求解出滑窗内的所有非关键帧位姿信息;
S28:每个3D点在相应滑窗帧上有观测的2D特征点,从而构成一次重投影误差,基于滑窗中所有关键帧和非关键帧位姿信息以及大量的3D路标点,将对应的重投影误差求和,构造一个关于重投影误差的非线性最小二乘问题,其目标函数为:
Figure BDA0003415795730000057
其中,T为待求解的滑窗内所有帧的位姿信息,Pi为第i个3D路标点坐标,n为3D路标点对应的特征点数量,[ui,vi]T为3D路标点投影到的特征点像素坐标,zi为第i个3D路标点在相机坐标系下的z轴坐标,K为相机内参矩阵;
S29:步骤S24-S27所述的滑窗中所有关键帧和非关键帧位姿信息作为S28所述目标函数的初始值,利用最小二乘法非线性优化进一步求解出滑窗中所有关键帧和非关键帧位姿信息。
优选的,步骤S3中基于IMU预积分与六足机器人运动里程计对齐求解陀螺仪零偏校正,具体方法为:
陀螺仪零偏量bw是IMU预积分旋转部分
Figure BDA0003415795730000061
的自变量,六足机器人运动里程计提供两帧间的相对旋转
Figure BDA0003415795730000062
在初始化过程中,假设滑窗内所有帧的陀螺仪零偏量相等,为估计出陀螺仪零偏量bw,将帧间
Figure BDA0003415795730000063
Figure BDA0003415795730000064
的误差构建为最小二乘问题,目标函数为:
Figure BDA0003415795730000065
其中,
Figure BDA0003415795730000066
是IMU坐标系相对于机体坐标系的旋转外参,
Figure BDA0003415795730000067
A为滑窗中所有关键帧与非关键帧;
Figure BDA0003415795730000068
在陀螺仪偏置误差
Figure BDA0003415795730000069
变化时,利用
Figure BDA00034157957300000610
Figure BDA00034157957300000611
两者间的一阶近似关系进行更新;
Figure BDA00034157957300000612
为第K帧时刻下IMU预积分
Figure BDA00034157957300000613
关于零偏量
Figure BDA00034157957300000614
的雅可比。
优选的,步骤S3中基于IMU预积分与六足机器人运动里程计对齐求解重力以及速度初始化,具体方法为:
待优化的变量为:
Figure BDA00034157957300000615
其中,
Figure BDA00034157957300000616
均为IMU坐标系下的速度,
Figure BDA00034157957300000617
为机体坐标系下的重力加速度,
相邻两帧图像k→k+1之间,定义IMU预积分项中
Figure BDA00034157957300000618
Figure BDA00034157957300000619
增量,计算这两个增量分别与第k和k+1帧图像对应的IMU位置、速度之间的增量预测值的误差,并对各项进行参考坐标系变换;化简为
Figure BDA00034157957300000620
形式:
Figure BDA00034157957300000621
其中,Δtk为相邻两帧图像k→k+1之间的时间间隔,
Figure BDA00034157957300000622
为第一帧机体坐标系相对于第k帧时刻IMU坐标系的旋转矩阵,
Figure BDA00034157957300000623
为第k+1帧时刻IMU坐标系相对于第一帧机体坐标系的旋转矩阵,
Figure BDA00034157957300000624
为机体坐标系相对于IMU坐标系的旋转外参,
Figure BDA00034157957300000625
Figure BDA0003415795730000071
为机体坐标系相对于IMU坐标系的平移外参,
基于滑窗内的所有关键帧与非关键帧作为约束,构造多组
Figure BDA0003415795730000072
最终组合成关于待优化变量χI的最小二乘问题:
Figure BDA0003415795730000073
重力初始化后往往需要对重力方向修正处理,其目的在于使初始化得到的重力更为准确。
优选的,步骤S3中尺度参数的初始化,采用条件加权计算法,结合视觉位姿分别与IMU预积分、六足机器人运动里程计预积分对齐求解结果加权处理,S321:视觉位姿与六足机器人运动里程计预积分对齐:
相邻两帧图像k→k+1之间,六足机器人运动里程计预积分增量
Figure BDA0003415795730000074
与纯视觉计算两帧图像位姿信息间存在误差:
Figure BDA0003415795730000075
上式转换为Hx=b形式为:
Figure BDA0003415795730000076
其中,
Figure BDA0003415795730000077
为第一帧相机坐标系相对于第k帧机体坐标系的旋转矩阵,
Figure BDA0003415795730000078
为第k、k+1帧时刻相机坐标系分别相对于第一帧相机坐标系的位置,
Figure BDA0003415795730000079
为相机坐标系相对于机体坐标系的平移外参,
Figure BDA00034157957300000710
为第k+1帧时刻机体坐标系相对于第一帧相机坐标系的旋转矩阵,
基于滑窗内的所有关键帧与非关键帧作为约束,构造多组Hx=b,最终组合成关于待优化变量s1的最小二乘问题:
Figure BDA00034157957300000711
S322:视觉位姿与IMU预积分对齐:
待优化的变量为:
Figure BDA00034157957300000712
相邻两帧图像k→k+1之间,定义IMU预积分项中
Figure BDA00034157957300000713
Figure BDA00034157957300000714
增量,计算这两个增量分别与第k和k+1帧图像对应的IMU位置、速度之间的增量预测值的误差,并对各项进行合理的参考坐标系变换;化简为
Figure BDA00034157957300000715
形式:
Figure BDA00034157957300000716
其中,Δtk为相邻两帧图像k→k+1之间的时间间隔,
Figure BDA0003415795730000081
为第一帧相机坐标系相对于第k帧时刻IMU坐标系的旋转矩阵,
Figure BDA0003415795730000082
为第k、k+1帧时刻相机坐标系分别相对于第一帧相机坐标系的位置,
Figure BDA0003415795730000083
为第k+1帧时刻IMU坐标系相对于第一帧相机坐标系的旋转矩阵,
Figure BDA0003415795730000084
为相机坐标系相对于IMU坐标系的平移外参,
基于滑窗内的所有关键帧与非关键帧作为约束,构造多组
Figure BDA0003415795730000085
最终组合成关于待优化变量χ的最小二乘问题:
Figure BDA0003415795730000086
S323:条件加权计算法完成尺度参数初始化:
S3231:纯视觉求解位姿采用有光流跟踪,其正常工作前提是灰度假设不变,而在实际应用中由于光照条件的变化,常常拍摄的图像质量参差不齐;灰度图像的一元灰度熵代表了图像灰度分布的聚类特征,也是图像信息不确定性的度量,其公式为:
Figure BDA0003415795730000087
其中,H(x)为灰度图像的一元灰度熵,p(xi)为某一灰度xi在图像中出现的概率,若H(x)越小,则图像的像素梯度越小,图像纹理信息越差;若连续两帧图像k→k+1之间的熵变||Hk(x)-Hk+1(x)||越大,图像的运动存在异常,估计的位姿可靠性越低;
基于滑窗内的所有关键帧与非关键帧,计算其灰度熵均值与熵变均值来综合判断纯视觉估计位姿信息的可靠性:
灰度熵均值:
Figure BDA0003415795730000088
熵变均值:
Figure BDA0003415795730000089
其中,当灰度熵均值不大于某设定阈值或熵变均值不小于某设定阈值,即H≤M1||H≥M2,则认为纯视觉求解的位姿信息可靠性较低;
S3232:基于滑窗内的所有关键帧与非关键帧,通过比较某设定阈值与该段时间内两帧图像间加速度变化量的标准差的大小关系,来参数化因六足机器人在运动过程中出现匀速或匀加速运动所导致的加速度激励不足而降低IMU求解出的位姿信息可靠性的影响,标准差计算公式为:
Figure BDA00034157957300000810
其中,
Figure BDA0003415795730000091
为连续两帧间的加速度变化量,
Figure BDA0003415795730000092
为滑窗内所有连续关键帧与非关键帧之间的加速度变化量均值,当标准差不大于设定阈值,即U≤M3,则认为IMU求解的位姿信息可靠性低;
S3233:六足机器人运动里程计在正常工作情况下,其单站相至少存在3条腿足端落地,且连续两个单站相之间一定存在双站相;而双站相的存在是为了使里程计求解出连续状态变化的位姿信息,且最佳状态下要求6条腿足端同时落地;实际过程中双站相时刻不一定6条腿触地,如果前后两次单站相所涉及到的腿在双站相均触地也可以连贯位姿求解,所以认为6条同时触地最佳,其他情况可靠性下降。为参数化里程计求解出的位姿信息可靠性,在六足机器人足端设置有触底反馈装置,其反馈信息为是否触底的二值信号,其六条腿的信号表示为{(L1,L2,L3,L4,L5,L6)|Li=0||1},设定某阈值与六条腿的信号总值比较,从而参数化里程计求解出的位姿信息可靠性的影响,其六条腿的信号总值为:
Figure BDA0003415795730000093
其中,L为六足机器人足端触底信号总值,当信号总值不等于6,即L≠M4,则认为六足机器人运动里程计求解的位姿信息可靠性低;
S3234:条件加权计算法:
在滑窗内,IMU的采样频率最高,其次是六足机器人运动里程计,纯视觉最小;通过对各传感器求解的位姿信息可靠性综合分析,设定不同权重系数来动态调控尺度参数,其表达式为:
Figure BDA0003415795730000094
其中,纯视觉的异常判断条件H≤M1||H≥M2,设定权重系数W1;IMU的异常判断条件U≤M3,设定权重系数W2;六足机器运动里程计的异常判断条件L≠M4,设定权重系数W3;S为加权优化后的尺度参数,其计算结果S>0时,尺度参数初始化完成,则整个初始化过程完成。
上述进一步方案的有益效果是:在初始化阶段,陀螺仪零偏校正、重力以及速度初始化、重力初始化后进行的重力方向修正问题均基于IMU预积分与六足机器人运动里程计对齐求解,该两者的数据采样频率更高,受环境影响较小,能求解出更可靠的初始值;而尺度参数的初始化采用条件加权计算法,结合视觉位姿分别与IMU预积分、六足机器人运动里程计预积分对齐求解结果加权处理,其充分考虑并参数化三种传感器的数据可靠性问题,使主要影响相机重投影误差的尺度参数物理量可以估算出更为接近最优解的初始值,提高整个初始化过程的有效性,确保非线性优化阶段位姿信息输出的实时性。
优选的,步骤S4具体包括以下步骤:
S41:基于滑窗内关键帧的非线性优化问题,其待优化变量为:
Figure BDA0003415795730000101
Figure BDA0003415795730000102
其中,χ为待优化变量,xk为世界坐标系下第k帧的六足机器人位姿信息PVQ及零偏量,λm为第m个路标点首次被某帧观测到的逆深度信息;
S42:六足机器人运动里程计预积分残差项:
S421:利用带有位置反馈的舵机采集关节角度,处理获取六足机器人运动里程计预积分,其角度信息受噪声nB的影响,假设该类噪声服从高斯分布:
Figure BDA0003415795730000103
S422:预积分误差量状态方程:
Figure BDA0003415795730000104
将误差量状态方程写为矩阵形式:
Figure BDA0003415795730000105
Figure BDA0003415795730000106
由上式可以得到雅可比矩阵和协方差矩阵的递推方程:
Figure BDA0003415795730000107
其中,通过递推获得相邻两个关键帧之间里程计观测噪声的协方差矩阵
Figure BDA0003415795730000108
初始时刻***状态的雅可比矩阵和协方差矩阵分别为单位阵和零矩阵;V为噪声ni的协方差矩阵,且各分量相互独立,故
Figure BDA0003415795730000111
S423:六足机器人运动里程计预积分残差约束:
Figure BDA0003415795730000112
S424:IMU预积分残差约束:
Figure BDA0003415795730000113
其中,[]vec为提取四元数的虚部,
Figure BDA0003415795730000114
为四元数误差的三维表达式,
Figure BDA0003415795730000115
Figure BDA0003415795730000116
为第k关键帧到第k+1关键帧时间间隔内,使用含有噪声的加速度计和陀螺仪数据计算的IMU预积分测量项;
S424:视觉重投影残差约束:
Figure BDA0003415795730000117
Figure BDA0003415795730000118
其中,
Figure BDA0003415795730000119
为第l个路标点在第j个相机归一化相机坐标系中横纵坐标值,
Figure BDA00034157957300001110
为估计第l个路标点在第j个相机归一化相机坐标系中的可能坐标;
S425:将视觉重投影残差、IMU预积分残差、六足机器人运动里程计预积分残差以及先验误差约束量联合构建残差目标函数为:
Figure BDA00034157957300001111
其中,四种残差均以马氏距离表示,ρ为核函数,rp-Jpχ为边缘化形成的先验误差约束,通过舒尔补方法获得;B为六足机器人运动里程计预积分的第k帧时刻关键帧的集合,I为IMU预积分的第k帧时刻关键帧的集合,C为第l路标点被第j帧时刻关键帧观测的集合;
Figure BDA0003415795730000121
相邻两个关键帧之间六足机器人运动里程计观测噪声的协方差矩阵,
Figure BDA0003415795730000122
相邻两个关键帧之间IMU观测噪声的协方差矩阵,
Figure BDA0003415795730000123
视觉重投影观测噪声的协方差矩阵。
上述进一步方案的有益效果是:以非线性优化的方式,充分融合三种传感器,其定位精度以及鲁棒性优于视觉惯性定位方法;同时,引入六足机器人运动里程计预积分带来的新约束时,通过只添加里程计的位移增量约束,在提高定位精度的基础上,减少了后端优化的计算量,有效地确保了优化求解位姿信息实时性的要求。
优选的,步骤S5包括以下子步骤:
S51:当前帧与关键帧数据库中所有关键帧进行比较,即计算当前帧与词袋的相似度分数:
Figure BDA0003415795730000124
其中,s(m,ni)为当前帧与关键帧数据库中第i个关键帧的相似度,W为关键帧数据库大小,m为当前帧的描述子向量,ni为关键帧数据库中第i个关键帧的描述子向量,||||1为L1范数,即个元素绝对值之和;
S52:检测到当前帧与回环帧之间有回环,进行重定位,将回环帧的位姿和相关特征点的观测与当前帧之间构成重投影误差,加入到S425所述的目标函数中,优化求解出当前帧与回环帧之间的相对位姿关系:
Figure BDA0003415795730000125
其中,Ψ为第l路标点被第v帧闭环帧观测的集合,
Figure BDA0003415795730000126
为当前帧与闭环帧间的重投影误差,
Figure BDA0003415795730000127
为第v闭环帧相对于当前帧的旋转四元数,
Figure BDA0003415795730000128
为第v闭环帧相对于当前帧的位移,
Figure BDA0003415795730000129
视觉重投影观测噪声的协方差矩阵;
S53:当前帧与回环帧之间的相机轨迹进行回环优化,计算相邻关键帧之间的残差为:
Figure BDA00034157957300001210
其中,ri,i+1()为相邻第i关键帧与第i+1关键帧之间的残差,
Figure BDA0003415795730000131
分别为第i关键帧的翻滚角、俯仰角、偏航角,
Figure BDA0003415795730000132
分别为第i关键帧与第i+1关键帧的位置,
Figure BDA0003415795730000133
为在第i关键帧坐标系下第i关键帧与第i+1关键帧间的相对位移,
Figure BDA0003415795730000134
为第i关键帧与第i+1关键帧间的相对偏航角;
S54:根据步骤S53的残差项,构造整体目标函数为:
Figure BDA0003415795730000135
其中,ε为序列边,L为回环边。
本发明有益效果是:本发明的定位方法借助于多传感器融合以及非线性优化求解的思想充分利用机器人便携的以及本体的传感器数据,将IMU、单目相机以及带有位置反馈的舵机有效的融合,提高了六足机器人定位的鲁棒性和精度,并且在视觉惯性定位方法的应用优势基础上,进一步解决了机器人运动阶段加速度激励不足造成定位误差加大以及机器人长期运动于无纹理以及弱光照环境定位误差随时间快速增长等实际场景应用的问题;同时,基于非线性优化求解位姿信息的初始化阶段,将三类传感器数据相互对齐,充分利用各自数据优势,得到更为接近最优解的初始值,减少优化求解计算量,加快优化求解速度,使位姿信息实时性得到保障。最后,在融合定位的基础上增添了回环检测优化,有效的降低机器人定位过程的累积误差,完善了整个机器人定位方法,进一步提高了本发明在实际长时间执行下的定位精度。
附图说明
图1为本发明基于多传感器融合的六足机器人定位方法的流程图。
图2为本发明六足机器人结构及各坐标系示意图。
图3为本发明六足机器人运动里程计位姿求解示意图。
图4为本发明初始化的流程图。
图5为本发明条件加权计算法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
如图1所示,一种基于多传感器融合的六足机器人定位方法,一种基于多传感器融合的六足机器人定位方法,六足机器人包括机身和六条腿,每条腿分为多节,每条腿与机身之间以及每条腿的相邻两节之间均通过关节连接,每条腿的底部为足端,六足机器人定位方法包括以下步骤:
S1:在六足机器人机体安置多款传感器,根据所述传感器采集的原数据进行数据预处理工作,传感器包括相机、IMU和带有位置反馈的舵机,利用相机采集图像信息,提取与跟踪图像特征点;利用IMU采集加速度与角速度,处理获取IMU预积分;利用带有位置反馈的舵机采集关节角度,处理获取六足机器人运动里程计预积分;
S2:根据S1中图像特征点的提取与跟踪,利用SFM算法进行纯视觉估计滑窗内关键帧以及非关键帧的视觉位姿以及3D点坐标信息;
S3:分别将视觉位姿、IMU预积分、六足机器人运动里程计预积分两两结合进行对齐求解初始化参数,初始化参数包括陀螺仪零偏校正、重力以及速度初始化和尺度参数的初始化;
S4:针对滑窗中的关键帧,将视觉重投影残差、IMU预积分残差、六足机器人运动里程计预积分残差以及先验误差约束量联合构建残差函数,对残差函数进行非线性优化求解,得到六足机器人的实时位姿信息;
S5:基于DBoW2词袋算法对六足机器人的位姿信息进行回环检测,检测成功后进行重定位,再对整个相机轨迹进行回环优化,进而对滑窗内的位姿进行修正,最后完成基于多传感器融合的六足机器人定位。
如图2所示,本实施例中六足机器人安装有单目相机、六轴IMU以及带位置反馈的舵机等其他传感器,六条腿均为根关节、髋关节、膝关节以及足端结构,其中每个关节连接处均设置一个带位置反馈的舵机,每个足端均设置触底反馈装置;各部分刚性连接,通过外参标定估算出相机坐标系、IMU坐标系、机体坐标系相互之间的变换矩阵;利用舵机的角度测量值,通过建立D-H坐标系,正运动学建模,估算出足端三脚架坐标系相对于机体坐标系的变换矩阵。
在本发明实施例中,如图1所示,步骤S1中利用相机采集图像信息,处理获得图像特征点的提取与跟踪,具体包括如下步骤:
S111:原图像数据均衡化处理后,利用基于金字塔分层的光流法跟踪相邻两帧,并通过检测跟踪状态位、对极约束满足情况等方法来剔除异常点,为保证每帧图像总特征点数达到设定阈值,使用Shi-Tomasi角点检测算法对图像提取特征点信息加以补给;
S112:在保证每帧图像总特征点数不小于设定阈值基础上,为充分利用图像信息,对特征点提取过程进行四叉树均匀化处理算法,使图像特征点分布均匀;
在本发明实施例中,如图1所示,步骤S1中IMU采集三轴加速度与角速度,处理获取IMU预积分,具体包括如下步骤:
S121:六轴IMU包括加速度计与陀螺仪,分别读取IMU坐标系下的加速度和角速度测量信息;将相邻两帧图像第K帧与第K+1帧间的所有IMU数据进行积分,计算得到第K+1帧在世界坐标系下的位置、速度以及姿态信息;
S122:将步骤S121得到的第K+1帧位置、速度以及姿态信息的参考坐标系从世界坐标系w变换为第k个关键帧时刻的IMU坐标系bk,从而提取出积分结果为bk+1对于bk的相对运动量,即IMU预积分;IMU预积分项为:
Figure BDA0003415795730000141
其中,
Figure BDA0003415795730000142
为连续两帧之间IMU预积分提供的位移增量,
Figure BDA0003415795730000143
为连续两帧之间IMU预积分提供的速度增量,
Figure BDA0003415795730000151
为连续两帧之间IMU预积分提供的旋转增量(四元数),ba为IMU加速度计的零偏量,bw为IMU陀螺仪的零偏量;
如图3所示,在实施方式中,针对六足机器人,充分利用机体自身带有位置反馈的舵机,通过角度信息建立D-H坐标系,正运动学建模,以及向量计算与投影变换,获取足端与机体之间的转换矩阵,通过有效的运动相位变化以及坐标变换关系分析,计算出六足机器人运动里程计,输出机体相对于世界坐标的位姿信息。
在本发明实施例中,如图1、3所示,步骤S1中带有位置反馈的舵机采集关节角度,处理获取六足机器人运动里程计预积分,具体包括如下步骤:
S131:六足机器人运动里程计:
S1311:六足机器人运动里程计位姿求解成立条件:(1)任何时刻,至少三条非共线足端的腿支撑(2)求解位姿时,与地面接触的腿没有足端滑动(3)在六足机器人行走过程中,一定存在足端构成的支撑三角形,即单站相,可定义出某个足端三脚架坐标系τ作为参考坐标系(4)在相邻两个连续单站相之间一定存在双站相,即六足机器人所有脚支撑于地面,且相邻两个连续单站相定义的足端三角架坐标系与同一个机体坐标系B相关(5)足够的双站相时间周期,两单站相足以完成位姿求解;
S1312:带有位置反馈的舵机,直接获得当前时刻各关节的角度信息,通过建立D-H坐标系,正运动学建模,求得当前时刻各足末端在机体坐标系Bn下的位置信息;
S1313:在单站相,如步骤S1311条件(1)、(3)所述,定义了当前时刻某个足末端三脚架坐标系τn,如步骤S1312所述,τn系原点
Figure BDA0003415795730000152
及其余两足末端s2、s3在当前时刻机体坐标系Bn下的位置可知,从而换算出在机体坐标系Bn下以
Figure BDA0003415795730000153
为向量起始点的两条有向单位向量e1和e2,即
Figure BDA0003415795730000154
S1314:如S1313所述,可以获得
Figure BDA0003415795730000155
足末端三角坐标系τn的三轴关系为:
Figure BDA0003415795730000156
Figure BDA0003415795730000157
S1315:如S1313、S1314所述,
Figure BDA0003415795730000158
足末端三角坐标系τn的三轴
Figure BDA0003415795730000159
均为当前时刻机体坐标系Bn下的有向单位向量,故可以转换成三角坐标系τn相对于机体坐标系Bn的旋转矩阵,即为
Figure BDA00034157957300001510
S1316:如1312、S1313、S1315所述,通过建立D-H坐标系,正运动学建模,获得三角坐标系τn原点
Figure BDA00034157957300001511
在机体坐标系下的位置
Figure BDA00034157957300001512
通过向量计算与投影变换,获得三角坐标系τn相对于机体坐标系Bn的旋转矩阵
Figure BDA00034157957300001513
即获得当前时刻三角坐标系τn相对于机体坐标系Bn的变换矩阵为
Figure BDA00034157957300001514
即当前时刻三脚架坐标系τn与机体坐标系Bn的变换矩阵为
Figure BDA0003415795730000161
S1317:如步骤S1316所述,两个连续单站相各自定义有三角架坐标系分别为τk、τk+1;各自解算出三脚架坐标系与机体坐标系的变换矩阵分别为
Figure BDA0003415795730000162
为建立两个连续单站相的三角架坐标系变换关系,单站相间一定存在双站相,其计算出的变换关系为:
Figure BDA0003415795730000163
S1318:如步骤S1317所述,双站相的存在具有必要性,故为检测双站相状态,本发明设定足端处存在触底反馈装置,该机构反馈出各腿足端是否触底的二值信号,用于判断双站相的存在情况;
S1319:如步骤S1316、S1317所述,若假设第一单站相位的三脚架坐标系τ0对应的机体坐标系B0定义为里程计的世界坐标系w,为表示出六足机器人运动里程计的位姿信息,需要解算出变动的机体坐标系Bn与世界坐标系w之间的变换矩阵,即可以递归地定义为:
Figure BDA0003415795730000164
Figure BDA0003415795730000165
S132:六足机器人运动里程计预积分:
S1321:如步骤S1316所述,六足机器人运动里程计可以估算出位姿信息为
Figure BDA0003415795730000166
其中包含位移量以及旋转量;在非线性优化过程中,为满足实时性需求,希望引入的新约束在提高求解结果精度的情况下尽量不加重算力,故在两个关键帧图像间,针对该阶段的六足机器人运动里程计预积分,其位移部分
Figure BDA0003415795730000167
来源于六足机器人运动里程计,其旋转部分
Figure BDA0003415795730000168
来源于IMU预积分,即:
Figure BDA0003415795730000169
Figure BDA00034157957300001610
S1322:如步骤S1321所述,六足机器人运动里程计预积分项为:
Figure BDA00034157957300001611
其中,
Figure BDA00034157957300001612
为连续两帧之间里程计预积分提供的位移增量,
Figure BDA00034157957300001613
为连续两帧之间IMU预积分坐标变换得到的旋转增量(四元数),bw为IMU陀螺仪的零偏量。
在本发明实施例中,所述步骤S2包括以下子步骤:
S21:通过计算当前帧与滑窗中关键帧的平均视差与匹配特征点数,设定其平均视差大于某视差阈值且匹配特征点数最多的滑窗内关键帧作为枢纽帧;
S22:利用对极几何约束计算当前帧与枢纽帧之间的本质矩阵E=t^R,利用本质矩阵计算出当前帧相对于枢纽帧的转换矩阵
Figure BDA0003415795730000171
S23:设定枢纽帧的位姿信息为
Figure BDA0003415795730000172
故当前帧的位姿信息为
Figure BDA0003415795730000173
已知两帧位姿信息以及两帧共视的匹配特征点,即可通过三角化这些特征点,得到当前帧与枢纽帧之间均能观测到的3D路标点;
S24:当前帧与枢纽帧之间的滑窗内关键帧均能观测到步骤S23三角化出的3D路标点,即能通过3D点对应到这些关键帧提取和跟踪到的2D特征点,利用PnP法求解出当前帧与枢纽帧之间滑窗内所有关键帧的位姿信息;
S25:遍历枢纽帧到当前帧的所有关键帧,三角化枢纽帧与其他关键帧的特征点,得到更多的3D路标点;
S26:对于滑窗中的第一关键帧到枢纽帧之间的所有关键帧,同样基于PnP法求解出关键帧位姿信息,再将共视的匹配特征点三角化出更多的3D路标点;
S27:基于得到的滑窗内所有关键帧的位姿信息以及大量的3D路标点,通过PnP法求解出滑窗内的所有非关键帧位姿信息;
S28:每个3D点在相应滑窗帧上有观测的2D特征点,从而构成一次重投影误差,基于滑窗中所有关键帧和非关键帧位姿信息以及大量的3D路标点,将对应的重投影误差求和,构造一个关于重投影误差的非线性最小二乘问题,其目标函数为:
Figure BDA0003415795730000174
其中,T为待求解的滑窗内所有帧的位姿信息,Pi为第i个3D路标点坐标,n为3D路标点对应的特征点数量,[ui,vi]T为3D路标点投影到的特征点像素坐标,zi为第i个3D路标点在相机坐标系下的z轴坐标,K为相机内参矩阵;
S29:步骤S24-S27所述的滑窗中所有关键帧和非关键帧位姿信息作为S28所述目标函数的初始值,利用最小二乘法非线性优化进一步求解出滑窗中所有关键帧和非关键帧位姿信息。
在本发明实施例中,如图4所示,步骤S3中基于IMU预积分与六足机器人运动里程计对齐求解陀螺仪零偏校正,具体方法为:
陀螺仪零偏量bw是IMU预积分旋转部分
Figure BDA0003415795730000175
的自变量,六足机器人运动里程计本身能够提供两帧间的相对旋转
Figure BDA0003415795730000176
在初始化过程中,假设滑窗内所有帧的陀螺仪零偏量相等,故为估计出陀螺仪零偏量bw,将帧间
Figure BDA0003415795730000177
Figure BDA0003415795730000178
的误差构建为最小二乘问题,其目标函数为:
Figure BDA0003415795730000179
其中,
Figure BDA0003415795730000181
是IMU坐标系相对于机体坐标系的旋转外参,
Figure BDA0003415795730000182
A为滑窗中所有关键帧与非关键帧;
Figure BDA0003415795730000183
在陀螺仪偏置误差
Figure BDA0003415795730000184
变化时,利用两者间的一阶近似关系进行更新;
Figure BDA0003415795730000185
为第K帧时刻下IMU预积分
Figure BDA0003415795730000186
关于零偏量
Figure BDA0003415795730000187
的雅可比;
在本发明实施例中,如图4所示,步骤S3中基于IMU预积分与六足机器人运动里程计对齐求解重力以及速度初始化,具体方法为:
待优化的变量为:
Figure BDA0003415795730000188
其中,
Figure BDA0003415795730000189
为IMU坐标系下的速度,
Figure BDA00034157957300001810
为机体坐标系下的重力加速度(矢量);
相邻两帧图像k→k+1之间,定义IMU预积分项中
Figure BDA00034157957300001811
Figure BDA00034157957300001812
增量,计算这两个增量分别与第k和k+1帧图像对应的IMU位置、速度之间的增量预测值的误差,并对各项进行合理的参考坐标系变换;为便于求解,化简为
Figure BDA00034157957300001813
形式:
Figure BDA00034157957300001814
其中,Δtk为相邻两帧图像k→k+1之间的时间间隔,
Figure BDA00034157957300001815
为第一帧机体坐标系相对于第k帧时刻IMU坐标系的旋转矩阵,
Figure BDA00034157957300001816
为第k+1帧时刻IMU坐标系相对于第一帧机体坐标系的旋转矩阵,
Figure BDA00034157957300001817
为机体坐标系相对于IMU坐标系的旋转外参,
Figure BDA00034157957300001818
Figure BDA00034157957300001819
为机体坐标系相对于IMU坐标系的平移外参;
基于滑窗内的所有关键帧与非关键帧作为约束,构造多组
Figure BDA00034157957300001820
最终组合成关于待优化变量χI的最小二乘问题:
Figure BDA00034157957300001821
重力初始化后往往需要对重力方向修正处理,其目的在于使初始化得到的重力更为准确。
如图5所示,在实施方式中,尺度参数的初始化采用条件加权计算法,结合视觉位姿分别与IMU预积分、六足机器人运动里程计预积分对齐求解结果加权处理,充分考虑并参数化三种传感器的数据可靠性问题,使主要影响相机重投影误差的尺度参数物理量可以估算出更为接近最优解的初始值;
在本发明实施例中,如图4、5所示,步骤S3中尺度参数的初始化,采用条件加权计算法,结合视觉位姿分别与IMU预积分、六足机器人运动里程计预积分对齐求解结果加权处理,
S321:视觉位姿与六足机器人运动里程计预积分对齐:
相邻两帧图像k→k+1之间,其六足机器人运动里程计预积分增量
Figure BDA0003415795730000191
与纯视觉计算两帧图像位姿信息间存在误差:
Figure BDA0003415795730000192
上式转换为Hx=b形式为:
Figure BDA0003415795730000193
其中,
Figure BDA0003415795730000194
为第一帧相机坐标系相对于第k帧机体坐标系的旋转矩阵,
Figure BDA0003415795730000195
为第k、k+1帧时刻相机坐标系分别相对于第一帧相机坐标系的位置,
Figure BDA0003415795730000196
为相机坐标系相对于机体坐标系的平移外参,
Figure BDA0003415795730000197
为第k+1帧时刻机体坐标系相对于第一帧相机坐标系的旋转矩阵;
基于滑窗内的所有关键帧与非关键帧作为约束,构造多组Hx=b,最终组合成关于待优化变量s1的最小二乘问题:
Figure BDA0003415795730000198
S322:视觉位姿与IMU预积分对齐:
待优化的变量为:
Figure BDA0003415795730000199
相邻两帧图像k→k+1之间,定义IMU预积分项中
Figure BDA00034157957300001910
Figure BDA00034157957300001911
增量,计算这两个增量分别与第k和k+1帧图像对应的IMU位置、速度之间的增量预测值的误差,并对各项进行合理的参考坐标系变换;为便于求解,化简为
Figure BDA00034157957300001912
形式:
Figure BDA00034157957300001913
其中,Δtk为相邻两帧图像k→k+1之间的时间间隔,
Figure BDA00034157957300001914
为第一帧相机坐标系相对于第k帧时刻IMU坐标系的旋转矩阵,
Figure BDA00034157957300001915
为第k、k+1帧时刻相机坐标系分别相对于第一帧相机坐标系的位置,
Figure BDA00034157957300001916
为第k+1帧时刻IMU坐标系相对于第一帧相机坐标系的旋转矩阵,
Figure BDA00034157957300001917
为相机坐标系相对于IMU坐标系的平移外参;
基于滑窗内的所有关键帧与非关键帧作为约束,构造多组
Figure BDA00034157957300001918
最终组合成关于待优化变量χ的最小二乘问题:
Figure BDA0003415795730000201
S323:条件加权计算法完成尺度参数初始化:
S3231:纯视觉求解位姿采用有光流跟踪,其正常工作前提是灰度假设不变,而在实际应用中由于光照条件的变化,常常拍摄的图像质量参差不齐;灰度图像的一元灰度熵代表了图像灰度分布的聚类特征,也是图像信息不确定性的度量,其公式为:
Figure BDA0003415795730000202
其中,H(x)为灰度图像的一元灰度熵,p(xi)为某一灰度xi在图像中出现的概率,若H(x)越小,则图像的像素梯度越小,图像纹理信息越差;若连续两帧图像k→k+1之间的熵变||Hk(x)-Hk+1(x)||越大,图像的运动存在异常,估计的位姿可靠性越低;
基于滑窗内的所有关键帧与非关键帧,计算其灰度熵均值与熵变均值来综合判断纯视觉估计位姿信息的可靠性:
灰度熵均值:
Figure BDA0003415795730000203
熵变均值:
Figure BDA0003415795730000204
其中,当灰度熵均值不大于某设定阈值或熵变均值不小于某设定阈值,即H≤M1||H≥M2,则认为纯视觉求解的位姿信息可靠性较低;
S3232:六足机器人在运动过程中,不可避免地会出现匀速或匀加速运动,导致加速度激励不足,使IMU求解出的位姿信息可靠性较低,基于滑窗内的所有关键帧与非关键帧,通过比较某设定阈值与该段时间内两帧图像间加速度变化量的标准差的大小关系,来参数化该情况带来的影响,其标准差计算公式为:
Figure BDA0003415795730000205
其中,
Figure BDA0003415795730000206
为连续两帧间的加速度变化量,
Figure BDA0003415795730000207
为滑窗内所有连续关键帧与非关键帧之间的加速度变化量均值,当标准差不大于设定阈值,即U≤M3,则认为IMU求解的位姿信息可靠性较低;
S3233:六足机器人运动里程计在正常工作情况下,其单站相至少存在3条腿足端落地,且连续两个单站相之间一定存在双站相;而双站相的存在是为了使里程计求解出连续状态变化的位姿信息,且最佳状态下要求6条腿足端同时落地;实际过程中双站相时刻不一定6条腿触地,如果前后两次单站相所涉及到的腿在双站相均触地也可以连贯位姿求解,所以认为6条同时触地最佳,其他情况可靠性下降。为参数化里程计求解出的位姿信息可靠性,在六足机器人足端设置有触底反馈装置,其反馈信息为是否触底的二值信号,其六条腿的信号表示为{(L1,L2,L3,L4,L5,L6)|Li=0||1},设定某阈值与六条腿的信号总值比较,从而参数化该情况带来的影响,其六条腿的信号总值为:
Figure BDA0003415795730000211
其中,L为六足机器人足端触底信号总值,当信号总值不等于6,即L≠M4,则认为六足机器人运动里程计求解的位姿信息可靠性较低;
S3234:条件加权计算法:
在滑窗内,IMU的采样频率最高,其次是六足机器人运动里程计,纯视觉最小;如步骤S3231-S3233所述,通过对各传感器求解的位姿信息可靠性综合分析,设定不同权重系数来动态调控尺度参数,其表达式为:
Figure BDA0003415795730000212
其中,纯视觉的异常判断条件H≤M1||H≥M2,设定权重系数W1;IMU的异常判断条件U≤M3,设定权重系数W2;六足机器运动里程计的异常判断条件L≠M4,设定权重系数W3;S为加权优化后的尺度参数,其计算结果S>0时,尺度参数初始化完成,则整个初始化过程完成。
在本发明实施例中,如图1所示,所述步骤S4具体包括以下子步骤:
S41:基于滑窗内关键帧的非线性优化问题,其待优化变量为:
Figure BDA0003415795730000213
Figure BDA0003415795730000214
其中,χ为待优化变量,xk为世界坐标系下第k帧的六足机器人位姿信息PVQ及零偏量,λm为第m个路标点首次被某帧观测到的逆深度信息;
S42:六足机器人运动里程计预积分残差项:
S421:如步骤S1所述,利用带有位置反馈的舵机采集关节角度,处理获取六足机器人运动里程计预积分,其角度信息受噪声nB的影响,假设该类噪声服从高斯分布:
Figure BDA0003415795730000215
S422:预积分误差量状态方程:
Figure BDA0003415795730000221
将误差量状态方程写为矩阵形式:
Figure BDA0003415795730000222
Figure BDA0003415795730000223
由上式可以得到雅可比矩阵和协方差矩阵的递推方程:
Figure BDA0003415795730000224
其中,通过递推获得相邻两个关键帧之间里程计观测噪声的协方差矩阵
Figure BDA0003415795730000225
初始时刻***状态的雅可比矩阵和协方差矩阵分别为单位阵和零矩阵;V为噪声ni的协方差矩阵,且各分量相互独立,故
Figure BDA0003415795730000226
S423:所述六足机器人运动里程计预积分残差约束:
Figure BDA0003415795730000227
S424:所述IMU预积分残差约束:
Figure BDA0003415795730000228
其中,[]vec为提取四元数的虚部,
Figure BDA0003415795730000229
为四元数误差的三维表达式,
Figure BDA00034157957300002210
Figure BDA00034157957300002211
为第k关键帧到第k+1关键帧时间间隔内,使用含有噪声的加速度计和陀螺仪数据计算的IMU预积分测量项;
S424:所述视觉重投影残差约束:
Figure BDA0003415795730000231
Figure BDA0003415795730000232
其中,
Figure BDA0003415795730000233
为第l个路标点在第j个相机归一化相机坐标系中横纵坐标值,
Figure BDA0003415795730000234
为估计第l个路标点在第j个相机归一化相机坐标系中的可能坐标;
S425:如步骤S423-S424所述,将视觉重投影残差、IMU预积分残差、六足机器人运动里程计预积分残差以及先验误差等约束量联合构建残差目标函数为:
Figure BDA0003415795730000235
其中,四种残差均以马氏距离表示,ρ为核函数,rp-Jpχ为边缘化形成的先验误差约束,通过舒尔补方法获得;B为六足机器人运动里程计预积分的第k帧时刻关键帧的集合,I为IMU预积分的第k帧时刻关键帧的集合,C为第l路标点被第j帧时刻关键帧观测的集合;
Figure BDA0003415795730000236
相邻两个关键帧之间六足机器人运动里程计观测噪声的协方差矩阵,
Figure BDA0003415795730000237
相邻两个关键帧之间IMU观测噪声的协方差矩阵,
Figure BDA0003415795730000238
视觉重投影观测噪声的协方差矩阵。
在本发明实施例中,所述步骤S5包括以下子步骤:
S51:当前帧与关键帧数据库中所有关键帧进行比较,即计算当前帧与词袋的相似度分数:
Figure BDA0003415795730000239
其中,s(m,ni)为当前帧与关键帧数据库中第i个关键帧的相似度,W为关键帧数据库大小,m为当前帧的描述子向量,ni为关键帧数据库中第i个关键帧的描述子向量,||||1为L1范数,即个元素绝对值之和;
S52:检测到当前帧与回环帧之间有回环,进行重定位,将回环帧的位姿和相关特征点的观测与当前帧之间构成重投影误差,加入到S425所述的目标函数中,优化求解出当前帧与回环帧之间的相对位姿关系:
Figure BDA0003415795730000241
其中,Ψ为第l路标点被第v帧闭环帧观测的集合,
Figure BDA0003415795730000242
为当前帧与闭环帧间的重投影误差,
Figure BDA0003415795730000243
为第v闭环帧相对于当前帧的旋转四元数,
Figure BDA0003415795730000244
为第v闭环帧相对于当前帧的位移,
Figure BDA0003415795730000245
视觉重投影观测噪声的协方差矩阵。
S53:当前帧与回环帧之间的相机轨迹进行回环优化,计算相邻关键帧之间的残差为:
Figure BDA0003415795730000246
其中,ri,i+1()为相邻第i关键帧与第i+1关键帧之间的残差,
Figure BDA0003415795730000247
分别为第i关键帧的翻滚角、俯仰角、偏航角,
Figure BDA0003415795730000248
分别为第i关键帧与第i+1关键帧的位置,
Figure BDA0003415795730000249
为在第i关键帧坐标系下第i关键帧与第i+1关键帧间的相对位移,
Figure BDA00034157957300002410
为第i关键帧与第i+1关键帧间的相对偏航角;
S54:根据步骤S53的残差项,构造整体目标函数为:
Figure BDA00034157957300002411
其中,ε为序列边,L为回环边。
本发明的工作原理及过程为:本发明提供了一种基于多传感器融合的六足机器人定位方法,其包括:首先利用相机、IMU、六足机器人运动里程计采集的数据进行数据预处理并进一步计算出视觉位姿、IMU预积分、六足机器人运动里程计预积分;再者采用条件加权计算法完善并完成整个六足机器人的初始化;然后基于滑窗内所有关键帧进行非线性优化,获得六足机器人的实时位姿;最后增添回环检测优化,对滑窗内的位姿修正,完成基于多传感器融合的六足机器人定位。本发明提出的定位方法,提高了六足机器人的定位精度以及鲁棒性,在视觉惯性定位方法的应用优势基础上,解决了常见的实际场景应用问题,且在融合定位的基础上增添了回环检测优化,有效的降低六足机器人的累积误差,完善了整个六足机器人定位方法,提高了长时间执行下的定位精度。
本发明的有益效果是:本发明的定位方法借助于多传感器融合以及非线性优化求解的思想充分利用六足机器人便携的、低成本的以及本体的传感器数据,将IMU、单目相机以及带有位置反馈的舵机有效的融合,提高了六足机器人定位的鲁棒性和精度,并且在视觉惯性定位方法的应用优势基础上,进一步解决了六足机器人运动阶段加速度激励不足造成定位误差加大以及六足机器人长期运动于无纹理以及弱光照环境定位误差随时间快速增长等实际场景应用的问题;同时,基于非线性优化求解位姿信息的初始化阶段,将三类传感器数据相互对齐,充分利用各自数据优势,得到更为接近最优解的初始值,减少优化求解计算量,加快优化求解速度,使位姿信息实时性得到保障。最后,在融合定位的基础上增添了回环检测优化,有效的降低六足机器人定位过程的累积误差,完善了整个六足机器人定位方法,进一步提高了本发明在实际长时间执行下的定位精度。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。

Claims (10)

1.一种基于多传感器融合的六足机器人定位方法,六足机器人包括机身和六条腿,每条腿分为多节,每条腿与机身之间以及每条腿的相邻两节之间均通过关节连接,每条腿的底部为足端,其特征在于,六足机器人定位方法包括以下步骤:
S1:在六足机器人上安置多款传感器,根据所述传感器采集的原数据进行数据预处理工作,传感器包括相机、IMU和带有位置反馈的舵机,利用相机采集图像信息,提取与跟踪图像特征点;利用IMU采集加速度与角速度,处理获取IMU预积分;利用带有位置反馈的舵机采集关节角度,处理获取六足机器人运动里程计预积分;
S2:根据步骤S1中图像特征点的提取与跟踪,利用SFM算法进行纯视觉估计滑窗内关键帧以及非关键帧的视觉位姿以及3D点坐标信息;
S3:分别将视觉位姿、IMU预积分、六足机器人运动里程计预积分两两结合进行对齐求解初始化参数,初始化参数包括陀螺仪零偏校正、重力以及速度初始化和尺度参数的初始化;
S4:针对滑窗中的关键帧,将视觉重投影残差、IMU预积分残差、六足机器人运动里程计预积分残差以及先验误差约束量联合构建残差函数,对残差函数进行非线性优化求解,得到六足机器人的实时位姿信息;
S5:基于DBoW2词袋算法对六足机器人的位姿信息进行回环检测,检测成功后进行重定位,再对整个相机轨迹进行回环优化,进而对滑窗内的位姿进行修正,最后完成基于多传感器融合的六足机器人定位。
2.根据权利要求1所述六足机器人定位方法,其特征在于,步骤S1中利用相机采集图像信息,处理获得图像特征点的提取与跟踪,具体包括如下步骤:
S111:将相机采集到的原图像数据均衡化处理后,利用基于金字塔分层的光流法跟踪相邻两帧,剔除异常点,并使用Shi-Tomasi角点检测算法对图像提取特征点信息加以补给;
S112:在保证每帧图像总特征点数不小于设定阈值基础上,对特征点提取过程进行四叉树均匀化处理算法,使图像特征点分布均匀。
3.根据权利要求1所述六足机器人定位方法,其特征在于,步骤S1中IMU采集三轴加速度与角速度,处理获取IMU预积分,具体包括如下步骤:
S121:IMU包括加速度计与陀螺仪,分别用于读取IMU坐标系下的加速度和角速度测量信息;将相邻两帧图像第K帧与第K+1帧间的所有IMU数据进行积分,计算得到第K+1帧在世界坐标系下的位置、速度以及姿态信息;
S122:将步骤S121得到的第K+1帧位置、速度以及姿态信息的参考坐标系从世界坐标系w变换为第k个关键帧时刻的IMU坐标系bk,从而提取出积分结果为bk+1对于bk的相对运动量,即IMU预积分;IMU预积分项为:
Figure FDA0003415795720000011
其中,
Figure FDA0003415795720000021
为连续两帧之间IMU预积分提供的位移增量,
Figure FDA0003415795720000022
为连续两帧之间IMU预积分提供的速度增量,
Figure FDA0003415795720000023
为连续两帧之间IMU预积分提供的旋转增量(四元数),ba为IMU加速度计的零偏量,bw为IMU陀螺仪的零偏量。
4.根据权利要求1所述六足机器人定位方法,其特征在于,步骤S1中带有位置反馈的舵机采集关节角度,处理获取六足机器人运动里程计预积分,具体包括如下步骤:
S131:六足机器人运动里程计:
S1311:六足机器人运动里程计位姿求解成立条件:(1)任何时刻,至少三条非共线足端的腿支撑,(2)求解位姿时,与地面接触的腿没有足端滑动,(3)在六足机器人行走过程中,一定存在足端构成的支撑三角形,即单站相,可定义出某个足端三脚架坐标系τ作为参考坐标系,(4)在相邻两个连续单站相之间一定存在双站相,即六足机器人所有脚支撑于地面,且相邻两个连续单站相定义的足端三角架坐标系与同一个机体坐标系B相关,(5)足够的双站相时间周期,两单站相足以完成位姿求解;
S1312:带有位置反馈的舵机,直接获得当前时刻各关节的角度信息,通过建立D-H坐标系,正运动学建模,求得当前时刻各足末端在机体坐标系Bn下的位置信息;
S1313:在单站相,定义了当前时刻某个足末端三脚架坐标系τn,τn系原点
Figure FDA0003415795720000024
及其余两足末端s2、s3在当前时刻机体坐标系Bn下的位置可知,从而换算出在机体坐标系Bn下以
Figure FDA0003415795720000025
为向量起始点的两条有向单位向量e1和e2,即
Figure FDA0003415795720000026
Figure FDA0003415795720000027
S1314:获得
Figure FDA0003415795720000028
足末端三角坐标系τn的三轴关系为:
Figure FDA0003415795720000029
Figure FDA00034157957200000210
S1315:
Figure FDA00034157957200000211
足末端三角坐标系τn的三轴
Figure FDA00034157957200000212
均为当前时刻机体坐标系Bn下的有向单位向量,转换成三角坐标系τn相对于机体坐标系Bn的旋转矩阵,即为
Figure FDA00034157957200000213
S1316:通过建立D-H坐标系,正运动学建模,获得三角坐标系τn原点
Figure FDA00034157957200000214
在机体坐标系下的位置
Figure FDA00034157957200000215
通过向量计算与投影变换,获得三角坐标系τn相对于机体坐标系Bn的旋转矩阵
Figure FDA00034157957200000216
即获得当前时刻三角坐标系τn相对于机体坐标系Bn的变换矩阵为
Figure FDA00034157957200000217
即当前时刻三脚架坐标系τn与机体坐标系Bn的变换矩阵为
Figure FDA0003415795720000031
S1317:两个连续单站相各自定义有三角架坐标系分别为τk、τk+1;各自解算出三脚架坐标系与机体坐标系的变换矩阵分别为
Figure FDA0003415795720000032
为建立两个连续单站相的三角架坐标系变换关系,单站相间一定存在双站相,其计算出的变换关系为:
Figure FDA0003415795720000033
S1318:足端处设有触底反馈装置,触底反馈装置反馈出各腿足端是否触底的二值信号,用于判断双站相的存在情况;
S1319:若假设第一单站相位的三脚架坐标系τ0对应的机体坐标系B0定义为里程计的世界坐标系w,为表示出六足机器人运动里程计的位姿信息,通过解算出变动的机体坐标系Bn与世界坐标系w之间的变换矩阵,递归地定义为:
Figure FDA0003415795720000034
Figure FDA0003415795720000035
S132:六足机器人运动里程计预积分:
S1321:六足机器人运动里程计估算出位姿信息为
Figure FDA0003415795720000036
其中包含位移量以及旋转量;在非线性优化过程中,在两个关键帧图像间,六足机器人运动里程计预积分中位移部分
Figure FDA0003415795720000037
来源于六足机器人运动里程计,旋转部分
Figure FDA0003415795720000038
来源于IMU预积分,即:
Figure FDA0003415795720000039
Figure FDA00034157957200000310
S1322:六足机器人运动里程计预积分项为:
Figure FDA00034157957200000311
其中,
Figure FDA00034157957200000312
为连续两帧之间里程计预积分提供的位移增量,
Figure FDA00034157957200000313
为连续两帧之间IMU预积分坐标变换得到的旋转增量,bw为IMU陀螺仪的零偏量。
5.根据权利要求1所述六足机器人定位方法,其特征在于,步骤S2包括以下子步骤:
S21:通过计算当前帧与滑窗中关键帧的平均视差与匹配特征点数,设定其平均视差大于某视差阈值且匹配特征点数最多的滑窗内关键帧作为枢纽帧;
S22:利用对极几何约束计算当前帧与枢纽帧之间的本质矩阵E=t^R,利用本质矩阵计算出当前帧相对于枢纽帧的转换矩阵
Figure FDA00034157957200000314
S23:设定枢纽帧的位姿信息为
Figure FDA0003415795720000041
故当前帧的位姿信息为
Figure FDA0003415795720000042
已知两帧位姿信息以及两帧共视的匹配特征点,即可通过三角化这些特征点,得到当前帧与枢纽帧之间均能观测到的3D路标点;
S24:当前帧与枢纽帧之间的滑窗内关键帧均能观测到步骤S23三角化出的3D路标点,即能通过3D点对应到这些关键帧提取和跟踪到的2D特征点,利用PnP法求解出当前帧与枢纽帧之间滑窗内所有关键帧的位姿信息;
S25:遍历枢纽帧到当前帧的所有关键帧,三角化枢纽帧与其他关键帧的特征点,得到更多的3D路标点;
S26:对于滑窗中的第一关键帧到枢纽帧之间的所有关键帧,同样基于PnP法求解出关键帧位姿信息,再将共视的匹配特征点三角化出更多的3D路标点;
S27:基于得到的滑窗内所有关键帧的位姿信息以及大量的3D路标点,通过PnP法求解出滑窗内的所有非关键帧位姿信息;
S28:每个3D点在相应滑窗帧上有观测的2D特征点,从而构成一次重投影误差,基于滑窗中所有关键帧和非关键帧位姿信息以及大量的3D路标点,将对应的重投影误差求和,构造一个关于重投影误差的非线性最小二乘问题,其目标函数为:
Figure FDA0003415795720000043
其中,T为待求解的滑窗内所有帧的位姿信息,Pi为第i个3D路标点坐标,n为3D路标点对应的特征点数量,[ui,vi]T为3D路标点投影到的特征点像素坐标,zi为第i个3D路标点在相机坐标系下的z轴坐标,K为相机内参矩阵;
S29:步骤S24-S27所述的滑窗中所有关键帧和非关键帧位姿信息作为S28所述目标函数的初始值,利用最小二乘法非线性优化进一步求解出滑窗中所有关键帧和非关键帧位姿信息。
6.根据权利要求1所述六足机器人定位方法,其特征在于,步骤S3中基于IMU预积分与六足机器人运动里程计对齐求解陀螺仪零偏校正,具体方法为:
陀螺仪零偏量bw是IMU预积分旋转部分
Figure FDA0003415795720000044
的自变量,六足机器人运动里程计提供两帧间的相对旋转
Figure FDA0003415795720000045
在初始化过程中,假设滑窗内所有帧的陀螺仪零偏量相等,为估计出陀螺仪零偏量bw,将帧间
Figure FDA0003415795720000046
Figure FDA0003415795720000047
的误差构建为最小二乘问题,目标函数为:
Figure FDA0003415795720000048
其中,
Figure FDA0003415795720000049
是IMU坐标系相对于机体坐标系的旋转外参,
Figure FDA00034157957200000410
A为滑窗中所有关键帧与非关键帧;
Figure FDA00034157957200000411
在陀螺仪偏置误差
Figure FDA00034157957200000412
变化时,利用
Figure FDA00034157957200000413
Figure FDA0003415795720000051
两者间的一阶近似关系进行更新;
Figure FDA0003415795720000052
为第K帧时刻下IMU预积分
Figure FDA0003415795720000053
关于零偏量
Figure FDA0003415795720000054
的雅可比。
7.根据权利要求1所述六足机器人定位方法,其特征在于,步骤S3中基于IMU预积分与六足机器人运动里程计对齐求解重力以及速度初始化,具体方法为:
待优化的变量为:
Figure FDA0003415795720000055
其中,
Figure FDA0003415795720000056
均为IMU坐标系下的速度,
Figure FDA0003415795720000057
为机体坐标系下的重力加速度,
相邻两帧图像k→k+1之间,定义IMU预积分项中
Figure FDA0003415795720000058
Figure FDA0003415795720000059
增量,计算这两个增量分别与第k和k+1帧图像对应的IMU位置、速度之间的增量预测值的误差,并对各项进行参考坐标系变换;化简为
Figure FDA00034157957200000510
形式:
Figure FDA00034157957200000511
其中,Δtk为相邻两帧图像k→k+1之间的时间间隔,
Figure FDA00034157957200000512
为第一帧机体坐标系相对于第k帧时刻IMU坐标系的旋转矩阵,
Figure FDA00034157957200000513
为第k+1帧时刻IMU坐标系相对于第一帧机体坐标系的旋转矩阵,
Figure FDA00034157957200000514
为机体坐标系相对于IMU坐标系的旋转外参,
Figure FDA00034157957200000515
Figure FDA00034157957200000516
为机体坐标系相对于IMU坐标系的平移外参,
基于滑窗内的所有关键帧与非关键帧作为约束,构造多组
Figure FDA00034157957200000517
最终组合成关于待优化变量χI的最小二乘问题:
Figure FDA00034157957200000518
8.根据权利要求1所述六足机器人定位方法,其特征在于,步骤S3中尺度参数的初始化,采用条件加权计算法,结合视觉位姿分别与IMU预积分、六足机器人运动里程计预积分对齐求解结果加权处理,
S321:视觉位姿与六足机器人运动里程计预积分对齐:
相邻两帧图像k→k+1之间,六足机器人运动里程计预积分增量
Figure FDA00034157957200000519
与纯视觉计算两帧图像位姿信息间存在误差:
Figure FDA00034157957200000520
上式转换为Hx=b形式为:
Figure FDA00034157957200000521
其中,
Figure FDA00034157957200000522
为第一帧相机坐标系相对于第k帧机体坐标系的旋转矩阵,
Figure FDA00034157957200000523
为第k、k+1帧时刻相机坐标系分别相对于第一帧相机坐标系的位置,
Figure FDA0003415795720000061
为相机坐标系相对于机体坐标系的平移外参,
Figure FDA0003415795720000062
为第k+1帧时刻机体坐标系相对于第一帧相机坐标系的旋转矩阵,
基于滑窗内的所有关键帧与非关键帧作为约束,构造多组Hx=b,最终组合成关于待优化变量s1的最小二乘问题:
Figure FDA0003415795720000063
S322:视觉位姿与IMU预积分对齐:
待优化的变量为:
Figure FDA0003415795720000064
相邻两帧图像k→k+1之间,定义IMU预积分项中
Figure FDA0003415795720000065
Figure FDA0003415795720000066
增量,计算这两个增量分别与第k和k+1帧图像对应的IMU位置、速度之间的增量预测值的误差,并对各项进行合理的参考坐标系变换;化简为
Figure FDA0003415795720000067
形式:
Figure FDA0003415795720000068
其中,Δtk为相邻两帧图像k→k+1之间的时间间隔,
Figure FDA0003415795720000069
为第一帧相机坐标系相对于第k帧时刻IMU坐标系的旋转矩阵,
Figure FDA00034157957200000610
为第k、k+1帧时刻相机坐标系分别相对于第一帧相机坐标系的位置,
Figure FDA00034157957200000611
为第k+1帧时刻IMU坐标系相对于第一帧相机坐标系的旋转矩阵,
Figure FDA00034157957200000612
为相机坐标系相对于IMU坐标系的平移外参,
基于滑窗内的所有关键帧与非关键帧作为约束,构造多组
Figure FDA00034157957200000613
最终组合成关于待优化变量χ的最小二乘问题:
Figure FDA00034157957200000614
S323:条件加权计算法完成尺度参数初始化:
S3231:纯视觉求解位姿采用有光流跟踪,灰度图像的一元灰度熵代表了图像灰度分布的聚类特征,也是图像信息不确定性的度量,其公式为:
Figure FDA00034157957200000615
其中,H(x)为灰度图像的一元灰度熵,p(xi)为某一灰度xi在图像中出现的概率,若H(x)越小,则图像的像素梯度越小,图像纹理信息越差;若连续两帧图像k→k+1之间的熵变||Hk(x)-Hk+1(x)||越大,图像的运动存在异常,估计的位姿可靠性越低;
基于滑窗内的所有关键帧与非关键帧,计算其灰度熵均值与熵变均值来综合判断纯视觉估计位姿信息的可靠性:
灰度熵均值:
Figure FDA0003415795720000071
熵变均值:
Figure FDA0003415795720000072
其中,当灰度熵均值不大于某设定阈值或熵变均值不小于某设定阈值,即H≤M1||H≥M2,则认为纯视觉求解的位姿信息可靠性较低;
S3232:基于滑窗内的所有关键帧与非关键帧,通过比较某设定阈值与该段时间内两帧图像间加速度变化量的标准差的大小关系,来参数化因六足机器人在运动过程中出现匀速或匀加速运动所导致的加速度激励不足而降低IMU求解出的位姿信息可靠性的影响,标准差计算公式为:
Figure FDA0003415795720000073
其中,
Figure FDA0003415795720000074
为连续两帧间的加速度变化量,
Figure FDA0003415795720000075
为滑窗内所有连续关键帧与非关键帧之间的加速度变化量均值,当标准差不大于设定阈值,即U≤M3,则认为IMU求解的位姿信息可靠性低;
S3233:在六足机器人足端设置有触底反馈装置,其反馈信息为是否触底的二值信号,其六条腿的信号表示为{(L1,L2,L3,L4,L5,L6)|Li=0||1},设定某阈值与六条腿的信号总值比较,从而参数化里程计求解出的位姿信息可靠性的影响,其六条腿的信号总值为:
Figure FDA0003415795720000076
其中,L为六足机器人足端触底信号总值,当信号总值不等于6,即L≠M4,则认为六足机器人运动里程计求解的位姿信息可靠性低;
S3234:条件加权计算法:
在滑窗内,IMU的采样频率最高,其次是六足机器人运动里程计,纯视觉最小;通过对各传感器求解的位姿信息可靠性综合分析,设定不同权重系数来动态调控尺度参数,其表达式为:
Figure FDA0003415795720000081
其中,纯视觉的异常判断条件H≤M1||H≥M2,设定权重系数W1;IMU的异常判断条件U≤M3,设定权重系数W2;六足机器运动里程计的异常判断条件L≠M4,设定权重系数W3;S为加权优化后的尺度参数,其计算结果S>0时,尺度参数初始化完成,则整个初始化过程完成。
9.根据权利要求1所述六足机器人定位方法,其特征在于,步骤s4具体包括以下步骤:
S41:基于滑窗内关键帧的非线性优化问题,其待优化变量为:
Figure FDA0003415795720000082
Figure FDA0003415795720000083
其中,χ为待优化变量,xk为世界坐标系下第k帧的六足机器人位姿信息PVQ及零偏量,λm为第m个路标点首次被某帧观测到的逆深度信息;
S42:六足机器人运动里程计预积分残差项:
S421:利用带有位置反馈的舵机采集关节角度,处理获取六足机器人运动里程计预积分,其角度信息受噪声nB的影响,假设该类噪声服从高斯分布:
Figure FDA0003415795720000084
S422:预积分误差量状态方程:
Figure FDA0003415795720000085
将误差量状态方程写为矩阵形式:
Figure FDA0003415795720000086
Figure FDA0003415795720000087
由上式可以得到雅可比矩阵和协方差矩阵的递推方程:
Figure FDA0003415795720000091
其中,通过递推获得相邻两个关键帧之间里程计观测噪声的协方差矩阵
Figure FDA0003415795720000092
初始时刻***状态的雅可比矩阵和协方差矩阵分别为单位阵和零矩阵;V为噪声ni的协方差矩阵,且各分量相互独立,故
Figure FDA0003415795720000093
S423:六足机器人运动里程计预积分残差约束:
Figure FDA0003415795720000094
S424:IMU预积分残差约束:
Figure FDA0003415795720000095
其中,[]vec为提取四元数的虚部,
Figure FDA0003415795720000096
为四元数误差的三维表达式,
Figure FDA0003415795720000097
Figure FDA0003415795720000098
为第k关键帧到第k+1关键帧时间间隔内,使用含有噪声的加速度计和陀螺仪数据计算的IMU预积分测量项;
S424:视觉重投影残差约束:
Figure FDA0003415795720000099
Figure FDA00034157957200000910
其中,
Figure FDA00034157957200000911
为第l个路标点在第j个相机归一化相机坐标系中横纵坐标值,
Figure FDA00034157957200000912
为估计第l个路标点在第j个相机归一化相机坐标系中的可能坐标;
S425:将视觉重投影残差、IMU预积分残差、六足机器人运动里程计预积分残差以及先验误差约束量联合构建残差目标函数为:
Figure FDA0003415795720000101
其中,四种残差均以马氏距离表示,ρ为核函数,rp-Jpχ为边缘化形成的先验误差约束,通过舒尔补方法获得;B为六足机器人运动里程计预积分的第k帧时刻关键帧的集合,I为IMU预积分的第k帧时刻关键帧的集合,C为第l路标点被第j帧时刻关键帧观测的集合;
Figure FDA0003415795720000102
相邻两个关键帧之间六足机器人运动里程计观测噪声的协方差矩阵,
Figure FDA0003415795720000103
相邻两个关键帧之间IMU观测噪声的协方差矩阵,
Figure FDA0003415795720000104
视觉重投影观测噪声的协方差矩阵。
10.根据权利要求1所述六足机器人定位方法,其特征在于,步骤S5包括以下子步骤:
S51:当前帧与关键帧数据库中所有关键帧进行比较,即计算当前帧与词袋的相似度分数:
Figure FDA0003415795720000105
其中,s(m,ni)为当前帧与关键帧数据库中第i个关键帧的相似度,W为关键帧数据库大小,m为当前帧的描述子向量,ni为关键帧数据库中第i个关键帧的描述子向量,|| ||1为L1范数,即个元素绝对值之和;
S52:检测到当前帧与回环帧之间有回环,进行重定位,将回环帧的位姿和相关特征点的观测与当前帧之间构成重投影误差,加入到S425所述的目标函数中,优化求解出当前帧与回环帧之间的相对位姿关系:
Figure FDA0003415795720000106
其中,Ψ为第l路标点被第v帧闭环帧观测的集合,
Figure FDA0003415795720000107
为当前帧与闭环帧间的重投影误差,
Figure FDA0003415795720000108
为第v闭环帧相对于当前帧的旋转四元数,
Figure FDA0003415795720000109
为第v闭环帧相对于当前帧的位移,
Figure FDA00034157957200001010
视觉重投影观测噪声的协方差矩阵;
S53:当前帧与回环帧之间的相机轨迹进行回环优化,计算相邻关键帧之间的残差为:
Figure FDA0003415795720000111
其中,ri,i+1()为相邻第i关键帧与第i+1关键帧之间的残差,
Figure FDA0003415795720000112
ψi分别为第i关键帧的翻滚角、俯仰角、偏航角,pi w
Figure FDA0003415795720000113
分别为第i关键帧与第i+1关键帧的位置,
Figure FDA0003415795720000114
为在第i关键帧坐标系下第i关键帧与第i+1关键帧间的相对位移,
Figure FDA0003415795720000115
为第i关键帧与第i+1关键帧间的相对偏航角;
S54:根据步骤S53的残差项,构造整体目标函数为:
Figure FDA0003415795720000116
其中,ε为序列边,L为回环边。
CN202111546078.XA 2021-12-16 2021-12-16 一种基于多传感器融合的六足机器人定位方法 Active CN114234967B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111546078.XA CN114234967B (zh) 2021-12-16 2021-12-16 一种基于多传感器融合的六足机器人定位方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111546078.XA CN114234967B (zh) 2021-12-16 2021-12-16 一种基于多传感器融合的六足机器人定位方法

Publications (2)

Publication Number Publication Date
CN114234967A true CN114234967A (zh) 2022-03-25
CN114234967B CN114234967B (zh) 2023-10-20

Family

ID=80757379

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111546078.XA Active CN114234967B (zh) 2021-12-16 2021-12-16 一种基于多传感器融合的六足机器人定位方法

Country Status (1)

Country Link
CN (1) CN114234967B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116429094A (zh) * 2023-06-15 2023-07-14 小米汽车科技有限公司 定位方法、装置、电子设备及存储介质
CN117338285A (zh) * 2023-10-31 2024-01-05 西南交通大学 一种脊柱侧弯检测装置及方法
CN117647263A (zh) * 2023-12-06 2024-03-05 中山大学 基于非线性优化的单光子相机视觉惯性里程计方法及***

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111739063A (zh) * 2020-06-23 2020-10-02 郑州大学 一种基于多传感器融合的电力巡检机器人定位方法
CN111983639A (zh) * 2020-08-25 2020-11-24 浙江光珀智能科技有限公司 一种基于Multi-Camera/Lidar/IMU的多传感器SLAM方法
WO2021180128A1 (zh) * 2020-03-11 2021-09-16 华南理工大学 一种基于rgbd传感器和imu传感器的定位方法
CN113706626A (zh) * 2021-07-30 2021-11-26 西安交通大学 一种基于多传感器融合及二维码校正的定位与建图方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021180128A1 (zh) * 2020-03-11 2021-09-16 华南理工大学 一种基于rgbd传感器和imu传感器的定位方法
CN111739063A (zh) * 2020-06-23 2020-10-02 郑州大学 一种基于多传感器融合的电力巡检机器人定位方法
CN111983639A (zh) * 2020-08-25 2020-11-24 浙江光珀智能科技有限公司 一种基于Multi-Camera/Lidar/IMU的多传感器SLAM方法
CN113706626A (zh) * 2021-07-30 2021-11-26 西安交通大学 一种基于多传感器融合及二维码校正的定位与建图方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
RONNAU A ET AL.: "Dynamic Position/Force Controller of a Four Degree-of-Freedom Robotic Leg", ROBOT MOTION AND CONTROL 2011 *
朱雅光 等: "基于自适应-模糊控制的六足机器人单腿柔顺控制", 浙江大学学报(工学版), vol. 48, no. 8 *
欧阳仕晗;刘振宇;赵怡巍;秦圣然;刘潇;: "移动机器人三维激光SLAM算法研究", 微处理机, no. 05 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116429094A (zh) * 2023-06-15 2023-07-14 小米汽车科技有限公司 定位方法、装置、电子设备及存储介质
CN116429094B (zh) * 2023-06-15 2023-09-26 小米汽车科技有限公司 定位方法、装置、电子设备及存储介质
CN117338285A (zh) * 2023-10-31 2024-01-05 西南交通大学 一种脊柱侧弯检测装置及方法
CN117647263A (zh) * 2023-12-06 2024-03-05 中山大学 基于非线性优化的单光子相机视觉惯性里程计方法及***

Also Published As

Publication number Publication date
CN114234967B (zh) 2023-10-20

Similar Documents

Publication Publication Date Title
CN109029433B (zh) 一种移动平台上基于视觉和惯导融合slam的标定外参和时序的方法
CN111024066B (zh) 一种无人机视觉-惯性融合室内定位方法
Konolige et al. Large-scale visual odometry for rough terrain
CN111595333A (zh) 视觉惯性激光数据融合的模块化无人车定位方法及***
CN110726406A (zh) 一种改进的非线性优化单目惯导slam的方法
CN116205947B (zh) 基于相机运动状态的双目-惯性融合的位姿估计方法、电子设备及存储介质
CN104281148A (zh) 基于双目立体视觉的移动机器人自主导航方法
CN111932674A (zh) 一种线激光视觉惯性***的优化方法
CN109579825A (zh) 基于双目视觉和卷积神经网络的机器人定位***及方法
CN113223161B (zh) 一种基于imu和轮速计紧耦合的鲁棒全景slam***和方法
CN114693754B (zh) 一种基于单目视觉惯导融合的无人机自主定位方法与***
CN115574816B (zh) 仿生视觉多源信息智能感知无人平台
CN113551665A (zh) 一种用于运动载体的高动态运动状态感知***及感知方法
CN114529576A (zh) 一种基于滑动窗口优化的rgbd和imu混合跟踪注册方法
CN115371665A (zh) 一种基于深度相机和惯性融合的移动机器人定位方法
CN112541423A (zh) 一种同步定位与地图构建方法和***
CN113503873A (zh) 一种多传感器融合的视觉定位方法
CN117367427A (zh) 一种适用于室内环境中的视觉辅助激光融合IMU的多模态slam方法
CN113345032B (zh) 一种基于广角相机大畸变图的初始化建图方法及***
Xian et al. Fusing stereo camera and low-cost inertial measurement unit for autonomous navigation in a tightly-coupled approach
Beauvisage et al. Robust multispectral visual-inertial navigation with visual odometry failure recovery
CN108827287B (zh) 一种复杂环境下的鲁棒视觉slam***
CN115147344A (zh) 一种增强现实辅助汽车维修中的零件三维检测与跟踪方法
CN114234967B (zh) 一种基于多传感器融合的六足机器人定位方法
CN112731503A (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