CN109887032B - 一种基于单目视觉slam的车辆定位方法及系统 - Google Patents
一种基于单目视觉slam的车辆定位方法及系统 Download PDFInfo
- Publication number
- CN109887032B CN109887032B CN201910132886.8A CN201910132886A CN109887032B CN 109887032 B CN109887032 B CN 109887032B CN 201910132886 A CN201910132886 A CN 201910132886A CN 109887032 B CN109887032 B CN 109887032B
- Authority
- CN
- China
- Prior art keywords
- pose
- vehicle
- repositioning
- monocular camera
- slam map
- 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.)
- Active
Links
Images
Landscapes
- Image Analysis (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
一种基于单目视觉SLAM的车辆定位方法及系统,该方法包括:制图时,单目视觉SLAM初始化过程中,以车辆的实际移动距离来确定单目视觉SLAM地图的尺度,并在后续以车辆实际移动距离来不断优化SLAM地图的尺度等信息;基于地图的定位时,匹配目标图像以及SLAM地图中的特征点,从而确定出车辆在SLAM地图中的重定位位姿,以获得车辆定位模块测量到的车身位姿与单目摄像头的视觉位姿之间的转换关系,并且利用多个车身位姿和视觉位姿来不断优化该转换关系。本发明能够为单目视觉SLAM地图提供真实的尺度信息,以提高车辆定位精度,减少视觉定位过程中不稳定因素的影响,提高系统在视觉特征缺失等情况下的稳定性。
Description
技术领域
本发明涉及自动驾驶技术领域,具体涉及一种基于单目视觉SLAM的车辆定位方法及系统。
背景技术
在自动驾驶领域,单目视觉同步定位与地图创建(Simultaneous Localizationand Mapping,SLAM)是指自动驾驶车辆利用单个视觉传感器(如摄像头)创建一个与真实环境相一致的地图,并同时确定自身在地图中的位置。
然而,单个视觉传感器测量得到的图像数据只能提供物体间相对的距离关系,不能提供这些物体真实的三维空间信息。因此,单目视觉SLAM存在尺度不确定(ScaleAmbiguity)的问题。以建图为例,基于单目视觉SLAM构建的地图是相对精度的地图,即使地图中的各个物体的相对位置关系准确,但是该地图与真实地理环境之间仍然存在一个可能的比例关系。
由于单目视觉SLAM的尺度不确定性,当使用通过单目视觉SLAM构建出的SLAM地图进行车辆定位时,存在定位精度较低的问题。
发明内容
本发明实施例公开了一种基于单目视觉SLAM的车辆定位方法及系统,能够为单目视觉SLAM地图提供真实的尺度信息,以提高车辆定位精度。
本发明实施例第一方面公开一种基于单目视觉SLAM的车辆定位方法,所述方法包括:
从车辆的单目摄像头拍摄到的真实环境图像序列中确定出至少两个初始帧,并通过车辆的定位模块获取在所述至少两个初始帧的拍摄时刻之间所述车辆的实际移动距离;
结合所述车辆的实际移动距离和所述至少两个初始帧进行单目视觉SLAM初始化;
如果初始化成功,根据所述车辆的实际移动距离为单位尺度利用所述真实环境图像序列构建SLAM地图;所述SLAM地图包括所述单目摄像头的位姿序列,以及所述真实环境图像序列中各个图像包含的特征点的三维空间位置;
在重定位时,根据特征点在所述单目摄像头拍摄到的目标图像中的图像位置以及特征点在所述SLAM地图中的三维空间位置确定所述单目摄像头在所述SLAM地图中的重定位位姿;
根据所述单目摄像头在所述SLAM地图中的重定位位姿确定所述车辆在所述SLAM地图中的重定位位姿。
作为一种可选的实施方式,在本发明实施例第一方面中,如果初始化成功,所述根据所述车辆的实际移动距离和所述真实环境图像序列构建所述SLAM地图,包括:
根据拍摄到的特征点在图像中的位置确定所述真实环境图像序列中每个图像帧对应的所述单目摄像头的估计位姿,并以所述车辆的移动距离为单位尺度恢复所述图像帧包含的特征点相对于所述估计位姿的深度信息,以得到所述特征点的三维空间位置;所述图像帧包括所述初始帧;
通过各个所述图像帧对应的所述单目摄像头的估计位姿构建所述单目摄像头的估计位姿序列,并通过所述车辆的定位模块获取与所述单目摄像头的估计位姿序列相对应的所述车辆的第一位姿序列;
迭代调整所述估计位姿序列中各个所述估计位姿的取值、所述特征点的三维空间位置的取值以及所述单位尺度的取值,直至所述单目摄像头的估计位姿序列与所述第一位姿序列之间的第一投影误差最小;
利用所述第一投影误差最小时,所述单目摄像头的估计位姿序列中各个所述估计位姿的取值、所述特征点的三维空间位置的取值以及所述单位尺度的取值构建SLAM地图。
作为一种可选的实施方式,在本发明实施例第一方面中,所述在重定位时,根据特征点在所述单目摄像头拍摄到的目标图像中的图像位置以及特征点在所述SLAM地图中的三维空间位置,确定所述单目摄像头在所述SLAM地图中的重定位位姿,包括:
在重定位时,获取所述单目摄像头拍摄到的多帧目标图像;
针对每帧所述目标图像,匹配所述特征点在该帧目标图像中的图像位置以及所述特征点在所述SLAM地图中的三维空间位置,以确定与该帧目标图像对应的所述单目摄像头在所述SLAM地图中的估计重定位位姿,得到所述单目摄像头的估计重定位位姿序列;所述估计重定位位姿序列中包含各帧所述目标图像对应的所述单目摄像头在所述SLAM地图中的估计重定位位姿;
通过所述车辆的定位模块获取与所述估计重定位位姿序列对应的所述车辆的第二位姿序列;
基于多帧目标图像以及所述估计重定位位姿序列确定所述单目摄像头在所述SLAM地图中的重定位位姿,以使利用所述单目摄像头的所述重定位位姿将所述第二位姿序列转换到所述SLAM地图的SLAM地图坐标系时,转换得到的第三位姿序列与所述估计重定位位姿序列的误差最小。
作为一种可选的实施方式,在本发明实施例第一方面中,所述根据所述单目摄像头在所述SLAM地图中的重定位位姿确定所述车辆在所述SLAM地图中的重定位位姿,包括:
根据所述单目摄像头在所述SLAM地图中的重定位位姿确定单目摄像头坐标系与所述SLAM地图坐标系之间的第一转换关系;
通过所述车辆的定位模块获取与所述单目摄像头的所述重定位位姿对应的所述车辆的第一位姿;
根据所述第一转换关系以及预先标定的所述单目摄像头坐标系与所述车辆坐标系之间的第二转换关系,将所述第一位姿转换到所述SLAM地图坐标系,以得到所述车辆在所述SLAM地图中的重定位位姿。
作为一种可选的实施方式,在本发明实施例第一方面中,在所述根据所述单目摄像头在所述SLAM地图中的重定位位姿确定所述车辆在所述SLAM地图中的重定位位姿之后,所述方法还包括:
获取当前时刻所述车辆的定位模块测量到的所述车辆的当前位姿;
根据所述当前位姿与所述第一位姿之间的相对位置关系,以及所述车辆在所述SLAM地图中的重定位位姿,确定所述当前位姿在所述SLAM地图中的定位位姿作为当前时刻所述车辆的定位结果。
本发明实施例第二方面公开一种基于单目视觉SLAM的车辆定位系统,包括:
第一获取单元,用于从车辆的单目摄像头拍摄到的真实环境图像序列中确定出至少两个初始帧,并通过所述车辆的定位模块获取在所述至少两个初始帧的拍摄时刻之间所述车辆的实际移动距离;
初始化单元,用于结合所述车辆的实际移动距离和所述至少两个初始帧进行单目视觉SLAM初始化;
建图单元,用于在初始化成功时,根据所述车辆的实际移动距离和所述真实环境图像序列构建SLAM地图;所述SLAM地图包括所述单目摄像头的运动轨迹,以及所述真实环境图像序列中各个图像包含的特征点的三维空间位置;
视觉重定位单元,用于在重定位时,根据特征点在所述单目摄像头拍摄到的目标图像中的图像位置以及特征点在所述SLAM地图中的三维空间位置确定所述单目摄像头在所述SLAM地图中的重定位位姿;
车辆重定位单元,用于根据所述单目摄像头在所述SLAM地图中的重定位位姿确定所述车辆在所述SLAM地图中的重定位位姿。
作为一种可选的实施方式,在本发明实施例第二方面中,所述建图单元,包括:
第一确定子单元,用于在初始化成功时,根据拍摄到的特征点在图像中的位置确定所述真实环境图像序列中每个图像帧对应的所述单目摄像头的估计位姿,并以所述车辆的实际移动距离为单位尺度恢复所述图像帧包含的特征点相对于所述估计位姿的深度信息,以得到所述特征点的三维空间位置;所述图像帧包括所述初始帧;
第一获取子单元,用于通过各个所述图像帧对应的所述单目摄像头的估计位姿构建所述单目摄像头的估计位姿序列,并通过所述车辆的定位模块获取与所述单目摄像头的估计位姿序列相对应的所述车辆的第一位姿序列;
调整子单元,用于迭代调整所述估计位姿序列中各个所述估计位姿的取值、所述特征点的三维空间位置的取值以及所述单位尺度的取值,直至所述单目摄像头的估计位姿序列与所述车辆的第一位姿序列之间的第一投影误差最小;
构建子单元,用于利用所述第一投影误差最小时,所述单目摄像头的估计位姿序列中各个所述估计位姿的取值、所述特征点的三维空间位置的取值以及所述单位尺度的取值构建SLAM地图。
作为一种可选的实施方式,在本发明实施例第二方面中,所述视觉重定位单元,包括:
第二获取子单元,用于在重定位时,获取所述单目摄像头拍摄到的多帧目标图像;
第二确定子单元,用于针对每帧所述目标图像,匹配所述特征点在该帧目标图像中的图像位置以及所述特征点在所述SLAM地图中的三维空间位置,以确定与该帧目标图像对应的所述单目摄像头在所述SLAM地图中的估计重定位位姿得到所述单目摄像头的估计重定位位姿序列;所述估计重定位位姿序列中包含各帧所述目标图像对应的所述单目摄像头在所述SLAM地图中的估计重定位位姿;
第三获取子单元,用于通过所述车辆的定位模块获取与所述估计重定位位姿序列对应的所述车辆的第二位姿序列;
第三确定子单元,用于基于多帧目标图像以及所述估计重定位位姿序列确定所述单目摄像头在所述SLAM地图中的重定位位姿,以使利用所述单目摄像头的所述重定位位姿将所述第二位姿序列转换到所述SLAM地图的SLAM地图坐标系时,转换得到的第三位姿序列与所述估计重定位位姿序列的误差最小。
作为一种可选的实施方式,在本发明实施例第二方面中,所述车辆重定位单元,包括:
第四确定子单元,用于根据所述单目摄像头在所述SLAM地图中的重定位位姿确定单目摄像头坐标系与所述SLAM地图坐标系之间的第一转换关系;
第四获取子单元,用于通过所述车辆的定位模块获取与所述单目摄像头的所述重定位位姿对应的所述车辆的第一位姿;
转换子单元,用于根据所述第一转换关系以及预先标定的所述单目摄像头坐标系与所述车辆坐标系之间的第二转换关系,将所述第一位姿转换到所述SLAM地图坐标系,以得到所述车辆在所述SLAM地图中的重定位位姿。
作为一种可选的实施方式,在本发明实施例第二方面中,还包括:
第二获取单元,用于在所述车辆重定位单元根据所述单目摄像头在所述SLAM地图中的重定位位姿确定所述车辆在所述SLAM地图中的重定位位姿之后,获取当前时刻所述车辆的定位模块测量到的所述车辆的当前位姿;
定位单元,用于根据所述当前位姿与所述第一位姿之间的相对位置关系,以及所述车辆在所述SLAM地图中的重定位位姿,确定所述当前位姿在所述SLAM地图中的定位位姿作为当前时刻所述车辆的定位结果。
本发明实施例第三方面公开一种基于单目视觉SLAM的车辆定位系统,包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
单目摄像头及车辆定位模块;
所述单目摄像头拍摄得到的图像以及所述车辆定位模块检测到的车辆移动距离传输至所述处理器,所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明实施例第一方面公开的任一项方法。
本发明第四方面公开一种计算机可读存储介质,其存储计算机程序,其中,所述计算机程序使得计算机执行本发明实施例第一方面公开的任一项方法。
本发明实施例第五方面公开一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行本发明实施例第一方面公开的任一项方法。
与现有技术相比,本发明实施例具有以下有益效果:
本发明在单目视觉SLAM初始化时,利用与初始帧对应的车辆移动距离对单目视觉SLAM进行尺度化,在单目视觉SLAM的基础上附加车辆的定位模块测量出的现实世界的尺度信息,从而使得构建出的SLAM地图中包含尺度信息,并且与真实环境为等比例关系;当车辆需要进行重定位时(如再次进入已经构建好SLAM地图的真实环境时),可以重用SLAM地图中特征点的三维空间位置,通过特征点匹配的方式确定摄像头在所述SLAM地图中的重定位位姿,从而确定出车辆在SLAM地图中的重定位位姿,达到提高车辆定位精度的效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种基于单目视觉SLAM的车辆定位方法的流程示意图;
图2是本发明实施例公开的另一种基于单目视觉SLAM的车辆定位方法的流程示意图;
图3是本发明实施例公开的又一种基于单目视觉SLAM的车辆定位方法的流程示意图;
图4是本发明实施例公开的一种基于单目视觉SLAM的车辆定位系统的结构示意图;
图5是本发明实施例公开的另一种基于单目视觉SLAM的车辆定位系统的结构示意图;
图6是本发明实施例公开的又一种基于单目视觉SLAM的车辆定位系统的结构示意图;
图7是本发明实施例公开的再一种基于单目视觉SLAM的车辆定位系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明实施例及附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例公开了一种基于单目视觉SLAM的车辆定位方法及系统,能够提高车辆定位精度。以下分别进行详细说明。
实施例一
请参阅图1,图1是本发明实施例公开的一种基于单目视觉SLAM的车辆定位方法的流程示意图。其中,图1所描述的基于单目视觉SLAM的车辆定位方法适用于车载电子设备等车载电子设备,本发明实施例不做限定。如图1所示,该基于单目视觉SLAM的车辆定位方法可以包括以下步骤:
101、车载电子设备从车辆的单目摄像头拍摄到的真实环境图像序列中确定出至少两个初始帧,并通过车辆的定位模块获取在至少两个初始帧的拍摄时刻之间车辆的实际移动距离。
本发明实施例中,单目摄像头可以为设置于车辆前挡风玻璃或者设置于车辆后视镜的单个摄像头。初始帧为用于单目视觉SLAM初始化的图像帧,通过对比相同的特征点在至少两个初始帧中的图像位置的差距,确定单目摄像头在初始帧之间的相对位姿变化,从而完成单目视觉SLAM初始化。可以理解的是,为了提高单目视觉SLAM初始化的成功率,初始帧应该满足一定要求。比如,可以设定初始帧为特征点数目分别大于预设阈值(如100)的两个连续的图像帧。
此外,车辆上可以装设有惯性测量单元(Inertial measurement unit,IMU)、轮脉冲计数器等传感器,这些传感器可以作为车辆的定位模块(如车身里程计)计算车辆的行驶距离,进一步地还可以对车辆进行位置定位。因此,可以利用定位模块测量车辆在初始帧的拍摄时刻之间的移动距离。
102、车载电子设备结合车辆的实际移动距离和至少两个初始帧进行单目视觉SLAM初始化。
单目视觉SLAM初始化包括以下步骤:1、在至少两个初始帧中进行特征点匹配;2、基于已匹配的特征点,利用对极几何原理可以根据初始帧确定出的单目摄像头的帧间位姿,即单目摄像头在初始帧之间的相对位姿变化(包括平移量和旋转量);3、基于单目摄像头在至少两个初始帧之间的帧间位姿,利用三角测量原理确定图像中特征点的深度;4、根据单目摄像头在至少两个初始帧之间的帧间位姿,以及图像中特征点的深度,构建初始SLAM地图。
然而,由于图像缺少深度信息,传统的单目视觉SLAM在初始化时将摄像头的平移量t归一化,即直接将初始化时摄像头在初始帧之间的相对移动距离设置为1。因此,传统的单目视觉SLAM在初始化时并不能得到实际的摄像头移动距离,而且恢复出的特征点的深度也不包含尺度信息,与实际的深度之间可能存在一定的比例关系。
进一步地在后续的建图过程中,每个图像帧对应的单目摄像头的位姿可以表示为单目摄像头在该图像帧以及该图像帧的前一个图像帧之间的相对位姿变化。一般来说,该图像帧以及前一个图像帧之间的相对位姿变化具体可以表示为单目摄像头在初始帧之间的相对位姿变化的N倍,N为实数。因此,如果初始化时直接将单目摄像头的平移量t进行归一化,导致初始化时单目摄像头的帧间位姿以及恢复出的特征点深度均不包含尺度信息,那么最终得到的SLAM地图也只能确定摄像头相对位置变化准确,并不能反映真实的地理环境。
而在本发明实施例中,车载电子设备可以将车辆定位模块测量出的车辆在至少两个初始帧的拍摄时刻之间的移动距离确定为单目视觉SLAM初始化时摄像头的平移量。同时,由于车辆在初始帧之间的实际移动距离已知,在利用三角测量原理定位特征点的三维空间位置时,可以恢复出包含真实尺度的特征点深度信息。
103、如果初始化成功,车载电子设备根据车辆的实际移动距离为和真实环境图像序列构建SLAM地图。
本发明实施例中,在车辆不断行驶的过程中,单目摄像头会连续排序多帧图像,拍摄得到的多帧图像组成车辆当前所处的真实环境图像序列;
当上述的单目视觉SLAM初始化包含的各个步骤执行完成,构建出初始SLAM地图之后,可以认为单目视觉SLAM初始化完成。然而,由于特征点匹配错误、求解出的摄像头初始位姿精度较低等原因都可能导致步骤102所描述的单目视觉SLAM初始化失败,那么重新执行步骤102,直至初始化成功。当初始化成功之后,在真实环境图像序列中进行特征点跟踪,可以确定出真实环境图像序列中每帧图像对应的单目摄像头的位姿,这些单目摄像头的位姿组合成为单目摄像头的位姿序列。
同时,以车辆的移动距离为单位尺度b,结合单目摄像头的焦距f以及特征点在两帧图像中的图像位置变化(即视差)即可恢复出任意一个特征点的深度信息。具体可以为:d=b*f/p。利用特征点的深度信息结合对应的单目摄像头的位姿,即可确定特征点的三维空间位置。
不断将每帧图像对应的单目摄像头的位姿以及基于该帧图像恢复出的特征点的三维空间位置加入至初始SLAM地图中,即可构建出车辆行驶过程中途径区域的SLAM地图。
可见,最终构建出的SLAM地图包含了单目摄像头位姿以及特征点三维空间位置之间的对应关系,该对应关系以真实环境图像序列中的图像为约束,当单目摄像头位于某一位姿拍摄某一特征点时,得到的图像为真实环境图像序列中的某一帧图像。也就是说,SLAM地图包括单目摄像头的位姿序列,以及真实环境图像序列中各个图像包含的特征点的三维空间位置。
104、在重定位时,车载电子设备根据特征点在单目摄像头拍摄到的目标图像中的图像位置以及特征点在SLAM地图中的三维空间位置,确定单目摄像头在SLAM地图中的重定位位姿。
本发明实施例中,当车辆再次驶入上述的真实环境,或者在车辆定位过程中发生特征点跟踪丢失的情况,都可以触发重定位,以再次确定单目摄像头在SLAM地图中的位置。由于已经构建出真实环境的SLAM地图,因此,只需要对目标图像中二维的特征点与SLAM地图中三维的特征点进行匹配,在匹配成功之后,根据SLAM地图中包含的特征点与单目摄像头位姿之间的对应关系,即可确定出单目摄像头在SLAM地图中的重定位位姿。
105、车载电子设备根据单目摄像头在SLAM地图中的重定位位姿确定车辆在SLAM地图中的重定位位姿。
本发明实施例中,根据预先标定的单目摄像头坐标系(以单目摄像头的装设位置为坐标原点)与车辆坐标系之间的转换关系,结合单目摄像头在SLAM地图中的重定位位姿,即可确定出车辆在SLAM地图中的重定位位姿,即确定车辆在SLAM地图中的位姿,完成车辆在SLAM地图中的定位。
可见,在本发明实施例中,在单目视觉SLAM初始化时,以初始帧的拍摄时刻之间车辆的为单目视觉SLAM加入尺度信息,使得构建出的SLAM地图为真实环境的实际反映。因此,最终确定出的车辆在SLAM地图中的重定位位姿也是车辆在真实环境中定位位置的实际反映,不存在比例关系。综上,实施本发明实施例,可以提高车辆定位的精度。
实施例二
请参阅图2,图2是本发明实施例公开的另一种基于单目视觉SLAM的车辆定位方法的流程示意图。如图2所示,该基于单目视觉SLAM的车辆定位方法可以包括以下步骤:
201、车载电子设备从车辆的单目摄像头拍摄到的真实环境图像序列中确定出至少两个初始帧,并获取在至少两个初始帧的拍摄时刻之间车辆的实际移动距离。
202、车载电子设备根据拍摄到的特征点在图像中的位置确定真实环境图像序列中每个图像帧对应的单目摄像头的估计位姿,并以车辆的实际移动距离为单位尺度恢复图像帧包含的特征点相对于估计位姿的深度信息,以得到特征点的三维空间位置。
本发明实施例中,针对真实环境图像序列中的每个图像帧(包括用于初始化的初始帧)执行步骤202,可以得到与该图像帧对应的单目摄像头的位姿作为单目摄像头的估计位姿,以及通过该图像帧恢复出的特征点的三维空间位置。
203、车载电子设备通过各个图像帧对应的单目摄像头的估计位姿构建单目摄像头的运动轨迹估计位姿序列,并通过车辆的定位模块获取与单目摄像头的估计位姿序列相对应的车辆的第一位姿序列。
本发明实施例中,可以通过车辆的定位模块测量单目摄像头拍摄图像的同一时刻车辆的位姿,从而得到与单目摄像头的估计位姿序列相对应的车辆的第一位姿序列。
204、车载电子设备迭代调整单目摄像头的估计位姿序列中各个估计位姿的取值、特征点的三维空间位置的取值以及单位尺度的取值,直至单目摄像头的估计位姿序列与车辆的第一位姿序列之间的第一投影误差最小。
本发明实施例中,如果单目视觉SLAM确定出的单目摄像头的位姿准确,那么将车辆的定位模块测量到的车辆位姿投影到单目摄像头坐标系之后得到的投影位姿与单目视觉SLAM确定出的单目摄像头位姿之间的误差较小。在迭代调整的过程中,估计位姿的取值、特征点的三维空间位置的取值以及单位尺度的取值应该满足联合优化(BundleAdjustment)所需的约束条件。
205、车载电子设备利用第一投影误差最小时,单目摄像头的估计位姿序列中各个估计位姿的取值、特征点的三维空间位置的取值以及单位尺度的取值构建SLAM地图。
本发明实施例中,步骤204~步骤205为联合优化的过程,即通过迭代调整单目摄像头的位姿、特征点的三维空间位置(即特征点的深度)和单位尺度,以最小化重投影误差的过程,提高构建出的SLAM地图的精度。也就是说,本发明实施例除了在初始化时结合车辆的实际移动距离进行SLAM初始化,而且还在后续以车辆实际移动距离来不断优化单目SLAM地图的尺度,不断提高SLAM地图的精度。
206、在重定位时,车载电子设备获取单目摄像头拍摄到的多帧目标图像。
207、针对上述多帧目标图像中的每帧目标图像,车载电子设备匹配特征点在该帧目标图像中的图像位置以及特征点在SLAM地图中的三维空间位置,以确定与该帧目标图像对应的单目摄像头在SLAM地图中的估计重定位位姿。
本发明实施例中,由于SLAM地图中包含特征点的三维空间位置,对SLAM地图中的特征点与目标图像中的特征点进行匹配,即可确定出每帧目标图像对应的单目摄像头位姿作为单目摄像头在SLAM地图中的估计重定位位姿。但是,为了提高重定位精度,本发明实施例进行多帧联合重定位。
208、车载电子设备根据各帧目标图像对应的单目摄像头在SLAM地图中的估计重定位位姿,得到单目摄像头的估计重定位位姿序列。
本发明实施例中,可以理解的是,单目摄像头的估计重定位位姿序列位于SLAM地图坐标系下。单目视觉SLAM构建SLAM图时,一般可以选择采用初始化时得到的单目摄像头位姿作为SLAM地图坐标系的原点。
209、车载电子设备通过车辆的定位模块获取与估计重定位位姿序列对应的车辆的第二位姿序列。
本发明实施例中,车载电子设备可以通过车辆的定位模块获取与每帧目标图像对应的车辆位姿,从而可以获取到与估计重定位位姿序列对应的车辆的第二位姿序列。可以理解的是,测量得出的第二位姿序列处于车辆坐标系下,车辆坐标系可以采用车辆后轴的中心点为坐标原点。
210、车载电子设备基于多帧目标图像以及估计重定位位姿序列确定单目摄像头在SLAM地图中的重定位位姿,以使利用单目摄像头的重定位位姿将第二位姿序列转换到SLAM地图的SLAM地图坐标系时,转换得到的第三位姿序列与估计重定位位姿序列的误差最小。
本发明实施例中,估计重定位位姿序列可以看作车辆在重定位时的行驶轨迹,基于目标图像、对应的估计重定位位姿、以及特征点在SLAM地图中的三维空间位置之间的约束关系,不断迭代各个估计重定位位姿的取值,使得利用单目摄像头的重定位位姿将第二位姿序列转换到SLAM地图的SLAM地图坐标系时,转换得到的第三位姿序列与估计重定位位姿序列的误差最小。其中,基于单目摄像头与车辆坐标系原点之间的相对位置关系(该相对位置关系可以预先标定),以及单目摄像头在SLAM地图中的重定位位姿,可以确定出车辆坐标系原点在SLAM地图中的重定位位姿,进而可以将位于车辆坐标系下的第二位姿序列转换至SLAM地图坐标系,得到转换后的第三位姿序列。
此时,作为一种可选的实施方式,可以将误差最小时估计重定位位姿序列中的最后一个估计重定位位姿的取值确定为单目摄像头在SLAM地图中的重定位位姿。重定位的目的为确定重定位时单目摄像头的位姿与SLAM地图坐标系的原点之间的相对关系。如果重定位确定出的上述相对关系准确,利用该相对关系以及单目摄像头坐标系与车辆坐标系之间的转换关系,将车辆坐标系下的第二位姿序列转换到SLAM地图坐标系下时,统一到SLAM地图坐标系下的车辆的第三位姿序列与估计重定位位姿序列的误差较小。因此,执行上述的步骤206~步骤209,可以通过多帧联合重定位的方式不断优化通过图像确定的单目摄像头重定位位姿(即视觉定位位姿)与车辆的定位模块确定的车身定位位姿之间的转换关系,从而提高单目摄像头重定位的精度。
211、车载电子设备根据单目摄像头在SLAM地图中的重定位位姿确定车辆在SLAM地图中的重定位位姿。
可见,在本发明实施例中,在SLAM建图时,可以通过联合优化的方式进一步地提高构建出的SLAM地图的精度。在重定位时,可以通过多帧联合重定位的方式提高重定位的精度。
实施例三
请参阅图3,图3是本发明实施例公开的又一种基于单目视觉SLAM的车辆定位方法的流程示意图。其中,未图示的步骤301~步骤311与上述的步骤201~步骤211相同,以下内容不再赘述。如图3所示,该基于单目视觉SLAM的车辆定位方法还可以包括以下步骤:
312、车载电子设备根据单目摄像头在SLAM地图中的重定位位姿确定单目摄像头坐标系与SLAM地图坐标系之间的第一转换关系。
本发明实施例中,单目摄像头坐标系为以单目摄像头的光心为坐标系原点的坐标系。在重定位确定出单目摄像头的当前位姿相对于SLAM地图坐标系原点之间的相对关系之后,即可确定出单目摄像头坐标系与SLAM地图坐标系之间的第一转换关系。即根据单目摄像头的当前位姿相对于SLAM地图坐标系原点之间的相对关系,确定单目摄像头的光心相对于SLAM地图坐标系原点之间的相对关系,从而可以确定出上述的第一转换关系。
313、车载电子设备通过车辆的定位模块获取与单目摄像头的重定位位姿对应的车辆的第一位姿。
本发明实施例中,第一位姿位于车辆坐标系下。
314、车载电子设备根据第一转换关系以及预先标定的单目摄像头坐标系与车辆坐标系之间的第二转换关系,将第一位姿转换到SLAM地图坐标系,以得到车辆在SLAM地图中的重定位位姿。
本发明实施例中,以车辆定位模块测量到的第一位姿为基准,将第一位姿转换到SLAM地图坐标系下,作为车辆在SLAM地图中的重定位位姿。在确定出单目摄像头在SLAM地图中的位置之后,即使不通过车辆定位模块获取第一位姿,也可以通过预先标定的摄像头坐标系与车辆坐标系之间的第二转换关系确定出车辆在SLAM地图中的重定位位姿。但是,如果第二转换关系的误差较大,将会严重影响车辆重定位位姿的精度。因此,本发明实施例优先以车辆定位模块的测量数据作为定位结果,以提高车辆的重定位位姿的精度。
315、车载电子设备获取当前时刻车辆的定位模块测量到的车辆的当前位姿。
316、车载电子设备根据当前位姿与第一位姿之间的相对位置关系,以及车辆在SLAM地图中的重定位位姿,确定当前位姿在SLAM地图中的定位位姿作为当前时刻车辆的定位结果。
由于单目视觉SLAM的定位依赖与特征点匹配,一旦摄像头被遮挡或者摄像头拍摄到白墙等特征点较少的图像,单目视觉SLAM将无法进行定位。因此,在本发明实施例中,车载电子设备在重定位成功(即确定出车辆在SLAM地图中的重定位位姿)之后,以车辆的定位模块测量到的车辆的当前位姿为准,将当前位姿转换到SLAM地图中,作为最终的定位结果,从而可以降低车辆定位对视觉信息的依赖程度,提高车辆定位成功的概率,大幅度摆脱了视觉定位过程的不稳定因素,提高了系统在视觉遮挡或视觉特征丢失等情况下的稳定性。
可见,实施本发明实施例,在重定位车辆在SLAM地图中的位姿时,以车辆的定位模块测量到的位姿为准,以减少摄像头坐标系与车辆坐标系之间的转换关系标定误差对重定位精度的影响。进一步地,当车辆在SLAM地图中重定位成功之后,将车辆的定位模块测量到的当前位姿转换到SLAM地图中,以得到车辆的定位结果,可以降低车辆定位对视觉信息的依赖程度,提高车辆定位成功的概率。
实施例四
请参阅图4,图4是本发明实施例公开的一种基于单目视觉SLAM的车辆定位系统的结构示意图。如图4所示,该系统包括:
第一获取单元401,用于从车辆的单目摄像头拍摄到的真实环境图像序列中确定出至少两个初始帧,并通过车辆的定位模块获取在至少两个初始帧的拍摄时刻之间车辆的实际移动距离;
本发明实施例中,车辆的定位模块可以为车身里程计,包括IMU、轮脉冲计数器等传感器;
初始化单元402,用于结合第一获取单元401获取到的车辆的实际移动距离和至少两个初始帧进行单目视觉SLAM初始化。
本发明实施例中,具体可以将车辆的实际移动距离作为初始化时摄像头的平移量t。
建图单元403,用于在初始化单元402初始化成功时,根据车辆的实际移动距离和真实环境图像序列构建SLAM地图;SLAM地图包括单目摄像头的运动轨迹,以及真实环境图像序列中各个图像包含的特征点的三维空间位置;
本发明实施例中,当初始化成功之后,在真实环境图像序列中进行特征点跟踪,可以确定出真实环境图像序列中每帧图像对应的单目摄像头的位姿;以车辆的移动距离为单位尺度b,结合单目摄像头的焦距f以及特征点在两帧图像中的图像位置变化(即视差)即可恢复出任意一个特征点的深度信息。利用特征点的深度信息结合对应的单目摄像头的位姿,即可确定特征点的三维空间位置;
视觉重定位单元404,用于在重定位时,根据特征点在单目摄像头拍摄到的目标图像中的图像位置以及特征点在SLAM地图中的三维空间位置确定单目摄像头在SLAM地图中的重定位位姿;
本发明实施例中,当车辆再次驶入上述的真实环境,或者在车辆定位过程中发生特征点跟踪丢失的情况时,均可以触发重定位,以再次确定单目摄像头在SLAM地图中的位置;
车辆重定位单元405,用于根据单目摄像头在SLAM地图中的重定位位姿确定车辆在SLAM地图中的重定位位姿。
实施如图4所示的基于单目视觉SLAM的车辆定位系统,可以利用车辆定位模块测量得出的车辆的移动距离作为初始化时的尺度信息,从而使得构建出的SLAM地图为真实环境的实际反映,进一步地使得通过SLAM地图确定出的车辆重定位位姿也是车辆在真实环境中定位位置的实际反映,从而提高车辆定位的精度。
实施例五
请参阅图5,图5是本发明实施例公开的另一种基于单目视觉SLAM的车辆定位系统的结构示意图。其中,图5所示的基于单目视觉SLAM的车辆定位系统是由图4所示的基于单目视觉SLAM的车辆定位系统进行优化得到的。如图5所示,在该系统中,上述的建图单元403,可以包括:
第一确定子单元4031,用于在初始化成功时,根据拍摄到的特征点在图像中的位置确定真实环境图像序列中每个图像帧对应的单目摄像头的估计位姿,并以车辆的实际移动距离为单位尺度恢复图像帧包含的特征点相对于估计位姿的深度信息,以得到特征点的三维空间位置;其中,上述的图像帧包含初始帧;
第一获取子单元4032,用于通过各个图像帧对应的单目摄像头的估计位姿构建单目摄像头的估计位姿序列,并通过车辆的定位模块获取与单目摄像头的估计位姿序列相对应的车辆的第一位姿序列;
调整子单元4033,用于迭代调整估计位姿序列中各个估计位姿的取值、特征点的三维空间位置的取值以及单位尺度的取值,直至单目摄像头的估计位姿序列与车辆的第一位姿序列之间的第一投影误差最小;
构建子单元4034,用于利用第一投影误差最小时,单目摄像头的估计位姿序列中各个估计位姿的取值、特征点的三维空间位置的取值以及单位尺度的取值构建SLAM地图。
上述的第一确定子单元4031、第一获取子单元4032、调整子单元4033以及构建子单元4034执行上述的操作,可以通过联合优化的方式最小化重投影误差,以提高构建出的SLAM地图的精度。
可选的,上述的视觉重定位单元404,可以包括:
第二获取子单元4041,用于在重定位时,获取单目摄像头拍摄到的多帧目标图像;
第二确定子单元4042,用于针对上述多帧目标图像中的每帧目标图像,匹配特征点在该帧目标图像中的图像位置以及特征点在SLAM地图中的三维空间位置,以确定与该帧目标图像对应的单目摄像头在SLAM地图中的估计重定位位姿,得到单目摄像头的估计重定位位姿序列;其中,估计重定位位姿序列中包含各帧目标图像对应的单目摄像头在SLAM地图中的估计重定位位姿;
第三获取子单元4043,用于通过车辆的定位模块获取与估计重定位位姿序列对应的车辆的第二位姿序列;
第三确定子单元4044,用于基于多帧目标图像以及估计重定位位姿序列确定单目摄像头在SLAM地图中的重定位位姿,以使利用单目摄像头的重定位位姿将第二位姿序列转换到SLAM地图的SLAM地图坐标系时,转换得到的第三位姿序列与估计重定位位姿序列的误差最小。
上述的第二获取子单元4041、第二确定子单元4042、第二确定子单元4042、第三确定子单元4044执行上述的操作,可以通过多帧联合重定位的方式提高单目摄像头重定位的精度。
可见,实施图5所示的基于单目视觉SLAM的车辆定位系统,可以利用车辆的定位模块测量出的车辆移动距离对单目视觉SLAM进行尺度化,还可以通过联合优化的方式提高构建出的SLAM地图的精度;进一步地,还可以通过多帧联合重定位的方式提高重定位的精度。
实施例六
请参阅图6,图6是本发明实施例公开的又一种基于单目视觉SLAM的车辆定位系统的结构示意图。其中,图6所示的基于单目视觉SLAM的车辆定位系统是由图5所示的基于单目视觉SLAM的车辆定位系统进行优化得到的。如图6所示,在该系统中,上述的车辆重定位单元405,可以包括:
第四确定子单元4051,用于根据单目摄像头在SLAM地图中的重定位位姿确定以单目摄像头为坐标原点的单目摄像头坐标系与SLAM地图坐标系之间的第一转换关系;
第四获取子单元4052,用于通过车辆的定位模块获取与单目摄像头的重定位位姿对应的车辆的第一位姿;
转换子单元4053,用于根据第一转换关系以及预先标定的单目摄像头坐标系与车辆坐标系之间的第二转换关系,将第一位姿转换到SLAM地图坐标系,以得到车辆在SLAM地图中的重定位位姿。
进一步地,图6所示的系统还可以包括:
第二获取单元406,用于在车辆重定位单元405根据单目摄像头在所述SLAM地图中的重定位位姿确定车辆在SLAM地图中的重定位位姿之后,获取当前时刻车辆的定位模块测量到的车辆的当前位姿;
定位单元407,用于根据当前位姿与第一位姿之间的相对位置关系,以及车辆在SLAM地图中的重定位位姿,确定当前位姿在SLAM地图中的定位位姿作为当前时刻车辆的定位结果。
实施如图6所示的基于单目视觉SLAM的车辆定位系统,可以在重定位车辆在SLAM地图中的位姿时,以车辆的定位模块测量到的位姿为准,以减少摄像头坐标系与车辆坐标系之间的转换关系标定误差对重定位精度的影响;还可以当车辆在SLAM地图中重定位成功之后,将车辆的定位模块测量到的当前位姿转换到SLAM地图中,作为车辆的定位结果,从而可以降低车辆定位对视觉信息的依赖程度,提高车辆定位成功的概率。
实施例七
请参阅图7,图7是本发明实施例公开的再一种基于单目视觉SLAM的车辆定位系统的结构示意图。如图7所示,该系统可以包括:
存储有可执行程序代码的存储器701;
与存储器701耦合的处理器702;
单目摄像头703;
车辆定位模块704;
其中,单目摄像头703拍摄得到的图像以及车辆定位模块704检测到的车辆移动距离传输至处理器702,处理器702调用存储器701中存储的可执行程序代码,执行图1~图3所示的任一种基于单目视觉SLAM的车辆定位方法。
本发明实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序使得计算机执行图1~图3所示的任一种基于单目视觉SLAM的车辆定位方法。
本发明实施例公开一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,且该计算机程序可操作来使计算机执行图1~图3所示的任一种基于单目视觉SLAM的车辆定位方法。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定特征、结构或特性可以以任意适合的方式结合在一个或多个实施例中。本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在本发明的各种实施例中,应理解,上述各过程的序号的大小并不意味着执行顺序的必然先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物单元,即可位于一个地方,或者也可以分布到多个网络单元上。可根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可获取的存储器中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或者部分,可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干请求用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本发明的各个实施例上述方法的部分或全部步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上对本发明实施例公开的一种基于单目视觉SLAM的车辆定位方法及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种基于单目视觉SLAM的车辆定位方法,其特征在于,包括:
从车辆的单目摄像头拍摄到的真实环境图像序列中确定出至少两个初始帧,并通过车辆的定位模块获取在所述至少两个初始帧的拍摄时刻之间所述车辆的实际移动距离;
结合所述车辆的实际移动距离和所述至少两个初始帧进行单目视觉SLAM初始化;
根据拍摄到的特征点在图像中的位置确定所述真实环境图像序列中每个图像帧对应的所述单目摄像头的估计位姿,并以所述车辆的实际移动距离为单位尺度恢复所述图像帧包含的特征点相对于所述估计位姿的深度信息,以得到所述特征点的三维空间位置;所述图像帧包括所述初始帧;
通过各个所述图像帧对应的所述单目摄像头的估计位姿构建所述单目摄像头的估计位姿序列,并通过所述车辆的定位模块获取与所述单目摄像头的估计位姿序列相对应的所述车辆的第一位姿序列;
迭代调整所述估计位姿序列中各个所述估计位姿的取值、所述特征点的三维空间位置的取值以及所述单位尺度的取值,直至所述单目摄像头的估计位姿序列与所述第一位姿序列之间的第一投影误差最小;
利用所述第一投影误差最小时,所述单目摄像头的估计位姿序列中各个所述估计位姿的取值、所述特征点的三维空间位置的取值以及所述单位尺度的取值构建SLAM地图;
在重定位时,根据特征点在所述单目摄像头拍摄到的目标图像中的图像位置以及特征点在所述SLAM地图中的三维空间位置确定所述单目摄像头在所述SLAM地图中的重定位位姿;
根据所述单目摄像头在所述SLAM地图中的重定位位姿确定所述车辆在所述SLAM地图中的重定位位姿。
2.根据权利要求1所述的基于单目视觉SLAM的车辆定位方法,其特征在于,所述在重定位时,根据特征点在所述单目摄像头拍摄到的目标图像中的图像位置以及特征点在所述SLAM地图中的三维空间位置,确定所述单目摄像头在所述SLAM地图中的重定位位姿,包括:
在重定位时,获取所述单目摄像头拍摄到的多帧目标图像;
针对所述多帧目标图像中的每帧目标图像,匹配所述特征点在该帧目标图像中的图像位置以及所述特征点在所述SLAM地图中的三维空间位置,以确定与该帧目标图像对应的所述单目摄像头在所述SLAM地图中的估计重定位位姿,得到所述单目摄像头的估计重定位位姿序列;所述估计重定位位姿序列中包含各帧所述目标图像对应的所述单目摄像头在所述SLAM地图中的估计重定位位姿;
通过所述车辆的定位模块获取与所述估计重定位位姿序列对应的所述车辆的第二位姿序列;
基于多帧目标图像以及所述估计重定位位姿序列确定所述单目摄像头在所述SLAM地图中的重定位位姿,以使利用所述单目摄像头的所述重定位位姿将所述第二位姿序列转换到所述SLAM地图的SLAM地图坐标系时,转换得到的第三位姿序列与所述估计重定位位姿序列的误差最小。
3.根据权利要求2所述的基于单目视觉SLAM的车辆定位方法,其特征在于,所述根据所述单目摄像头在所述SLAM地图中的重定位位姿确定所述车辆在所述SLAM地图中的重定位位姿,包括:
根据所述单目摄像头在所述SLAM地图中的重定位位姿确定单目摄像头坐标系与所述SLAM地图坐标系之间的第一转换关系;
通过所述车辆的定位模块获取与所述单目摄像头的所述重定位位姿对应的所述车辆的第一位姿;
根据所述第一转换关系以及预先标定的所述单目摄像头坐标系与车辆坐标系之间的第二转换关系,将所述第一位姿转换到所述SLAM地图坐标系,以得到所述车辆在所述SLAM地图中的重定位位姿。
4.根据权利要求3所述的方法,其特征在于,在所述根据所述单目摄像头在所述SLAM地图中的重定位位姿确定所述车辆在所述SLAM地图中的重定位位姿之后,所述方法还包括:
获取当前时刻所述车辆的定位模块测量到的所述车辆的当前位姿;
根据所述当前位姿与所述第一位姿之间的相对位置关系,以及所述车辆在所述SLAM地图中的重定位位姿,确定所述当前位姿在所述SLAM地图中的定位位姿作为当前时刻所述车辆的定位结果。
5.一种基于单目视觉SLAM的车辆定位系统,其特征在于,包括:
第一获取单元,用于从车辆的单目摄像头拍摄到的真实环境图像序列中确定出至少两个初始帧,并通过所述车辆的定位模块获取在所述至少两个初始帧的拍摄时刻之间所述车辆的实际移动距离;
初始化单元,用于结合所述车辆的实际移动距离和所述至少两个初始帧进行单目视觉SLAM初始化;
建图单元,用于在初始化成功时,根据所述车辆的实际移动距离和所述真实环境图像序列构建SLAM地图;
视觉重定位单元,用于在重定位时 ,根据特征点在所述单目摄像头拍摄到的目标图像中的图像位置以及特征点在所述SLAM地图中的三维空间位置确定所述单目摄像头在所述SLAM地图中的重定位位姿;
车辆重定位单元,用于根据所述单目摄像头在所述SLAM地图中的重定位位姿确定所述车辆在所述SLAM地图中的重定位位姿;
其中,所述建图单元,包括:
第一确定子单元,用于在初始化成功时,根据拍摄到的特征点在图像中的位置确定所述真实环境图像序列中每个图像帧对应的所述单目摄像头的估计位姿,并以所述车辆的实际移动距离为单位尺度恢复所述图像帧包含的特征点相对于所述估计位姿的深度信息,以得到所述特征点的三维空间位置;所述图像帧包括所述初始帧;
第一获取子单元,用于通过各个所述图像帧对应的所述单目摄像头的估计位姿构建所述单目摄像头的估计位姿序列,并通过所述车辆的定位模块获取与所述单目摄像头的估计位姿序列相对应的所述车辆的第一位姿序列;
调整子单元,用于迭代调整所述估计位姿序列中各个所述估计位姿的取值、所述特征点的三维空间位置的取值以及所述单位尺度的取值,直至所述单目摄像头的估计位姿序列与所述车辆的第一位姿序列之间的第一投影误差最小;
构建子单元,用于利用所述第一投影误差最小时,所述单目摄像头的估计位姿序列中各个所述估计位姿的取值、所述特征点的三维空间位置的取值以及所述单位尺度的取值构建SLAM地图。
6.根据权利要求5所述的基于单目视觉SLAM的车辆定位系统,其特征在于,所述视觉重定位单元,包括:
第二获取子单元,用于在重定位时,获取所述单目摄像头拍摄到的多帧目标图像;
第二确定子单元,用于针对所述多帧目标图像中的每帧目标图像,匹配所述特征点在该帧目标图像中的图像位置以及所述特征点在所述SLAM地图中的三维空间位置,以确定与该帧目标图像对应的所述单目摄像头在所述SLAM地图中的估计重定位位姿得到所述单目摄像头的估计重定位位姿序列;所述估计重定位位姿序列中包含各帧所述目标图像对应的所述单目摄像头在所述SLAM地图中的估计重定位位姿;
第三获取子单元,用于通过所述车辆的定位模块获取与所述估计重定位位姿序列对应的所述车辆的第二位姿序列;
第三确定子单元,用于基于多帧目标图像以及所述估计重定位位姿序列确定所述单目摄像头在所述SLAM地图中的重定位位姿,以使利用所述单目摄像头的所述重定位位姿将所述第二位姿序列转换到所述SLAM地图的SLAM地图坐标系时,转换得到的第三位姿序列与所述估计重定位位姿序列的误差最小。
7.根据权利要求6所述的基于单目视觉SLAM的车辆定位系统,其特征在于,所述车辆重定位单元,包括:
第四确定子单元,用于根据所述单目摄像头在所述SLAM地图中的重定位位姿确定单目摄像头坐标系与所述SLAM地图坐标系之间的第一转换关系;
第四获取子单元,用于通过所述车辆的定位模块获取与所述单目摄像头的所述重定位位姿对应的所述车辆的第一位姿;
转换子单元,用于根据所述第一转换关系以及预先标定的所述单目摄像头坐标系与车辆坐标系之间的第二转换关系,将所述第一位姿转换到所述SLAM地图坐标系,以得到所述车辆在所述SLAM地图中的重定位位姿。
8.根据权利要求7所述的基于单目视觉SLAM的车辆定位系统,其特征在于,还包括:
第二获取单元,用于在所述车辆重定位单元根据所述单目摄像头在所述SLAM地图中的重定位位姿确定所述车辆在所述SLAM地图中的重定位位姿之后,获取当前时刻所述车辆的定位模块测量到的所述车辆的当前位姿;
定位单元,用于根据所述当前位姿与所述第一位姿之间的相对位置关系,以及所述车辆在所述SLAM地图中的重定位位姿,确定所述当前位姿在所述SLAM地图中的定位位姿作为当前时刻所述车辆的定位结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910132886.8A CN109887032B (zh) | 2019-02-22 | 2019-02-22 | 一种基于单目视觉slam的车辆定位方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910132886.8A CN109887032B (zh) | 2019-02-22 | 2019-02-22 | 一种基于单目视觉slam的车辆定位方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109887032A CN109887032A (zh) | 2019-06-14 |
CN109887032B true CN109887032B (zh) | 2021-04-13 |
Family
ID=66928954
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910132886.8A Active CN109887032B (zh) | 2019-02-22 | 2019-02-22 | 一种基于单目视觉slam的车辆定位方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109887032B (zh) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112116654B (zh) * | 2019-06-20 | 2024-06-07 | 杭州海康威视数字技术股份有限公司 | 一种车辆位姿确定方法、装置及电子设备 |
CN112150538B (zh) * | 2019-06-27 | 2024-04-12 | 北京初速度科技有限公司 | 一种在三维地图构建过程中车辆位姿的确定方法和装置 |
CN110310333B (zh) * | 2019-06-27 | 2021-08-31 | Oppo广东移动通信有限公司 | 定位方法及电子设备、可读存储介质 |
CN110207714B (zh) * | 2019-06-28 | 2021-01-19 | 广州小鹏自动驾驶科技有限公司 | 一种确定车辆位姿的方法、车载系统及车辆 |
CN110335317B (zh) * | 2019-07-02 | 2022-03-25 | 百度在线网络技术(北京)有限公司 | 基于终端设备定位的图像处理方法、装置、设备和介质 |
CN112307810B (zh) * | 2019-07-26 | 2023-08-04 | 北京魔门塔科技有限公司 | 一种视觉定位效果自检方法及车载终端 |
CN110648353A (zh) * | 2019-08-30 | 2020-01-03 | 北京影谱科技股份有限公司 | 一种基于单目传感器的机器人室内定位方法和装置 |
DE102019123538A1 (de) * | 2019-09-03 | 2021-03-04 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren und Vorrichtung zur Ermittlung einer Trajektorie eines Fahrzeugs |
CN110617813B (zh) * | 2019-09-26 | 2021-06-08 | 中国科学院电子学研究所 | 单目视觉信息和imu信息相融合的尺度估计系统及方法 |
CN111127584A (zh) * | 2019-11-19 | 2020-05-08 | 奇点汽车研发中心有限公司 | 建立视觉地图的方法和装置、电子设备和存储介质 |
CN111016887A (zh) * | 2019-12-23 | 2020-04-17 | 深圳市豪恩汽车电子装备股份有限公司 | 机动车自动泊车装置及方法 |
CN111442722B (zh) * | 2020-03-26 | 2022-05-17 | 达闼机器人股份有限公司 | 定位方法、装置、存储介质及电子设备 |
CN111624618A (zh) * | 2020-06-09 | 2020-09-04 | 安徽意欧斯物流机器人有限公司 | 融合激光slam和二维码导航的定位方法及搬运平台 |
CN111814634B (zh) * | 2020-06-29 | 2023-09-08 | 北京百度网讯科技有限公司 | 一种实时距离确定方法、装置、设备及介质 |
CN112596691B (zh) * | 2020-09-02 | 2021-10-15 | 禾多科技(北京)有限公司 | 信息推送方法、装置、电子设备和计算机可读介质 |
CN112102406A (zh) * | 2020-09-09 | 2020-12-18 | 东软睿驰汽车技术(沈阳)有限公司 | 单目视觉的尺度修正方法、装置及运载工具 |
CN111928857B (zh) * | 2020-10-14 | 2021-01-05 | 蘑菇车联信息科技有限公司 | 一种动态环境中实现slam定位的方法及相关装置 |
CN111928842B (zh) * | 2020-10-14 | 2021-01-05 | 蘑菇车联信息科技有限公司 | 一种基于单目视觉实现slam定位的方法及相关装置 |
CN112132754B (zh) * | 2020-11-25 | 2021-06-04 | 蘑菇车联信息科技有限公司 | 一种车辆移动轨迹修正方法及相关装置 |
CN113009533A (zh) * | 2021-02-19 | 2021-06-22 | 智道网联科技(北京)有限公司 | 基于视觉slam的车辆定位方法、设备及云服务器 |
CN112819744B (zh) * | 2021-02-26 | 2024-05-14 | 中国人民解放军93114部队 | Gnss和视觉slam融合的轨迹测量方法和装置 |
CN112991436B (zh) * | 2021-03-25 | 2022-09-06 | 中国科学技术大学 | 基于物体尺寸先验信息的单目视觉slam方法 |
CN115147805A (zh) * | 2021-03-31 | 2022-10-04 | 欧特明电子股份有限公司 | 自动泊车建图与定位的系统及其方法 |
CN112907671B (zh) * | 2021-03-31 | 2022-08-02 | 深圳市慧鲤科技有限公司 | 点云数据生成方法、装置、电子设备及存储介质 |
CN113030960B (zh) * | 2021-04-06 | 2023-07-04 | 陕西国防工业职业技术学院 | 一种基于单目视觉slam的车辆定位方法 |
CN113218385B (zh) * | 2021-05-24 | 2022-05-27 | 周口师范学院 | 基于slam的高精度车辆定位方法 |
CN113591720A (zh) * | 2021-08-02 | 2021-11-02 | 广州小鹏自动驾驶科技有限公司 | 车道偏离检测方法、装置及计算机存储介质 |
CN113580134B (zh) * | 2021-08-03 | 2022-11-04 | 亿咖通(湖北)技术有限公司 | 视觉定位方法、设备、机器人、存储介质及程序产品 |
CN114565674B (zh) * | 2022-03-03 | 2023-07-04 | 江苏集萃清联智控科技有限公司 | 自动驾驶车辆城市结构化场景纯视觉定位方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105849771A (zh) * | 2013-12-19 | 2016-08-10 | Metaio有限公司 | 移动设备上的同步定位与映射 |
CN108665496A (zh) * | 2018-03-21 | 2018-10-16 | 浙江大学 | 一种基于深度学习的端到端的语义即时定位与建图方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103154666B (zh) * | 2011-06-14 | 2015-03-18 | 日产自动车株式会社 | 距离测量装置以及环境地图生成装置 |
US20150316387A1 (en) * | 2014-04-30 | 2015-11-05 | Toyota Motor Engineering & Manufacturing North America, Inc. | Detailed map format for autonomous driving |
CN106127739B (zh) * | 2016-06-16 | 2021-04-27 | 华东交通大学 | 一种结合单目视觉的rgb-d slam方法 |
CN106272423A (zh) * | 2016-08-31 | 2017-01-04 | 哈尔滨工业大学深圳研究生院 | 一种针对大尺度环境的多机器人协同制图与定位的方法 |
CN107990899B (zh) * | 2017-11-22 | 2020-06-30 | 驭势科技(北京)有限公司 | 一种基于slam的定位方法和系统 |
-
2019
- 2019-02-22 CN CN201910132886.8A patent/CN109887032B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105849771A (zh) * | 2013-12-19 | 2016-08-10 | Metaio有限公司 | 移动设备上的同步定位与映射 |
CN108665496A (zh) * | 2018-03-21 | 2018-10-16 | 浙江大学 | 一种基于深度学习的端到端的语义即时定位与建图方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109887032A (zh) | 2019-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109887032B (zh) | 一种基于单目视觉slam的车辆定位方法及系统 | |
CN109887087B (zh) | 一种车辆的slam建图方法及系统 | |
CN107990899B (zh) | 一种基于slam的定位方法和系统 | |
CN109767475B (zh) | 一种传感器的外部参数标定方法及系统 | |
CN109887053B (zh) | 一种slam地图拼接方法及系统 | |
CN110207714B (zh) | 一种确定车辆位姿的方法、车载系统及车辆 | |
CN106780601B (zh) | 一种空间位置追踪方法、装置及智能设备 | |
CN109613543B (zh) | 激光点云数据的修正方法、装置、存储介质和电子设备 | |
US20180313940A1 (en) | Calibration of laser and vision sensors | |
CN110880189B (zh) | 联合标定方法及其联合标定装置和电子设备 | |
CN107167826B (zh) | 一种自动驾驶中基于可变网格的图像特征检测的车辆纵向定位系统及方法 | |
US20160161260A1 (en) | Method for processing feature measurements in vision-aided inertial navigation | |
CN107316319B (zh) | 一种刚体追踪的方法、装置和系统 | |
WO2020133172A1 (zh) | 图像处理方法、设备及计算机可读存储介质 | |
CN113625288A (zh) | 基于点云配准的相机与激光雷达位姿标定方法和装置 | |
CN110610520B (zh) | 一种基于双球幕相机的视觉定位方法及系统 | |
KR20200095379A (ko) | 자체적으로 생성된 정보 및 다른 개체에 의해 생성된 정보를 선택적으로 사용하여 카메라의 오정렬을 보정하는 방법 및 이를 이용한 장치 | |
CN113052897A (zh) | 定位初始化方法和相关装置、设备、存储介质 | |
CN114638897B (zh) | 基于无重叠视域的多相机系统的初始化方法、系统及装置 | |
CN110428461B (zh) | 结合深度学习的单目slam方法及装置 | |
CN117250956A (zh) | 一种多观测源融合的移动机器人避障方法和避障装置 | |
CN111089579A (zh) | 异构双目slam方法、装置及电子设备 | |
US10891805B2 (en) | 3D model establishing device and calibration method applying to the same | |
KR102225321B1 (ko) | 복수 영상 센서로부터 취득한 영상 정보와 위치 정보 간 연계를 통한 도로 공간 정보 구축을 위한 시스템 및 방법 | |
CN112001970A (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 |