掌桥专利:专业的专利平台
掌桥专利
首页

利用激光雷达的相机联合外参标定方法、系统及存储介质

文献发布时间:2024-04-18 19:58:53


利用激光雷达的相机联合外参标定方法、系统及存储介质

技术领域

本发明属于传感器联合标定技术领域,更具体地,涉及一种利用激光雷达的相机联合外参标定方法、系统及存储介质。

背景技术

传感器联合标定是自动驾驶感知系统中的必要环节,是后续传感器融合的必要步骤和先决条件,是指将多个传感器的数据进行融合,并对这些传感器进行统一的坐标变换和校准,以实现精确的传感器数据的对齐和配准。激光雷达(Lidar)和相机(Camera)的联合外参标定旨在确定激光雷达和相机之间的相对位置与姿态关系,以实现二者数据的精确对齐和融合。这种技术在机器人导航、增强现实、虚拟现实等领域中得到广泛应用。传感器外参标定是确定传感器之间和传感器与世界坐标系之间相对关系的过程。传感器之间可能存在平移、旋转和姿态等变换关系。外参标定可以使用特征点匹配、姿态估计或系统标定等方法来获取传感器之间的相对姿态变换。

激光雷达和相机的联合外参标定通常使用静态标定法,所述静态标定法是一种基于静态场景的标定方法,在此方法中,需要将激光雷达和相机固定在稳定的位置上,通过采集一组带有标定板的图像和对应的激光雷达点云数据。通过提取图像和点云中的特征点,建立它们之间的对应关系,并利用优化算法计算相机和激光雷达之间的外参。然而,由于点云噪声的存在使得在利用激光点云在标定板边缘的深度差,拟合边缘点云的几何特征不准确,进而导致标定板的特征点提取不准确,影响激光雷达和相机的联合外参标定。此外,在一些现有方法中,激光雷达和相机的联合外参标定需要用到ring id(用于标识点云数据所属的环),由于不同类型激光雷达扫描方式的不同,一些类型的激光不存在ring id这一参数,使得现有方法不能适用,通用性不高。

发明内容

本发明为克服上述现有技术中存在的技术问题,提供了利用激光雷达的相机联合外参标定方法、系统及存储介质,利用激光雷达的反射强度,准确地提取激光点云特征点,实现更加准确的标定板的特征点提取。

本申请实施例第一方面提供了利用激光雷达的相机联合外参标定方法,包括以下步骤:

S1:获取棋盘格的图像信息,基于所述图像信息计算得到棋盘格特征点2D位置;

S2:获取点云数据,根据所述点云数据得到候选点云聚类,通过棋盘格模板生成棋盘格模板特征点;

S3:根据所述候选点云聚类和棋盘格模板,利用点云反射强度信息获取棋盘格标定板点云,计算棋盘格标定板点云和棋盘格模板间的变换矩阵,根据所述变换矩阵获取棋盘格特征点作为棋盘格特征点3D位置;

S4:据所述棋盘格特征点2D位置和棋盘格特征点3D位置获取相机的位姿信息实现相机的外参标定。

本方案中通过在提取棋盘格特征点3D位置时,利用棋盘格上点云反射率不同,将所有点云与棋盘格模板进行匹配,提高与棋盘格模板的匹配精度,进而提高特征点准确性,同时通过棋盘格模板匹配的方式可以获取所有黑白格的交界点,获得更多的特征点,这样可以进一步提高利用激光雷达和相机的联合外参标定精度。

优选地,上述基于所述图像信息计算得到棋盘格特征点2D位置,包括:

将图像信息转换为灰度图,提取棋盘格标定板上的所有角点作为棋盘格特征点2D位置;

所述提取棋盘格标定板上的所有角点的方式至少包括:亚像素级角点检测方法、Harris角点检测算法和/或Shi-Tomasi角点检测算法。

优选地,所述根据所述点云数据得到候选点云聚类,包括:

使用点云数据构建KD树结构,计算每个点周围的点云密度并进行筛选,将筛选后的点云分割成候选点云聚类;

其中,根据实际情况调整点云第一密度阈值,筛选点云密度大于所述点云第一密度阈值的点云,过滤点云密度小于所述点云第一密度阈值的点云;

