激光雷达和相机的联合标定方法、装置、设备及存储介质
文献发布时间:2023-06-19 10:06:57
技术领域
本发明实施例涉及激光雷达和相机的标定技术,尤其涉及一种激光雷达和相机的联合标定方法、装置、设备及存储介质。
背景技术
随着计算机视觉技术的不断发展,可实现通过三维激光雷达有效的探测三维环境信息,通过相机解读环境中的颜色、纹理信息。
在某些场景下需要同时使用到三维激光雷达检测三维环境信息和使用相机解读环境中的颜色、纹理信息,以实现更可靠的高精度的场景识别。而为了结合使用两种传感器的数据,则需要事先对激光雷达和相机进行联合标定。目前常用的相机和激光雷达联合标定方法,主要基于立体标定板或平面靶标,通过对立体标定板或平面靶标的识别,并计算激光雷达和相机之间的旋转矩阵和平移向量,从而使激光雷达和相机的数据能够在同一个坐标系下进行处理分析。
从目前来看,立体标定板对制作精度要求较高、制作方法复杂、成本高;使用平面靶标则需要在录制好的数据中手动选择特征点在图像像素和激光雷达点云中的位置,然而手动选点会带来人工误差,同时选择较多的特征点需要耗费一定的时间、效率不高。
发明内容
本发明提供一种激光雷达和相机的联合标定方法、装置、设备及存储介质,以实现提高激光雷达和相机的联合标定效率。
第一方面,本发明实施例提供了激光雷达和相机的联合标定,包括:
通过激光雷达获取多边形平面板在若干姿态下的若干组点云数据,并通过相机获取所述多边形平面板在相同姿态下的若干组图像数据;
在所述点云数据中确定点云平面点和点云边缘点,所述点云平面点为所述点云数据中与所述多边形平面板的表面对应的点云,所述点云边缘点为所述点云数据中与所述多边形平面板的边缘对应的点云;
在所述图像数据中确定图像平面点和图像边缘点,所述图像平面点为所述图像数据中与所述多边形平面板的表面对应的像素点,所述图像边缘点为所述图像数据中与所述多边形平面板的边缘对应的像素点;
基于所述点云平面点、所述点云边缘点、所述图像平面点和所述图像边缘点计算所述激光雷达的坐标系与所述相机的坐标系之间的旋转矩阵和平移向量;
根据所述旋转矩阵和所述平移向量对所述激光雷达和所述相机进行联合标定。
可选的,多边形平面板置于背景墙前,所述多边形平面板的上边缘和/或下边缘与水平方向呈夹角设置;
所述通过激光雷达获取多边形平面板在若干姿态下的若干组点云数据,并通过相机获取所述多边形平面板在相同姿态下的若干组图像数据包括:
通过激光雷达获取所述多边形平面板在当前姿态下的点云数据;
通过相机获取所述多边形平面板在相同姿态下的图像数据:
调整所述多边形平面板的姿态;
重复所述通过激光雷达获取所述多边形平面板在当前姿态下的点云数据,获取多组所述点云数据和所述图像数据。
可选的,所述在所述点云数据中确定点云平面点和点云边缘点,包括:
基于所述点云数据中每个点与所述激光雷达的距离确定所述点云数据中的点云边缘点;
根据所述点云边缘点确定所述多边形平面板的点云边缘线;
基于所述点云边缘线在所述点云数据中确定所述点云数据中的点云平面点。
可选的,所述基于所述点云数据中每个点与所述激光雷达的距离确定所述点云数据中的点云边缘点,包括:
确定所述点云数据中单条激光扫描线上的每个点数据与相邻的两个点数据之间的距离差值的最大值,作为所述点数据的参考值;
确定所述参考值大于预设的阈值的所述点数据为参考点;
确定所述参考点与所述激光雷达的距离小于预设的参考值的所述参考点为点云边缘点。
可选的,所述根据所述点云边缘点确定所述多边形平面板的点云边缘线,包括:
使用随机抽样一致算法拟合所述点云边缘点确定所述多边形平面板的点云边缘线。
可选的,所述在所述图像数据中确定图像平面点和图像边缘点,包括:
从所述图像数据中识别所述多边形平面板的边缘,确定所述多边形平面板的图像边缘点;
基于所述图像边缘点确定所述多边形平面板的图像平面点。
可选的,所述基于所述点云平面点、所述点云边缘点、所述图像平面点和所述图像边缘点计算所述激光雷达的坐标系与所述相机的坐标系之间的旋转矩阵和平移向量,包括:
基于如下公式计算所述激光雷达的坐标系与所述相机的坐标系之间的旋转矩阵和平移向量:
其中,
第二方面,本发明实施例还提供了一种激光雷达和相机的联合标定装置,包括:
获取模块,用于通过激光雷达获取多边形平面板在若干姿态下的若干组点云数据,并通过相机获取所述多边形平面板在相同姿态下的若干组图像数据;
点云确定模块,用于在所述点云数据中确定点云平面点和点云边缘点,所述点云平面点为所述点云数据中与所述多边形平面板的表面对应的点云,所述点云边缘点为所述点云数据中与所述多边形平面板的边缘对应的点云;
图像确定模块,用于在所述图像数据中确定图像平面点和图像边缘点,所述图像平面点为所述图像数据中与所述多边形平面板的表面对应的像素点,所述图像边缘点为所述图像数据中与所述多边形平面板的边缘对应的像素点;
计算模块,用于基于所述点云平面点、所述点云边缘点、所述图像平面点和所述图像边缘点计算所述激光雷达的坐标系与所述相机的坐标系之间的旋转矩阵和平移向量;
标定模块,用于根据所述旋转矩阵和所述平移向量对所述激光雷达和所述相机进行联合标定。
第三方面,本发明实施例还提供了一种激光雷达和相机的联合标定设备,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的激光雷达和相机的联合标定方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的激光雷达和相机的联合标定方法。
本发明通过激光雷达和相机同时采集多组多边形平面板在不同的姿态下的点云数据和图像数据,可获得多组对应不同姿态的多边形平面板的样本数据,从而保证联合标定过程中的数据样本量,避免了样本数据采集中的偶然性问题,保证样本数据的可靠性;从点云数据和图像数据中确定与多边形平面板对应的点云平面点、点云边缘点、图像平面点和图像边缘点,并根据点云平面点、点云边缘点、图像平面点和图像边缘点计算激光雷达的坐标系与相机的坐标系之间的旋转矩阵和平移向量,完成对激光雷达和相机的联合标定,有效的避免了使用传统的棋盘格标靶进行标定时人工参与激光雷达和相机的联合标定所带来的人为误差和时间消耗,并减少联合标定过程中的计算量。
附图说明
图1为本发明实施例一提供的激光雷达和相机的联合标定方法的流程图;
图2a为本发明实施例二提供的一种激光雷达和相机的联合标定方法的流程图;
图2b为本发明实施例二中激光雷达和相机的联合标定的状态示意图;
图3为本发明实施例三提供的一种激光雷达和相机的联合标定装置的结构图;
图4为本发明实施例四提供的一种激光雷达和相机的联合标定设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的激光雷达和相机的联合标定方法的流程图,本实施例可适用于对激光雷达和相机的联合标定的情况,该方法可以由激光雷达和相机的联合标定装置来执行,具体包括如下步骤:
步骤110、通过激光雷达获取多边形平面板在若干姿态下的若干组点云数据,并通过相机获取多边形平面板在相同姿态下的若干组图像数据。
一般的,激光雷达是指是激光探测及测距系统LiDAR(Light Detection andRanging),另外也称Laser Radar或LADAR(Laser Detection and Ranging)。是使用激光器作为发射光源,采用光电探测技术手段的主动遥感设备。激光雷达由发射系统、接收系统、信息处理等部分组成。发射系统是各种形式的激光器,如二氧化碳激光器、掺钕钇铝石榴石激光器、半导体激光器及波长可调谐的固体激光器以及光学扩束单元等组成;接收系统采用望远镜和各种形式的光电探测器,如光电倍增管、半导体光电二极管、雪崩光电二极管、红外和可见光多元探测器件等组合。激光雷达采用脉冲或连续波2种工作方式,探测方法按照探测的原理不同可以分为米散射、瑞利散射、拉曼散射、布里渊散射、荧光、多普勒等激光雷达。
相机则主要指的是工业相机,工业相机又俗称摄像机,相比于传统的民用相机(摄像机)而言,它具有高的图像稳定性、高传输能力和高抗干扰能力等,市面上工业相机大多是基于CCD(Charge Coupled Device)或CMOS(Complementary Metal OxideSemiconductor)芯片的相机。工业相机是机器视觉系统中的一个关键组件,其最本质的功能就是将光信号转变成有序的电信号。
在本发明实施例中,标定用的标定物采用多边形平面板,其为平整的平面板,其上并不需要绘制标记(棋盘格),但需要保证多边形平面板的边缘的平整,以保证在标定的过程中多边形平面板的边缘的辨识度。
可选的,多边形平面板的边缘长度取整,以便于在标点过程中的计算。
在本发明实施例中,需要采用激光雷达和相机同时采集多组多边形平面板在不同的姿态下的点云数据和图像数据。也就是说,多边形平面板每更换一次姿态,则采用激光雷达和相机记录一次对应的点云数据和图像数据,并在记录后调整多边形平面板的姿态再次记录新的一组点云数据和图像数据,以此收集多组与多边形平面板的姿态对应的点云数据和图像数据。
对于点云数据和图像数据的组数应不少于两组。此外,为了提高联合标定的标定精度,可在算力满足的情况下尽量多获取几组点云数据和图像数据。
在本发明实施例中,对于激光雷达和相机应保持相对位置不变,即在联合标定和使用的过程中需要保持激光雷达和相机的相对为止不变,激光雷达和相机的相对为止包括激光雷达和相机的空间位置以及激光雷达和相机的朝向等。
步骤120、在点云数据中确定点云平面点和点云边缘点。
在本发明实施例中,点云平面点为点云数据中与多边形平面板的表面对应的点云,点云边缘点为点云数据中与多边形平面板的边缘对应的点云。也就是说,在本步骤中需要将采集到的点云数据依照多边形平面板的姿态分组,然后在每个分组中确定与多边形平面板的表面对应的点云数据作为点云平面点,确定与多边形平面板的边缘对应的点云数据作为点云边缘点。
步骤130、在图像数据中确定图像平面点和图像边缘点。
在本发明实施例中,图像平面点为图像数据中与多边形平面板的表面对应的像素点,图像边缘点为图像数据中与多边形平面板的边缘对应的像素点。也就是说,在本步骤中需要将采集到的图像数据依照多边形平面板的姿态分组,然后在每个分组中确定与多边形平面板的表面对应的图像点作为图像平面点,确定与多边形平面板的边缘对应的图像点作为图像边缘点。
步骤140、基于点云平面点、点云边缘点、图像平面点和图像边缘点计算激光雷达的坐标系与相机的坐标系之间的旋转矩阵和平移向量。
在本发明实施例中,基于点云平面点、点云边缘点、图像平面点和图像边缘点的对应关系可求解获得激光雷达的坐标系与相机的坐标系之间的旋转矩阵和平移向量。
在前述步骤中通过激光雷达和相机分别获取与不同姿态下的多边形平面板对应的点云数据和图像数据,并在点云数据和图像数据中确定与多边形平面板的平面和边缘对应的点云平面点、点云边缘点、图像平面点和图像边缘点,在本步骤中可根据点云平面点、点云边缘点、图像平面点和图像边缘点的在各自的激光雷达坐标系和相机坐标系中的位置关系计算获得点云平面点、点云边缘点与图像平面点、图像边缘点的对应关系,进而获得激光雷达的坐标系与相机的坐标系之间的旋转矩阵和平移向量。
步骤150、根据旋转矩阵和平移向量对激光雷达和相机进行联合标定。
在求解获得激光雷达的坐标系与相机的坐标系之间的旋转矩阵和平移向量后,将激光雷达的坐标系按照旋转矩阵和平移向量换算至相机的坐标系下,从而完成激光雷达和相机的联合标定。
在本发明实施例中,通过激光雷达和相机同时采集多组多边形平面板在不同的姿态下的点云数据和图像数据,可获得多组对应不同姿态的多边形平面板的样本数据,从而保证联合标定过程中的数据样本量,避免了样本数据采集中的偶然性问题,保证样本数据的可靠性;从点云数据和图像数据中确定与多边形平面板对应的点云平面点、点云边缘点、图像平面点和图像边缘点,并根据点云平面点、点云边缘点、图像平面点和图像边缘点计算激光雷达的坐标系与相机的坐标系之间的旋转矩阵和平移向量,完成对激光雷达和相机的联合标定,有效的避免了使用传统的棋盘格标靶进行标定时人工参与激光雷达和相机的联合标定所带来的人为误差和时间消耗,并减少联合标定过程中的计算量。
实施例二
图2a为本发明实施例二提供的一种激光雷达和相机的联合标定方法的流程图,图2b为本发明实施例二中激光雷达和相机的联合标定的状态示意图。本实施例是在实施例一的基础上进行的细化,详细描述了基于多边形平面板203对激光雷达210和相机202进行联合标定具体操作。该方法具体包括如下步骤:
在本发明实施例中,多边形平面板203置于背景墙204前,多边形平面板203的上边缘和/或下边缘与水平方向呈夹角设置。
一般的,在对激光雷达210和相机202进行联合标定时,为避免其他物体在激光雷达210和相机202的检测范围内、对联合标定的准确性和精度造成影响,将本发明实施例中的多边形平面板203放置于干净的背景墙204之前,避免在激光雷达210和相机202的检测范围内存在其他影响检测的物体。
其中,为避免多边形平面板203的边缘与激光雷达210的激光线的扫描方向一致而造成的无法准确检测到多边形平面板203的边缘的情况,对于多边形平面板203的摆放,需要将其上边缘、下边缘或上下边缘均设置为与水平方向呈一定角度放置,以保证激光雷达210对多边形平面板203的检测可靠性。
对于多边形平面板203,可选用三角形、四边形或更多边的多边形,对于多边形平面板203不要求为正多边形。
步骤201、通过激光雷达210获取多边形平面板203在当前姿态下的点云数据。
通过激光雷达210对放置在背景墙204钱的多边形平面板203进行扫描,获取多边形平面板203在当前姿态下的点云数据。
步骤202、通过相机202获取多边形平面板203在相同姿态下的图像数据。
通过相机202对在相同姿态下的多边形平面板203进行拍摄,获取多边形平面板203在当前姿态下的图像数据。
步骤203、调整多边形平面板203的姿态。
在依次使用激光雷达210和相对对多边形平面板203进行点云数据和图像数据获取之后,对多边形平面板203的姿态进行调整,以改变多边形平面板203的姿态。
在本发明实施例中,对于多边形平面板203的姿态调整可以是向姿态调整装置发送调整信号,而姿态调整装置响应该信号对多边形平面板203的姿态进行调整。或者是向辅助人员发出提醒信息,提醒辅助人员辅助调整多边形平面板203的姿态,并在调整后发出调整完成信号。
重复上述步骤201-步骤203,获取多组点云数据和图像数据。
重复上述步骤重复采集多组不同姿态下的多边形平面板203的点云数据和图像数据,以增加激光雷达210和相机202的联合标定的样本数据,提高激光雷达210和相机202的联合标定的精度和可靠性。
步骤204、基于点云数据中每个点与激光雷达210的距离确定点云数据中的点云边缘点。
由于多边形平面板203放置在背景墙204之前,激光雷达210对多边形平面板203扫描采集多边形平面板203的点云数据时,多边形平面板203位于更靠近激光雷达210的位置,因此,可根据点云数据中的距离变化确定多边形平面板203的边缘位置。例如,在与激光雷达210的距离发生超出阈值范围的变化时判断较近的点为边缘点。或者是判断距离激光雷达210最远的点云为背景墙204,则距离激光雷达210的距离值小于到背景墙204到激光雷达210的点为多边形平面板203上的点,在距离发生变化的初始点则为多边形平面板203的边缘,即本发明实施例中所需的点云边缘点。
进一步的,步骤204包括:
步骤2041、确定点云数据中单条激光扫描线上的每个点数据与相邻的两个点数据之间的距离差值的最大值,作为点数据的参考值。
在本发明的一个实施例中,在激光雷达210中,对多边形平面板203进行扫描时,将发出多条激光扫描线对多边形平面板203进行某一方向的逐一扫描,即每条激光扫描线按照某一预设的方向进行移动扫描。
通过计算单条激光扫描线上扫过的点的距离值的差值,可判断出距离激光雷达210的距离变动的点。
步骤2042、确定参考值大于预设的阈值的点数据为参考点。
预设的阈值可选用略小于背景墙204到多边形平面板203的距离的数值。在获取出来参考值大于预设的阈值的的参考点时,即获得背景墙204与多边形平面板203的交界点(包含背景墙204和多边形平面板203相互靠近的点)。
步骤2043、确定参考点与激光雷达210的距离小于预设的参考值的参考点为点云边缘点。
由于背景墙204与激光雷达210的距离大于多边形平面板203到激光雷达210的距离,因此,可根据此条件在参考点中筛选出来代表多边形平面板203的边缘的点云边缘点。
步骤205、根据点云边缘点确定多边形平面板203的点云边缘线。
将代表多边形平面板203的点云边缘点拟合后即可获得多边形平面板203的点云边缘线。
具体的,在步骤205中可包括:
步骤2051、使用随机抽样一致算法拟合述点云边缘点确定多边形平面板203的点云边缘线。
随机抽样一致算法(RANdom SAmple Consensus,RANSAC)。它采用迭代的方式从一组包含离群的被观测数据中估算出数学模型的参数。RANSAC是一个非确定性算法,在某种意义上说,它会产生一个在一定概率下合理的结果,而更多次的迭代会使这一概率增加。在数据中随机选择几个点设定为内群;计算拟合内群的模型;把其它刚才没选到的点带入刚才建立的模型中,计算是否为内群;记下内群数量;重复以上步骤多做几次;比较哪次计算中内群数量最多,内群最多的那次所建的模型就是我们所要求的解。
在本发明实施例中,从点云边缘点中随机选择两个点作为内群,然后计算获得拟合后的点云边缘线。
步骤206、基于点云边缘线在点云数据中确定点云数据中的点云平面点。
在确定了代表多边形平面板203的点云边缘线后,结合到激光雷达210的距离判断出位于点云边缘围起的范围内的点为多边形平面板203上的点,即本发明实施例中所需的点云边缘线。
步骤207、从图像数据中识别多边形平面板203的边缘,确定多边形平面板203的图像边缘点。
在图像数据中识别多边形平面板203的边缘,可采用图像识别的方式进行识别,而图像识别技术则属于常用的技术,在此不做过多的赘述。
步骤208、基于图像边缘点确定多边形平面板203的图像平面点。
在确定了图像数据中的图像边缘点后,即可根据图像数据中的图像边缘点确定属于多边形平面板203内部的图像平面点。
步骤209、计算激光雷达210的坐标系与相机202的坐标系之间的旋转矩阵和平移向量。
在步骤209中基于如下公式计算激光雷达210的坐标系与相机202的坐标系之间的旋转矩阵和平移向量:
其中,
在一个具体的实施例中,首先,可对相机202进行标定,以获取相机202的内参矩阵。例如利用ROS或者MATLAB对相机202进行标定,获取相机202的内参矩阵K:
其中f
其中,ROS(Robot Operating System,下文简称“ROS”)是一个适用于机器人的开源的元操作系统。它提供了操作系统应有的服务,包括硬件抽象,底层设备控制,常用函数的实现,进程间消息传递,以及包管理。它也提供用于获取、编译、编写、和跨计算机运行代码所需的工具和库函数。MATLAB是美国MathWorks公司出品的商业数学软件,用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式。
然后选定正四边形标定板作为该实施例的多边形平面板203。将正四边形标定板放置于背景墙204之前,并且使正四边形标定板的边缘与水平方向成夹角放置,以避免激光雷达210无法准确的扫描到正四边形标定板的边缘。
并确定收集N(N>3)组视野中具有正四边形标定板的点云数据和图像数据,并且在每一组数据中正四边形标定板的姿态都需要改变。
然后利用Opencv在图像数据中识别出正四边形标定板的四条边缘线
OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和MacOS操作系统上。它轻量级而且高效——由一系列C函数和少量C++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
在图像数据中,正四边形标定板的第i个(0<i≤N)姿态参数表示为
且由于正四边形标定板的尺寸可通过测量得到,进而可以通过Opencv求解pnp得到正四边形标定板的姿态参数
对激光雷达210的点云数据进行处理,获得标定平面上的点
具体的,对激光雷达210的点云数据处理可包括:
独立考虑每条激光扫描线,并寻找每个点和它相邻两个点到激光雷达210的距离差的最大值:
其中,
然后可设置一个阈值M,并使M的值为略小于正四边形标定板到背景墙204的距离d,当
其中,上述筛选出来的参考点可能出现两种情况,一种在背景墙204上,靠近正四边形标定板的边缘投影的点,它距离激光雷达210的距离较远,一种在正四边形标定板上,靠近正四边形标定板的边缘,它距离激光雷达210的距离较近,我们选择距离激光雷达210较近的边缘点,也就是在正四边形标定板上的边缘点,把它们存入新的点云
其中,RANSAC算法包括:
1.从
2.通过这两个点,计算出模型方程y=ax+b;
3.将其他所有数据点带入这模型计算误差,小于误差阈值的点被归类为局内点;
4.判断局内点的数目是否足够,从而估计模型是否合理,不合理则返回第一步;
5.用所有的局内点去重新估计模型,得到一条边界的拟合直线;
6.从
对获得的点云平面点、点云边缘点、图像平面点和图像边缘点列写约束方程:
点云边缘点与点云平面点的约束方程:给定正四边形标定板的第i个姿态
其中:
点云边缘点对反投影的约束方程:给定正四边形标定板的第i个姿态,在激光雷达210坐标系中位于正四边形标定板第j个点云边缘线上的点
其中
根据约束方程生成成本函数解决最优化问题:
点云边缘点与点云平面点的成本函数:
其中,p
为了近似得到
点云边缘点对反投影的成本函数:
其中,q
为了近似得到
利用非线性最小二乘法求解点云边缘点与点云平面点的成本函数,获得较精确的旋转矩阵
具体的,可利用高斯牛顿法求解非线性最小二乘法:
设
给定初始值X
对f(x)进行一阶泰勒展开生成雅可比矩阵J(x)。
对于第K次迭代,求解J(x
求解增量方程:
J(x
当求解得到的Δx小于设定值,则得到期望解,否则令x
设
前面通过对
重复前述计算过程,得到最终的
最后,将激光雷达210扫描得到的点
若激光雷达210的点云边缘点以及点云平面点投影到相机202图像中图像平面上的正四边形标定板拟合较好则标定参数正确,否则需重新标定。
实施例三
图3为本发明实施例三提供的一种激光雷达和相机的联合标定装置的结构图。该装置包括:获取模块301、点云确定模块302、图像确定模块303、计算模块304、标定模块305。
其中:
获取模块301,用于通过激光雷达获取多边形平面板在若干姿态下的若干组点云数据,并通过相机获取所述多边形平面板在相同姿态下的若干组图像数据;
点云确定模块302,用于在点云数据中确定点云平面点和点云边缘点,点云平面点为点云数据中与多边形平面板的表面对应的点云,点云边缘点为点云数据中与多边形平面板的边缘对应的点云;
图像确定模块303,用于在图像数据中确定图像平面点和图像边缘点,图像平面点为图像数据中与多边形平面板的表面对应的像素点,图像边缘点为图像数据中与多边形平面板的边缘对应的像素点;
计算模块304,用于基于点云平面点、点云边缘点、图像平面点和图像边缘点计算激光雷达的坐标系与相机的坐标系之间的旋转矩阵和平移向量;
标定模块305,用于根据旋转矩阵和平移向量对激光雷达和相机进行联合标定。
多边形平面板置于背景墙前,多边形平面板的上边缘和/或下边缘与水平方向呈夹角设置;
获取模块301包括:
点云数据获取单元,用于通过激光雷达获取多边形平面板在当前姿态下的点云数据;
图像数据获取单元,用于通过相机获取多边形平面板在相同姿态下的图像数据:
姿态调整单元,用于调整多边形平面板的姿态;
重复单元,用于重复通过激光雷达获取多边形平面板在当前姿态下的点云数据,获取多组点云数据和图像数据。
点云确定模块302包括:
点云边缘点确定单元,用于基于点云数据中每个点与激光雷达的距离确定点云数据中的点云边缘点;
点云边缘线确定单元,用于根据点云边缘点确定多边形平面板的点云边缘线;
点云平面点确定单元,用于基于点云边缘线在点云数据中确定点云数据中的点云平面点。
点云边缘点确定单元包括:
参考值确定子单元,用于确定点云数据中单条激光扫描线上的每个点数据与相邻的两个点数据之间的距离差值的最大值,作为点数据的参考值;
参考点确定子单元,用于确定参考值大于预设的阈值的点数据为参考点;
点云边缘点确定子单元,用于确定参考点与激光雷达的距离小于预设的参考值的参考点为点云边缘点。
点云边缘线确定单元包括:
点云边缘线确定子单元,用于使用随机抽样一致算法拟合述点云边缘点确定多边形平面板的点云边缘线。
图像确定模块303包括:
图像边缘点确定单元,用于从图像数据中识别多边形平面板的边缘,确定多边形平面板的图像边缘点;
图像平面点确定单元,用于基于图像边缘点确定多边形平面板的图像平面点。
计算模块304包括:
计算子单元,用于基于如下公式计算激光雷达的坐标系与相机的坐标系之间的旋转矩阵和平移向量:
其中,
本发明实施例所提供的激光雷达和相机的联合标定装置可执行本发明任意实施例所提供的激光雷达和相机的联合标定方法,具备执行方法相应的功能模块和有益效果。
实施例四
图4为本发明实施例四提供的一种激光雷达和相机的联合标定设备的结构示意图。如图4所示,该电子设备包括处理器40、存储器41、通信模块42、输入装置43和输出装置44;电子设备中处理器40的数量可以是一个或多个,图4中以一个处理器40为例;电子设备中的处理器40、存储器41、通信模块42、输入装置43和输出装置44可以通过总线或其他方式连接,图4中以通过总线连接为例。
存储器41作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本实施例中的一种激光雷达和相机的联合标定方法对应的模块(例如,一种激光雷达和相机的联合标定装置中的获取模块301、点云确定模块302、图像确定模块303、计算模块304、标定模块305)。处理器40通过运行存储在存储器41中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的一种激光雷达和相机的联合标定方法。
存储器41可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器41可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器41可进一步包括相对于处理器40远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
通信模块42,用于与显示屏建立连接,并实现与显示屏的数据交互。输入装置43可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。
本实施例提供的一种激光雷达和相机的联合标定设备,可执行本发明任一实施例提供的激光雷达和相机的联合标定方法,具体相应的功能和有益效果。
实施例五
本发明实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种激光雷达和相机的联合标定方法,该方法包括:
通过激光雷达获取多边形平面板在若干姿态下的若干组点云数据,并通过相机获取所述多边形平面板在相同姿态下的若干组图像数据;
在所述点云数据中确定点云平面点和点云边缘点,所述点云平面点为所述点云数据中与所述多边形平面板的表面对应的点云,所述点云边缘点为所述点云数据中与所述多边形平面板的边缘对应的点云;
在所述图像数据中确定图像平面点和图像边缘点,所述图像平面点为所述图像数据中与所述多边形平面板的表面对应的像素点,所述图像边缘点为所述图像数据中与所述多边形平面板的边缘对应的像素点;
基于所述点云平面点、所述点云边缘点、所述图像平面点和所述图像边缘点计算所述激光雷达的坐标系与所述相机的坐标系之间的旋转矩阵和平移向量;
根据所述旋转矩阵和所述平移向量对所述激光雷达和所述相机进行联合标定。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任一实施例所提供的一种激光雷达和相机的联合标定方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机电子设备(可以是个人计算机,服务器,或者网络电子设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述激光雷达和相机的联合标定装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
- 激光雷达和相机的联合标定方法、装置、设备及存储介质
- 激光雷达与相机联合标定方法和装置、服务器、计算机可读存储介质