CN111791235A - 一种机器人多相机视觉惯性点线特征定位方法及装置 - Google Patents
一种机器人多相机视觉惯性点线特征定位方法及装置 Download PDFInfo
- Publication number
- CN111791235A CN111791235A CN202010690204.8A CN202010690204A CN111791235A CN 111791235 A CN111791235 A CN 111791235A CN 202010690204 A CN202010690204 A CN 202010690204A CN 111791235 A CN111791235 A CN 111791235A
- Authority
- CN
- China
- Prior art keywords
- dimensional
- coordinate system
- robot
- camera
- point
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 230000000007 visual effect Effects 0.000 title claims abstract description 41
- 238000005259 measurement Methods 0.000 claims abstract description 53
- 238000013519 translation Methods 0.000 claims abstract description 42
- 230000001133 acceleration Effects 0.000 claims description 26
- 239000011159 matrix material Substances 0.000 claims description 24
- 230000005484 gravity Effects 0.000 claims description 22
- 230000009466 transformation Effects 0.000 claims description 18
- 238000001514 detection method Methods 0.000 claims description 16
- 238000004422 calculation algorithm Methods 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 15
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 230000017105 transposition Effects 0.000 claims description 3
- 230000004807 localization Effects 0.000 claims 2
- 238000007689 inspection Methods 0.000 abstract description 3
- 238000004519 manufacturing process Methods 0.000 abstract description 2
- 238000012544 monitoring process Methods 0.000 abstract description 2
- 230000006872 improvement Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000007547 defect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005286 illumination Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 239000002253 acid Substances 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- 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/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种机器人多相机视觉惯性点线特征定位方法及装置,获取当前场景的先验三维地图,地图是事先构建的;获取机器人的当前图像和惯性传感器的测量数据;根据当前图像中检测到的二维点线特征与所述先验三维地图中的三维点线特征进行匹配;根据所述匹配到的两对二维到三维点特征或者一对点特征加一对线特征计算当前机器人位姿的偏航角和平移。目前移动机器人的主要使用领域在仓储物流、巡检监控等,他们对于机器人的要求是能够在一个相对固定的环境内实现长期稳定的运行,且能实现精确的自定位。视觉传感器生产成本低,获取信息量大,相关定位方法受到广泛的研究与应用。
Description
技术领域
本发明涉及机器人定位技术,具体地说,涉及一种机器人多相机视觉惯性点线特征定位方法及装置。
背景技术
随着移动机器人技术的发展,移动机器人执行任务的种类越来越多,与人类生活的联系也越来越密切。目前,移动机器人的应用范围包括物流搬运、快递配送、清洁、巡检以及无人驾驶等等,极大地推动了这些行业的变革和无人化进程。能够实现高精度且长期稳定的自定位是自主移动机器人完成任务的前提。
视觉定位技术相对于距离传感器虽然成熟度较低,但相机为人机交互提供直观环境信息,是不可缺少的传感器单元;相机的成本很低,多个相机的成本也要低于单个激光,且轻量易集成;相机视野虽窄,但分辨率很高,能够充分描述环境的表观信息,可提供较好的特征提取和描述。
传统基于特征点匹配进行相机基础矩阵估计的视觉定位方法容易受到视角变化、动态遮挡、环境光照以及气候变化等问题的影响,造成特征点难以重复检测以及检测到的特征点错误匹配率高等问题。而线特征相比于点特征是一种更高级的语义特征,具有更稳定的检测效果,即使在部分遮挡的情况下也能检测出部分线段,可以很大程度上弥补点特征的不足。多目相机利用多个视角(重叠或非重叠)的信息提供一个更广阔的视野,可以很大程度上解决遮挡问题。另外惯性传感器与视觉的融合也能够为相机位姿的估计问题降低求解维度,从而减少估计相机基础矩阵所需的匹配特征数量,因而有效提高容错率,增强算法鲁棒性。
发明内容
为了克服现有技术的不足,本发明的目的在于提供一种机器人多相机视觉惯性点线特征定位方法及装置,定位时同时利用环境中的点特征和线特征,最大化利用了视觉提供的信息,应用场景更加广泛;线特征相比于点特征是一种更高级的语义信息,尤其在工厂等视觉点特征不那么丰富的人造环境中,线特征的优势更为明显。多相机的使用可以增大观测的视野从而解决遮挡问题,同时与惯性传感器的结合降低了相机位姿求解问题的维度,减少了模型估计所需的匹配数量,从而即使在视觉提供的信息存在大量误匹配的情况下也能得到准确的定位结果,有效提高容错率,大大提升鲁棒性。本发明的算法使得以上优势可以同时融入到机器人视觉定位的框架中,以发挥最大优势提升定位性能。本发明是通过以下技术方案来实现的:
本发明公开了一种机器人多相机视觉惯性点线特征定位方法,包括以下步骤:
获取当前场景的先验三维地图和惯性传感器的测量数据,先验三维地图是由任意数量的相机、惯性传感器事先构建的,且包含三维点线特征;
获取机器人的当前多相机图像和惯性传感器的测量数据;
根据当前机器人的惯性传感器的测量数据与先验三维地图中的惯性传感器的测量数据计算当前机器人位姿的俯仰角和翻滚角;对机器人当前多相机图像进行二维点线特征的检测,并将当前多相机图像中测量到的二维点线特征与先验三维地图中测量到的三维点线特征进行匹配;
根据所述匹配到的多相机图像中两对二维到三维点特征或者一对二维到三维匹配的点特征加一对二维到三维匹配的线特征计算当前机器人位姿的其余未知量,包括偏航角和平移。
该步中的位姿估计算法的设计使得第一步获取地图中的点线特征均可以用于机器人位姿的计算,从而最大化了可用的视觉特征。同时该算法利用第二步和第三步得到的俯仰角,翻滚角以及匹配到的特征作为输入,实现了仅用两对匹配特征(两点或者一对点一线)就能完成机器人位姿的计算,最小化了位姿计算所需特征。更重要的是,该算法适用于多相机模型,从而扩大了机器人的视野,使得其他相机观测到的特征也能用于当前机器人位姿的估计,比单相机位姿估计算法更加鲁棒。因此,该步算法融合了点线特征,惯性测量单元以及多相机系统的优势,最大化了视觉定位的鲁棒性。
作为进一步地改进,本发明所述的先验三维地图:
包含重力加速度在所述地图坐标系下的测量数据,由惯性传感器测量所得;
包含三维点线特征。
作为进一步地改进,本发明所述机器人在当前图像中惯性传感器的测量数据为重力加速度在当前图像机器人坐标系下的测量值;先验三维地图中的惯性传感器的测量数据为重力加速度在先验三维地图坐标系下的测量值;将重力加速度在两个坐标系下的测量值进行对齐,从而得到当前机器人坐标系相对于先验三维地图坐标系的俯仰角和翻滚角,具体根据以下算式进行计算:
其中[xw yw zw]T为重力加速度在先验三维地图坐标系下的测量值,[xc yc zc]T为重力坐标系在当前图像机器人坐标系下的测量值,右上角的T代表向量或矩阵的转置,β,γ分别为所求的当前图像机器人坐标系相对于先验三维地图坐标系的俯仰角和翻滚角。
作为进一步地改进,本发明根据当前多相机图像测量到的二维点线特征和先验三维地图中的三维点线特征进行二维到三维的点线特征的匹配,具体包括以下子步骤:
根据机器人获取的当前多相机图像分别检测多个二维特征点
根据机器人获取的当前多相机图像分别检测多条二维线段。
作为进一步地改进,本发明所述二维特征点的检测方法为ORB,SIFT,LBP或HOG特征点检测算法;二维线段的检测方法为LBD,Edline或Hough直线检测。
作为进一步地改进,本发明根据当前多相机图像的二维点线特征和先验三维地图中的三维点线特征进行匹配,表现为计算相应描述子的欧式距离;该距离小于预设阈值范围的特征则认为匹配成功,由此迭代获取多对二维与三维的匹配点线特征。
作为进一步地改进,本发明根据匹配到的来自不同相机的一对二维到三维匹配的点特征加一对二维到三维匹配的线特征计算地图相对于当前机器人坐标系的位姿的偏航角和平移,具体包括以下子步骤:
根据地图坐标系{W0}中匹配到的一个三维点P1 0和一条三维线段引入一个世界中间坐标系{W1},其中三维点在所述世界中间坐标系下表示为P1=(0 0 0)T,{W0}到{W1}的变换则表示为P1 0→P1的简单平移,易得三维线段的端点在所述世界中间坐标系下表示为L2=(X2 Y2 Z2)T,L3=(X3 Y3 Z3)T,同时引入观测到点特征和线特征的相机中间坐标系分别表示为{Cp1}、{Cl1};
根据在{Cp}坐标系,相机中心是原点,检测到的图像二维点是在{Cp1}中间坐标系,相机中心Cp是[0 0 -1]T,相对位姿是将转到Cp的平移,借助可以计算在{Cp1}下的图像二维点D1,在{Cl}坐标系,相机中心是原点,检测到的二维线段的两个端点是和同样的,计算在{Cl1}下的线段的两个端点D2和D3。
其中TAB是4×4矩阵,代表坐标系{B}相对于坐标系{A}的相对位姿,如表示坐标系{W1}相对于坐标系{Cl1}的相对位姿,根据投影几何可得三点(Cp,D1,RpP1+tp)共线,四点(Cl,D2,D3,RlL2+tl)以及(Cl,D2,D3,RlL3+tl)共面,其中Rp为{W1}相对于{Cp1}的旋转变换矩阵,tp为{W1}相对于{Cp1}的平移变换向量,Rl为{W1}相对于{Cl1}的旋转变换矩阵,tl为{W1}相对于{Cl1}的平移变换向量;
根据三点(Cp,D1,RpP1+tp)共线,可得方程:
(D2×D3)T(RlL2+tl)=0
其中运算符×为向量的叉乘。根据四点(Cl,D2,D3,RlL3+tl)共面,可得方程:
(D2×D3)T(RlL3+tl)=0
联立以上所得的方程即可求得未知的偏航角和平移,从而求得机器人在地图中的当前位姿。
作为进一步地改进,本发明根据匹配到的来自不同相机的两对二维到三维匹配的点特征计算地图相对于当前机器人坐标系的位姿的偏航角和平移,具体包括以下子步骤:
根据在{Cq}坐标系,检测到的图像二维点是D1=[a1 b1 1]T,相机中心Cq是[0 0 0]T,在{Ca}坐标系,检测到的图像二维点是D2=[a2 b2 1]T,相机中心Ca是[0 0 0]T,P1 0,P2 0是在世界坐标系中对应的三维特征点;
根据地图坐标系{W0}中匹配到的两个三维点P1 0和P2 0,引入一个世界中间坐标系{W1},其中三维点在所述中间坐标系下表示为P1=(0 0 0)T,P2=(X2 Y2 Z2)T,{W0}到{W1}的变换则表示为P1 0→P1的简单平移,相机坐标系与世界中间坐标系之间的相对位姿可以求得:
其中TAB是4×4矩阵,代表坐标系{B}相对于坐标系{A}的相对位姿,根据投影几何可得三点(Cq,D1,RqP1+tq)以及(Ca,D2,RaP2+ta)共线,其中Rq为{W1}相对于{Cq}的旋转变换矩阵,tq为{W1}相对于{Cq}的平移变换向量,Ra为{W1}相对于{Ca}的旋转变换矩阵,ta为{W1}相对于{Ca}的平移变换向量;
根据三点(Cq,D1,RqP1+tq)共线,可得方程
本发明还公开了一种机器人多相机视觉惯性点线特征定位装置,包括:
第一获取模块,用于获取当前场景的先验三维地图,所述先验三维地图是事先构建的;
第二获取模块,用于获取机器人的当前多相机图像和惯性传感器数据;
第一计算模块,用于根据获得的当前机器人的惯性传感器的测量数据与所述先验三维地图中的惯性传感器的测量数据计算机器人位姿的俯仰角和翻滚角;
匹配模块,用于根据当前多目图像中测量到的二维点线特征与所述先验三维地图的三维点线特征进行匹配,得到多对二维到三维的点线特征匹配对;
第二计算模块,用于根据所述获得的点线特征匹配对计算机器人位姿的偏航角和平移;
不同模块的信息连接和流向为:第一获取模块和第二获取模块的信息作为第一计算模块的输入,第一计算模块和匹配模块的信息作为第二计算模块的输入,信息流向均为单向。
本发明还公开了一种机器人多相机视觉惯性点线特征定位装置,包括:相机单元、惯性测量单元、处理器、存储器以及存储在存储器中的程序;
相机单元用于获取机器人当前图像;
惯性测量单元用于测量重力加速度在当前机器人坐标系下的值,并与先验三维地图中的重力加速度测量值进行对齐,以得到机器人位姿的俯仰角和翻滚角;
处理器执行计算机存储器中的程序实现机器人视觉惯性点线特征定位方法的步骤;
相机单元和惯性测量单元获取的信息通过有线连接传输到处理器,处理器执行存储器中的程序实现定位算法,相关处理结果有线传输存储到存储器中。
相比现有技术,本发明的有益效果在于:
本发明公开了一种视觉惯性点线特征定位方法及装置,获取当前场景的先验三维地图,所述地图是事先构建的;获取机器人的当前图像和惯性传感器的测量数据;根据当前惯性传感器数据与所述先验三维地图中的惯性传感器数据计算当前机器人位姿的俯仰角和翻滚角;根据当前图像中检测到的二维点线特征与所述先验三维地图中的三维点线特征进行匹配;根据所述匹配到的两对二维到三维点特征或者一对点特征加一对线特征计算当前机器人位姿的偏航角和平移。
目前移动机器人的主要使用领域在仓储物流、巡检监控等,他们对于机器人的要求是能够在一个相对固定的环境内实现长期稳定的运行,且能实现精确的自定位。视觉传感器生产成本低,获取信息量大,相关定位方法受到广泛的研究与应用。
传统基于特征点匹配进行相机基础矩阵估计的视觉定位方法容易受到视角变化、动态遮挡、环境光照以及气候变化等问题的影响,造成特征点难以重复检测以及检测到的特征点错误匹配率高等问题。本发明在定位时同时利用环境中的点特征和线特征,最大化利用了视觉提供的信息,应用场景更加广泛。线特征相比于点特征是一种更高级的语义信息,具有更稳定的检测效果,即使在部分遮挡的情况下也能检测出部分线段,对光照以及气候变化等不敏感,可以很大程度上弥补点特征的不足。尤其在工厂等视觉点特征不那么丰富的人造环境中,线特征往往更易于检测且数量更多,其优势更为明显。在野外自然环境中,线特征不那么明显的情况下,本发明还支持两对特征点定位方法,仅需在机器人当前图像中匹配到两组对应的地图上的三维特征点就能实现对机器人位姿的准确估计,其适用场景非常广泛,可以有效提高机器人对环境的自适应能力。
另外,多目相机利用多个视角(重叠或非重叠)的信息提供一个更广阔的视野,可以很大程度上解决遮挡问题,IMU(惯性测量单元)的引入增强了系统的鲁棒性,使其在快速运动时定位不易丢失,从而达到较好的防抖动效果。IMU的测量数据与外界环境无关,只与自身的运动有关,因此融合进IMU的数据,可以大大减弱恶劣观测环境对定位精度的影响,从而保证长期定位的稳定性。同时本发明利用IMU的数据降低了相机位姿求解问题的维度,具体表现为利用机器人当前IMU测量的重力加速度与地图坐标系下的重力加速度的测量值进行对齐,求解得出机器人相对于地图坐标系位姿的俯仰角和翻滚角,从而将六自由度机器人位姿估计问题降低为四自由度。降维后,相机位姿估计由最初的三对匹配特征进行计算减少为两对匹配特征,从而在视觉数据存在大量误匹配的情况下,提高定位成功率,大大提升系统鲁棒性。由于俯仰角和翻滚角在视觉惯性系统中是全局可观测的,利用惯性数据提前获得这两个量,在一定程度上提高了定位精度。
本发明利用多传感器的融合,在算法中充分发挥各个传感器的优势信息,最终达到提升定位精度、鲁棒性的效果。
附图说明
图1为本发明机器人多相机视觉惯性点线特征定位方法的流程示意图;
图2为本发明机器人多相机视觉惯性点线特征定位坐标系示意图。
具体实施方式
下面,结合附图以及具体实施方式,对本发明的技术方案做进一步地描述。
图1为本发明机器人视觉惯性点线特征定位方法的流程示意图,本发明公开了一种机器人视觉惯性点线特征定位方法,包括以下步骤:
1.获取当前场景的先验三维地图,所述地图是事先构建的,该地图要求包含重力加速度在所述地图坐标系下的测量数据,一般由惯性传感器测量所得,具体为在确定地图坐标系的同时保存惯性传感器测量的加速度的数据;所述三维地图还要包含三维点线特征,以便于后续进行定位时与机器人当前图像中的二维点线特征进行匹配,具体三维点线特征的生成不限方法,作为优选的实施方式,可以按如下步骤获取:三维点特征可以在建图时由图像检测到的二维点特征三角化得到,三维线特征可以直接在建好的三维地图里进行Line3Dpp算法处理得到;
2.获取机器人的当前图像和惯性传感器的测量数据,本发明方法适用于多目相机;
3.根据当前机器人的惯性传感器数据与所述先验三维地图中的惯性传感器数据计算当前机器人位姿的俯仰角和翻滚角,具体计算方法如下:
所述机器人在当前图像中惯性传感器的测量数据为重力加速度在当前图像机器人坐标系下的测量值;所述先验三维地图中的惯性传感器的测量数据为重力加速度在先验三维地图坐标系下的测量值;将重力加速度在两个坐标系下的测量值进行对齐,从而得到地图坐标系相对于当前机器人坐标系的俯仰角和翻滚角,具体根据以下算式进行计算:
其中[xw yw zw]T为重力加速度在先验三维地图坐标系下的测量值,[xc yc zc]T为重力坐标系在当前图像机器人坐标系下的测量值,右上角的T代表向量或矩阵的转置,β,γ分别为所求的当前图像机器人坐标系相对于先验三维地图坐标系的俯仰角和翻滚角。
4.根据当前多目相机(不同或相同相机)图像中检测到的二维点线特征与所述先验三维地图中的三维点线特征进行匹配,具体实施步骤如下:
根据所述机器人获取的当前图像检测多个二维特征点,所述二维特征点的检测不限方法,作为优选的实施方式,具体可以为ORB,SIFT,LBP或HOG特征点检测算法;
根据所述机器人获取的当前图像检测多条二维线段,所述二维线段的检测不限方法,作为优选的实施方式,具体可以为LBD,Edline或Hough直线检测;
根据所述当前图像的二维点线特征和地图中的三维点线特征进行匹配,具体表现为计算相应描述子的欧式距离;该距离小于预设阈值范围的特征则认为匹配成功,由此迭代获取多组二维与三维的匹配点线特征。
5.根据所述匹配到的两对二维到三维点特征或者一对点特征加一对线特征计算当前机器人位姿的偏航角和平移,具体分为以下两种实施情况:
1)根据匹配到的两组二维到三维匹配的点特征可以计算地图相对于当前机器人坐标系的位姿的偏航角和平移,具体包括以下子步骤:
根据匹配到的来自不同相机的一对二维到三维匹配的点特征加一对二维到三维匹配的线特征可以计算地图相对于当前机器人坐标系的位姿的偏航角和平移,具体包括以下子步骤:
根据地图坐标系{W0}中匹配到的一个三维点P1 0和一条三维线段引入一个世界中间坐标系{W1},其中三维点在所述世界中间坐标系下表示为P1=(000)T,{W0}到{W1}的变换则表示为P1 0→P1的简单平移,易得三维线段的端点在所述世界中间坐标系下表示为L2=(X2 Y2 Z2)T,L3=(X3 Y3 Z3)T,相机坐标系在所述世界中间坐标系下表示为{Cp1}、{Cl1};
根据在{Cp}坐标系,相机中心是原点,检测到的图像二维点是在{Cp1}中间坐标系,相机中心Cp是[0 0 -1]T。相对位姿是将转到Cp的平移,借助可以计算在{Cp1}下的图像二维点D1。在{Cl}坐标系,相机中心是原点,检测到的二维线段的两个端点是和同样的,可以计算在{Cl1}下的线段的两个端点D2和D3。
根据图像二维点是在{Cp1}中间坐标系,相机中心Cp是[0 0 -1]T。相对位姿是将转到Cp的平移,借助可以计算在{Cp1}下的图像二维点D1。相机中间坐标系与世界中间坐标系之间的相对位姿可以求得:
其中TAB是4×4矩阵,代表坐标系{B}相对于坐标系{A}的相对位姿。根据投影几何可得三点(Cp,D1,RpP1+tp)共线,四点(Cl,D2,D3,RlL2+tl)以及(Cl,D2,D3,RlL3+tl)共面,其中Rp为{W1}相对于{Cp1}的旋转变换矩阵,tp为{W1}相对于{Cp1}的平移变换向量,Rl为{W1}相对于{Cl1}的旋转变换矩阵,tl为{W1}相对于{Cl1}的平移变换向量;
根据三点(Cp,D1,RpP1+tp)共线,可得方程:
(D2×D3)T(RlL2+tl)=0
其中运算符×为向量的叉乘。根据四点(Cl,D2,D3,RlL3+tl)共面,可得方程:
(D2×D3)T(RlL3+tl)=0
联立以上所得的方程即可求得未知的偏航角和平移,从而求得机器人在地图中的当前位姿。
2)根据匹配到的一组二维到三维匹配的点特征加一组二维到三维匹配的线特征可以计算地图相对于当前机器人坐标系的位姿的偏航角和平移,坐标系示意图如附图2所示,图2为本发明机器人多相机视觉惯性点线特征定位坐标系示意图,具体包括以下子步骤:
根据匹配到的来自不同相机的两对二维到三维匹配的点特征可以计算地图相对于当前机器人坐标系的位姿的偏航角和平移,具体包括以下子步骤:
根据在{Cq}坐标系,检测到的图像二维点是D1=[a1 b1 1]T,相机中心Cq是[0 0 0]T。在{Ca}坐标系,检测到的图像二维点是D2=[a2 b2 1]T,相机中心Ca是[0 0 0]T。在世界坐标系中对应的三维特征点;
根据地图坐标系{W0}中匹配到的两个三维点P1 0和P2 0,引入一个中间坐标系{W1},其中三维点在所述中间坐标系下表示为P1=(0 0 0)T,P2=(X2 Y2 Z2)T,{W0}到{W1}的变换则表示为P1 0→P1的简单平移。相机中间坐标系与世界中间坐标系之间的相对位姿可以求得:
其中TAB是4×4矩阵,代表坐标系{B}相对于坐标系{A}的相对位姿。根据投影几何可得三点(Cq,D1,RqP1+tq)以及(Ca,D2,RaP2+ta)共线,其中Rq为{W1}相对于{Cq}的旋转变换矩阵,tq为{W1}相对于{Cq}的平移变换向量,Ra为{W1}相对于{Ca}的旋转变换矩阵,ta为{W1}相对于{Ca}的平移变换向量;
根据三点(Cq,D1,RqP1+tq)共线,可得方程
为了证明本发明定位算法的优越性,我们用真实数据集设计了定位实验,来与当前机器人领域常用的多种定位方法进行对比,实验结果可见表格1,为本发明机器人多相机视觉惯性点线特征定位与其他定位方法的对比实验结果。
该表格的第一列表示的是不同的测试数据。第二列为不同定位方法的简称。其中,EPnP为V.Lepetit等人在文章Epnp:An accurate o(n)solution to the pnp problem中提出的单相机定位方法,2P为Y.Jiao等人在文章2-entity ransac for robust visuallocalization in changing environment中提出的单相机定位方法,GP3P为V.Lepetit等人在文章Using multi-camera systems in robotics:Efficient solutions to thenpnp problem提出的多相机定位方法,mPose-2P为本发明提出的多相机定位方法。第三列到最后一列分别显示了定位方法在测试数据上成功定位的次数,定位成功时找到的正确特征匹配的数量,定位结果平移误差的均值和中值,以及定位结果旋转误差的均值和中值。从该实验结果可以看出,本发明的定位方法可以取得更高的定位成功率,找到更多的正确特征匹配,并且定位误差最小,表明定位的精度更高。
本发明还公开了一种多相机视觉惯性定位装置,装置包括多相机单元和惯性测量单元,其中多相机单元用于获取机器人当前图像;惯性测量单元用于测量重力加速度在当前机器人坐标系下的值,并与先验三维地图中的重力加速度测量值进行对齐,以得到机器人位姿的俯仰角和翻滚角。相机和惯性测量单元之间的相对关系已经事先标定得知。定位装置还包括处理器、存储器以及存储在存储器中的程序,计算机程序被处理器执行时实现机器人视觉惯性点线特征定位方法的步骤。
从多相机单元中获取机器人当前多目图像;从惯性测量单元(IMU,包括陀螺仪和加速度计)中获取加速度和角加速度,步骤中的提取特征点,提取特征线段,进行视觉特征点以及特征线段与地图中的三维特征点和特征线段的匹配,根据匹配的特征点线计算机器人位姿等都属于算法,在机器人携带的处理器或电脑上完成。
本实施例中的方法与前述实施例中的装置是基于同一发明构思下的两个方面,本领域技术人员可根据前述描述清楚地了解本实施中的系统的结构及实施过程。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本发明时可以把各模块的功能在同一个或多个软件和/或硬件中实现。具体各模块的功能如下:
第一获取模块,用于获取当前场景的先验三维地图,所述地图是事先构建的;
第二获取模块,用于获取机器人的当前图像和惯性传感器数据;
第一计算模块,用于根据所述获得的惯性传感数据与地图的惯性传感数据计算机器人位姿的俯仰角和翻滚角;
匹配模块,用于根据当前图像中检测到的二维点线特征与所述先验三维地图的三维点线特征进行匹配,得到多组二维到三维的点线特征匹配对;
第二计算模块,用于根据所述获得的点线特征匹配对计算机器人位姿的剩余未知量。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备执行本发明各个实施例或者实施例的某些部分所述的方法,计算机设备可以是个人计算机,服务器,或者网络设备等。
描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块或单元可以是或者也可以不是物理上分开的,作为模块或单元示意的部件可以是或者也可以不是物理模块,既可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本发明可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本发明的装置可以包括存储器200、处理器300以及存储在存储器200中的程序,所述程序被配置成由处理器300执行,处理器300执行所述程序时实现上述机器人多相机视觉惯性实时定位方法的步骤。
上述实施方式仅为本发明的优选实施方式,不能以此来限定本发明保护的范围,本领域的技术人员在本发明的基础上所做的任何非实质性的变化及替换均属于本发明所要求保护的范围。
Claims (10)
1.一种机器人多相机视觉惯性点线特征定位方法,其特征在于,包括以下步骤:
获取当前场景的先验三维地图和惯性传感器的测量数据,所述先验三维地图是由任意数量的相机、惯性传感器事先构建的,且包含三维点线特征;
获取机器人的当前多相机图像和惯性传感器的测量数据;
根据当前机器人的惯性传感器的测量数据与所述先验三维地图中的惯性传感器的测量数据计算当前机器人位姿的俯仰角和翻滚角;对机器人当前多相机图像进行二维点线特征的检测,并将当前多相机图像中测量到的二维点线特征与所述先验三维地图中测量到的三维点线特征进行匹配;
根据所述匹配到的多相机图像中两对二维到三维点特征或者一对二维到三维匹配的点特征加一对二维到三维匹配的线特征计算当前机器人位姿的其余未知量,包括偏航角和平移。
2.如权利要求1所述的机器人多相机视觉惯性点线特征定位方法,其特征在于,所述的先验三维地图:
包含重力加速度在所述地图坐标系下的测量数据,由惯性传感器测量所得;
包含三维点线特征。
3.如权利要求1所述的机器人多相机视觉惯性点线特征定位方法,其特征在于,所述机器人在当前图像中惯性传感器的测量数据为重力加速度在当前图像机器人坐标系下的测量值;所述先验三维地图中的惯性传感器的测量数据为重力加速度在先验三维地图坐标系下的测量值;将重力加速度在两个坐标系下的测量值进行对齐,从而得到当前机器人坐标系相对于先验三维地图坐标系的俯仰角和翻滚角,具体根据以下算式进行计算:
其中[xw yw zw]T为重力加速度在先验三维地图坐标系下的测量值,[xc yc zc]T为重力坐标系在当前图像机器人坐标系下的测量值,右上角的T代表向量或矩阵的转置,β,γ分别为所求的当前图像机器人坐标系相对于先验三维地图坐标系的俯仰角和翻滚角。
4.如权利要求1所述的机器人多相机视觉惯性点线特征定位方法,其特征在于,根据所述当前多相机图像测量到的二维点线特征和先验三维地图中的三维点线特征进行二维到三维的点线特征的匹配,具体包括以下子步骤:
根据所述机器人获取的当前多相机图像分别检测多个二维特征点
根据所述机器人获取的当前多相机图像分别检测多条二维线段。
5.根据权利要求4所述的机器人多相机视觉惯性点线特征定位方法,其特征在于,所述二维特征点的检测方法为ORB,SIFT,LBP或HOG特征点检测算法;所述二维线段的检测方法为LBD,Edline或Hough直线检测。
6.如权利要求4或5所述的机器人多相机视觉惯性点线特征定位方法,其特征在于,根据所述当前多相机图像的二维点线特征和先验三维地图中的三维点线特征进行匹配,表现为计算相应描述子的欧式距离;该距离小于预设阈值范围的特征则认为匹配成功,由此迭代获取多对二维与三维的匹配点线特征。
7.如权利要求1所述的机器人多相机视觉惯性点线特征定位方法,其特征在于,根据匹配到的来自不同相机的一对二维到三维匹配的点特征加一对二维到三维匹配的线特征计算地图相对于当前机器人坐标系的位姿的偏航角和平移,具体包括以下子步骤:
根据地图坐标系{W0}中匹配到的一个三维点P1 0和一条三维线段引入一个世界中间坐标系{W1},其中三维点在所述世界中间坐标系下表示为P1=(000)T,{W0}到{W1}的变换则表示为P1 0→P1的简单平移,易得三维线段的端点在所述世界中间坐标系下表示为L2=(X2 Y2 Z2)T,L3=(X3 Y3 Z3)T,同时引入观测到点特征和线特征的相机中间坐标系分别表示为{Cp1}、{Cl1};
根据在{Cp}坐标系,相机中心是原点,检测到的图像二维点是在{Cp1}中间坐标系,相机中心Cp是[00-1]T,相对位姿是将转到Cp的平移,借助可以计算在{Cp1}下的图像二维点D1,在{Cl}坐标系,相机中心是原点,检测到的二维线段的两个端点是和同样的,计算在{Cl1}下的线段的两个端点D2和D3;
其中TAB是4×4矩阵,代表坐标系{B}相对于坐标系{A}的相对位姿,如表示坐标系{W1}相对于坐标系{Cl1}的相对位姿,根据投影几何可得三点(Cp,D1,RpP1+tp)共线,四点(Cl,D2,D3,RlL2+tl)以及(Cl,D2,D3,RlL3+tl)共面,其中Rp为{W1}相对于{Cp1}的旋转变换矩阵,tp为{W1}相对于{Cp1}的平移变换向量,Rl为{W1}相对于{Cl1}的旋转变换矩阵,tl为{W1}相对于{Cl1}的平移变换向量;
根据三点(Cp,D1,RpP1+tp)共线,可得方程:
(D2×D3)T(RlL2+tl)=0
其中运算符×为向量的叉乘,根据四点(Cl,D2,D3,RlL3+tl)共面,可得方程:
(D2×D3)T(RlL3+tl)=0
联立以上所得的方程即可求得未知的偏航角和平移,从而求得机器人在地图中的当前位姿。
8.如权利要求1所述的机器人多相机视觉惯性点线特征定位方法,其特征在于,根据匹配到的来自不同相机的两对二维到三维匹配的点特征计算地图相对于当前机器人坐标系的位姿的偏航角和平移,具体包括以下子步骤:
根据在{Cq}坐标系,检测到的图像二维点是D1=[a1 b1 1]T,相机中心Cq是[0 0 0]T,在{Ca}坐标系,检测到的图像二维点是D2=[a2 b2 1]T,相机中心Ca是[0 0 0]T,P1 0,P2 0是在世界坐标系中对应的三维特征点;
根据地图坐标系{W0}中匹配到的两个三维点P1 0和P2 0,引入一个世界中间坐标系{W1},其中三维点在所述中间坐标系下表示为P1=(0 0 0)T,P2=(X2 Y2 Z2)T,{W0}到{W1}的变换则表示为P1 0→P1的简单平移,相机坐标系与世界中间坐标系之间的相对位姿可以求得:
其中TAB是4×4矩阵,代表坐标系{B}相对于坐标系{A}的相对位姿,根据投影几何可得三点(Cq,D1,RqP1+tq)以及(Ca,D2,RaP2+ta)共线,其中Rq为{W1}相对于{Cq}的旋转变换矩阵,tq为{W1}相对于{Cq}的平移变换向量,Ra为{W1}相对于{Ca}的旋转变换矩阵,ta为{W1}相对于{Ca}的平移变换向量;
根据三点(Cq,D1,RqP1+tq)共线,可得方程
联立以上所得的方程即可求得未知的偏航角和平移,从而求得机器人在地图中的当前位姿。
9.一种机器人多相机视觉惯性点线特征定位装置,其特征在于,包括:
第一获取模块,用于获取当前场景的先验三维地图,所述先验三维地图是事先构建的;
第二获取模块,用于获取机器人的当前多相机图像和惯性传感器数据;
第一计算模块,用于根据获得的当前机器人的惯性传感器的测量数据与所述先验三维地图中的惯性传感器的测量数据计算机器人位姿的俯仰角和翻滚角;
匹配模块,用于根据当前多目图像中测量到的二维点线特征与所述先验三维地图的三维点线特征进行匹配,得到多对二维到三维的点线特征匹配对;
第二计算模块,用于根据所述获得的点线特征匹配对计算机器人位姿的偏航角和平移;
所述的第一获取模块和第二获取模块的信息作为第一计算模块的输入,第一计算模块和匹配模块的信息作为第二计算模块的输入,信息流向均为单向。
10.一种机器人多相机视觉惯性点线特征定位装置,其特征在于,包括:相机单元、惯性测量单元、处理器、存储器以及存储在存储器中的程序;
所述的相机单元用于获取机器人当前图像;
所述的惯性测量单元用于测量重力加速度在当前机器人坐标系下的值,并与先验三维地图中的重力加速度测量值进行对齐,以得到机器人位姿的俯仰角和翻滚角;
所述的处理器执行计算机存储器中的程序实现机器人视觉惯性点线特征定位方法的步骤;
所述相机单元和惯性测量单元获取的信息通过有线连接传输到处理器,处理器执行存储器中的程序实现定位算法,相关处理结果有线传输存储到存储器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010690204.8A CN111791235B (zh) | 2020-07-17 | 2020-07-17 | 一种机器人多相机视觉惯性点线特征定位方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010690204.8A CN111791235B (zh) | 2020-07-17 | 2020-07-17 | 一种机器人多相机视觉惯性点线特征定位方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111791235A true CN111791235A (zh) | 2020-10-20 |
CN111791235B CN111791235B (zh) | 2021-07-02 |
Family
ID=72808689
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010690204.8A Active CN111791235B (zh) | 2020-07-17 | 2020-07-17 | 一种机器人多相机视觉惯性点线特征定位方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111791235B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113400298A (zh) * | 2021-05-10 | 2021-09-17 | 埃夫特智能装备股份有限公司 | 一种无公共视野的多相机定位大工件及工业机器人位置补偿方法 |
CN113514067A (zh) * | 2021-06-24 | 2021-10-19 | 上海大学 | 一种基于点线特征的移动机器人定位方法 |
CN113628284A (zh) * | 2021-08-10 | 2021-11-09 | 深圳市人工智能与机器人研究院 | 位姿标定数据集生成方法、装置、系统、电子设备及介质 |
CN114119761A (zh) * | 2022-01-28 | 2022-03-01 | 杭州宏景智驾科技有限公司 | 多相机机动车定位方法和装置、电子设备和存储介质 |
CN114378825A (zh) * | 2022-01-21 | 2022-04-22 | 四川长虹智能制造技术有限公司 | 一种多相机视觉定位方法、系统及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103616016A (zh) * | 2013-11-29 | 2014-03-05 | 大连理工大学 | 基于点线组合特征的位姿视觉测量方法 |
CN109470216A (zh) * | 2018-11-19 | 2019-03-15 | 国网四川省电力公司电力科学研究院 | 机械人双目视觉特征点定位方法 |
CN109506642A (zh) * | 2018-10-09 | 2019-03-22 | 浙江大学 | 一种机器人多相机视觉惯性实时定位方法及装置 |
CN109752003A (zh) * | 2018-12-26 | 2019-05-14 | 浙江大学 | 一种机器人视觉惯性点线特征定位方法及装置 |
CN110375732A (zh) * | 2019-07-22 | 2019-10-25 | 中国人民解放军国防科技大学 | 基于惯性测量单元和点线特征的单目相机位姿测量方法 |
-
2020
- 2020-07-17 CN CN202010690204.8A patent/CN111791235B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103616016A (zh) * | 2013-11-29 | 2014-03-05 | 大连理工大学 | 基于点线组合特征的位姿视觉测量方法 |
CN109506642A (zh) * | 2018-10-09 | 2019-03-22 | 浙江大学 | 一种机器人多相机视觉惯性实时定位方法及装置 |
CN109470216A (zh) * | 2018-11-19 | 2019-03-15 | 国网四川省电力公司电力科学研究院 | 机械人双目视觉特征点定位方法 |
CN109752003A (zh) * | 2018-12-26 | 2019-05-14 | 浙江大学 | 一种机器人视觉惯性点线特征定位方法及装置 |
CN110375732A (zh) * | 2019-07-22 | 2019-10-25 | 中国人民解放军国防科技大学 | 基于惯性测量单元和点线特征的单目相机位姿测量方法 |
Non-Patent Citations (3)
Title |
---|
SRIKUMAR RAMALINGAM等: "Pose Estimation using Both Points and Lines for Geo-Localization", 《2011 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION》 * |
周健烙: "基于多传感器信息融合的视觉SLAM算法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
王越: "长期运行移动机器人的定位与地图构建", 《中国博士学位论文全文数据库 信息科技辑》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113400298A (zh) * | 2021-05-10 | 2021-09-17 | 埃夫特智能装备股份有限公司 | 一种无公共视野的多相机定位大工件及工业机器人位置补偿方法 |
CN113400298B (zh) * | 2021-05-10 | 2022-04-08 | 埃夫特智能装备股份有限公司 | 一种无公共视野的多相机定位大工件及工业机器人位置补偿方法 |
CN113514067A (zh) * | 2021-06-24 | 2021-10-19 | 上海大学 | 一种基于点线特征的移动机器人定位方法 |
CN113628284A (zh) * | 2021-08-10 | 2021-11-09 | 深圳市人工智能与机器人研究院 | 位姿标定数据集生成方法、装置、系统、电子设备及介质 |
CN113628284B (zh) * | 2021-08-10 | 2023-11-17 | 深圳市人工智能与机器人研究院 | 位姿标定数据集生成方法、装置、系统、电子设备及介质 |
CN114378825A (zh) * | 2022-01-21 | 2022-04-22 | 四川长虹智能制造技术有限公司 | 一种多相机视觉定位方法、系统及电子设备 |
CN114378825B (zh) * | 2022-01-21 | 2023-05-12 | 四川长虹智能制造技术有限公司 | 一种多相机视觉定位方法、系统及电子设备 |
CN114119761A (zh) * | 2022-01-28 | 2022-03-01 | 杭州宏景智驾科技有限公司 | 多相机机动车定位方法和装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111791235B (zh) | 2021-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109752003B (zh) | 一种机器人视觉惯性点线特征定位方法及装置 | |
CN111791235B (zh) | 一种机器人多相机视觉惯性点线特征定位方法及装置 | |
CN109084732B (zh) | 定位与导航方法、装置及处理设备 | |
US11668571B2 (en) | Simultaneous localization and mapping (SLAM) using dual event cameras | |
CN109506642B (zh) | 一种机器人多相机视觉惯性实时定位方法及装置 | |
CN108253963B (zh) | 一种基于多传感器融合的机器人自抗扰定位方法以及定位系统 | |
JP5832341B2 (ja) | 動画処理装置、動画処理方法および動画処理用のプログラム | |
WO2020140431A1 (zh) | 相机位姿确定方法、装置、电子设备及存储介质 | |
CN112734852A (zh) | 一种机器人建图方法、装置及计算设备 | |
CN111156998A (zh) | 一种基于rgb-d相机与imu信息融合的移动机器人定位方法 | |
CN112200869B (zh) | 一种基于点线特征的机器人全局最优视觉定位方法及装置 | |
CN112116651B (zh) | 一种基于无人机单目视觉的地面目标定位方法和系统 | |
US20180075614A1 (en) | Method of Depth Estimation Using a Camera and Inertial Sensor | |
CN109767470B (zh) | 一种跟踪系统初始化方法及终端设备 | |
CN111279354A (zh) | 图像处理方法、设备及计算机可读存储介质 | |
CN110470333A (zh) | 传感器参数的标定方法及装置、存储介质和电子装置 | |
CN113137968B (zh) | 基于多传感器融合的重定位方法、重定位装置和电子设备 | |
CN113034571B (zh) | 一种基于视觉—惯性的物体三维尺寸测量方法 | |
CN113516692A (zh) | 一种多传感器融合的slam方法和装置 | |
CN111025330B (zh) | 一种基于深度图的目标倾斜角检测方法及设备 | |
US20220111531A1 (en) | Robot globally optimal visual positioning method and device based on point-line features | |
Huttunen et al. | A monocular camera gyroscope | |
CN112179373A (zh) | 一种视觉里程计的测量方法及视觉里程计 | |
CN114092564B (zh) | 无重叠视域多相机系统的外参数标定方法、系统、终端及介质 | |
CN108827287A (zh) | 一种复杂环境下的鲁棒视觉slam系统 |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240625 Address after: Building 5, 5th Floor, No. 309 Liuhe Road, Binjiang District, Hangzhou City, Zhejiang Province, 310000 Patentee after: Supcon Group Co.,Ltd. Country or region after: China Address before: 310058 Yuhang Tang Road, Xihu District, Hangzhou, Zhejiang 866 Patentee before: ZHEJIANG University Country or region before: China |