稀疏区域的点云可能包含噪声或无效数据;通过过滤点云密度小于阈值的点云,可以降低噪声的影响,提高点云的质量和准确性。

优选地,所述通过棋盘格模板生成棋盘格模板特征点,包括:

获取棋盘格标定板真实尺寸和每个格子尺寸,生成棋盘格模板;

根据所述棋盘格模板获取棋盘格模板图像,提取特征点并通过特征点的匹配和优化,得到棋盘格模板特征点。

优选地,所述根据所述候选点云聚类和棋盘格模板,利用点云反射强度信息获取棋盘格标定板点云,具体为:

遍历所有候选点云聚类,依次计算棋盘格模板和每个点云聚类的最优变换矩阵T及对应的匹配误差L,其中,匹配误差L最小的为最匹配点云聚类,作为棋盘格标定板点云;

在一些实施例中,对于每个点云聚类,使用ICP算法或其他点云配准算法,计算该点云聚类与棋盘格模板之间的最优变换矩阵T;

所述最优变换矩阵T根据最小化匹配误差模型获取,所述匹配误差L为点云聚类和模板的对齐程度L

其中,根据激光点云在棋盘格上反射率不同,白色格呈高反射率,需要与棋盘格模板白格对齐;黑色格呈低反射率,需要与棋盘格模板黑格对齐,对齐程度越高L

根据原始点云P经过最优变换矩阵T得到的点Pi与所有棋盘格模板特征点中最近点Ci的欧式距离d计算得到所述模板的对齐程度L

优选地,所述利用点云反射强度信息获取棋盘格标定板点云,还包括:

所述模板的对齐程度L

优选地,所述计算棋盘格标定板点云和棋盘格模板间的变换矩阵,根据所述变换矩阵获取棋盘格特征点作为棋盘格特征点3D位置,具体为:

获取所述变换矩阵的逆矩阵;

加载所述棋盘格模板特征点2D位置对应的2D坐标和棋盘格的点云数据;

使用所述逆矩阵对棋盘格模板的特征点进行投影变换;在投影变换过程中,将每个特征点坐标作为齐次坐标的第一行,然后将其乘以变换矩阵的逆矩阵,得到投影后的齐次坐标,通过提取投影后齐次坐标的前三个元素,进而得到特征点的三维位置。

优选地,所述根据所述棋盘格特征点2D位置和棋盘格特征点3D位置获取相机的位姿信息实现相机的外参标定,具体为:

所述相机的位姿信息包括相机的旋转矩阵和平移向量;

通过所述相机的外参标定,可以将相机的视野与世界坐标系对齐,从而实现相机坐标系到世界坐标系的转换;

根据所述棋盘格特征点2D位置和棋盘格特征点3D位置,利用PnP算法获取所述相机的位姿信息实现相机的外参标定;

所述PnP算法的基本原理是通过已知的三维空间点在图像中对应的二维图像点,估计相机的位姿信息即外参;

所述PnP算法至少包括:EPnP算法、DLS算法、AP3P算法和UPnP算法。

本申请实施例第二方面提供了一种利用激光雷达的相机联合外参标定系统,所述系统包括:

获取模块,计算模块,判断模块和处理模块;

所述获取模块用于获取图像信息、点云数据、棋盘格标定板真实尺寸和每个格子尺寸;

所述计算模块至少包括第一计算模块、第二计算模块、第三计算模块和第四计算模块;其中,

所述第一计算模块用于将图像信息转换为灰度图,提取棋盘格标定板上的所有角点;

所述第二计算模块用于使用点云数据构建KD树结构,计算每个点周围的点云密度;

所述第三计算模块用于根据所述候选点云聚类和棋盘格模板,利用点云反射强度信息获取棋盘格标定板点云,计算棋盘格标定板点云和棋盘格模板间的变换矩阵;

所述第四计算模块用于获取所述变换矩阵的逆矩阵得到棋盘格特征点3D位置;

所述判断模块用于筛选点云密度大于所述点云第一密度阈值的点云;

所述处理模块用于根据相机的位姿信息实现相机的外参标定。

