我是靠谱客的博主 清脆紫菜,最近开发中收集的这篇文章主要介绍双目估计方法_基于双目立体视觉的VI-SLAM导航定位算法研究新突破,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

a80aa234-5b12-eb11-8da9-e4434bdf6706.png

首先来了解一下双目立体视觉技术的应用价值

在传统无人机避障方法中,其障碍物距离探测技术中大都使用光流法(Optical Flow, OF)和运动重构物体结构法( Structure From Motion,SFM) 等技术。这类方法大都灵感来自自然界中鸟类生物对于检测障前方障碍物和躲避可能危险的启发。但是光流法和运动重构物体结构的算法中计算量巨大,检测计算障碍物位置时耗时较久。基于光流的算法在室内大量无纹理环境下表现不好,例如一面白墙或玻璃,无法提取足够特征点来实现目标障碍物的深度测量。而双目立体视觉传感器常用来作为目标障碍物检测,然而两枚摄像机之间的限定极限或立体平台的限制,在缺少图像特征点区域表现不好,如果采用的传感器小觅双目摄像头(MYNT D100-IR-120),内置两颗主动式红外发射器,可以有效增加白墙和无纹理物体的检测精度。在无人机上安装其他障碍物测距传感器均受到电池电量的约束,例如微软公司生成的Kinect传感器,其重量较大对无人机电量消耗较多,这一问题经常出现在小型四旋翼无人机上,使用立体视觉传感器检测目标障碍物和视觉导航是当前研究的热点。

能够成为当下研究热点的双目立体视觉技术,它的技术原理又是什么呢?

双目立体视觉技术是指通过两枚像机从不同位置,在某一时刻拍摄两张图像,然后通过相似三角形原理计算物体在视野中的视差,依此复原环境的3D立体信息。由于双目视觉的相关技术是当前的研究热点,伴随计算机硬件、电子信息和光学元器件制造技术的进步,将逐渐在视觉导航等方向得到广泛应用,会对工业探测、医学检测、增强现实(AR)等方向产生重大影响,甚至在航空航天、军事侦察等展开应用。研究双目立体视觉技术存在重大的理论和实用价值,当前国内外学者在该方向已经投入大量的研究实验获得一些突破。

通过结合学习方法的应用双目视觉,如来自亚洲大阪大学(Osaka University )的Asada, Minoru等人研发设计自学习双目立体视觉伺服系统,通过双目立体视觉三角测距原理,以自适应的方式跟踪趋势未知的目标。该算法在相机内外参未知情况下自动在左右视图中寻找标志物。相比过去的基于视觉的目标跟踪算法,不需要像机的内外参数作为先验知识,而且不用提前知道目标运动趋势。

那么通过双目视觉技术又发现了哪些优异算法呢?

通过双目视觉技术可以探测到障碍物的位置和状态信息,在无人机本体的导航定位算法研究方向,基于视觉和惯性测量单元(IMU)融合的视觉惯性同步定位建图(VI-SLAM) 导航定位算法,由于其如下特点: (1)对环境的鲁棒性,在室内无GPS以及室外GPS信号弱或受干扰环境表现良好; (2)定位精度高,一方面通过将IMU估计的位姿序列和相机估计的位姿序列对齐可以估计出相机轨迹的真实尺度,另一方面IMU可以很好地预测出图像帧的位姿以及上一时刻特征点在下帧图像的位置,提高特征跟踪算法匹配速度和应对快速旋转的算法鲁棒性,最后IMU中加速度计提供的重力向量可以将估计的位置转为实际导航需要的世界坐标系中。基于VI-SLAM的导航定位算法正在成为无人机和无人驾驶领域的研究热点。

