可左右滑动选省市

一种激光雷达标定方法、装置、电子设备及存储介质

更新时间:2024-07-01
一种激光雷达标定方法、装置、电子设备及存储介质 专利申请类型:发明专利;
源自:北京高价值专利检索信息库;

专利名称:一种激光雷达标定方法、装置、电子设备及存储介质

专利类型:发明专利

专利申请号:CN202011077526.1

专利申请(专利权)人:北京京东乾石科技有限公司
权利人地址:北京市大兴区北京经济技术开发区科创十一街18号院2号楼19层A1905室

专利发明(设计)人:林金表,董博

专利摘要:本发明实施例公开了一种激光雷达标定方法、装置、电子设备及存储介质。该方法包括:分别获取同一时间采集到的包含有标定物的点云数据和图像数据;从各点云数据中筛选出属于标定物上的标定数据,并根据各标定数据分别确定每条边在雷达坐标系下的边坐标;根据各边坐标分别确定标定物中每个顶点在雷达坐标系下的顶点坐标,并根据各顶点坐标、以及标定物中的标定点在标定物中的相对位置,确定标定点在雷达坐标系下的雷达坐标;将标定点在相机坐标系下的相机坐标、及雷达坐标作为一组特征点对,基于多组特征点对进行相机坐标系和雷达坐标系的标定。本发明实施例的技术方案,解决了从点云数据中提取特征点时对标定物的尺寸和摆放位置限制较大的问题。