本申请实施例第三方面提供了一种存储介质,为计算机可读存储介质中的一种,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上所述的利用激光雷达的相机联合外参标定方法。

综上所述,本申请提供一种利用激光雷达的相机联合外参标定方法、系统及存储介质,通过获取棋盘格的图像信息,基于图像信息计算得到棋盘格特征点2D位置;获取点云数据,根据点云数据得到候选点云聚类,通过棋盘格模板生成棋盘格模板特征点;根据候选点云聚类和棋盘格模板,利用点云反射强度信息获取棋盘格标定板点云,计算棋盘格标定板点云和棋盘格模板间的变换矩阵,根据变换矩阵获取棋盘格特征点作为棋盘格特征点3D位置;根据棋盘格特征点2D位置和棋盘格特征点3D位置获取相机的位姿信息实现相机的外参标定。

相比于现有技术,本申请具备以下技术效果:

利用激光雷达反射强度及棋盘格上点云反射率不同,将所有点云与棋盘格模板进行匹配,获得更准确的特征点,同时本申请的外参标定方法能用于各种扫描方式的激光雷达,适用性更强,可以提高匹配精度,增强鲁棒性,使得点云数据更加直观和易于理解。

附图说明

图1为本申请中所述的利用激光雷达的相机联合外参标定方法流程图。

图2为一实施例中使用OpenCV(图像处理库)来获取图像信息并将其转换成灰度图像流程图。

图3为一实施例中所述的点云到模板匹配示意图。

图4为一实施例中利用PnP算法获取所述相机的位姿信息实现相机的外参标定流程图。

图5为本申请中所述的利用激光雷达的相机联合外参标定系统流程图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

实施例1:

如图1所示的利用激光雷达的相机联合外参标定方法,所述方法包括:

S1:获取棋盘格的图像信息,基于所述图像信息计算得到棋盘格特征点2D位置。

优选地,将图像信息转换为灰度图,提取棋盘格标定板上的所有角点作为棋盘格特征点2D位置,灰度值=0.2989*红色替代+0.5870*绿色通道+0.1140*蓝色通道;

所述提取棋盘格标定板上的所有角点的方式至少包括:亚像素级角点检测方法、Harris角点检测算法和/或Shi-Tomasi角点检测算法。

如图2所示,在一实施例中,通过使用OpenCV(图像处理库)来获取图像信息并将其转换成灰度图像;

S100:使用cv2.cvtColor()函数将读取到的彩色图像转换为灰度图像;

S101:使用cv2.findChessboardCorners()函数来寻找棋盘格标定板的角点,并将结果存储在corners变量中;

S102:使用cv2.cornerSubPix()函数来提取亚像素级的角点坐标,以提高角点的精度;

S103:使用cv2.drawChessboardCorners()函数在图像上绘制标记的角点,并打印出角点的2D位置。

S2:获取点云数据,根据所述点云数据得到候选点云聚类,通过棋盘格模板生成棋盘格模板特征点。

优选地,所述根据所述点云数据得到候选点云聚类,具体为:

使用点云数据构建KD树结构,计算每个点周围的点云密度并进行筛选,将筛选后的点云分割成候选点云聚类。

在一实施例中,利用区域增长方法,对点云进行分割,将点云分割成若干候选点云聚类。通过使用PCL(点云库)中的pcl::io::loadPCDFile()函数加载筛选后的点云数据,然后设置区域增长参数,包括平滑性阈值、曲率阈值、最小点数阈值和最大点数阈值,创建对象,并将筛选后的点云数据设置为输入,然后计算点云的法线,并将其设置为区域增长对象的输入法线,可以使用KD树进行法线估计;在设置区域增长的参数后,调用reg.extract()函数执行区域增长分割,并将结果存储在clusters中,最后输出聚类的数量并进行遍历。

进一步地,根据实际情况调整点云第一密度阈值,筛选点云密度大于所述点云第一密度阈值的点云,过滤点云密度小于所述点云第一密度阈值的点云;

其中,稀疏区域的点云可能包含噪声或无效数据;通过过滤点云密度小于阈值的点云,可以降低噪声的影响,提高点云的质量和准确性。