同步定位与地图构建技术(SLAM)最早是由Smith提出,被应用与机器人技术中,目的是利用传感器数据在未知环境中建立实时定位和环境地图。多年来,出现了多种使用不同传感器的新方法,如声呐, 激光雷达和摄像机。这些方法创建了新的数据表示法,进而创建新地图。Durrant-Whyte 和Bailey,系统的讲述了SLAM技术。由于最近在CPU和GPU技术上的进步,机载计算单元算力提升,视觉SLAM的相关研究在持续增长,因为相对于其他传感器,低成本相机提供了丰富的视觉信息。如今,涌现出许多优秀的视觉SLAM方法,提升了SLAM技术的发展,如MonoSLAM, PTAM, RatSLAM ,DTAM ,KinectFusion,ORB-SLAM。SLAM技术在过去的30年中进行了三次主要的迭代。如今,SLAM科技正蓬勃发展, 实时,高精度的SLAM技术是无人机领域迫切需要的技术。融合了视觉和IMU的数据用于定位和环境感知的视觉惯性同步定位与地图构建(VI-SLAM)系统由于以下原因变成为当前研究热点:

(1)该技术被用于机器人研究,特别是在设计微型飞行器(MAV)自主导航的广泛研究和应用中;

(2)增强现实(AR)技术和虚拟现实(VR)技术正在发展迅速;

(3)无人驾驶和人工智能研究的迅速。

VI-SLAM通常分为两种方式:基于滤波和基于优化的方法。Maplab 和VINS-mono分别是这两种方法的典型代表。Maplab是一个基于滤波的VI-SLAM系统,它还开源了一系列多任务的构图工具,包括地图合并、闭环检测和视觉惯性优化。VINS-mono是一个基于实时优化的VI-SLAM系统,使用滑动窗口提供高精度的测距。此外,它具有高效的IMU预积分与偏差校、自动估计初始化、故障检测和回环检测。根据传感器融合类型,VI-SLAM方法也可进一步根据传感器数据融合模式归类为松耦合和紧耦合。

在基于滤波的方法中,MSCKF是一个经典的VI-SLAM系统。它也是一种基于多状态约束扩展卡尔曼滤波的视觉惯性导航系统。它采用测量模型来表达在从多个相机姿势观察到静态特征时产生的几何约束。该算法提取并匹配筛选特征,并保持30摄像机在过滤器状态下的姿势。

此外,Li证明了在滤波器中计算雅可比矩阵的标准方法不可避免地导致了不一致和精度损失。通过仿真试验表明,MSCKF 和FLs外侧的偏航误差加减3σ表示不一致的边界。因此,他们提出了修正的MSCKF算法,这确保了正确的可观测性属性,而不会产生额外的计算成本。Clement比较了MSCKF和滑动窗口过滤器(SWF)。其结果表明,SWF比MSCKF更准确,对调谐参数敏感度较低。然而,MSCKF计算更便宜,具有良好的一致性属性,并提高了准确性,因为更多的功能被跟踪。与基于特征的方法相比Tanskanen结合了卡尔曼滤波滤波器的优点和最小化光度误差。越来越多的研究也开始将VI-SLAM技术应用于小型设备。

在机器人中鲁棒而准确的状态估计仍然具有挑战性。如果系统能够根据事先的地图获得准确的姿势估计,系统的适应性就会提高。因此,施耐德提出了一个名为Maplab的VI -SLAM系统,其中包括创建、处理和混合多个地图的综合功能。该系统可扩展性适合于研究,为系统挖掘组件的选择提供了评价方法。此外,Maplab被发现从图像中提取出BRISK和FREAK,并融合IMU数据进行定位和映射。可以将单独的部分合并为单个全局映射,以纠正里程计和本地化的漂移。ROVIOL是Maplab的前端,用于定位和映射;根据集成的陀螺仪测量结果,显示了匹配窗口以提高效率和鲁棒性。该系统可轻松扩展新算法在窗口流中,如多线程地图构建,语义SLAM和定位。

随着计算机技术的发展,基于优化的VI-SLAM也迅猛发展。基于优化的方法根据图像处理将整个SLAM框架划分为前端和后端;前端负责地图构造,而后端负责姿势优化。后端优化技术通常在g2o、cares-solver和gtsam上实现。许多优秀的数据集可用于研究视觉惯性方法,如EuRoC、Canoe、Zurichurban MAV、TUM VI基准和PennCOSYVIO。

