CN114723811A - 一种非结构化环境四足机器人立体视觉定位建图方法 - Google Patents
一种非结构化环境四足机器人立体视觉定位建图方法 Download PDFInfo
- Publication number
- CN114723811A CN114723811A CN202210178383.6A CN202210178383A CN114723811A CN 114723811 A CN114723811 A CN 114723811A CN 202210178383 A CN202210178383 A CN 202210178383A CN 114723811 A CN114723811 A CN 114723811A
- Authority
- CN
- China
- Prior art keywords
- imu
- key frame
- feature
- map
- error
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000013507 mapping Methods 0.000 title claims abstract description 38
- 238000000605 extraction Methods 0.000 claims abstract description 32
- 238000001514 detection method Methods 0.000 claims abstract description 13
- 238000012216 screening Methods 0.000 claims abstract description 9
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 26
- 239000011159 matrix material Substances 0.000 claims description 13
- 238000005457 optimization Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 11
- 238000003860 storage Methods 0.000 claims description 5
- 230000000007 visual effect Effects 0.000 claims description 5
- 238000005295 random walk Methods 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims description 2
- 230000010354 integration Effects 0.000 claims description 2
- 230000004807 localization Effects 0.000 claims 2
- 238000005259 measurement Methods 0.000 abstract description 4
- 238000004422 calculation algorithm Methods 0.000 description 8
- 230000009466 transformation Effects 0.000 description 8
- 230000009471 action Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 241001289753 Graphium sarpedon Species 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- XAGFODPZIPBFFR-UHFFFAOYSA-N aluminium Chemical compound [Al] XAGFODPZIPBFFR-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 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
- 230000005484 gravity Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007500 overflow downdraw method Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
- G01C21/32—Structuring or formatting of map data
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Image Analysis (AREA)
Abstract
一种非结构化环境四足机器人立体视觉定位建图方法,包括对相机和IMU内方位参数进行互标定;使用双目相机两帧间的IMU信息预测上一帧的像素点在当前帧的位置,利用最小化光度误差得到两帧之间的像素跟踪信息,提取成功跟踪的特征组合;计算关键帧队列中当前关键帧左、右图像的ORB局部图像特征描述算子;等待当前关键帧的特征提取完成后,进行双目立体像对匹配,融合通过最小化光度误差得到的像素与通过特征提取得到的像素位置,筛选当前关键帧的冗余地图特征点,根据双目匹配的结果创建新的地图特征点;利用位姿图优化减小该周期内机器人运动漂移,进行回环检测。自主进行非结构化环境下的视觉位姿状态估计,便于机器人完成室外非结构化环境下的导航定位。
Description
技术领域
本发明涉及无人系统导航领域,尤其涉及一种非结构化环境四足机器人 立体视觉定位建图方法。
背景技术
双目相机一般和惯性元件一起标定,特征检测与提取一般使用目前为止 最鲁棒的特征提取算法:Affine-SIFT,即ASIFT特征提取算法,在SIFT特 征的基础上引入了相机拍摄经度角和纬度角的模拟,以一定的采样率生成仿 射模拟图像,再进行SIFT匹配,可以使得特征对图像仿射关系的适应性更 好。通过仿射图像和原始图像的匹配实验,验证ASIFT算法对仿射的适应能 力,其实现方法为:对标准图像在经度和纬度两个方向分别进行仿射变换,将仿 射变换图像与原图像进行特征匹配实验。实验表明,对于仅有一个维度变化的 仿射图像,纬度角小于80°或者经度角小于90°情况下,ASIFT算法均能够 成功匹配。
实际的导航定位系统都采用组合导航的手段融合多种导航方法,来获得 高精度且鲁棒的定位效果。由于航天器的设计追求质量小、功耗低、可靠性 高的特点,因此,具备微小型化的惯性测量单元(Inertial Measurement Unit, IMU)和相机受到专家和学者的普遍青睐。IMU可以在任何光照情况下计算六 自由度的位姿信息,且更新频率快;摄像机可以校正IMU的漂移,又能进行 场景重建。二者互为补充,构成了视觉/惯性组合导航系统(Visual-Inertial Navigation System,VINS)。目前,各国均采用视觉/惯性组合导航技术作为无 人系统室外的主要导航定位方法。但是,在目前已有的室外机器人上的视觉/ 惯性组合导航方法只是将二者做简单的分时分段替换,并没有使用滤波融合 方法将它们的优势进行互补,因此,对融合算法的进一步探索是未来工作的 重点。
依靠单一传感器进行机器人位姿估计都存在一定的缺陷。对于移动机器 人来说综合应用机器人所提供的各种传感器进行位姿估计即可以提高定位精 度,也能够最大化利用移动机器人的硬件性能。由于惯性测量单元动态性能 好且不易受外界环境的影响,通过分析惯性测量单元运动学模型和误差模型, 以此来构建卡尔曼滤波状态转移方程,通过分析轮式里程计、视觉里程计、 和加速度计重力观测模型构建观测方程对滤波器进行更新。通过融合多传感 器信息,有助于提高机器人定位精度。然而,目前的双目视觉室外同时定位 与建图检测方法无法适应目标环境单一,多尺度变化,从而导致特征点检测 错误率较高,定位精度和鲁棒性有待提高。
发明内容
针对上述现有技术中的存在的问题和不足,本发明的目的是提供一种非 结构化环境四足机器人立体视觉定位建图方法,能够自主识别非结构化的环 境,提高特征点检测配准精度,完成四足机器人室外非结构化环境中的导航 定位。
为达到上述目的,本发明所述的一种非结构化环境四足机器人立体视觉 定位建图方法,包括:步骤S1:对相机和IMU内方位参数进行互标定,包 括左右视对标、相机与惯导标定,充分融合IMU与双目相机之间的信息;步 骤S2:使用双目相机两帧间的IMU信息预测上一帧的像素点在当前帧的位 置,利用最小化光度误差得到两帧之间的像素跟踪信息,提取成功跟踪的特 征组合,筛选局部地图特征点,完成当前帧像素与局部地图点对应像素的匹 配;步骤S3:特征提取负责计算关键帧队列中当前关键帧左、右图像的ORB 局部图像特征描述算子;步骤S4:局部建图线程等待当前关键帧的特征提取 完成后,进行双目立体像对匹配,融合通过最小化光度误差得到的像素与通 过特征提取得到的像素位置,并筛选当前关键帧的冗余地图特征点,根据双 目匹配的结果来创建新的地图特征点;步骤S5:利用位姿图优化减小该周期 内四足机器人运动漂移,进行回环检测。
可选的,所述步骤S1中标定过程如下:利用imu_utils库进行IMU内参 标定,校准IMU的零漂白噪声与随机游走误差,对双目相机进行标定得到 yaml文件,并且与IMU标定文件一起进行联合标定。
可选的,所述步骤S2中,通过最小化重投影误差和IMU预积分的误差 得到当前帧的位姿估计,并判断、插入关键帧。
可选的,所述步骤S3,包括:将观察到匹配地图点集合中地图点的关键 帧设置为局部关键帧;局部关键帧观察到的地图点设置为局部地图点。
可选的,所述步骤S4中的当关键帧队列中所有的关键帧处理完毕后, 进行局部地图的光束法平差优化,从而得到定位和建图结果,最后对候选关 键帧进行筛选。
可选的,所述步骤S5中,通过最小化重投影误差和IMU项误差得到全 局一致性更好的环境地图和四足机器人的运动轨迹,该项工作同样是由Ceres 优化工具包完成。
可选的,前部帧的误差会不断累计,后程位姿估计的误差不断增大,通 过回环检测方法修正前部帧累计的误差,修正的步骤具体包括:
步骤S51:组建特征点数据库中三个同名特征点的三角形;
步骤S52:构建每个特征点对应的仿射不变量;
步骤S53:建立仿射不变量距离判断矩阵和建立集合相似度。
进一步地,本发明还提供了一种计算机可读存储介质,其上存储有计算 机程序,所述计算机程序被处理器执行时,实现上述所述的非结构化环境四 足机器人立体视觉定位建图方法。
进一步地,本发明提供了一种电子设备,包括处理器和存储器,所述存 储器上存储有计算机程序,所述计算机程序被所述处理器执行时,实现上述 所述的非结构化环境四足机器人立体视觉定位建图方法。
与现有技术相比,本发明具有以下有益效果:
(1)将特征提取作为一个单独的线程来调用,当跟踪线程频繁插入关键 帧,关键帧队列中存在多个关键帧时,特征提取线程对队列中的第1个关键 帧进行特征提取,当特征提取完成,通过局部建图线程完成该关键帧的双目 匹配,像素点融合,地图点筛选,并创建新的地图点。
(2)使用“地面移动距离”(Earth Mover’s Distance,EMD)方法,能 够自动求解两个集合间的相似度,旨在找到两个集合间最佳的契合程度;
(3)本方法以多线程的形式完成,每个线程并行完成不同任务,方便降 低计算单元的算力消耗。
附图说明
图1为本发明实施例提供的基于惯性-双目视觉的自主定位与地图描绘 方法流程图;
图2为本发明实施例提供的特征跟踪线程—图像特征跟踪示意图;
图3为本发明实施例提供的ORB特征提取与局部建图线程示意图;
图4为本发明实施例提供的局部提取BA优化示意图;
图5为本发明实施例提供的基于三角形面积比的仿射不变量。
具体实施方式
下面详细描述本实施例,所述实施例的示例在附图中示出,其中自始至 终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。 下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能 理解为对本发明的限制。
如图1所示,本本发明所述非结构化环境四足机器人立体视觉定位建图 方法,包括:
步骤S1,为充分融合IMU与双目相机之间的信息,在使用这两者前需 要对其内方位参数进行互标定,包括左右视对标、相机与惯导标定,其具体 过程如下:
整个标定过程使用了Ceres库(2.3.1版本)。
利用imu_utils库进行IMU内参标定,校准IMU的零漂白噪声与随机游 走误差,然后开启IMU数据长时静止录制,一般建议时长为90分钟以上, 将录制文件保存,并启动imu_utils进行IMU标定,对双目相机的标定采用 24x24mm的标定板,依次执行相机标定程序进行相机标定,在标定后得到 yaml文件,与IMU标定文件一起进行联合标定。
具体措施如下:利用高平整度的铝金属板将IMU与相机固联,并将设备 沿IMU各轴充分激励(做俯仰、滚转、偏航以及平移动作),将双目相机始 终对准标定板,保证标定板在双目视野内。
通过标定可以得到相机和IMU之间的坐标转换矩阵TCB=[RCB|pCB]∈SE(3), 其中RCB∈SO(3)为旋转矩阵,为平移向量。第i时刻相机和世界坐标系 下的坐标转换矩阵为地图点在世界坐标系下的坐标为PW,则该 地图点在i时刻相机坐标系下的3D坐标为在左侧相机的图 像中的同名特征点像素坐标为
步骤S2,使用双目相机两帧间的IMU信息预测上一帧的像素点在当前 帧的位置,利用最小化光度误差得到两帧之间的像素跟踪信息,提取成功跟 踪的特征组合,筛选局部地图特征点,完成当前帧像素与局部地图点对应像 素的匹配,具体过程如下:
设相机本体坐标系下i和j时刻两帧之间的旋转矩阵和平移向量分别为 CRij和Ctij,根据运动学关系,则有:
CRij=RCB·BΔRij·RCB T
其中depthi为像素点对应的环境地图点在第i时刻相机坐标系下的深度坐 标。虽然IMU信息提供了较好的像素位置估计,但IMU采集信息存在误差, 为进一步提高匹配精度,以uj_IMU起点,采用从高层金字塔向低层金字塔迭 代的方式,使用逆向组合法(InverseCompositional Formulation)最小化像素周 围像素块的光度误差,得到更准确的像素点位置uj:
θ={uj,α,β}
其中Ii和Ij分别为i时刻和j时刻的图像灰度数据,α为相机曝光增益 补偿,β为相机的曝光偏置补偿,Ai为仿射变换矩阵,用于调整由于两帧之 间距离过大产生的图像块变化。
假设i时刻和j时刻得到的匹配地图点集合为MPij。为了获得更多的匹 配点,j时刻图像还要与其他关键帧进行匹配。通常的方法是将观察到MPij中 地图点的关键帧设置为局部关键帧,局部关键帧观察到的地图点设置为局部 地图点,再将局部地图点投影到j时刻的相机系下进行特征匹配。然而在重 复场景运动时,这种做法会产生大量等待匹配的局部地图点,严重影响算法 实时性。为保证匹配数量在合理区间内,对局部关键帧和局部地图点的选择 如下:
(1)局部关键帧的选择:
·当前帧与关键帧具有的共视地图点个数大于当前帧匹配地图点的 一半,且两帧之间的仿射变换角度最大值小于20°,则该关键帧为共视局 部关键帧。
·选取与共视局部关键帧共视地图点个数最多的5个关键帧,若这些 关键帧与当前帧之间的仿射变换角度角最大值小于20°,则这些关键帧为 邻近局部关键帧。
·选取与共视局部关键帧和邻近局部关键帧共视地图点最多的关键 帧,称为父子局部关键帧。
(2)局部地图点的选择:
·共视局部关键帧、邻近局部关键帧和父子局部关键帧观测到的地图 点为候选局部地图点,若候选地图点对应的像素块与上一帧图像匹配失 败,则将此地图点从候选局部地图点中删除。
·将当前帧图像划分为10*10的像素栅格。将候选地图点投影到当前 帧图像坐标系,若投影后的像素点所在栅格已有10个以上的匹配点,则 删除该候选地图点。
·得到筛选后的局部地图后,由于j时刻与之前关键帧时间相距较 长,IMU信息不够可靠,利用公式(1)将地图点投影到j时刻相机的图 像坐标作为初值,进行公式(6)的优化。
(1)地图更新,上一个关键帧的获取时刻为i时刻。
θ=sj
其中Eproj_mono(j)为第j时刻图像帧2个维度的单目类型重投影误差项, EIMU(i,j)为第i和j时刻之间的IMU项误差:
Eproj_mono(j)=∑ρ((u-π(PC))TΔu((u-π(PC)))
eb=bj-bi (9)
(2)地图未更新,上一帧的获取时刻为i时刻,则有:
θ={si,sj}
其中Eprior(i)为第i时刻相机状态变量的先验误差:
其中
步骤S3,特征提取线程负责计算关键帧队列中当前关键帧左、右图像的 ORB局部图像特征描述算子;
当处理环境导航路标时,跟踪线程会在一段时间内频繁地插入关键帧来 捕获纹理变化信息。如果在局部建图线程中处理特征提取的工作,会导致局 部建图线程消耗大量时间进行特征提取,不能够及时完成局部BA优化,使 得跟踪线程和局部建图线程之间的同步性较差,跟踪线程不能及时使用局部 线程得到的更精确关键帧位姿和地图点位置进行当前帧相机位姿的解算,引 起跟踪效果不佳,甚至跟踪失败。
考虑此因素,将特征提取作为一个单独的线程来调用。当跟踪线程频繁 插入关键帧,关键帧队列中存在多个关键帧时,特征提取线程对队列中的第 1个关键帧进行特征提取,当特征提取完成,通知局部建图线程完成该关键 帧的双目匹配,像素点融合,地图点筛选,并创建新的地图点,与此同时, 特征提取线程进行第2个关键帧的特征提取工作,即第i个关键帧的特征提 取工作与局部建图线程中第i-1个关键帧蓝色方框中的步骤同步进行,直到 处理完所有的关键帧,最后进行局部BA优化和关键帧的筛选,算法整体流 程如图3所示。
利用特征提取得到的像素坐标与跟踪线程中利用最小化光度误差得到的 与地图点对应的像素点坐标不同,因此需要对这两种像素进行融合:对特征 提取得到的特征点在5*5的固定像素窗口搜索最小化光度误差得到的像素 点,计算与窗口中像素点的最小欧式距离和第二小欧式距离,并设置具有最 小欧式距离的特征点和像素点对应同一个地图点。若出现两个特征点对应同 一个像素点,则将最小欧式距离较大的特征点对应到具有第二小欧式距离的 像素点和地图点上。完成所有特征点和像素点的融合后,得到特征点和地图点的对应,为后续的局部BA做好数据准备。而后利用地图点可见性对地图 点进行筛选,剔除跟踪质量不高的地图点。利用关键帧的左右图像特征获得 近距离的新地图点,利用三角化得到较远距离的新地图点。
步骤S4,局部建图线程:等待当前关键帧的特征提取完成后,进行双目 立体像对匹配,融合通过最小化光度误差得到的像素与通过特征提取得到的 像素位置,并筛选当前关键帧的冗余地图特征点,根据双目匹配的结果来创 建新的地图特征点;具体过程如下:
进行局部地图的BA优化,如图4所示:
假设局部建图线程中的优化滑动窗口大小为N,滑动窗口中的局部关键 帧集合为KFlocal(包括当前关键帧在内的最近N个关键帧KFi的集合),局部地 图点集合为MP(局部关键帧观测到的地图点集合),固定关键帧KFfixed的集合 为KFfixed。在跟踪线程公式(8)和公式(10)的优化中,只包含单目类型的 重投影误差项Eproj_mono,而在局部建图线程中关键帧的左右图像具有匹配的特 征点,因此增加了双目类型的重投影误差项Eproj_stereo。在滑动窗口中使用BA 同时优化局部关键帧和局部地图点:
其中
步骤S5:利用位姿图优化减小该周期内四足机器人运动漂移,进行回环 检测。
在经历跟踪线程、特征提取线程和闭环线程后,最后一个线程是回环检测, 该部分内容也是决定定位与建图,尤其是长距离、长航时下精度的最关键一 环。考虑野外地面的特殊性质,在四足机器人执行特征跟踪,地图建立过程 中,随着路径的不断的延伸,前部帧的误差势必会不断累计,若对此不作任 何修正的话,则后程位姿估计的误差只能不断增大,除了观测已标记好全局 绝对位姿的导航路标之外,有效的回环检测,也可以有效的削弱累计的误差。
在原有的词袋模型(Bag of Words)基础上,提出了一种基于特征物理 位置信息的回环检测方法,具体步骤如下:
考虑在某些工况下,双目相机所拍摄的图像中局部特征的辨识度较低, 即纹理信息不足以支撑可靠的同名特征匹配。
为此,利用特征点的像素位置来构建特征匹配的不变量。
设图像中所检测特征点的位置为[μa,νa],其对应在数据库中的同名点的 图像位置为[μD,νD],因特征点坐落于在相对平坦的着陆点邻域内,故可假设 数据库中特征点共面,则[μa,νa]与[μD,νD]存在如下仿射变换:
其中HD为单应矩阵,T=[tx,ty]T对应平移向量。由图像中三个非共线特征 点即可组成一三角形,其面积为:
同理,可以组建数据库中三个同名特征点的三角形,其面积为SD,根据 透视原理,Sa与SD之间存在如下对应关系
SD=|det(H)|Sa (17)
考虑4个特征点的情况,如图5所示:
其中A,B,C,D分别对应了特征点的图像位置,其中蓝色三角形ΔACD与黄 色三角形ΔABD的面积比即构成了仿射不变量:
图5中每个特征点均附属于3个独立的三角形,因此可以构建个仿射不 变量,在此构建如下矩阵来描述图像中每个特征点对应的仿射不变量:
由于式(18)中仿射不变量的构建中,三角形的除法具有次序性,而在 特征匹配中,该次序不可预知,因此将原仿射不变量进行如下改动:
其中Δ1,Δ2分别对应不同的三角形,当Δ1,Δ2的除法顺序颠倒时,新的不变 量finv将不再改变。根据式(19),图像中任意特征点[μi,νi]T,i=1,...,n的仿射不 变量集合可以描述为
至此,特征点匹配的任务便可以转化为求取两个集合间的相似度,这里 使用Jaccard集合相似度判据,如下式所示:
其中|g|表示集合中的元素个数(Cardinality,又称基数)。对上式的求取需 要知道集合X,Y的交集的基数,因此需要建立仿射不变量间的匹配,在此提 出一种改进的匹配判据:
其中fi对应了下降图像中特征h的第i个仿射不变量,对应了数据库中 特征D的第j个仿射不变量。当dij小于设定阈值时,便认为仿射不变量fi h,成 功匹配了数据库对应的不变量。据此,便可以建立完整的集合相似度求取算 法,在此提出“地面移动距离”(Earth Mover’s Distance,EMD)方法,能够自 动求解两个集合间的相似度,如下所示:
其中,SE(g)代表集合相似度函数,se(fh,fD)为“地面距离”,其形式为:
EMD旨在找到两个集合间最佳的契合程度,若SE(g)值越大,说明两个集 合越相似。ah,D的值只能取0或1,ah,D=1当且仅当两集合中元素地面距离最 小。求解上述问题有很多优化方法,比如利用匈牙利算法来进行SE的解算。
本实施例还可提供一种计算机可读存储介质,其上存储有计算机程序, 该计算机程序被处理器执行时,可实现上述的非结构化环境四足机器人立体 视觉定位建图方法。
具体地,存储介质可以是非临时性计算机可读存储介质,例如,非临时 性计算机可读存储介质可以是只读存储器、随机存取存储器、只读光盘、磁 带、软盘和光数据存储设备等。
本实施例还可提供一种电子设备,其包括处理器和存储器,所述存储器 上存储有计算机程序,所述计算机程序被所述处理器执行时,可实现上述的 非结构化环境四足机器人立体视觉定位建图方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来 将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示 这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、 “包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列 要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确 列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的 要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识 到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述 内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的 保护范围应由所附的权利要求来限定。
Claims (9)
1.一种非结构化环境四足机器人立体视觉定位建图方法,其特征在于,包括
步骤S1:对相机和IMU内方位参数进行互标定,包括左右视对标、相机与惯导标定,充分融合IMU与双目相机之间的信息;
步骤S2:使用双目相机两帧间的IMU信息预测上一帧的像素点在当前帧的位置,利用最小化光度误差得到两帧之间的像素跟踪信息,提取成功跟踪的特征组合,筛选局部地图特征点,完成当前帧像素与局部地图点对应像素的匹配;
步骤S3:特征提取线程负责计算关键帧队列中当前关键帧左、右图像的ORB局部图像特征描述算子;
步骤S4:局部建图线程等待当前关键帧的特征提取完成后,进行双目立体像对匹配,融合通过最小化光度误差得到的像素与通过特征提取得到的像素位置,并筛选当前关键帧的冗余地图特征点,根据双目匹配的结果来创建新的地图特征点;
步骤S5:利用位姿图优化减小该周期内四足机器人运动漂移,进行回环检测。
2.如权利要求1所述的非结构化环境四足机器人立体视觉定位建图方法,其特征在于,所述步骤S1中标定过程如下:利用imu_utils库进行IMU内参标定,校准IMU的零漂白噪声与随机游走误差,对双目相机进行标定得到yaml,并且与IMU标定文件一起进行联合标定。
3.如权利要求1所述的非结构化环境四足机器人立体视觉定位建图方法,其特征在于,所述步骤S2中通过最小化重投影误差和IMU预积分的误差得到当前帧的位姿估计,并判断、插入关键帧。
4.如权利要求1所述的非结构化环境四足机器人立体视觉定位建图方法,其特征在于,所述步骤S3中,将观察到匹配地图点集合中地图点的关键帧设置为局部关键帧;局部关键帧观察到的地图点设置为局部地图点。
5.如权利要求1所述的非结构化环境四足机器人立体视觉定位建图方法,其特征在于,所述步骤S4中的当关键帧队列中所有的关键帧处理完毕后,进行局部地图的光束法平差优化,从而得到定位和建图结果,最后对候选关键帧进行筛选。
6.如权利要求1所述的非结构化环境四足机器人立体视觉定位建图方法,其特征在于,所述步骤S5中,通过最小化重投影误差和IMU项误差得到全局一致性更好的环境地图和四足机器人的运动轨迹,该项工作是由Ceres优化工具包完成。
7.如权利要求6所述的非结构化环境四足机器人立体视觉定位建图方法,其特征在于,前部帧的误差会不断累计,后程位姿估计的误差不断增大;通过回环检测方法修正前部帧累计的误差,修正的步骤具体包括:
步骤S51:组建特征点数据库中三个同名特征点的三角形;
步骤S52:构建每个特征点对应的仿射不变量;
步骤S53:建立仿射不变量距离判断矩阵和建立集合相似度。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1-7中任一项所述的非结构化环境四足机器人立体视觉定位建图方法。
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器上存储有计算机程序,所述计算机程序被所述处理器执行时,实现如权利要求1-7中任一项所述的非结构化环境四足机器人立体视觉定位建图方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210178383.6A CN114723811A (zh) | 2022-02-25 | 2022-02-25 | 一种非结构化环境四足机器人立体视觉定位建图方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210178383.6A CN114723811A (zh) | 2022-02-25 | 2022-02-25 | 一种非结构化环境四足机器人立体视觉定位建图方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114723811A true CN114723811A (zh) | 2022-07-08 |
Family
ID=82235733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210178383.6A Withdrawn CN114723811A (zh) | 2022-02-25 | 2022-02-25 | 一种非结构化环境四足机器人立体视觉定位建图方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114723811A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117611677A (zh) * | 2024-01-23 | 2024-02-27 | 北京理工大学 | 一种基于目标检测和结构化特征的机器人定位方法 |
-
2022
- 2022-02-25 CN CN202210178383.6A patent/CN114723811A/zh not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117611677A (zh) * | 2024-01-23 | 2024-02-27 | 北京理工大学 | 一种基于目标检测和结构化特征的机器人定位方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109974693B (zh) | 无人机定位方法、装置、计算机设备及存储介质 | |
CN110070615B (zh) | 一种基于多相机协同的全景视觉slam方法 | |
CN109631855B (zh) | 基于orb-slam的高精度车辆定位方法 | |
CN111561923B (zh) | 基于多传感器融合的slam制图方法、系统 | |
CN108717712B (zh) | 一种基于地平面假设的视觉惯导slam方法 | |
CN111024066B (zh) | 一种无人机视觉-惯性融合室内定位方法 | |
CN110555901B (zh) | 动静态场景的定位和建图方法、装置、设备和存储介质 | |
CN108955718B (zh) | 一种视觉里程计及其定位方法、机器人以及存储介质 | |
CN112233177B (zh) | 一种无人机位姿估计方法及系统 | |
US5422828A (en) | Method and system for image-sequence-based target tracking and range estimation | |
CN110319772B (zh) | 基于无人机的视觉大跨度测距方法 | |
JP2013186816A (ja) | 動画処理装置、動画処理方法および動画処理用のプログラム | |
CN110726406A (zh) | 一种改进的非线性优化单目惯导slam的方法 | |
JP2012118666A (ja) | 三次元地図自動生成装置 | |
CN112115980A (zh) | 基于光流跟踪和点线特征匹配的双目视觉里程计设计方法 | |
CN109871739B (zh) | 基于yolo-sioctl的机动站自动目标检测与空间定位方法 | |
CN112419497A (zh) | 基于单目视觉的特征法与直接法相融合的slam方法 | |
CN109596121A (zh) | 一种机动站自动目标检测与空间定位方法 | |
US20160055646A1 (en) | Method for estimating the angular deviation of a mobile element relative to a reference direction | |
JP2002532770A (ja) | 映像に関連してカメラポーズを決定する方法及びシステム | |
JP6922348B2 (ja) | 情報処理装置、方法、及びプログラム | |
CN114623817A (zh) | 基于关键帧滑窗滤波的含自标定的视觉惯性里程计方法 | |
CN111812978A (zh) | 一种多无人机协作slam方法与系统 | |
Xian et al. | Fusing stereo camera and low-cost inertial measurement unit for autonomous navigation in a tightly-coupled approach | |
CN114723811A (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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20220708 |