优选地,所述通过棋盘格模板生成棋盘格模板特征点,包括:

获取棋盘格标定板真实尺寸和每个格子尺寸,生成棋盘格模板;

根据所述棋盘格模板获取棋盘格模板图像,提取特征点并通过特征点的匹配和优化,得到棋盘格模板特征点。

在一实施例中,通过测量棋盘格标定板的实际尺寸,包括整个标定板的尺寸以及每个格子的尺寸;根据获取的标定板尺寸和格子尺寸,生成棋盘格模板,所述棋盘格模板可以是一个二维数组,表示棋盘格中每个格子的位置和坐标;确定特征点位置,对于每个格子,选择一个或多个角点作为特征点。通常选择格子的四个角点作为特征点,但也可以选择其他角点或在格子内部选择特征点。确保特征点在棋盘格模板中有唯一的识别标识,例如行列索引;对于每个特征点,将其在棋盘格模板中的位置(行列索引)转换为二维图像坐标(x,y),棋盘格上每个格子的二维图像坐标可以通过乘以格子尺寸和加上偏移量得到;最终将获得一组棋盘格模板特征点,其中每个特征点具有二维图像坐标(x,y)和相应的行列索引,可以表示为(row,col,x,y)的形式。

S3:根据所述候选点云聚类和棋盘格模板,利用点云反射强度信息获取棋盘格标定板点云,计算棋盘格标定板点云和棋盘格模板间的变换矩阵,根据所述变换矩阵获取棋盘格特征点作为棋盘格特征点3D位置。

所述步骤S3具体为:

遍历所有候选点云聚类,依次计算棋盘格模板和每个点云聚类的最优变换矩阵T及对应的匹配误差L,其中,匹配误差L最小的为最匹配点云聚类,作为棋盘格标定板点云;所述最优变换矩阵T根据最小化匹配误差模型获取,所述匹配误差L为点云聚类和模板的对齐程度L

如图3所示,激光点云在棋盘格上反射率不同,白色格呈高反射率,需要与棋盘格模板白格对齐;黑色格呈低反射率,需要与棋盘格模板黑格对齐,对齐程度越高L

根据原始点云P经过变换矩阵T得到的点P

所述模板的对齐程度L

在一实施例中,通过构建最小二乘问题,利用高斯牛顿迭代算法求解最优变换矩阵T

匹配误差:

L=L

点云聚类和模板的对齐程度:

原始点云P经过变换矩阵T得到的点P