在基于优化的方法中,OKVIS是一个优秀的基于关键帧的VI- SLAM系统;将IMU和重投影误差函数合并为成本函数来优化系统。旧的关键帧被边缘化以保持一个有界大小的优化窗口,确保实时操作。作为初始化和匹配的第一步,它们使用获得的IMU测量来传播最后一个姿势,以获得对状态的初步不确定估计。

为了避免相对运动积分参数化引起的反复约束,提出了预积分法以减少计算。此方法首先由拉普顿描述,其中IMU数据在两帧之间通过预积分约束进行了更改。在福斯特将其应用于VI-SLAM框架以减少偏倚后,预积分理论进一步发展。VIORB是一种基于ORB的单目紧密耦合VI -SLAM,包含ORB稀疏前端、图优化后端、闭环检测和重定位。该方法首次使用单目视觉进行初始化,几秒钟后,对刻度、重力方向、速度、加速度计和陀螺偏差进行了特定的初始化。VIORB提出了一种新的IMU初始化方法,它分为以下四个步骤:

(1)陀螺偏差估计;

(2)尺度和重力逼近(考虑没有加速度计偏差);

(3)加速度计偏差估计(规模和重力方向细化);

(4)速度估计;

本地地图模块使用局部BA优化最新的n个关键帧,并在插入新关键帧后在这些n关键帧上观察到的所有点。然后根据关键帧的时间序列检索本地地图。固定窗口连接第N+1个关键帧和共可见关系图。除了单眼和IMU融合方法外,还调查了带有IMU的立体声和RGBD融合的砰击。

VINS-mono是一种杰出的VI-SLAM方法,其前端使用KLT光流跟踪Har-ris角,而后端则使用滑动窗口进行非线性优化。整个系统包括测量处理、估计初始化、无重定位的局部捆绑调整、闭环检测和全局姿态优化。鱼眼相机模型在前端使用,RANSAC方法拒绝基本矩阵的异常值。相机与IMU之间的校准误差小于0.02 m,旋转误差小于1°。此外,该方法已成功应用于AR。

此外,与深度学习和新传感器集成的方法伴随着人工智能和计算机视觉的兴起。Clark提出了一个端到端的VIO,并结合传感器融合和深度学习的良好效果。但是,此系统中未使用闭环检测和映射。Vidal使用动态摄像机而不是VIO中的亮度帧,在低光照和高动态场景中获得良好效果。CNN-SLAM取代了在LSD的深度估计和图像匹配的基于CNN的方法来合并语义信息。

基于以上理论,下面我们来分享一个无人机基于双立体目视觉障碍物测距的方法:

在仿生学理论中,双目立体视觉技术灵感来源于人类通过双眼对三维空间进行立体感知。在计算机视觉(computer vision)相关理论中,双目立体相机在同一时刻拍摄左右两幅图像对,通过提取图像特征点并进行立体匹配,利用三角关系计算目标点在左右图像中的视差,由此计算出环境的立体深度图,可以测量计算出环境物体的立体信息,还可以进一步融合三维立体重建技术重构出周围空间的三维立体图像和点云图,根据这一原理具有代表性的双目视觉传感器有Intel生产的realsense系列,小觅智能(MYNT)生产的标准版单色双目(S1030-IR-120) 和深度版彩色双目(D1000-IR-120) 立体视觉传感器等。

<br> (二维码自动识别)

双目视觉计算深度流程如图2-1所示,首先标定双目相机的内参和外参,通过标定推导图像坐标系到摄像机坐标系转换关系和摄像机坐标系到世界坐标系的转换关系,使用张有正法计算相机焦距f和成像原点o,通过Brown提出的算法解算图像畸变系数。主要获得左右摄像机的内外参数、相对几何关系,包含平移向量和旋转矩阵两个参数。

