CN111415387B - 相机位姿确定方法、装置、电子设备及存储介质 - Google Patents
相机位姿确定方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111415387B CN111415387B CN201910007272.7A CN201910007272A CN111415387B CN 111415387 B CN111415387 B CN 111415387B CN 201910007272 A CN201910007272 A CN 201910007272A CN 111415387 B CN111415387 B CN 111415387B
- Authority
- CN
- China
- Prior art keywords
- frame image
- camera
- determining
- point set
- current frame
- 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
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000013519 translation Methods 0.000 claims abstract description 67
- 238000004364 calculation method Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 8
- 230000000007 visual effect Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
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
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Studio Devices (AREA)
Abstract
公开了一种相机位姿确定方法和确定装置、电子设备及计算机可读的存储介质。一种相机位姿确定方法包括从当前帧图像的第一特征点集合与先前帧图像的第二特征点集合中确定相匹配的第三特征点集合和第四特征点集合;确定第三特征点集合、第四特征点集合中的特征点在世界坐标系下的第一、第二三维坐标集合;确定第一三维坐标集合与第四特征点集合之间、第二三维坐标集合与第四特征点集合之间的重投影误差之和;确定相机在获取当前帧及先前帧图像期间的平移距离误差;以及基于重投影误差之和以及平移距离误差,确定相机在获取当前帧图像时的位姿。采用上述相机位姿确定方法,通过获取重投影误差之和与平移距离误差,提高了相机位姿信息的精度。
Description
技术领域
本申请涉及计算机视觉领域,具体地,本申请涉及一种相机位姿确定方法、相机位姿确定装置、电子设备以及计算机可读的存储介质。
背景技术
地图是无人驾驶领域的基础。然而,在单目相机SLAM中,由于单目相机的尺度不确定性,导致无法构建出全局尺度一致的向量地图,而且由于单目相机的尺度不确定性,单目SLAM在多帧跟踪图像之间容易由于尺度漂移而使跟踪结果误差累积,最终导致跟踪失败。
在现有技术中,通常通过双目视觉技术,直接在每个时刻获得地图点的真实三维尺度,或者融合高精度组合导航模块IMU,直接通过IMU模块测量得到真实尺度线加速度积分,获得帧间真实尺度的位姿信息。然而,尽管通过使用双目视觉技术或者IMU模块可以获得帧间图像的真实尺度,但是由于传感器成本高昂、计算成本高、制作工作成本高、标定复杂、算法较为复杂,并且受IMU本身的成本影响较大,使视觉点云的使用遭到了巨大障碍。
因此,需要一种能够低成本、高精度、适用范围广地确定相机位姿的方法及装置。
发明内容
为了解决上述技术问题,提出了本申请。本申请的实施例提供了一种相机位姿确定方法、相机位姿确定装置、电子设备以及计算机可读的存储介质,以低成本地、高精度、适用范围广地确定相机的位姿信息。
根据本申请的一个方面,提供了一种相机位姿确定方法,包括:
从相机获取的当前帧图像中的第一特征点集合与先前帧图像中的第二特征点集合中确定相匹配的第三特征点集合和第四特征点集合,所述第三特征点集合的特征点为所述当前帧图像中的特征点,所述第四特征点集合的特征点为所述先前帧图像中的特征点;
确定所述第三特征点集合中的特征点在世界坐标系下的第一三维坐标集合以及确定所述第四特征点集合中的特征点在世界坐标系中第二三维坐标集合;
确定所述第一三维坐标集合与所述第四特征点集合之间、所述第二三维坐标集合与所述第四特征点集合之间的重投影误差之和;
确定所述相机在获取所述当前帧图像及所述先前帧图像期间的平移距离误差;以及
基于所述重投影误差之和以及所述平移距离误差,确定所述相机在获取所述当前帧图像时的位姿。
根据本申请的另一方面,提供了一种相机位姿确定装置,包括重投影误差和获取模块,用于相机获取的相匹配的当前帧图像中的特征点集合和先前帧图像中的特征点集合针对彼此帧图像计算重投影误差和;平移距离误差获取模块,用于获取所述相机在获取所述当前帧图像和所述先前帧图像期间的平移距离误差;以及相机位姿计算模块,用于基于所述重投影误差之和以及所述平移距离误差,确定所述相机在获取所述当前帧图像时的位姿信息。
根据本申请的又一方面,提供了一种电子设备,包括处理器,以及存储器,在所述存储器中存储有计算机程序指令,所述计算机程序指令在被所述处理器运行时使得所述处理器执行上述相机位姿确定方法。
根据本申请的又一方面,提供了一种计算机可读的存储介质,其上存储有用于执行上述相机位姿确定方法的指令。
与现有技术相比,采用根据本申请实施例的相机位姿确定方法、相机位姿确定装置、电子设备以及计算机可读的存储介质,可以通过确定相机获取的当前帧图像与先前帧图像的相匹配的特征点之间的双向重投影误差之和、及获取当前帧图像与先前帧图像期间的平移距离误差,得到所述相机在获取当前帧图像时的更准确的位姿信息。因此,通过获取当前帧图像和先前帧图像中相匹配的特征点之间的双向重投影误差之和与获取当前帧图像与先前帧图像期间的平移距离误差,提高了所获得的相机位姿信息的精度,得到更准确的位姿信息,从而不会因为传感器配置的变更而对算法框架造成影响,还降低了传感器成本及计算成本,进而降低了单目视觉系统的部署难度。
附图说明
通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1示出根据本申请一实施例的相机位姿确定方法的应用场景示意图。
图2示出根据本申请一实施例的相机位姿确定方法的流程图。
图3示出根据本申请一实施例的确定平移距离误差步骤的流程图。
图4示出根据本申请一实施例的相机位姿确定装置的示意图。
图5示出根据本申请一实施例的电子设备的框图。
具体实施方式
下面,将参考附图详细地描述根据本申请的示例实施例。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是本申请的全部实施例,应当理解,本申请不受这里描述的示例实施例的限制。
申请概述
如上所述,在无人驾驶中,相机的位姿信息并由此计算得到相机的当前位置是非常重要的。然而,为了获得相机的准确位姿信息和当前位置的成本比较高。因此,需要改进的相机位姿确定方法,使获得相机的准确位姿信息的成本得以降低。
针对该技术问题,本申请的基本构思是提出一种相机位姿确定方法、相机位姿确定装置、电子设备以及计算机可读的存储介质,一方面,其可以通过获取当前帧图像和先前帧图像中相匹配的特征点之间的双向重投影误差之和,提高了所获得的相机位姿信息的精度,得到更准确的位姿信息,另一方面,其通过直接使用外部传感器的尺度,尤其是标量尺度,对相机的平移向量进行尺度校正,由此解决了单目相机的尺度不确定性,降低了成本,使单目视觉系统的部署难度得以降低,即,借助于其它传感器提供的短时间内较为准确的位移信息来解决单目相机的尺度不确定性。
换言之,通过本申请的相机位姿确定方法和确定装置,不需要使用高精度的传感器,也不需要人工过多干预,就能得到更准确的位姿信息,进而得到全局一致的视觉点云,并由此建立高精度矢量地图,因而降低了高精度地图的制作成本。
需要说明的是,本申请的上述基本构思不但可以应用于地图制作,也可以应用于其它领域,例如机器人及无人交通工具导航领域等。
在介绍了本申请的基本原理之后,下面将参考附图来具体介绍本申请的各种非限制性实施例。
示例性场景
图1图示了根据本申请实施例的相机位姿确定方法的应用场景的示意图。如图1所示,车辆10可包括相机,例如车载相机12,其可以是常用的单目相机、双目相机、或者更多目相机,也可以是摄像头等。虽然图1示出了车载相机12安装于车辆10的顶部,但是应理解,车载相机亦可安装于车辆10的其他位置处,例如车头部分处、前挡风玻璃处,等等。
图1中所示的坐标系是车载相机局部坐标系(Xc,Yc,Zc),其中Zc轴的方向为车载相机的光轴方向,Yc轴方向为垂直于Zc轴向下的方向,Xc轴方向为垂直于Yc轴和Zc轴的方向。
这里,车辆10可包括相机位姿确定装置14,相机位姿确定装置14可与相机通信,并用来执行本申请提供的相机位姿确定方法。在一实施例中,车载相机12在车辆10的行驶过程中,连续拍摄视频图像,相机位姿确定装置14获得车载相机12拍摄的图像,并通过确定车载相机12获取的当前帧和先前帧图像之间的重投影误差之和及平移距离误差,确定车载相机12在获取当前帧图像时的位姿信息。
通过相机位姿确定装置14执行本申请提出的相机位姿确定方法,可以确定车载相机12的位姿关系,进而对车载相机12进行定位。
示例性方法
图2是根据本申请一示例性实施例的相机位姿确定方法的流程示意图。如图2所示,根据本申请的相机位姿确定方法100包括如下步骤:
步骤S110,从相机获取的当前帧图像中的第一特征点集合与先前帧图像中的第二特征点集合中确定相匹配的第三特征点集合和第四特征点集合,所述第三特征点集合的特征点为所述当前帧图像中的特征点,所述第四特征点集合的特征点为所述先前帧图像中的特征点。也就是说,在步骤S110中,分别获取当前帧图像中和先前帧图像中相匹配的各自特征点。
相机可以是常用的单目相机、双目相机、或者更多目相机、或者摄像头。当然,本领域中已知的以及将来可能出现的任何其他类型的相机都可以应用于本申请,本申请对其捕捉图像的方式没有特别限制,只要能够获得清晰的图像即可。相机采集到的图像数据例如可以是连续图像帧序列(即,视频流)或离散图像帧序列(即,在预定采样时间点采样到的图像数据组)等。
在一个示例中,相机获取的先前帧图像是指相机获取的当前帧图像之前的上一帧图像、当前帧图像之前的上两帧图像或者当前帧图像之前的任意帧图像等。也就是说,先前帧图像可以是当前帧图像之前的M帧图像,M为大于等于1的正整数,当M为1时,先前帧图像为当前帧图像的上一帧图像;当M为大于1的正整数时,先前帧图像为当前帧图像之前的M帧图像。在一个示例中,先前帧图像是指当前帧图像之前的上一帧图像,选择当前帧图像之前的上一帧图像作为先前帧,可以减小计算复杂度和计算量。
在一个示例中,所述第一特征点集合和所述第二特征点集合中的特征点实际上是图像上的关键特征点,比如路边标识牌的四个角。通过采用本示例,能够降低重投影误差和的计算量,提高其计算速度。
步骤S120,确定所述第三特征点集合中的特征点在世界坐标系下的第一三维坐标集合以及确定所述第四特征点集合中的特征点在世界坐标系中第二三维坐标集合。也就是说,在步骤S120中,确定当前帧图像中和先前帧图像中相匹配的特征点各自在世界坐标系中的三维坐标。
在一个示例中,第一三维坐标集合是通过利用当前帧的第三特征点集合与当前帧相机位姿计算获得的,其中,当前帧的相机位姿可以通过视觉里程计或视觉SLAM系统获取的,或者通过本领域已知的位姿信息计算方法计算得到的,例如,该位姿信息还可以通过IMU等获得。
其中,相机的位姿信息,包括旋转矩阵R和平移向量t,其中,平移向量t是3*1向量,表示相机相对于原点的位置,旋转矩阵R是3*3矩阵,表示相机此时的姿态,旋转矩阵R也可以表示成欧拉角(ψ,θ,)的形式,其中ψ表示绕Y轴旋转的航向角(yaw),θ表示沿X轴旋转的俯仰角(pitch),/>表示沿Z轴旋转的滚转角(roll)。
步骤S130,确定所述第一三维坐标集合与所述第四特征点集合之间、所述第二三维坐标集合与所述第四特征点集合之间的重投影误差之和。
也就是说,在步骤S130中,确定当前帧图像和先前帧图像中相匹配的特征点之间的双向重投影误差之和,即,确定当前帧图像中相匹配的特征点在世界坐标系下的三维坐标与先前帧图像中相匹配的特征点之间的重投影误差,和确定先前帧图像中相匹配的特征点在世界坐标系下的三维坐标与当前帧图像中相匹配的特征点之间的重投影误差,对上述二个重投影误差加和,进而确定当前帧图像中相匹配的特征点集合在世界坐标系下的三维坐标集合与先前帧图像中相匹配的特征点集合之间的重投影误差之和。
步骤S140,确定所述相机在获取所述当前帧图像与所述先前帧图像期间的平移距离误差。
所述相机在获取所述当前帧图像与所述先前帧图像期间的平移距离,是指所述相机在获取所述当前帧图像与获取所述先前帧图像期间行进的平移距离。平移距离可以利用相机的相对位姿中的平移参数确定,也可以借助于带有绝对尺度的传感器测量或计算得到的平移参数确定。所述相机在获取所述当前帧图像与所述先前帧图像期间的平移距离误差,是指借助于计算相机的相对位姿来确定的平移参数与借助于带有绝对尺度的传感器确定的平移参数的误差。
步骤150,基于所述重投影误差之和以及所述平移距离误差,确定所述相机在获取所述当前帧图像时的位姿信息。
在一个示例中,基于重投影误差之和以及平移距离误差的和,确定相机在获取当前帧图像时的位姿信息。此外,也可以单独基于重投影误差之和,或者单独基于平移距离误差,确定相机在获取当前帧图像时的位姿信息。
采用根据本申请实施例的相机位姿确定方法,可以通过确定相机获取的当前帧图像与先前帧图像中的相匹配的特征点之间的双向重投影误差之和、及获取当前帧图像与先前帧图像期间的平移距离误差,得到所述相机在获取当前帧图像时的更准确的位姿信息。因此,通过获取当前帧图像和先前帧图像中相匹配的特征点之间的双向重投影误差之和与获取当前帧图像与先前帧图像期间的平移距离误差,提高了所获得的相机位姿信息的精度,得到更准确的位姿信息,从而不会因为传感器配置的变更而对算法框架造成影响,还降低了传感器成本及计算成本,进而降低了单目视觉系统的部署难度。
在一个示例中,步骤S130包括:
将所述第一三维坐标集合中的每一个三维坐标投影到所述先前帧图像中得到第五特征点集合,其中,第五特征点集合是通过利用第一三维坐标集合中的每一个三维坐标与先前帧的相机位姿计算得到的;以及,将所述第二三维坐标集合中的每一个三维坐标投影到所述当前帧图像中得到第六特征点集合,其中,第六特征点集合是通过利用第二三维坐标集合中的每一个三维坐标与当前帧的相机位姿计算得到的;以及
确定第五特征点集合中的每一特征点与第四特征点集合中相对应的特征点之间的距离误差以及第六特征点集合的每一特征点与第三特征点集合中相对应的特征点之间的距离误差,将所有的距离误差相加,得到所述第一三维坐标集合与所述第四特征点集合之间、所述第二三维坐标集合与所述第四特征点集合之间的重投影误差之和。
通过采用本示例,考虑了当前帧图像和先前帧图像中相匹配的特征点之间的双向重投影误差之和,提高了所获得的相机位姿信息的计算精度。
在一个示例中,步骤S150包括确定在所述重投影误差之和与所述平移距离误差的和最小时的在当前帧图像上的相机的位姿信息。
确定在所述重投影误差之和与所述平移距离误差的和最小时的在当前帧图像上的相机的位姿信息:argminT=∑iEreproj+Etrans,式中,i表示图像帧数,T表示相机位姿。
通过在本示例中,采用计算重投影误差之和与平移距离误差的和最小化来得到在获取当前帧图像时相机的位姿信息,能够提高所得到的相机在获取当前帧图像时的位姿信息的精度,减少计算复杂度和计算成本。
此外,对于所述相机在获取所述当前帧图像与所述先前帧图像期间的平移距离误差还可以乘以调整参量λ,对平移距离误差进行微调。确定在所述重投影误差之和与所述平移距离误差的和最小时的在当前帧图像上的相机的位姿信息:argminT=∑iEreproj+λEtrans,式中,i表示图像帧数,λ表示尺度误差项的权重。由此,通过对利用调整参量λ对平移距离误差进行微调,使平移距离误差项更加准确。
在一个示例中,步骤S150还包括,确定更新的第一三维坐标集合和第二三维坐标集合。在一个进一步的示例中,所述确定所述相机在获取所述当前帧图像时的位姿信息及确定更新的第一三维坐标集合和第二三维坐标集合是同时进行的,即argminT,P=∑iEreproj+Etrans,i表示帧数,T表示相机位姿的旋转矩阵,P表示第一三维坐标集合和第二三维坐标集合中的点坐标。
通过采用本示例,因所述确定所述相机在获取所述当前帧图像时的位姿信息与确定更新的第一三维坐标集合和第二三维坐标集合同时进行,提高了计算效率和计算相关硬件利用率。
在一个示例中,如图3所示,步骤S140包括:
S141:通过带有绝对尺度的传感器确定所述相机在获取所述当前帧图像与所述先前帧图像期间的第一平移向量;
在一个示例中,带有绝对尺度的传感器可以是例如轮速编码器、速度计、行程计等。在这里,绝对尺度又称绝对位置,带有绝对尺度的传感器能够测量相对于真实物理世界的位置关系。
通过带有绝对尺度的传感器确定相机在获取当前帧和先前帧图像期间运动的第一平移向量是通过传感器得到相机在采集先前帧图像和采集当前帧图像期间运动的平移向量。
S142:确定所述相机在获取所述当前帧图像时相对于获取所述先前帧图像时的相对位姿的第二平移向量;
在一个示例中,根据相机在获取当前帧图像时的位姿信息以及获取先前帧图像时的位姿信息计算相对位姿信息,相对位姿信息中的平移向量即为第二平移向量。
在一个示例中,相机在获取当前帧图像时相对于获取先前帧图像时的位姿信息是通过视觉里程计或视觉SLAM系统获取的,或者通过本领域已知的位姿信息计算方法计算得到的,例如,该位姿信息还可以通过IMU等获得。
S143:计算所述第一平移向量与所述第二平移向量的差的二范数。
在一个示例中,第一平移向量与第二平移向量的差的二范数是指第一平移向量与第二平移向量的差中各个元素平方之和再开根号,又称第一平移向量和第二平移向量之间的欧氏距离,即Etrans=‖t-t’‖2,式中,t表示通过计算相机的相对位姿得到相机的连续时刻之间的相对位移,即第一平移向量;t’表示带有绝对尺度的传感器提供的连续时刻的相对位移,即第二平移向量。
由于基于带有绝对尺度的传感器得到的相机在采集当前帧图像和先前帧图像期间运动的平移向量的尺度(即平移距离)较为精准,因此,最小化平移距离误差能够使获得的相机位姿信息的精确度提高。通过采用根据本申请实施例的相机位姿确定方法,可以低成本地得到更准确的相机位姿信息。
在一个示例中,所述先前帧为N帧,N为大于等于1的正整数,当N大于1时,所述确定所述相机在获取所述当前帧图像与所述先前帧图像期间的平移距离误差包括:
确定所述相机在获取所述当前帧图像与所述先前帧图像中任意两相邻帧期间的平移距离误差之和∑jEtrans,式中j表示相机运动的连续时刻数。
以N=2为例,设当前帧为第K帧,则先前帧为K-1帧、K-2帧,那么将计算第K-2帧、K-1帧之间的第一平移距离误差,K-1帧与K帧之间的第二平移距离误差,将第一平移距离误差与第二平移距离误差相加得到平移距离误差之和。
相应的,当先前帧为多帧时,当前帧图像与先前帧图像的匹配过程应将所有的先前帧与当前帧进行匹配,确定匹配的点集合;在重投影的过程中,以当前帧为例,应先计算当前帧的匹配点集合的世界坐标系下的三维坐标集合,然后投影至所有的先前帧图像中计算重投影误差。
仍以N=2为例,设当前帧为第K帧,则先前帧为K-1帧、K-2帧,那么将第K帧、K-1帧、K-2帧图像进行匹配,确定匹配的点集合并计算各个点集合的世界坐标系下的三维坐标集合,将第K帧图像的匹配点集合的三维坐标集合分别投影到第K-1帧、K-2帧图像,将第K-1帧图像的匹配点集合的三维坐标集合分别投影到第K帧、K-2帧图像,将第K-2帧图像的匹配点集合的三维坐标集合分别投影到第K-1帧、K帧图像中,分别计算每一帧图像中所有匹配点的投影误差,然后将所有的投影误差相加得到投影误差之和。
在本示例中,通过使先前帧图像为多帧图像,虽然增加了计算投影误差的复杂度和计算量,但是通过增加要计算的特征点数,提高了计算精度。
示例性装置
图4示出了根据本申请一实施例的具体示例的相机位姿确定装置的示意图。
如图所示,根据本申请一实施例的相机位姿确定装置200包括:
重投影误差和获取模块210,用于相机获取的相匹配的当前帧图像中的特征点集合和先前帧图像中的特征点集合针对彼此帧图像计算重投影误差和;
平移距离误差获取模块220,用于获取所述相机在获取所述当前帧图像和所述先前帧图像期间的平移距离误差;以及
相机位姿计算模块230,用于基于所述重投影误差之和以及所述平移距离误差,确定所述相机在获取所述当前帧图像时的位姿信息。
在一个示例中,具体而言,重投影误差和获取模块210用于
从相机获取的当前帧图像中的第一特征点集合与先前帧图像中的第二特征点集合中确定相匹配的第三特征点集合和第四特征点集合,所述第三特征点集合的特征点为所述当前帧图像中的特征点,所述第四特征点集合的特征点为所述先前帧图像中的特征点;
确定所述第三特征点集合中的特征点在世界坐标系下的第一三维坐标集合以及确定所述第四特征点集合中的特征点在世界坐标系中第二三维坐标集合;
确定所述第一三维坐标集合与所述第四特征点集合之间、所述第二三维坐标集合与所述第四特征点集合之间的重投影误差之和。
在一个进一步的示例中,重投影误差和获取模块210用于
将所述第一三维坐标集合中的每一个三维坐标投影到所述先前帧图像中得到第五特征点集合,以及,将所述第二三维坐标集合中的每一个三维坐标投影到所述当前帧图像中得到第六特征点集合;以及
确定第五特征点集合中的每一特征点与第四特征点集合中相对应的特征点之间的距离误差以及第六特征点集合的每一特征点与第三特征点集合中相对应的特征点之间的距离误差,将所有的距离误差相加。
在一个示例中,相机位姿计算模块230用于确定在所述重投影误差之和与所述平移距离误差的和最小时的在当前帧图像上的相机的位姿信息。
在一个示例中,相机位姿计算模块230还用于确定更新的第一三维坐标集合和第二三维坐标集合。在一个进一步的示例中,所述确定所述相机在获取所述当前帧图像时的位姿及确定更新的第一三维坐标集合和第二三维坐标集合是同时进行的。
在一个示例中,平移距离误差获取模块220包括:
带有绝对尺度的外部传感器单元,用于确定所述相机在获取所述当前帧图像与所述先前帧图像期间的第一平移向量;
相机的相对位姿平移向量确定单元,用于确定所述相机在获取所述当前帧图像时相对于获取所述先前帧图像时的相对位姿的第二平移向量;以及
距离计算单元,用于计算所述第一平移向量与所述第二平移向量的差的二范数。
在一个进一步的示例中,误差获取模块220包括带有绝对尺度的传感器,例如轮速编码器、速度计或者行程计等。
在一个进一步的示例中,误差获取模块220还用于基于所述当前帧图像与先前帧图像之间的重投影误差之和,确定所述相机在获取所述当前帧图像时相对于获取所述先前帧图像时的相对位姿的第二平移向量。
在一个示例中,当先前帧图像为大于1的多帧图像时,误差获取模块220还用于确定所述相机在获取所述当前帧图像与所述先前帧图像中任意两帧期间的平移距离误差之和。
在一个进一步的示例中,当先前帧图像为大于1的多帧图像时,误差获取模块220执行确定相机获取的当前帧图像与先前帧图像之间的重投影误差之和,与相机位姿计算模块230执行基于所述当前帧图像与先前帧图像之间的重投影误差之和,确定所述相机在获取所述当前帧图像时相对于获取所述先前帧图像时的相对位姿的第二平移向量,是同时进行的。
在一个示例中,相机位姿计算模块230还用于基于所述重投影误差之和以及所述平移距离误差,确定在所述重投影误差之和与所述平移距离误差的和全局最小时所述相机在获取所述当前帧图像时的位姿信息。
上述基于相机位姿确定装置200中的各个单元和模块的具体功能和操作已经在上面参考图2和图3描述的相机位姿确定方法中详细介绍,并因此,将省略其重复描述。
示例性电子设备
图5图示了根据本申请实施例的电子设备300的结构框图。下面,参考图5来描述根据本申请一实施例的电子设备300,该电子设备300可以实现为图1所示的车辆10中的相机位姿确定装置14,其可以与车载相机12进行通信,以接收它们的输出信号。
如图5所示,电子设备300可包括处理器310和存储器320。
处理器310可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备300中的其他组件以执行期望的功能。
存储器320可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器310可以运行所述程序指令,以实现上文所述的本申请的各个实施例的相机位姿确定方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如相机的相关信息、传感器的相关信息以及驱动程序等各种内容。
在一个示例中,电子设备300还可以包括接口330、输入装置340和输出装置350,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
接口330可用于连接到摄像头,例如摄像机。例如,接口330可以是摄像头常用的USB接口,当然也可以是其他接口例如Type-C接口等。电子设备300可包括一个或多个接口330,以连接到相应的摄像机,并且从摄像机接收其所拍摄的图像以用于执行上面描述的相机位姿确定方法。
输入装置340可用于接收外界输入,例如接收用户输入的物理点坐标值等。在一些实施例中,输入装置340可以是例如键盘、鼠标、手写板、触摸屏等。
输出装置350可以输出所计算的摄像机外参。例如,输出装置350可以包括显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等。在一些实施例中,输入装置340和输出装置350可以是集成一体的触摸显示屏。
为了简化,图5中仅示出了电子设备300中与本申请有关的一些组件,而省略了一些相关外围或辅助组件。除此之外,根据具体应用情况,电子设备300还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本申请的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的相机位姿确定方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本申请的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的相机位姿确定方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本申请的基本原理,但是,需要指出的是,在本申请中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本申请的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本申请为必须采用上述具体的细节来实现。
本申请中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
还需要指出的是,在本申请的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本申请的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本申请。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本申请的范围。因此,本申请不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本申请的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
Claims (10)
1.一种相机位姿确定方法,其特征在于,所述相机位姿确定方法包括:
从相机获取的当前帧图像中的第一特征点集合与先前帧图像中的第二特征点集合中确定相匹配的第三特征点集合和第四特征点集合,所述第三特征点集合的特征点为所述当前帧图像中的特征点,所述第四特征点集合的特征点为所述先前帧图像中的特征点;
确定所述第三特征点集合中的特征点在世界坐标系下的第一三维坐标集合以及确定所述第四特征点集合中的特征点在世界坐标系中第二三维坐标集合;
确定所述第一三维坐标集合与所述第四特征点集合之间、所述第二三维坐标集合与所述第三特征点集合之间的重投影误差之和;
确定所述相机在获取所述当前帧图像及所述先前帧图像期间的平移距离误差;以及
基于所述重投影误差之和以及所述平移距离误差,确定所述相机在获取所述当前帧图像时的位姿信息,
其中基于所述重投影误差之和以及所述平移距离误差,确定所述相机在获取所述当前帧图像时的位姿包括:确定在所述重投影误差之和与所述平移距离误差的和最小时的在当前帧图像上的相机的位姿信息。
2.根据权利要求1所述的相机位姿确定方法,其中,所述确定第一三维坐标集合与第四特征点集合之间、第二三维坐标集合与第三特征点集合之间的重投影误差之和包括:
将所述第一三维坐标集合中的每一个三维坐标投影到所述先前帧图像中得到第五特征点集合,以及,将所述第二三维坐标集合中的每一个三维坐标投影到所述当前帧图像中得到第六特征点集合;以及
确定第五特征点集合中的每一特征点与第四特征点集合中相对应的特征点之间的距离误差以及第六特征点集合的每一特征点与第三特征点集合中相对应的特征点之间的距离误差,将所有的距离误差相加。
3.根据权利要求1所述的相机位姿确定方法,其中所述基于所述重投影误差之和以及所述平移距离误差,确定所述相机在获取所述当前帧图像时的位姿还包括,确定更新的第一三维坐标集合和第二三维坐标集合。
4.根据权利要求3所述的相机位姿确定方法,其中所述确定所述相机在获取所述当前帧图像时的位姿及确定更新的第一三维坐标集合和第二三维坐标集合是同时进行的。
5.根据权利要求1所述的相机位姿确定方法,其中,所述确定所述相机在获取所述当前帧图像与所述先前帧图像期间的平移距离误差包括:
通过带有绝对尺度的传感器确定所述相机在获取所述当前帧图像与所述先前帧图像期间的第一平移向量;
确定所述相机在获取所述当前帧图像时相对于获取所述先前帧图像时的相对位姿的第二平移向量;
计算所述第一平移向量与所述第二平移向量的差的二范数。
6.根据权利要求5所述的相机位姿确定方法,其中,所述带有绝对尺度的传感器是轮速编码器、速度计或者行程计。
7.根据权利要求1所述的相机位姿确定方法,其中,
所述先前帧为N帧,其中N为大于等于1的正整数,
当N大于1时,所述确定所述相机在获取所述当前帧图像与所述先前帧图像期间的平移距离误差包括:
确定所述相机在获取所述当前帧图像与所述先前帧图像中任意两相邻帧期间的平移距离误差之和。
8.一种相机位姿确定装置,其特征在于,所述相机位姿确定装置包括:
重投影误差和获取模块,用于相机获取的相匹配的当前帧图像中的特征点集合和先前帧图像中的特征点集合针对彼此帧图像计算重投影误差之和;
平移距离误差获取模块,用于获取所述相机在获取所述当前帧图像和所述先前帧图像期间的平移距离误差;以及
相机位姿计算模块,用于基于所述重投影误差之和以及所述平移距离误差,确定所述相机在获取所述当前帧图像时的位姿信息,
其中,所述计算重投影误差之和包括:
确定所述当前帧图像中相匹配的特征点集合中的特征点在世界坐标系下的三维坐标与所述先前帧图像中相匹配的特征点集合中的特征点之间的重投影误差,和确定所述先前帧图像中相匹配的特征点集合中的特征点在世界坐标系下的三维坐标与所述当前帧图像中相匹配的特征点集合中的特征点之间的重投影误差,对二个所述重投影误差加和,进而确定所述当前帧图像中相匹配的特征点集合在世界坐标系下的三维坐标集合与所述先前帧图像中相匹配的特征点集合之间的重投影误差之和。
9.一种电子设备,其特征在于,所述电子设备包括:
处理器;以及
存储器,在所述存储器中存储有计算机程序指令,所述计算机程序指令在被所述处理器运行时使得所述处理器执行如权利要求1-7中任一项所述的相机位姿确定方法。
10.一种计算机可读的存储介质,其上存储有指令,其特征在于,所述指令在被处理器执行时实现权利要求1-7中任一项所述的相机位姿确定方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910007272.7A CN111415387B (zh) | 2019-01-04 | 2019-01-04 | 相机位姿确定方法、装置、电子设备及存储介质 |
PCT/CN2019/099206 WO2020140431A1 (zh) | 2019-01-04 | 2019-08-05 | 相机位姿确定方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910007272.7A CN111415387B (zh) | 2019-01-04 | 2019-01-04 | 相机位姿确定方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111415387A CN111415387A (zh) | 2020-07-14 |
CN111415387B true CN111415387B (zh) | 2023-12-29 |
Family
ID=71406529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910007272.7A Active CN111415387B (zh) | 2019-01-04 | 2019-01-04 | 相机位姿确定方法、装置、电子设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111415387B (zh) |
WO (1) | WO2020140431A1 (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114219852B (zh) * | 2020-08-31 | 2024-10-15 | 北京魔门塔科技有限公司 | 一种用于自动驾驶车辆的多传感器标定方法及装置 |
CN112102417B (zh) * | 2020-09-15 | 2024-04-19 | 阿波罗智联(北京)科技有限公司 | 确定世界坐标的方法和装置 |
CN112197764B (zh) * | 2020-12-07 | 2021-04-06 | 广州极飞科技有限公司 | 实时位姿确定方法、装置及电子设备 |
CN112669381B (zh) * | 2020-12-28 | 2021-09-21 | 北京达佳互联信息技术有限公司 | 一种位姿确定方法、装置、电子设备及存储介质 |
CN112837424B (zh) * | 2021-02-04 | 2024-02-06 | 脸萌有限公司 | 图像处理方法、装置、设备和计算机可读存储介质 |
CN113038010B (zh) * | 2021-03-12 | 2022-11-29 | Oppo广东移动通信有限公司 | 视频处理方法、视频处理装置、存储介质与电子设备 |
CN113034582A (zh) * | 2021-03-25 | 2021-06-25 | 浙江商汤科技开发有限公司 | 位姿优化装置及方法、电子设备及计算机可读存储介质 |
CN114549633A (zh) * | 2021-09-16 | 2022-05-27 | 北京小米移动软件有限公司 | 位姿检测方法、装置、电子设备和存储介质 |
CN114037762B (zh) * | 2021-11-22 | 2024-08-02 | 武汉中海庭数据技术有限公司 | 基于图像与高精度地图配准的实时高精度定位方法 |
CN114898084B (zh) * | 2022-04-18 | 2023-08-25 | 荣耀终端有限公司 | 视觉定位方法、设备和存储介质 |
CN115115704B (zh) * | 2022-06-24 | 2024-07-23 | 合众新能源汽车股份有限公司 | 确定汽车位姿信息的方法及装置 |
CN115937305A (zh) * | 2022-06-28 | 2023-04-07 | 北京字跳网络技术有限公司 | 图像处理方法、装置及电子设备 |
CN117994332A (zh) * | 2022-10-28 | 2024-05-07 | Oppo广东移动通信有限公司 | 位姿确定方法及装置、计算机可读存储介质和电子设备 |
CN117994333A (zh) * | 2022-10-28 | 2024-05-07 | Oppo广东移动通信有限公司 | 位姿确定方法及装置、计算机可读存储介质和电子设备 |
CN117419690B (zh) * | 2023-12-13 | 2024-03-12 | 陕西欧卡电子智能科技有限公司 | 一种无人船的位姿估计方法、装置及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104359464A (zh) * | 2014-11-02 | 2015-02-18 | 天津理工大学 | 基于立体视觉的移动机器人定位方法 |
CN105856230A (zh) * | 2016-05-06 | 2016-08-17 | 简燕梅 | 一种可提高机器人位姿一致性的orb关键帧闭环检测slam方法 |
CN107747941A (zh) * | 2017-09-29 | 2018-03-02 | 歌尔股份有限公司 | 一种双目视觉定位方法、装置及系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102800096B (zh) * | 2012-07-19 | 2014-12-24 | 北京航空航天大学 | 一种摄像机参数的鲁棒性估计算法 |
CN102982548B (zh) * | 2012-12-11 | 2015-11-25 | 清华大学 | 多目立体视频采集系统及其相机参数标定方法 |
CN104915965A (zh) * | 2014-03-14 | 2015-09-16 | 华为技术有限公司 | 一种摄像机跟踪方法及装置 |
CN105809706B (zh) * | 2016-05-25 | 2018-10-30 | 北京航空航天大学 | 一种分布式多像机系统的全局标定方法 |
DE102016124888A1 (de) * | 2016-12-20 | 2018-06-21 | Connaught Electronics Ltd. | Verfahren zum Unterstützen eines Fahrers eines Kraftfahrzeugs beim Einparken unter Verwendung einer Fahrerassistenzvorrichtung, entsprechendes Computerprogrammprodukt und Fahrerassistenzvorrichtung |
CN107705333B (zh) * | 2017-09-21 | 2021-02-26 | 歌尔股份有限公司 | 基于双目相机的空间定位方法及装置 |
CN107909612B (zh) * | 2017-12-01 | 2021-01-29 | 驭势科技(北京)有限公司 | 一种基于3d点云的视觉即时定位与建图的方法与系统 |
CN108288291A (zh) * | 2018-06-07 | 2018-07-17 | 北京轻威科技有限责任公司 | 基于单点标定物的多相机标定 |
-
2019
- 2019-01-04 CN CN201910007272.7A patent/CN111415387B/zh active Active
- 2019-08-05 WO PCT/CN2019/099206 patent/WO2020140431A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104359464A (zh) * | 2014-11-02 | 2015-02-18 | 天津理工大学 | 基于立体视觉的移动机器人定位方法 |
CN105856230A (zh) * | 2016-05-06 | 2016-08-17 | 简燕梅 | 一种可提高机器人位姿一致性的orb关键帧闭环检测slam方法 |
CN107747941A (zh) * | 2017-09-29 | 2018-03-02 | 歌尔股份有限公司 | 一种双目视觉定位方法、装置及系统 |
Non-Patent Citations (1)
Title |
---|
刘迪."基于Kinect的同步定位与地图构建研究".《中国优秀硕士学位论文全文数据库信息科技辑》.2017,第43-44页. * |
Also Published As
Publication number | Publication date |
---|---|
WO2020140431A1 (zh) | 2020-07-09 |
CN111415387A (zh) | 2020-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111415387B (zh) | 相机位姿确定方法、装置、电子设备及存储介质 | |
CN109544630B (zh) | 位姿信息确定方法和装置、视觉点云构建方法和装置 | |
US10970873B2 (en) | Method and device to determine the camera position and angle | |
CN109544629B (zh) | 摄像头位姿确定方法和装置以及电子设备 | |
CN110880189B (zh) | 联合标定方法及其联合标定装置和电子设备 | |
CN108932737B (zh) | 车载相机俯仰角标定方法和装置、电子设备以及车辆 | |
CN113516692B (zh) | 一种多传感器融合的slam方法和装置 | |
CN111791235B (zh) | 一种机器人多相机视觉惯性点线特征定位方法及装置 | |
CN110207693B (zh) | 一种鲁棒立体视觉惯性预积分slam方法 | |
CN113188505B (zh) | 姿态角度的测量方法、装置、车辆及智能臂架 | |
CN112529957B (zh) | 确定摄像设备位姿的方法和装置、存储介质、电子设备 | |
CN111127584A (zh) | 建立视觉地图的方法和装置、电子设备和存储介质 | |
CN113759384B (zh) | 一种传感器位姿转换关系确定方法、装置、设备和介质 | |
CN113137968B (zh) | 基于多传感器融合的重定位方法、重定位装置和电子设备 | |
CN111238490B (zh) | 视觉定位方法、装置以及电子设备 | |
CN114777768A (zh) | 一种卫星拒止环境高精度定位方法、系统及电子设备 | |
JP5267100B2 (ja) | 運動推定装置及びプログラム | |
CN113763481A (zh) | 一种移动场景中多相机视觉三维地图构建与自标定方法 | |
CN108961337B (zh) | 车载相机航向角标定方法和装置、电子设备以及车辆 | |
CN111351497B (zh) | 一种车辆的定位方法、装置、地图的构建方法和装置 | |
CN110827337B (zh) | 确定车载相机的姿态的方法、装置和电子设备 | |
CN115979305A (zh) | 导航设备的姿态校正方法、装置、电子设备及程序产品 | |
CN112652018B (zh) | 外参确定方法、外参确定装置及电子设备 | |
WO2022179047A1 (zh) | 一种状态信息估计方法及装置 | |
CN114494428B (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 |