点Pi与所有棋盘格模板特征点中最近点Ci的欧式距离d(P

计算得到最优点云聚类,代入

计算标定板和模板间的变化矩阵T

根据模板特征点C

计算得到点云特征点即棋盘格标定板特征点3D位置。

优选地,所述计算棋盘格标定板点云和棋盘格模板间的变换矩阵,根据所述变换矩阵获取棋盘格特征点作为棋盘格特征点3D位置,具体为:

获取所述变换矩阵的逆矩阵;

加载棋盘格模板特征点的2D坐标和棋盘格的点云数据;

使用所述逆矩阵对棋盘格模板的特征点进行投影变换;在投影变换过程中,将每个特征点坐标作为齐次坐标的第一行,然后将其乘以变换矩阵的逆矩阵,得到投影后的齐次坐标,通过提取投影后齐次坐标的前三个元素,得到特征点的三维位置。

S4:据所述棋盘格特征点2D位置和棋盘格特征点3D位置获取相机的位姿信息实现相机的外参标定。

优选地,所述所述相机的位姿信息包括相机的旋转矩阵和平移向量。

其中,所述旋转矩阵(Rotation Matrix)是一个3x3的矩阵,表示相机坐标系顺时针旋转到世界坐标系的变换关系;

所述平移向量(Translation Vector)是一个3维向量,表示相机坐标系原点在世界坐标系中的位置;

通过旋转矩阵和平移向量,可以将相机坐标系中的点转换到世界坐标系中,或者将世界坐标系中的点投影到相机坐标系中。

优选地,根据所述棋盘格特征点2D位置和棋盘格特征点3D位置,利用PnP算法获取所述相机的位姿信息实现相机的外参标定。

优选地,所述PnP算法至少包括:EPnP算法、DLS算法、AP3P算法和UPnP算法。

如图4所示,在一实施例中,根据所述棋盘格特征点2D位置和棋盘格特征点3D位置,利用PnP算法获取所述相机的位姿信息实现相机的外参标定。

S401:收集具有已知三维坐标的棋盘格特征点3D位置,并在相机中拍摄棋盘格图像,提取相应的棋盘格特征点2D位置;需要收集足够数量的特征点,同时保证棋盘格标定板在各个姿态下的特征点都被完整地捕捉;

S402:对于每对对应的棋盘格特征点(2D-3D对),构建匹配关系;

S403:选择适合的PnP算法进行相机姿态估计,常见的算法有EPnP算法、DLS算法、AP3P算法和UPnP算法等;

S404:将特征点的2D像素坐标(图像坐标)与其对应的3D空间坐标(世界坐标系上)提供给所选的PnP算法;

S405:利用所选的PnP算法,通过最小化重投影误差,求解相机的旋转矩阵和平移向量;

S406:得到相机位姿信息,包括旋转矩阵和平移向量。

实施例二:

如图5所示,本申请还提供一种利用激光雷达的相机联合外参标定系统,所述系统包括:

获取模块,计算模块,判断模块和处理模块;

所述获取模块用于获取图像信息、点云数据、棋盘格标定板真实尺寸和每个格子尺寸;

所述计算模块至少包括第一计算模块、第二计算模块、第三计算模块和第四计算模块:其中,

所述第一计算模块用于将图像信息转换为灰度图,提取棋盘格标定板上的所有角点;

所述第二计算模块用于使用点云数据构建KD树结构,计算每个点周围的点云密度;

所述第三计算模块用于根据所述候选点云聚类和棋盘格模板,利用点云反射强度信息获取棋盘格标定板点云,计算棋盘格标定板点云和棋盘格模板间的变换矩阵;

所述第四计算模块用于获取所述变换矩阵的逆矩阵得到棋盘格特征点3D位置;

所述判断模块用于筛选点云密度大于所述点云第一密度阈值的点云;

所述处理模块用于根据相机的位姿信息实现相机的外参标定。

实施例三:

本申请还提供一种存储介质,为计算机可读存储介质中的一种,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上所述的利用激光雷达的相机联合外参标定方法。

综上所述,本申请提供一种利用激光雷达的相机联合外参标定方法、系统及存储介质,通过获取棋盘格的图像信息,基于图像信息计算得到棋盘格特征点2D位置;获取点云数据,根据点云数据得到候选点云聚类,通过棋盘格模板生成棋盘格模板特征点;根据候选点云聚类和棋盘格模板,利用点云反射强度信息获取棋盘格标定板点云,计算棋盘格标定板点云和棋盘格模板间的变换矩阵,根据变换矩阵获取棋盘格特征点作为棋盘格特征点3D位置;根据棋盘格特征点2D位置和棋盘格特征点3D位置获取相机的位姿信息实现相机的外参标

利用激光雷达反射强度及棋盘格上点云反射率不同,将所有点云与棋盘格模板进行匹配,获得更准确的特征点,同时本申请的外参标定方法能用于各种扫描方式的激光雷达,适用性更强,可以提高匹配精度,增强鲁棒性,使得点云数据更加直观和易于理解。

尽管这里已经参考附图描述了示例实施例,应理解上述示例实施例仅仅是示例性的,并且不意图将本申请的范围限制于此。本领域普通技术人员可以在其中进行各种改变和修改,而不偏离本申请的范围和精神。所有这些改变和修改意在被包括在所附权利要求所要求的本申请的范围之内。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个设备,或一些特征可以忽略,或不执行。

本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本申请实施例的一些模块的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

相关技术
  • 激光雷达与相机之间的标定方法、装置、设备及存储介质
  • 全景相机标定的校正方法、系统、计算机设备和存储介质
  • 相机和激光雷达的外参标定方法、系统及可读存储介质
  • 激光雷达与相机联合外参标定系统及方法
技术分类

06120116509942