然后进行左右图像畸变校正,畸变校正后的左右图像对是精确对应的,使得双目视图的对极线在相同水平面。通过上面方法获得相机的内参和外参,双目相机畸变校正实验通过OpenCV对应函数编程实现。

ab0aa234-5b12-eb11-8da9-e4434bdf6706.png
图2-2立体双目匹配示意图

第三步是进行左右视图的立体匹配,通过立体匹配在图像对中计算对应匹配点,如图2-2所示,算法第一步是构建以能量为基础的评估函数,根据最优化理论最小化评估函数来计算配对特征点的视差值。在数学原理上双目立体匹配算法是个凸优化目标函数代价最小化问题,能量评估函数的选择对立体匹配的效果起到至关重要的作用。

ad0aa234-5b12-eb11-8da9-e4434bdf6706.png
图2-3双目视觉原理图

最后一步是根据三角关系计算深度图,如图2-3所示,点P在规定区域内双目像机中成像的水平坐标为xl和xy,f为摄像机的焦距,D表示P点与相机平面之间的垂直长度,双目相机的两个光分坐标别用Ol△OR来表示,T表示基线长度是双目像机光心间的连线长度。对于任一像素点以d来表示两相机间的视差值,结合三角形相似定理完成深度公式推导可得式2-1。

af0aa234-5b12-eb11-8da9-e4434bdf6706.png

由式2-1可知,根据相机内外参和视差d可计算出深度D。结合双目视觉原理可知,双目立体视觉系统有如下优势:

(1)系统造价虽相比单摄像头略高,价格仍在预算之内,相比激光雷达、结构光等传感器价格要低很多;

(2)不存在检测识别方面的约束,从原理上客服识别的问题,不用先识别然后计算距离,直接对所有环境物体进行解算距离;

(3)相比但不缺乏尺度信息,双目通过视差来计算深度,误差更小;

(4)由于双目不存在样本,所以不用耗费额外资源更新数据库同时要设计实现一套双目立体视觉系统,也存在以下难点:

首先,双目的计算量特别大,对CPU的处理速度有较高要求,这一特点也影响了双目摄像头的广泛应用。并且设计专用芯片或FPGA来解决计算量问题耗费资源巨大实现困难。国外对双目研究比较成熟的机构或公司,大都采用带有GPU的地面的计算单元来进行特征点计算与立体匹配,少数公司通过优化立体匹配算法,并研制专用FPGA来完成计算。小觅深度版双目相机就已经在电路板上集成了深度解算芯片,实现深度的直接输出,是面向这一研究的完美传感器。

其次,双目立体配准效果对于解算距离的精度有较大影响,微小的匹配误差会导致测量距离的巨大误差。

b10aa234-5b12-eb11-8da9-e4434bdf6706.png

好了,今天的分享是不是又为你的SLAM研究拨开了层云雾。如果你对SLAM方面研究,还存在着不少疑问,建议你可以在已经开发好是视觉SLAM平台上进行项目研究哦!

因为现在市面上已经开发好的视觉SLAM平台,在实验指导方面会提供专业的实验指导书。比如:航线飞行、自主导航避障案例以及常见故障解决方案等,让你在学习研究时有精准资料可以寻,省去不必要的资料查询时间,让学习研究更简单更系统。

不仅如此,它的开发体系也是紧跟当下科研趋势:

平台组成

主要由:视觉开发平台、信息交互与任务控制平台、无人机系统等组成。

视觉slam的位姿估计模块实时获取到双目相机的图像信息和IMU的位姿信息,然后通过视觉惯性融合算法计算出相机的深度信息、位置信息和运动姿态信息,并转换为实时位姿信息,最后通过无人机位姿解算算法将相机的位姿信息转换为无人机的位姿发送给无人机,实现无人机的自主定位。同时,视觉slam算法支持GPU加速技术,大幅提升运算速度与精度。基于词袋技术,构建视觉slam回环检测模块,使视觉slam所计算出来的位姿信息更加准确。由相机发布的三维点云信息获取无人机与障碍物之间的距离,并应用自主导航避障算法生成可执行路径,实现无人机自主导航避障功能。