主权利要求:
1.一种激光雷达标定方法,其特征在于,包括:
分别获取在同一时间采集到的包含有标定物的点云数据和图像数据,其中,所述标定物是多边形,且所述多边形中的每条边与至少两条点云线相交,所述点云线包括多个所述点云数据;
从各所述点云数据中筛选出属于所述标定物上的标定数据,并根据各所述标定数据分别确定每条所述边在雷达坐标系下的边坐标;
根据各所述边坐标分别确定所述标定物中每个顶点在所述雷达坐标系下的顶点坐标,并根据各所述顶点坐标、以及所述标定物中的标定点在所述标定物中的相对位置,确定所述标定点在所述雷达坐标系下的雷达坐标;
将所述标定点在相机坐标系下的相机坐标、及所述雷达坐标作为一组特征点对,基于多组所述特征点对进行所述相机坐标系和所述雷达坐标系的标定;
其中,所述多边形内设置有曲边形,将所述曲边形中的一个点作为所述标定物的标定点;
所述从各所述点云数据中筛选出属于所述标定物上的标定数据,包括:
从各所述点云数据中筛选出属于同一平面上的平面数据,并从各所述平面数据构成的平面集合中筛选出端点数据;
将各所述端点数据构成的对角线的第一长度、与所述标定物相应的对角线的第二长度进行对比,并根据对比结果从各所述点云数据中筛选出属于所述标定物上的标定数据,包括:根据各所述端点数据确定其构成的对角线的第一长度;将所述标定物的对角线的长度作为第二长度;在所述第一长度和所述第二长度间的差值小于预设长度阈值时,确定所述平面集合对应的同一平面为标定物所在的平面,将平面数据作为隶属于所述标定物上的标定数据。
2.根据权利要求1所述的方法,其特征在于,所述根据对比结果从各所述点云数据中筛选出属于所述标定物上的标定数据,包括:若根据对比结果确定出所述同一平面不是所述标定物所在的平面,则从各所述点云数据中剔除所述平面数据,并根据剔除结果更新所述点云数据;
重复执行从各所述点云数据中筛选出属于同一平面上的平面数据的步骤,直至所述同一平面是所述标定物所在的平面;
将所述平面数据作为属于所述标定物上的标定数据。
3.根据权利要求1所述的方法,其特征在于,所述根据各所述标定数据分别确定每条所述边在雷达坐标系下的边坐标,包括:获取各所述标定数据构成的多条标定线,确定每条所述标定线在扫描方向上的边缘数据,并根据各所述边缘数据分别确定每条所述边在雷达坐标系下的边坐标。
4.根据权利要求1所述的方法,其特征在于,所述标定物包括四边形标定物,所述四边形标定物内设置有与至少两条所述边相切的曲边形,所述标定点是所述曲边形的中心点。
5.根据权利要求4所述的方法,其特征在于,所述多边形包括方形,所述曲边形包括圆形,所述圆形与所述顶点相连的两条所述边相切;
相应的,所述根据各所述顶点坐标、以及所述标定物中的标定点在所述标定物中的相对位置,确定所述标定点在所述雷达坐标系下的雷达坐标,包括:各所述顶点包括上顶点、左顶点和右顶点,通过如下公式确定出与所述上顶点相邻的所述标定点在所述雷达坐标系下的雷达坐标Ptop:其中,Ctop是所述上顶点在所述雷达坐标系下的上顶点坐标,Cleft是所述左顶点在所述雷达坐标系下的左顶点坐标,Cright是所述右顶点在所述雷达坐标系下的右顶点坐标,w是各所述边中第一边的长度,h是各所述边中与所述第一边相垂直的第二边的长度,r是所述圆形的半径。
6.根据权利要求1所述的方法,其特征在于,所述基于多组所述特征点对进行所述相机坐标系和所述雷达坐标系的标定,包括:基于多组所述特征点对确定所述相机坐标系到所述雷达坐标系的坐标变化关系,根据所述坐标变化关系对所述相机坐标系和所述雷达坐标系进行标定。
7.一种激光雷达标定装置,其特征在于,包括:
数据获取模块,用于分别获取在同一时间采集到的包含有标定物的点云数据和图像数据,其中,所述标定物是多边形,且所述多边形中的每条边与至少两条点云线相交,所述点云线包括多个所述点云数据;
边坐标确定模块,用于从各所述点云数据中筛选出属于所述标定物上的标定数据,并根据各所述标定数据分别确定每条所述边在雷达坐标系下的边坐标;
雷达坐标确定模块,用于根据各所述边坐标分别确定所述标定物中每个顶点在所述雷达坐标系下的顶点坐标,并根据各所述顶点坐标、以及所述标定物中的标定点在所述标定物中的相对位置,确定所述标定点在所述雷达坐标系下的雷达坐标;
激光雷达标定模块,用于将所述标定点在相机坐标系下的相机坐标、及所述雷达坐标作为一组特征点对,基于多组所述特征点对进行所述相机坐标系和所述雷达坐标系的标定;
其中,所述多边形内设置有曲边形,将所述曲边形中的一个点作为所述标定物的标定点;
所述边坐标确定模块,包括:端点数据筛选单元和标定数据确定单元;
所述端点数据筛选单元,用于从各点云数据中筛选出属于同一平面上的平面数据,并从各平面数据构成的平面集合中筛选出端点数据;所述标定数据确定单元,用于将各端点数据构成的对角线的第一长度、与标定物相应的对角线的第二长度进行对比,根据对比结果从各点云数据中筛选出属于标定物上的标定数据;
所述标定数据确定单元,具体用于根据各所述端点数据确定其构成的对角线的第一长度;将所述标定物的对角线的长度作为第二长度;在所述第一长度和所述第二长度间的差值小于预设长度阈值时,确定所述平面集合对应的同一平面为标定物所在的平面,将平面数据作为隶属于所述标定物上的标定数据。
8.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1‑6中任一所述的激光雷达标定方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1‑6中任一所述的激光雷达标定方法。 说明书 : 一种激光雷达标定方法、装置、电子设备及存储介质技术领域[0001] 本发明实施例涉及激光雷达标定领域,尤其涉及一种激光雷达标定方法、装置、电子设备及存储介质。背景技术[0002] 随着人工智能技术的快速发展,能够替代人类工作的自动化设备受到越来越多的关注,如无人车、无人机、机械手等等。这些自动化设备往往配置多种传感器以感知周围环境信息进行作业,在此基础上,由于激光雷达和摄像头的感知信息可互相补充,它们是自动化设备上常见的传感器。[0003] 对于同时配置有激光雷达和摄像头的自动化设备而言,二者的标定是两个传感器数据进行融合的前提。其中,激光雷达到摄像头的标定工作是确定一个三维旋转矩阵和平移向量,它们可以表示激光雷达坐标系到相机坐标系的相互转换关系,根据该相互转换关系可以将激光雷达坐标系上的点云数据投影到相机坐标系上,由此实现了点云数据和图像数据的融合。[0004] 目前常用的激光雷达到摄像头的标定工作主要通过具有明显特征的标定物完成,其从点云数据和图像数据中分别提取与该明显特征相应的特征点以组成特征点对,进而根据各特征点对进行雷达坐标系和相机坐标系的标定。[0005] 在实现本发明的过程中,发明人发现现有技术中存在以下技术问题:现有的从点云数据中提取特征点的提取方案对标定物的尺寸和摆放位置有较大限制,这给标定工作的便利性带来了较大干扰。发明内容[0006] 本发明实施例提供了一种激光雷达标定方法、装置、电子设备及存储介质,解决了从点云数据中提取特征点时对标定物的尺寸和摆放位置限制较大的问题。[0007] 第一方面,本发明实施例提供了一种激光雷达标定方法,可以包括:[0008] 分别获取在同一时间采集到的包含有标定物的点云数据和图像数据,其中,标定物是多边形,且多边形中的每条边与至少两条点云线相交,点云线包括多个点云数据;从各点云数据中筛选出属于标定物上的标定数据,并根据各标定数据分别确定每条边在雷达坐标系下的边坐标;根据各边坐标分别确定标定物中每个顶点在雷达坐标系下的顶点坐标,并根据各顶点坐标、以及标定物中的标定点在标定物中的相对位置,确定标定点在雷达坐标系下的雷达坐标;将标定点在相机坐标系下的相机坐标、及雷达坐标作为一组特征点对,基于多组特征点对进行相机坐标系和雷达坐标系的标定。[0009] 可选的,从各点云数据中筛选出属于标定物上的标定数据,可以包括:[0010] 从各点云数据中筛选出属于同一平面上的平面数据,并从各平面数据构成的平面集合中筛选出端点数据;将各端点数据构成的对角线的第一长度、与标定物相应的对角线的第二长度进行对比,根据对比结果从各点云数据中筛选出属于标定物上的标定数据。[0011] 可选的,根据对比结果从各点云数据中筛选出属于标定物上的标定数据,可以包括:[0012] 若根据对比结果确定出同一平面不是标定物所在的平面,则从各点云数据中剔除平面数据,并根据剔除结果更新点云数据;重复执行从各点云数据中筛选出属于同一平面上的平面数据的步骤,直至同一平面是标定物所在的平面;将平面数据作为属于标定物上的标定数据。[0013] 可选的,根据各标定数据分别确定每条边在雷达坐标系下的边坐标,包括:[0014] 获取各标定数据构成的多条标定线,确定每条标定线在扫描方向上的边缘数据,并根据各边缘数据分别确定每条边在雷达坐标系下的边坐标。[0015] 可选的,标定物包括四边形标定物,四边形标定物内设置有与至少两条边相切的曲边形,标定点是曲边形的中心点。[0016] 可选,多边形包括方形,曲边形包括圆形,圆形与顶点相连的两条边相切;[0017] 相应的,根据各顶点坐标、以及标定物中的标定点在标定物中的相对位置,确定标定点在雷达坐标系下的雷达坐标,可以包括:[0018] 各顶点包括上顶点、左顶点和右顶点,通过如下公式确定出与上顶点相邻的标定点在雷达坐标系下的雷达坐标Ptop:[0019][0020] 其中,Ctop是上顶点在雷达坐标系下的上顶点坐标,Cleft是左顶点在雷达坐标系下的左顶点坐标,Cright是右顶点在雷达坐标系下的右顶点坐标,w是各边中第一边的长度,h是各边中与第一边相垂直的第二边的长度,r是圆形的半径。[0021] 可选的,基于多组特征点对进行相机坐标系和雷达坐标系的标定,可包括:[0022] 基于多组特征点对确定相机坐标系到雷达坐标系的坐标变化关系,根据坐标变化关系对相机坐标系和雷达坐标系进行标定。[0023] 第二方面,本发明实施例还提供了一种激光雷达标定装置,可以包括:[0024] 数据获取模块,用于分别获取在同一时间采集到的包含有标定物的点云数据和图像数据,其中,标定物是多边形,且多边形中的每条边与至少两条点云线相交,点云线包括多个点云数据;[0025] 边坐标确定模块,用于从各点云数据中筛选出属于标定物上的标定数据,并根据各标定数据分别确定每条边在雷达坐标系下的边坐标;[0026] 雷达坐标确定模块,用于根据各边坐标分别确定标定物中每个顶点在雷达坐标系下的顶点坐标,并根据各顶点坐标、以及标定物中的标定点在标定物中的相对位置,确定标定点在雷达坐标系下的雷达坐标;[0027] 激光雷达标定模块,用于将标定点在相机坐标系下的相机坐标、及雷达坐标作为一组特征点对,基于多组特征点对进行相机坐标系和雷达坐标系的标定。[0028] 第三方面,本发明实施例还提供了一种电子设备,该电子设备可以包括:[0029] 一个或多个处理器;[0030] 存储器,用于存储一个或多个程序;[0031] 当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本发明任意实施例所提供的激光雷达标定方法。[0032] 第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本发明任意实施例所提供的激光雷达标定方法。[0033] 本发明实施例的技术方案,通过分别获取在同一时间采集到的包含有多边形状的标定物的点云数据和图像数据,从各点云数据中筛选出属于标定物上的标定数据,且由于多边形中的每条边与至少两条点云线相交,这意味着根据各标定数据可以分别确定每条边在雷达坐标系下的边坐标;进而,根据各边坐标可以确定标定物中各顶点在该雷达坐标系下的顶点坐标,并根据各顶点坐标、及标定物中的标定点在标定物中的相对位置,确定标定点在该雷达坐标系下的雷达坐标;由此,可以将标定点在相机坐标系下的相机坐标、及雷达坐标作为一组特征点对,并基于多组特征点对进行相机坐标系和雷达坐标系间的标定。上述技术方案,通过多边形中各条边的边坐标可以确定出特征点的雷达坐标,这意味着多边形中的每条边与至少两条点云线相交时,即可从各点云数据中提取出特征点,这对标定物的尺寸和摆放位置的限制较小,由此提高了标定物在制作和使用方面的便利性,进而提高了标定工作的便利性。附图说明[0034] 图1是现有技术中的标定物的示意图;[0035] 图2是本发明各实施例中的一种激光雷达标定方法中标定物的示意图;[0036] 图3是本发明实施例一中的一种激光雷达标定方法的流程图;[0037] 图4是本发明实施例一中的一种激光雷达标定方法中标定物的摆放示意图;[0038] 图5是本发明实施例一中的一种激光雷达标定方法中点云数据的示意图;[0039] 图6是本发明实施例二中的一种激光雷达标定方法的流程图;[0040] 图7是本发明实施例三中的一种激光雷达标定方法的流程图;[0041] 图8是本发明实施例四中的一种激光雷达标定装置的结构框图;[0042] 图9是本发明实施例五中的一种电子设备的结构示意图。具体实施方式[0043] 下面结合附图和实施例对本发明作进一步详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。[0044] 在介绍本发明实施例之前,先对本发明实施例的应用场景进行示例性说明:目前常用的激光雷达到摄像头的标定工作中涉及到的标定物可以是如图1所示的带有圆洞的平板,该标定工作是根据各点云数据中深度显著变化的点云数据拟合出4个圆形,再根据拟合结果得到4个圆心的坐标,该坐标可以作为特征点对中的一个特征点。换言之,该标定工作需要保证每个圆与至少两条点云线相交,这是因为至少三个不共线的点云数据才可以拟合出一个圆形。[0045] 需要说明的是,对于多线激光雷达而言,例如16线激光雷达,其对标定物进行扫描是以锥形束的方式向外发射多条高低不同的扫描线,这意味着当各条扫描线与激光雷达的距离越远时,彼此间的稀疏程度越大。此时,为保证每个圆与至少两条点云线相交,一种可选方案是,标定物与激光雷达间的摆放距离足够近,此时对标定物的尺寸没有具体限制,但对标定物的摆放位置存在限制;另一可选方案是,标定物的尺寸足够大,此时标定物可摆放在任意位置,而且考虑到摄像头的焦点通常在远处,摄像头和激光雷达摆放在同一处,这种可选方案有利于摄像头拍摄到标定物的清晰的图像数据,这是后续从图像数据中提取特征点的重要前提。由上可知,现有的从点云数据中提取特征点的提取方案对标定物的尺寸和摆放位置具有较大限制,这样的标定物需要特殊订制,这给标定工作的便利性带来了较大干扰。[0046] 为了解决上述问题,本发明各实施例提出的激光雷达标定方法只需标定物是多边形,且多边形中的每条边与至少两条点云线相交即可完成标定工作,这意味着其对标定物的摆放位置和尺寸均没有具体限制,例如,可以将标定物摆放在摄像头能够清晰对焦的坐标处,且标定物的尺寸无需足够大,也不需要对标定物进行挖洞,这样的标定物无需特殊订制,制作过程和使用过程的便利性较高,可以更好地应用于16线激光雷达中。示例性的,上述标定物的外围形状可以是三角形、方形(如正方形、长方形)、五边形、六边形等;在此基础上,可选的,该多边形内可以设置有曲边形,如圆形、椭圆形等,这样设置的好处在于,可以将曲边形中的某个点(如中心点、角点)作为标定物中的标定点,在此基础上,还可以将该标定点的坐标作为标定工作中的特征点。示例性的,以图2所示的标定物为例,该标定物的外围形状是长方形,其内设置有4个圆形,每个圆形与两条边相切,该两条边是与同一顶点相连的边,每个圆形的圆心均可以作为该标定物的标定点。上述标定物的制作过程较为简单,例如可以先打印出4个圆形,并将该4个圆形直接粘在一个方形木板的四个角落上;再如可直接在某方形木板上画4个圆形;等等,在此未做具体限定。[0047] 实施例一[0048] 图3是本发明实施例一中提供的一种激光雷达标定方法的流程图。本实施例可以适用于激光雷达标定的情况,尤其适用于在对标定物的摆放位置和尺寸没有限制的前提下,进行激光雷达标定的情况。该方法可以由本发明实施例提供的激光雷达标定装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在电子设备上,该电子设备可以是各种用户终端或是服务器。[0049] 参见图3,本发明实施例的方法具体包括如下步骤:[0050] S110、分别获取在同一时间采集到的包含有标定物的点云数据和图像数据,其中,标定物是多边形,且该多边形中的每条边与至少两条点云线相交,该点云线包括多个点云数据。[0051] 其中,将标定物摆放在激光雷达传感器的扫描方向,控制激光雷达传感器对标定物进行扫描后得到包含有该标定物的点云数据,该激光雷达传感器可以是能够扫描到点云数据的传感器,如多线激光雷达;该激光雷达传感器的扫描结果可以是多条点云线,每条点云线包括多个点云数据,该多个点云数据可能包括隶属于该标定物上的点云数据,也可能包括隶属于该标定物以外的物体上的点云数据,且由于两点构成一条直线,在多边形中的每条边与至少两条点云线相交时,根据该边上的点云数据可以确定出该边在该激光雷达传感器对应的雷达坐标系下的坐标,这样的坐标可以称为边坐标。[0052] 相应的,图像数据的获取过程类似,可选的,标定物的摆放位置也是相机传感器的拍摄方向,控制该相机传感器对标定物进行拍摄后得到包含有该标定物的图像数据,该相机传感器可以是能够拍摄到图像数据的传感器,如摄像头、数码相机等,该相机传感器对应的坐标系可以是相机坐标系。需要说明的是,每帧图像数据和每帧点云数据在时间上具有一一对应关系,即,每帧图像数据均对应有一帧与其在同一时间采集到的点云数据,反之亦然成立。[0053] 考虑到本发明实施例可能涉及到的应用场景,可选的,以图4为例,上述各点云数据的获取过程可以是:将标定物倾斜一定角度固定起来,如将标定物倾斜45°后用细脚支架支撑、或者用细线吊起来,倾斜后的标定物可以避免因其中的某条边与点云线平行而无法相交的情况出现。标定物的周围尽可能不要出现其余物体,这些其余物体可能会对从点云数据中提取出特征点造成干扰。小幅度移动多线激光雷达,并在不同方位采集点云数据。在移动过程中,可以尽可能保证标定物中的每条边与多线激光雷达发射的至少两条扫描线相交,这是后续实现每条边与至少两条点云线相交的重要前提。在此基础上,可选的,为保证后续的边坐标的确定精度,可以将标定物的尺寸制作的大一些,以便每条边可以与更多的点云线相交,由此可以避免出现因某个点云数据是噪声点而对边坐标的确定精度造成影响的情况。除此之外,还可以尽可能保证标定物中的各个顶点出现在每帧点云数据中,且不同帧的点云数据中标定物的坐标具有差异性。例如,多线激光雷达在某一时间扫描得到的一帧点云数据如图5所示,该帧点云数据包括多条点云线,属于同一颜色的每条点云线上的各点云数据是基于同一扫描线扫描到的数据,每个点云数据可同时记录其坐标和隶属于哪条扫描线。图5中的各点云线构成的方形区域(即,虚线区域)是标定物所在的区域,其余的点云线可以是扫描线打在标定物之外的墙上后反射回来的线条。需要说明的是,在实际应用中,图5所示的点云线可以是彩色线条,此处已将其转化为灰度线条。当然,图像数据的采集过程与点云数据类似,例如小幅度移动相机传感器,并在移动过程中从不同方位对标定物进行拍摄。[0054] S120、从各点云数据中筛选出属于标定物上的标定数据,并根据各标定数据分别确定每条边在雷达坐标系下的边坐标。[0055] 其中,有些点云数据是扫描线打在标定物后反射回来的数据,而有些点云数据是扫描线打在标定物之外的其余物体上反射回来的数据,该其余物体可以是设置于标定物一侧的墙体。因此,为了提高后续根据各点云数据确定特征点的精度,可以先从各点云数据中筛选出属于标定物上的标定数据,该标定数据是那些打在标定物上反射回来的数据。当然,为了提高各标定数据的确定精度,可选的,先根据标定物和激光雷达传感器间的相对位置确定标定物在每帧点云数据中的目标范围,再从隶属于该目标范围中的各点云数据中筛选出标定数据。[0056] 进一步,由于各标定数据均是标定物上的点云数据,那么根据各标定数据可以分别确定每条边在雷达坐标系下的边坐标,如获取各标定数据构成的多条标定线,该标定线是上文所述的点云线,且该标定线上的每个点云数据均是标定数据;确定每条标定线在扫描方向上的边缘数据,扫描方向是激光雷达传感器进行扫描时的方向,如水平方向、垂直方向等,该边缘数据是标定线在扫描方向上的最边缘的标定数据,例如扫描方向是水平方向时,该边缘数据可以是标定线上的最左边的标定数据和最右边的标定数据,再如扫描方向是垂直方向时,该边缘数据可以是标定线上的最上边的标定数据和最下边的标定数据,[0057] 再进一步,根据各个边缘数据分别确定每条边在雷达坐标系下的边坐标,例如根据隶属于一侧的各边缘数据确定在该侧的边在雷达坐标系下的边坐标,示例性的,以图5中标定物所在的虚线区域为例,各边缘数据包括每条标定线上的最左边的标定数据Pleft和最右边的标定数据Pright,在各Pleft中,基于随机抽样一致算法(RandomSampleConsensus,RANSAC)拟合左侧长边(即,位于左上角的边)的直线方程,并根据各Pleft中除该左侧长边上的边缘数据以外的各边缘数据拟合左侧短边(即,位于左下角的边)的直线方程,Pright的处理过程类似,依次得到右侧长边和右侧短边的直线方程,这些直线方程可以表示出每条边在雷达坐标系下的边坐标。[0058] S130、根据各边坐标分别确定标定物中每个顶点在雷达坐标系下的顶点坐标,并根据各顶点坐标、以及标定物中的标定点在标定物中的相对位置,确定标定点在雷达坐标系下的雷达坐标。[0059] 其中,由于各条扫描线较为稀疏,在基于各扫描线对标定物进行扫描时,可能出现并未扫描到该标定物的顶点的情况,该顶点是多边形的顶点,即上文所述的边缘数据不一定是对顶点进行扫描后得到的点云数据,这意味着根据各点云数据可能无法直接得到顶点在雷达坐标系下的顶点坐标。此时,可以先拟合出每条边坐标,再根据各边坐标分别确定标定物中的各顶点坐标,如将根据各条边的边坐标确定出的各条边的交点所在的坐标作为相应的顶点坐标。[0060] 进一步,标定物中设置有标定点,其是预先设定的用于进行标定的特征点,如标定物的中心点、设置于标定物内的曲边形的中心点等等,因此该标定点在标定物中的相对位置是可以预先得到的信息,此时根据各顶点坐标、及标定物中标定点在标定物中的相对位置,可确定该标定点在雷达坐标系下的雷达坐标,其可以作为标定工作中涉及到的特征点对中的一个特征点。[0061] S140、将标定点在相机坐标系下的相机坐标、及雷达坐标作为一组特征点对,基于多组特征点对进行相机坐标系和雷达坐标系的标定。[0062] 其中,相机坐标是标定点在相机坐标系下的坐标,其可以是在标定工作中涉及到的特征点对中的另一个特征点。根据图像数据确定标定点在相机坐标系下的相机坐标有多种实现方案,如根据相机传感器的畸变参数对图像数据去畸变;利于canny、sobe等边缘提取算子从图像数据中提取边缘特征图;最后利用hough变换对边缘特征图中的线条进行检测,并根据检测结果确定标定点的相机坐标,示例性,如标定点是设置于标定物内圆形的圆心,则可利用hough变换对边缘特征图中的圆形进行检测,并根据检测出的圆形确定圆心的坐标。实际应用中,可选的,在制作标定物时,可以将圆形和多边形设置出差异显著的颜色,这可以提高hough变换对圆形的检测精度。[0063] 需要说明的是,在实际应用中,可选的,在同一时间采集到的图像数据和点云数据可以作为一组数据,以每组数据为单位执行上述相机坐标和雷达坐标的确定步骤。而且,二者的确定过程没有严格的先后顺序,二者可以同时确定或是先后确定,在此未做具体限定。另外,若某组数据中的雷达坐标和/或相机坐标提取失败,则可以跳过该组数据,并从下一组数据中继续提取。[0064] 由此,将雷达坐标和相机坐标作为一组特征点对,即,每个标定点在雷达坐标系下的三维特征点(即,雷达坐标qi)和在相机坐标系下的二维特征点(即,相机坐标pi)是一组特征点对(pi,qi),在实际应用中,标定物上的标定点的数量可以是至少三个,即每组数据中特征点对的数量可以是至少三个。在获取到多组特征点对后,可以根据它们对相机坐标系和雷达坐标系进行标定。[0065] 本发明实施例的技术方案,通过分别获取在同一时间采集到的包含有多边形状的标定物的点云数据和图像数据,从各点云数据中筛选出属于标定物上的标定数据,且由于多边形中的每条边与至少两条点云线相交,这意味着根据各标定数据可以分别确定每条边在雷达坐标系下的边坐标;进而,根据各边坐标可以确定标定物中各顶点在该雷达坐标系下的的顶点坐标,并根据各顶点坐标、及标定物中的标定点在标定物中的相对位置,确定标定点在该雷达坐标系下的雷达坐标;由此,可以将标定点在相机坐标系下的相机坐标、及雷达坐标作为一组特征点对,并基于多组特征点对进行相机坐标系和雷达坐标系间的标定。上述技术方案,通过多边形中各条边的边坐标可以确定出特征点的雷达坐标,这意味着多边形中的每条边与至少两条点云线相交时,即可从各点云数据中提取出特征点,这对标定物的尺寸和摆放坐标的限制较小,由此提高了标定物在制作和使用方面的便利性,进而提高了标定工作的便利性。[0066] 一种可选的技术方案,标定物可以包括四边形标定物,如正方形、长方形、平行四边形状的标定物;该四边形标定物内设置有与至少两条边相切的曲边形,如在四边形标定物的四个顶点的附近分别设置有与该顶点相连的两条边相切的曲边形,再如在长方形标定物内设置有与三条边相切的曲边形,再如在正方形标定物内设置有与四条边均相切的曲边形等,该曲边形可以是圆形、椭圆形等;该标定点可以是曲边形的中心点,如圆形的圆心等。[0067] 在此基础上,可选的,若多边形是方形,曲边形是圆形,圆形与顶点相连的两条边相切,示例性的,如图2所示,此时,根据各顶点坐标、以及标定物中的标定点在标定物中的相对位置,确定标定点在雷达坐标系下的雷达坐标,具体可包括:各顶点包括上顶点、左顶点和右顶点,通过如下公式确定出与上顶点相邻的标定点在雷达坐标系下的雷达坐标Ptop:[0068][0069] 其中,Ctop是上顶点在雷达坐标系下的上顶点坐标,Cleft是左顶点在雷达坐标系下的左顶点坐标,Cright是右顶点在雷达坐标系下的右顶点坐标,w是各边中第一边的长度,h是各边中与第一边相垂直的第二边的长度,r是圆形的半径。为了更好地理解上述公式,以图4为例,cleft‑ctop表示位于左上角的边所在的方向,(cleft‑ctop)/w表示该方向上的单元向量,(cright‑ctop)/h的含义类似;然后,在ctop的基础上沿着这两个单元向量去除掉该半径,即可得到圆心的坐标Ptop。当然,与其余顶点相邻的圆心在雷达坐标系下的雷达坐标的确定过程相类似,在此不再赘述。[0070] 需要说明的是,如图2所示的标定物的设置方式仅是一个可选而非唯一的方式,在从对这样设置出的标定物进行扫描后得到的点云数据中提取特征点、或是进行拍摄后得到的图像数据中提取特征点的提取过程较为简单且提取精度较佳,且根据多个特征点对进行标定时可以提高标定工作的标定精度。其中,通常情况下,设置于四边形中的圆形的数量可以是三个及其以上,这是因为基于至少三个特征点能够完成标定工作。[0071] 实施例二[0072] 图6是本发明实施例二中提供的一种激光雷达标定方法的流程图。本实施例以上述各技术方案为基础进行优化。在本实施例中,可选的,从各点云数据中筛选出属于标定物上的标定数据,具体可以包括:从各点云数据中筛选出属于同一平面上的平面数据,并从各平面数据构成的平面集合中筛选出端点数据;将各端点数据构成的对角线的第一长度、与标定物相应的对角线的第二长度进行对比,根据对比结果从各点云数据中筛选出属于标定物上的标定数据。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。[0073] 参见图6,本实施例的方法具体可以包括如下步骤:[0074] S210、分别获取在同一时间采集到的包含有标定物的点云数据和图像数据,其中,标定物是多边形,且多边形中的每条边与至少两条点云线相交,点云线包括多个点云数据。[0075] S220、从各点云数据中筛选出属于同一平面上的平面数据,并从各平面数据构成的平面集合中筛选出端点数据。[0076] 其中,各点云数据并非是隶属于同一平面上的数据,有些点云数据可能是隶属于标定物所在的平面上的数据,有些点云数据可能是隶属于标定物一侧的墙体所在的平面上的数据,等等。为此,可以先从各点云数据中筛选出隶属于同一平面上的平面数据,如采用RANSAC算法提取平面数据,该平面数据可能是标定物所在的平面上的点云数据,也可能是其余平面上的点云数据,将这些平面数据构成的点云集合称为平面集合。在实际应用中,可选的,由于该平面集合中的某些点云数据可能是离群点,该离群点可以认为是噪声点,其可能是该平面集合所在的平面的周围的噪声点,此时可以基于统计滤波等算法去除掉该离群点,由此提高了后续的端点数据的筛选精度。[0077] 进一步,从各平面数据构成的平面集合中筛选出端点数据,该端点数据是该平面集合中位于极端位置上的点云数据,例如位于最上端ftop、最下端fbottom、最左端fleft和/或最右端fright的点云数据。需要说明的是,由于各条扫描线较为稀疏,在基于各扫描线对标定物进行扫描时,可能出现并未扫描到该标定物的顶点的情况,即这些端点数据不一定是对顶点进行扫描后得到的点云数据。[0078] S230、将各端点数据构成的对角线的第一长度、与标定物相应的对角线的第二长度进行对比,根据对比结果从各点云数据中筛选出属于标定物上的标定数据,并根据各标定数据分别确定每条边在雷达坐标系下的边坐标。[0079] 其中,由于点云数据包括自身的坐标,根据各端点数据可以确定其构成的对角线的第一长度。在此基础上,将标定物的对角线的长度作为第二长度,则将第一长度和第二长度进行对比可以确定出该平面集合对应的同一平面是否为标定物所在的平面,如在第一长度和第二长度间的差值小于预设长度阈值时,该同一平面为标定物所在的平面,此时可以将平面数据作为隶属于标定物上的标定数据。示例性的,以标定物是四边形标定物为例,令2 2d1=||fleft‑fright||、d2=||ftop‑fbottom||,d=sqrt(w+h),即d是第二长度,d1和d2均是第一长度,若d‑a[0080] 当然,在此基础上,可选的,若根据对比结果确定出同一平面不是标定物所在的平面,则可以从各点云数据中剔除平面数据,并根据剔除结果更新点云数据,即仅保留各点云数据中除各平面数据之外的点云数据;重复执行上述从各点云数据中筛选出属于同一平面上的平面数据的步骤,直至同一平面是标定物所在的平面;将平面数据作为属于标定物上的标定数据。在此基础上,可选,若保留下来的点云数据的数量过少,可以直接给出标定数据提取失败的提示。[0081] S240、根据各边坐标分别确定标定物中每个顶点在雷达坐标系下的顶点坐标,并根据各顶点坐标、以及标定物中的标定点在标定物中的相对位置,确定标定点在雷达坐标系下的雷达坐标。[0082] S250、将标定点在相机坐标系下的相机坐标、及雷达坐标作为一组特征点对,基于多组特征点对进行相机坐标系和雷达坐标系的标定。[0083] 本发明实施例的技术方案,通过从各点云数据中筛选出的属于同一平面上的各平面数据构成的平面集合中筛选出端点数据,进而根据各端点数据构成的对角线的第一长度、与标定物相应的对角线的第二长度进行对比,可以从各点云数据中筛选出属于标定物上的标定数据,该对角线的长度的对比方式既简单又高效,由此提高了标定数据的提取效率和提取精度。[0084] 实施例三[0085] 图7是本发明实施例三中提供的一种激光雷达标定方法的流程图。本实施例以上述各技术方案为基础进行优化。在本实施例中,可选的,基于多组特征点对进行相机坐标系和雷达坐标系的标定,具体可以包括:基于多组特征点对确定相机坐标系到雷达坐标系的坐标变化关系,根据坐标变化关系对相机坐标系和雷达坐标系进行标定。其中,与上述各实施例相同或相应的术语的解释,在此不再赘述。[0086] 参见图7,本实施例的方法具体可以包括如下步骤:[0087] S310、分别获取在同一时间采集到的包含有标定物的点云数据和图像数据,其中,标定物是多边形,且多边形中的每条边与至少两条点云线相交,点云线包括多个点云数据。[0088] S320、从各点云数据中筛选出属于标定物上的标定数据,并根据各标定数据分别确定每条边在雷达坐标系下的边坐标。[0089] S330、根据各边坐标分别确定标定物中每个顶点在雷达坐标系下的顶点坐标,并根据各顶点坐标、以及标定物中的标定点在标定物中的相对位置,确定标定点在雷达坐标系下的雷达坐标。[0090] S340、将标定点在相机坐标系下的相机坐标和雷达坐标作为一组特征点对,基于多组特征点对确定相机坐标系到雷达坐标系的坐标变化关系,根据坐标变化关系对相机坐标系和雷达坐标系进行标定。[0091] 其中,每个标定点在雷达坐标系下的三维特征点(即,雷达坐标qi)和在相机坐标系下的二维特征点(即,相机坐标pi)是一组特征点对(pi,qi),实际应用中,标定物上的标定点的数量可以是至少三个,即每组数据中特征点对的数量可以是至少三个。汇总各组数据的特征点对,根据这些特征点对确定雷达坐标系到相机坐标系间的坐标变化关系,进而根据该坐标变化关系可以对相机坐标系和雷达坐标系进行标定。[0092] 需要说明的是,这一坐标变化关系的确定过程可以是典型的PnP(PerspectiveNPoints)问题,其可以通过多种方式进行运算,例如P3P、直接线性变换(DLT)、EPnP(EfficientPnP)、UPnP、BundleAdjustment等等,通过运算结果可以得到该坐标变化关系,该坐标变化关系可以认为是标定结果。[0093] 这里以DLT为例进行说明:[0094] 对于特征点对(pi,qi),记录其对应的齐次坐标分别为pi=[u,v,1]T以及qi=[x,y,Tz,1]。令相机传感器的内参矩阵为[0095][0096] 那么,从雷达坐标系到相机坐标系的投影关系为[0097][0098] 其中,R为三维旋转矩阵,t为平移向量,它们描述了雷达坐标系到相机坐标系的坐标变化关系。对R和t进行展开,结果是:[0099][0100] 消去,得到[0101][0102] 也就是说,对于一组特征点对(pi,qi),我们可以得到方程Bia=0。其中Bi为由(pi,qi)及K组成的矩阵,a为由三维旋转矩阵和平移向量的系数组成的向量。[0103] 汇总全部的特征点对,可以得到约束方程Ba=0。这个方程无法求出精确解,但是2可以获得一个|a|=1约束下的最小二乘解argmin||Ba||。[0104] 1.根据全部特征点对及相机内参,得到矩阵B;[0105] 2.对B执行SVD分解,有[U ΣV]=SVD(B)。[0106] 3.取V矩阵的最后一列,记为 取 的9个分量,组成三维旋转矩阵[0107][0108] 4.对R执行SVD分解,有[0109] 5.计算缩放因子β。β满足 且[0110][0111] 6.最优旋转矩阵R为 平移向量t为[0112] 本发明实施例的技术方案,通过基于多组特征点对确定相机坐标系到雷达坐标系的坐标变化关系,并根据坐标变化关系对相机坐标系和雷达坐标系进行标定,由此实现了相机坐标系和雷达坐标系间的准确标定的效果。[0113] 实施例四[0114] 图8为本发明实施例四提供的激光雷达标定装置的结构框图,该装置用于执行上述任意实施例所提供的激光雷达标定方法。该装置与上述各实施例的激光雷达标定方法属于同一个发明构思,在激光雷达标定装置的实施例中未详尽描述的细节内容,可以参考上述激光雷达标定方法的实施例。参见图8,该装置具体可以包括:数据获取模块410、边坐标确定模块420、雷达坐标确定模块430和激光雷达标定模块440。[0115] 其中,数据获取模块410,用于分别获取在同一时间采集到的包含有标定物的点云数据和图像数据,其中,标定物是多边形,且多边形中的每条边与至少两条点云线相交,点云线包括多个点云数据;[0116] 边坐标确定模块420,用于从各点云数据中筛选出属于标定物上的标定数据,并根据各标定数据分别确定每条边在雷达坐标系下的边坐标;[0117] 雷达坐标确定模块430,用于根据各边坐标分别确定标定物中每个顶点在雷达坐标系下的顶点坐标,并根据各顶点坐标、以及标定物中的标定点在标定物中的相对位置,确定标定点在雷达坐标系下的雷达坐标;[0118] 激光雷达标定模块440,用于将标定点在相机坐标系下的相机坐标、以及雷达坐标作为一组特征点对,基于多组特征点对进行相机坐标系和雷达坐标系的标定。[0119] 可选的,边坐标确定模块420,具体可以包括:[0120] 端点数据筛选单元,用于从各点云数据中筛选出属于同一平面上的平面数据,并从各平面数据构成的平面集合中筛选出端点数据;标定数据确定单元,用于将各端点数据构成的对角线的第一长度、与标定物相应的对角线的第二长度进行对比,根据对比结果从各点云数据中筛选出属于标定物上的标定数据。[0121] 可选的,标定数据确定单元,具体可以包括:[0122] 点云数据更新子单元,用于若根据对比结果确定出同一平面不是标定物所在的平面,则从各点云数据中剔除平面数据,并根据剔除结果更新点云数据;重复执行子单元,用于重复执行从各点云数据中筛选出属于同一平面上的平面数据的步骤,直至同一平面是标定物所在的平面;标定数据确定子单元,用于将平面数据作为属于标定物上的标定数据。[0123] 可选的,边坐标确定模块420,具体可包括:边坐标确定单元,用于获取各标定数据构成的多条标定线,确定每条标定线在扫描方向上的边缘数据,并根据各边缘数据分别确定每条边在雷达坐标系下的边坐标。[0124] 可选的,标定物包括四边形标定物,四边形标定物内设置有与至少两条边相切的曲边形,标定点是曲边形的中心点。[0125] 可选,多边形包括方形,曲边形包括圆形,圆形与顶点相连的两条边相切;相应的,雷达坐标确定模块430,具体可以用于:[0126] 各顶点包括上顶点、左顶点和右顶点,通过如下公式确定出与上顶点相邻的标定点在雷达坐标系下的雷达坐标Ptop:[0127][0128] 其中,Ctop是上顶点在雷达坐标系下的上顶点坐标,Cleft是左顶点在雷达坐标系下的左顶点坐标,Cright是右顶点在雷达坐标系下的右顶点坐标,w是各边中第一边的长度,h是各边中与第一边相垂直的第二边的长度,r是圆形的半径。[0129] 可选的,激光雷达标定模块440,具体可以包括:[0130] 激光雷达标定单元,用于基于多组特征点对确定相机坐标系到雷达坐标系的坐标变化关系,根据坐标变化关系对相机坐标系和雷达坐标系进行标定。[0131] 本发明实施例四提供的激光雷达标定装置,通过数据获取模块以及边坐标确定模块相互配合,分别获取在同一时间采集到的包含有多边形状的标定物的点云数据和图像数据,从各点云数据中筛选出属于标定物上的标定数据,而且由于多边形中的每条边与至少两条点云线相交,这意味着根据各标定数据可以分别确定每条边在雷达坐标系下的边坐标;进而,雷达坐标确定模块根据各边坐标可以确定标定物中各顶点在该雷达坐标系下的顶点坐标,并根据各顶点坐标、及标定物中的标定点在标定物中的相对位置,确定标定点在该雷达坐标系下的雷达坐标;由此,激光雷达标定模块可将标定点在相机坐标系下的相机坐标、以及雷达坐标作为一组特征点对,并基于多组特征点对进行相机坐标系和雷达坐标系间的标定。上述装置,通过多边形中各条边的边坐标可以确定出特征点的雷达坐标,这意味着多边形中的每条边与至少两条点云线相交时,即可从各点云数据中提取出特征点,这对标定物的尺寸和摆放位置的限制较小,由此提高了标定物在制作和使用方面的便利性,进而提高了标定工作的便利性。[0132] 本发明实施例所提供的激光雷达标定装置可执行本发明任意实施例所提供的激光雷达标定方法,具备执行方法相应的功能模块和有益效果。[0133] 值得注意的是,上述激光雷达标定装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。[0134] 实施例五[0135] 图9为本发明实施例五提供的一种电子设备的结构示意图,如图9所示,该电子设备包括存储器510、处理器520、输入装置530和输出装置540。电子设备中的处理器520的数量可以是一个或多个,图9中以一个处理器520为例;电子设备中的存储器510、处理器520、输入装置530和输出装置540可以通过总线或其它方式连接,图9中以通过总线550连接为例。[0136] 存储器510作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的激光雷达标定方法对应的程序指令/模块(例如,激光雷达标定装置中的数据获取模块410、边坐标确定模块420、雷达坐标确定模块430和激光雷达标定模块440)。处理器520通过运行存储在存储器510中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及激光雷达标定,即实现上述的激光雷达标定方法。[0137] 存储器510可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器510可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器510可进一步包括相对于处理器520远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。[0138] 输入装置530可用于接收输入的数字或字符信息,以及产生与装置的用户设置以及功能控制有关的键信号输入。输出装置540可包括显示屏等显示设备。[0139] 实施例六[0140] 本发明实施例六提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种激光雷达标定方法,该方法包括:[0141] 分别获取在同一时间采集到的包含有标定物的点云数据和图像数据,其中,标定物是多边形,且多边形中的每条边与至少两条点云线相交,点云线包括多个点云数据;从各点云数据中筛选出属于标定物上的标定数据,并根据各标定数据分别确定每条边在雷达坐标系下的边坐标;根据各边坐标分别确定标定物中每个顶点在雷达坐标系下的顶点坐标,并根据各顶点坐标、以及标定物中的标定点在标定物中的相对位置,确定标定点在雷达坐标系下的雷达坐标;将标定点在相机坐标系下的相机坐标、以及雷达坐标作为一组特征点对,基于多组特征点对进行相机坐标系和雷达坐标系的标定。[0142] 当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的激光雷达标定方法中的相关操作。[0143] 通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。依据这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read‑OnlyMemory,ROM)、随机存取存储器(RandomAccessMemory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。[0144] 注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

专利地区:北京

专利申请日期:2020-10-10

专利公开日期:2024-06-18

专利公告号:CN113759346B

电话咨询
读内容
搜本页
回顶部