b20aa234-5b12-eb11-8da9-e4434bdf6706.png

相关系统方面:

1、无人机平台

飞行平台可提供ZY-UAV-350、ZY-UAV-450、ZY-UAV-680等多种无人机飞行平台,飞行平台集成光流、激光定高等传感器,均可稳定悬停。

飞行平台均提供完善的二次开发接口,支持C++、Python、ROS、Matlab等多种开发接口。

2、视觉传感器

支持Intel D435i、小觅等多种双目视觉相机。

可根据客户需求选配可见光相机、激光雷达、红外相机等多种其他类型的传感器。为客户提供完善的驱动程序支持和二次开发接口。

3、机载计算机

可搭载TX2、树莓派、Intel NUC等多种机载计算机。

4、开发工作站

提供双目视觉slam实时状态可视化界面和自主导航避障轨迹显示界面。

5、视觉导航集成开发环境

提供全套基于机器视觉无人平台自主导航避障系统软件开发体系:包括VIO定位开发框架,MAVROS无人机二次开发SDK、自主导航避障框架、视觉仿真环境等。

总结来说,已经开发好的视觉SLAM研究平台有如下特点:

1、紧扣目前无人机研究的热点,提供视觉导航、SLAM、视觉避障、人工智能等领域最新的技术。

2、该系统提供全套的学科教学课程以及示例算法等,可快速展开相关课程设计,进行实际教学应用阶段。

可开设课程如下:

⦁ SLAM教学:

⦁ 飞思视觉slam硬件平台介绍

⦁ 飞思视觉slam软件平台介绍

⦁ 相机原理、点云原理、GPU加速原理简介。

⦁ 飞思视觉slam平台支持的视觉slam架构,包括VINS,ORB_SLAM和Rovio,降低学校教师或学生学习slam的门槛。

⦁ 视觉slam主流技术介绍,包括多传感器融合算法,KLT光流算法双目VIO

⦁ 视觉词袋技术介绍

⦁ 回环检测技术介绍,包括重定位技术、全局位姿估计技术

⦁ 无人机通信技术,包括Mavlimk介绍和Mavros介绍

⦁ 自主导航避障算法介绍

⦁ 飞思视觉slam平台应用实例介绍。

⦁ 航线飞行实例,自主导航避障实例

3、一体化的视觉开发环境

提供全套的机器视觉与视觉导航的开发环境、仿真环境、硬件平台,所提供的硬件均提供完善的二次开发接口和实例代码,省去用户从头搭建开发平台的繁杂工作。

4、提供完整的开发框架和实例

提供完整的无人平台控制、通讯链路、视觉图像采集、图像识别、三维重建、定位解算等软件算法解决方案。提供了VIO、LocalPlanner等多种实例程序,用户只需要简单配置即可实现完整的自主定位、自主建图、自主导航、自主避障等功能。

b40aa234-5b12-eb11-8da9-e4434bdf6706.png

立体视觉是SLAM中的重要一环,对于需要重建三维场景的任务至关重要。Ren等人设计了基于视觉SLAM的服务型机器人系统,该系统包含视觉特征缓冲区和人类特征检测区,缓冲区用来存储不变的环境路标,人类特征检测区帮助移除从运动人们身上提取的特征点,消除运动特征对机器人定位带来的干扰,实验表明,该方法大大降低了运行时间,提高了SLAM精度。

b80aa234-5b12-eb11-8da9-e4434bdf6706.png

最后

以上就是清脆紫菜为你收集整理的双目估计方法_基于双目立体视觉的VI-SLAM导航定位算法研究新突破的全部内容,希望文章能够帮你解决双目估计方法_基于双目立体视觉的VI-SLAM导航定位算法研究新突破所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(69)

评论列表共有 0 条评论

立即
投稿
返回
顶部