一种深度相机与2D激光雷达标定方法及相关设备与流程

文档序号:33628173发布日期:2023-03-28 21:56阅读:89来源:国知局
一种深度相机与2D激光雷达标定方法及相关设备与流程
一种深度相机与2d激光雷达标定方法及相关设备
技术领域
1.本技术涉及图像标定技术领域,具体而言,涉及一种深度相机与2d激光雷达标定方法及相关设备。


背景技术:

2.随着科技的发展与进步,一些激光雷达与深度相机的标定算法逐渐出现,现有的一种差速机器人的实物示意图如图4所示,该差速机器人上设置有2d激光雷达和深度相机,2d激光雷达和深度相机设置在差速机器人的正前方且均设置在差速机器人的同一个竖直对称面上(即2d激光雷达的雷达坐标系oxyz原点与深度相机的相机坐标系o1x1y1z1原点在同一竖直对称面上),其中,2d激光雷达的扫描平面为雷达坐标系的xoy平面,该扫描平面平行于水平面,雷达坐标系的y坐标轴垂直于所述竖直对称面,且深度相机的相机坐标系的y1坐标轴平行于水平面,从而相机坐标系原点相对雷达坐标系在y轴方向上的位置偏差近似为0,但由于该差速机器人在不同高度位置的径向尺寸不同,导致深度相机的相机坐标系原点相对雷达坐标系在x轴方向上具有比较明显的位置偏差。这种差速机器人一般在地面比较平坦的区域使用,在进行导航时,只需要使用xoy平面的二维坐标,因此一般会把在深度相机测得的三维坐标数据映射到xoy平面,以与雷达坐标系测得的二维坐标数据进行融合导航。
3.这种差速机器人在使用前,需要先对2d激光雷达和深度相机进行标定,以标定得到从相机坐标系的三维坐标数据转换为雷达坐标系的二维坐标数据所需的旋转参数和平移参数;但是现有技术一般由激光雷达与双目相机进行标定,通过多次记录激光雷达与双目相机对同一标定板不同角度的拍摄照片,并计算得到激光雷达与双目相机的转换关系,达到标定的目的,而这种标定方法的计算比较复杂,且一般是应用在3d激光雷达和双目相机,而这种方法应用在2d激光雷达时会有较大的误差。
4.针对上述问题,目前尚未有有效的技术解决方案。


技术实现要素:

5.本技术的目的在于提供一种深度相机与2d激光雷达标定方法及相关设备,适用于差速机器人,可快速建立深度相机与2d激光雷达之间的转换关系,简单且易使用。
6.第一方面,本技术提供了一种深度相机与2d激光雷达标定方法,应用于差速机器人,所述差速机器人上设置有2d激光雷达和深度相机,所述2d激光雷达和所述深度相机设置在所述差速机器人的正前方,所述2d激光雷达的雷达坐标系原点和所述深度相机的相机坐标系原点均设置在所述差速机器人的同一个竖直对称面上,所述2d激光雷达的扫描平面为雷达坐标系的xoy平面且平行于水平面,所述雷达坐标系的y坐标轴垂直于所述竖直对称面,且所述相机坐标系的y1坐标轴平行于水平面,所述深度相机与2d激光雷达标定方法包括步骤:a1.获取由所述深度相机采集的竖直墙面在相机坐标系下的第一点云数据,以及
由所述2d激光雷达采集的所述竖直墙面在所述雷达坐标系下的第二点云数据;a2.根据所述第一点云数据计算所述竖直墙面在所述相机坐标系下的第一平面方程;a3.根据所述第一平面方程计算所述雷达坐标系的xoy平面相对所述相机坐标系的x1o1y1平面绕y1坐标轴旋转的第一旋转角度,并计算所述竖直墙面绕y1坐标轴旋转所述第一旋转角度后在所述相机坐标系下的第二平面方程;a4.根据所述第二点云数据计算所述2d激光雷达在所述竖直墙面上的扫描线在所述雷达坐标系下的第一直线方程;a5.根据所述第二平面方程,计算第二平面方程对应的第二平面在所述2d激光雷达的扫描平面上的投影直线的投影直线方程;a6.根据所述投影直线方程和所述第一直线方程,计算所述扫描线相对所述投影直线绕所述雷达坐标系的z轴旋转的第二旋转角度和所述相机坐标系相对所述雷达坐标系在x轴方向上的距离,完成标定。
7.本技术仅需将差速机器人放置于水平面上,使差速机器人的正前方面向竖直墙面,通过上述方法即可快速建立深度相机与2d激光雷达之间的转换关系,实现标定,简单且易使用。
8.优选地,步骤a2包括:a201.循环执行多次以下步骤:随机选取所述第一点云数据中的三个点来计算第三平面方程;计算所述第一点云数据中的各点到所述第三平面方程对应的第三平面的第一距离,并根据所述第一距离统计内点的数量,记为第一数量;所述内点是指所述第三平面内的点;a202.选取最大的所述第一数量对应的所述第三平面方程作为所述第一平面方程。
9.优选地,所述第一平面方程为:;式中,、、、为所述第一平面方程的系数,、、为所述相机坐标系下的坐标;步骤a3包括:根据以下公式计算所述第一旋转角度:;式中,为所述第一旋转角度。
10.优选地,根据以下公式计算所述第二平面方程:;式中,、、为所述第二平面方程的系数。
11.优选地,步骤a4包括:根据所述第二点云数据,采用最小二乘法计算所述2d激光雷达在所述竖直墙面上的扫描线在雷达坐标系下的第一直线方程。
12.本技术通过采用最小二乘法,可简单快捷计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程,以提高标定效率。
13.优选地,所述投影直线方程为:。
14.优选地,步骤a6包括:根据所述投影直线方程和所述第一直线方程,计算所述扫描线相对所述投影直线绕z轴旋转的第二旋转角度;根据所述投影直线方程和所述第二旋转角度,计算所述投影直线绕z轴旋转第二旋转角度后的第三直线的第三直线方程;根据所述第三直线方程和所述第一直线方程,计算所述扫描线相对所述第三直线沿x轴方向的截距,作为所述相机坐标系相对所述雷达坐标系在x轴方向上的距离。
15.第二方面,本技术提供了一种深度相机与2d激光雷达标定的装置,应用于差速机器人,所述差速机器人上设置有2d激光雷达和深度相机,所述2d激光雷达和所述深度相机设置在所述差速机器人的正前方,所述2d激光雷达的雷达坐标系原点和所述深度相机的相机坐标系原点均设置在所述差速机器人的同一个竖直对称面上,所述2d激光雷达的扫描平面为雷达坐标系的xoy平面且平行于水平面,所述雷达坐标系的y坐标轴垂直于所述竖直对称面,且所述相机坐标系的y1坐标轴平行于水平面,包括:获取模块,用于获取由所述深度相机采集的竖直墙面在相机坐标系下的第一点云数据,以及由所述2d激光雷达采集的所述竖直墙面在所述雷达坐标系下的第二点云数据;第一计算模块,用于根据所述第一点云数据计算所述竖直墙面在所述相机坐标系下的第一平面方程;第二计算模块,用于根据所述第一平面方程计算所述雷达坐标系的xoy平面相对所述相机坐标系的x1o1y1平面绕y1坐标轴旋转的第一旋转角度,并计算所述竖直墙面绕y1坐标轴旋转所述第一旋转角度后在所述相机坐标系下的第二平面方程;第三计算模块,用于根据所述第二点云数据计算所述2d激光雷达在所述竖直墙面上的扫描线在所述雷达坐标系下的第一直线方程;第四计算模块,用于根据所述第二平面方程,计算第二平面方程对应的第二平面在所述2d激光雷达的扫描平面上的投影直线的投影直线方程;第五计算模块,用于根据所述投影直线方程和所述第一直线方程,计算所述扫描线相对所述投影直线绕所述雷达坐标系的z轴旋转的第二旋转角度和所述相机坐标系相对所述雷达坐标系在x轴方向上的距离,完成标定。
16.第三方面,本技术提供了一种电子设备,包括处理器和存储器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时,运行如前文所述深度相机与2d激光雷达标定方法中的步骤。
17.第四方面,本技术提供了一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如前文所述深度相机与2d激光雷达标定方法中的步骤。
18.有益效果:本技术提供的深度相机与2d激光雷达标定方法及相关设备,获取由所述深度相机采集的竖直墙面在相机坐标系下的第一点云数据,以及由所述2d激光雷达采集的所述竖直墙面在所述雷达坐标系下的第二点云数据;根据所述第一点云数据计算所述竖直墙面在所述相机坐标系下的第一平面方程;根据所述第一平面方程计算所述雷达坐标系的xoy平面相对所述相机坐标系的x1o1y1平面绕y1坐标轴旋转的第一旋转角度,并计算所述竖直墙面绕y1坐标轴旋转所述第一旋转角度后在所述相机坐标系下的第二平面方程;根据所述第二点云数据计算所述2d激光雷达在所述竖直墙面上的扫描线在所述雷达坐标系下的第一直线方程;根据所述第二平面方程,计算第二平面方程对应的第二平面在所述2d激光雷达的扫描平面上的投影直线的投影直线方程;根据所述投影直线方程和所述第一直线方程,计算所述扫描线相对所述投影直线绕所述雷达坐标系的z轴旋转的第二旋转角度和所述相机坐标系相对所述雷达坐标系在x轴方向上的距离,完成标定,该深度相机与2d激光雷达标定方法可快速建立相机坐标系与雷达坐标系之间的转换关系,简单且易使用。
附图说明
19.图1为本技术提供的深度相机与2d激光雷达标定方法的流程图。
20.图2为本技术提供的深度相机与2d激光雷达标定的装置结构示意图。
21.图3为本技术提供的电子设备的结构示意图。
22.图4为差速机器人的实物示意图。
23.标号说明:1、获取模块;2、第一计算模块;3、第二计算模块;4、第三计算模块;5、第四计算模块;6、第五计算模块;301、处理器;302、存储器;303、通信总线。
具体实施方式
24.下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
25.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
26.请参照图1,图1是本技术提供了一种深度相机与2d激光雷达标定方法的流程示意图,应用于差速机器人,图4是差速机器人的实物示意图,差速机器人上设置有2d激光雷达和深度相机,2d激光雷达和深度相机设置在差速机器人的正前方,2d激光雷达的雷达坐标系原点和深度相机的相机坐标系原点均设置在差速机器人的同一个竖直对称面上,2d激光雷达的扫描平面为雷达坐标系的xoy平面且平行于水平面,雷达坐标系的y坐标轴垂直于竖直对称面,且相机坐标系的y1坐标轴平行于水平面,深度相机与2d激光雷达标定方法包括步骤:
a1.获取由深度相机采集的竖直墙面在相机坐标系下的第一点云数据,以及由2d激光雷达采集的竖直墙面在雷达坐标系下的第二点云数据;a2.根据第一点云数据计算竖直墙面在相机坐标系下的第一平面方程;a3.根据第一平面方程计算雷达坐标系的xoy平面相对相机坐标系的x1o1y1平面绕y1坐标轴旋转的第一旋转角度,并计算竖直墙面绕y1坐标轴旋转第一旋转角度后在相机坐标系下的第二平面方程;a4.根据第二点云数据计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程;a5.根据第二平面方程,计算第二平面方程对应的第二平面在2d激光雷达的扫描平面上的投影直线的投影直线方程;a6.根据投影直线方程和第一直线方程,计算扫描线相对投影直线绕雷达坐标系的z轴旋转的第二旋转角度和相机坐标系相对雷达坐标系在x轴方向上的距离,完成标定。
27.具体地,根据深度相机采集的第一点云数据计算竖直墙面在相机坐标系下的第一平面方程,由于相机坐标系原点相对雷达坐标系在x轴方向上具有比较明显的位置偏差,即雷达坐标系的xoy平面与相机坐标系的x1o1y1平面不是相互平行的,因此,根据第一平面方程计算雷达坐标系的xoy平面相对相机坐标系的x1o1y1平面绕y1坐标轴旋转的第一旋转角度,并计算竖直墙面绕y1坐标轴旋转第一旋转角度后在相机坐标系下的第二平面方程,由于该第二平面方程对应的第二平面与2d激光雷达的扫描平面垂直,可根据第二平面方程计算第二平面方程对应的第二平面在2d激光雷达的扫描平面上的投影直线的投影直线方程,通过第二点云数据计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程,从而根据投影直线方程和第一直线方程,计算扫描线相对投影直线绕雷达坐标系的z轴旋转的第二旋转角度和相机坐标系相对雷达坐标系在x轴方向上的距离,即完成标定,本技术仅需将差速机器人放置于水平面上,使差速机器人的正前方面向竖直墙面,即可快速建立深度相机与2d激光雷达之间的转换关系,实现标定,简单且易使用。
28.在一些实施方式中,步骤a2包括:a201.循环执行多次以下步骤:随机选取第一点云数据中的三个点来计算第三平面方程;计算第一点云数据中的各点到第三平面方程对应的第三平面的第一距离,并根据第一距离统计内点的数量,记为第一数量;内点是指第三平面内的点;a202.选取最大的第一数量对应的第三平面方程作为第一平面方程。
29.具体地,通过上述方式可以获取比较准确的第一平面方程。
30.在一些实施方式中,计算第一点云数据中的各点到第三平面方程对应的第三平面的第一距离,并根据第一距离统计内点的数量,记为第一数量;内点是指第三平面内的点步骤包括:计算第一点云数据中的各点到第三平面方程对应的第三平面的第一距离,若第一距离小于预设阈值,则该第一距离对应的点作为内点,并统计内点的数量,记为第一数量。
31.在一些实施例中,第一平面方程为:;式中,、、、为第一平面方程的系数,、、为相机坐标系下的坐标;
步骤a3包括:根据以下公式计算第一旋转角度:;式中,为第一旋转角度。
32.具体地,根据第一平面方程可以知道第一平面方程的法向量为,由于雷达坐标系下的竖直墙面处于竖直状态,则可以将相机坐标系的x1o1y1平面绕y1坐标轴旋转,使相机坐标系下的竖直墙面也处于竖直状态(旋转之前的相机坐标系下的竖直墙面不是处于竖直状态),根据以下公式:;化简得:;从而第一旋转角度的计算公式为:;或者,。
33.在一些实施例中,根据以下公式计算第二平面方程:;式中,、、为第二平面方程的系数。
34.具体地,由于、是竖直墙面绕y1坐标轴旋转第一旋转角度后在相机坐标系下的第二平面方程的系数,而、、是竖直墙面在绕y1坐标轴旋转第一旋转角度前在相机坐标系下的第一平面方程的系数,因此,竖直墙面绕y1坐标轴旋转第一旋转角度后,相机坐标系下的原点到第二平面的距离不变,即:
35.根据第一旋转角度的计算公式以及,即第二平面方程为:++=0;根据上述公式,即可得到第二平面方程的计算公式。
36.在一些实施例中,步骤a4包括:根据第二点云数据,采用最小二乘法计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程。
37.具体地,通过采用最小二乘法,可简单快捷计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程,以提高标定效率,其中,第一直线方程具体为:,其中,、为第一直线方程的系数。
38.在一些实施例中,投影直线方程为:。
39.具体地,由于第二平面与2d激光雷达的扫描平面垂直,因此,投影直线方程为上述公式。
40.在一些实施方式中,步骤a6包括:根据投影直线方程和第一直线方程,计算扫描线相对投影直线绕z轴旋转的第二旋转角度;根据投影直线方程和第二旋转角度,计算投影直线绕z轴旋转第二旋转角度后的第三直线的第三直线方程;根据第三直线方程和第一直线方程,计算扫描线相对第三直线沿x轴方向的截距,作为相机坐标系相对雷达坐标系在x轴方向上的距离。
41.具体地,由于第一直线方程为:,根据投影直线方程以及第一直线方程,可通过以下公式计算扫描线相对投影直线绕z轴旋转的第二旋转角度:;其中,;式中,是第二旋转角度。
42.因此,投影直线绕z轴旋转第二旋转角度后的第三直线的第三直线方程为:;则有;且投影直线绕z轴旋转后的第三直线到雷达坐标系的原点的距离不变,则有:
43.化简得到:;由于第三直线与第一直线平行,则他们的斜率相同,即:;根据第三直线方程和第一直线方程,通过以下公式计算扫描线相对第三直线沿x
轴方向的截距:,即将第三直线沿x轴方向平移d的距离可与第一直线重合,从而得到深度相机与2d激光雷达之间的转换关系,实现标定的目的。
44.由上可知,本技术提供的深度相机与2d激光雷达标定方法,获取由深度相机采集的竖直墙面在相机坐标系下的第一点云数据,以及由2d激光雷达采集的竖直墙面在雷达坐标系下的第二点云数据;根据第一点云数据计算竖直墙面在相机坐标系下的第一平面方程;根据第一平面方程计算雷达坐标系的xoy平面相对相机坐标系的x1o1y1平面绕y1坐标轴旋转的第一旋转角度,并计算竖直墙面绕y1坐标轴旋转第一旋转角度后在相机坐标系下的第二平面方程;根据第二点云数据计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程;根据第二平面方程,计算第二平面方程对应的第二平面在2d激光雷达的扫描平面上的投影直线的投影直线方程;根据投影直线方程和第一直线方程,计算扫描线相对投影直线绕雷达坐标系的z轴旋转的第二旋转角度和相机坐标系相对雷达坐标系在x轴方向上的距离,完成标定,本技术仅需将差速机器人放置于水平面上,使差速机器人的正前方面向竖直墙面,即可快速建立深度相机与2d激光雷达之间的转换关系,实现标定,简单且易使用。
45.请参考图2,本技术提供了一种深度相机与2d激光雷达标定的装置,应用于差速机器人,差速机器人上设置有2d激光雷达和深度相机,2d激光雷达和深度相机设置在差速机器人的正前方,2d激光雷达的雷达坐标系原点和深度相机的相机坐标系原点均设置在差速机器人的同一个竖直对称面上,2d激光雷达的扫描平面为雷达坐标系的xoy平面且平行于水平面,雷达坐标系的y坐标轴垂直于竖直对称面,且相机坐标系的y1坐标轴平行于水平面,包括:获取模块1,用于获取由深度相机采集的竖直墙面在相机坐标系下的第一点云数据,以及由2d激光雷达采集的竖直墙面在雷达坐标系下的第二点云数据;第一计算模块2,用于根据第一点云数据计算竖直墙面在相机坐标系下的第一平面方程;第二计算模块3,用于根据第一平面方程计算雷达坐标系的xoy平面相对相机坐标系的x1o1y1平面绕y1坐标轴旋转的第一旋转角度,并计算竖直墙面绕y1坐标轴旋转第一旋转角度后在相机坐标系下的第二平面方程;第三计算模块4,用于根据第二点云数据计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程;第四计算模块5,用于根据第二平面方程,计算第二平面方程对应的第二平面在2d激光雷达的扫描平面上的投影直线的投影直线方程;第五计算模块6,用于根据投影直线方程和第一直线方程,计算扫描线相对投影直线绕雷达坐标系的z轴旋转的第二旋转角度和相机坐标系相对雷达坐标系在x轴方向上的距离,完成标定。
46.具体地,根据深度相机采集的第一点云数据计算竖直墙面在相机坐标系下的第一平面方程,由于相机坐标系原点相对雷达坐标系在x轴方向上具有比较明显的位置偏差,即雷达坐标系的xoy平面与相机坐标系的x1o1y1平面不是相互平行的,因此,根据第一平面方程计算雷达坐标系的xoy平面相对相机坐标系的x1o1y1平面绕y1坐标轴旋转的第一旋转角
度,并计算竖直墙面绕y1坐标轴旋转第一旋转角度后在相机坐标系下的第二平面方程,由于该第二平面方程对应的第二平面与2d激光雷达的扫描平面垂直,可根据第二平面方程计算第二平面方程对应的第二平面在2d激光雷达的扫描平面上的投影直线的投影直线方程,通过第二点云数据计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程,从而根据投影直线方程和第一直线方程,计算扫描线相对投影直线绕雷达坐标系的z轴旋转的第二旋转角度和相机坐标系相对雷达坐标系在x轴方向上的距离,即完成标定,本技术仅需将差速机器人放置于水平面上,使差速机器人的正前方面向竖直墙面,即可快速建立深度相机与2d激光雷达之间的转换关系,实现标定,简单且易使用。
47.在一些实施方式中,第一计算模块2在根据第一点云数据计算竖直墙面在相机坐标系下的第一平面方程的时候,具体执行:a201.循环执行多次以下步骤:随机选取第一点云数据中的三个点来计算第三平面方程;计算第一点云数据中的各点到第三平面方程对应的第三平面的第一距离,并根据第一距离统计内点的数量,记为第一数量;内点是指第三平面内的点;a202.选取最大的第一数量对应的第三平面方程作为第一平面方程。
48.具体地,通过上述方式可以获取比较准确的第一平面方程。
49.在一些实施方式中,计算第一点云数据中的各点到第三平面方程对应的第三平面的第一距离,并根据第一距离统计内点的数量,记为第一数量;内点是指第三平面内的点步骤包括:计算第一点云数据中的各点到第三平面方程对应的第三平面的第一距离,若第一距离小于预设阈值,则该第一距离对应的点作为内点,并统计内点的数量,记为第一数量。
50.在一些实施例中,第一平面方程为:;式中,、、、为第一平面方程的系数,、、为相机坐标系下的坐标;第二计算模块3在根据第一平面方程计算雷达坐标系的xoy平面相对相机坐标系的x1o1y1平面绕y1坐标轴旋转的第一旋转角度,并计算竖直墙面绕y1坐标轴旋转第一旋转角度后在相机坐标系下的第二平面方程的时候,具体执行:根据以下公式计算第一旋转角度:;式中,为第一旋转角度。
51.具体地,根据第一平面方程可以知道第一平面方程的法向量为,由于雷达坐标系下的竖直墙面处于竖直状态,则可以将相机坐标系的x1o1y1平面绕y1坐标轴旋转,使相机坐标系下的竖直墙面也处于竖直状态(旋转之前的相机坐标系下的竖直墙面不是处于竖直状态),根据以下公式:
;化简得:;从而第一旋转角度的计算公式为:;或者,。
52.在一些实施例中,根据以下公式计算第二平面方程:;式中,、、为第二平面方程的系数。
53.具体地,由于、是竖直墙面绕y1坐标轴旋转第一旋转角度后在相机坐标系下的第二平面方程的系数,而、、是竖直墙面在绕y1坐标轴旋转第一旋转角度前在相机坐标系下的第一平面方程的系数,因此,竖直墙面绕y1坐标轴旋转第一旋转角度后,相机坐标系下的原点到第二平面的距离不变,即:
54.根据第一旋转角度的计算公式以及,即第二平面方程为:++=0;根据上述公式,即可得到第二平面方程的计算公式。
55.在一些实施例中,第三计算模块4在根据第二点云数据计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程的时候,具体执行:根据第二点云数据,采用最小二乘法计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程。
56.具体地,通过采用最小二乘法,可简单快捷计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程,以提高标定效率,其中,第一直线方程具体为:。
57.在一些实施例中,投影直线方程为:。
58.具体地,由于第二平面与2d激光雷达的扫描平面垂直,因此,投影直线方程为上述
公式。
59.在一些实施方式中,第五计算模块6在根据投影直线方程和第一直线方程,计算扫描线相对投影直线绕雷达坐标系的z轴旋转的第二旋转角度和相机坐标系相对雷达坐标系在x轴方向上的距离,完成标定的时候,具体执行:根据投影直线方程和第一直线方程,计算扫描线相对投影直线绕z轴旋转的第二旋转角度;根据投影直线方程和第二旋转角度,计算投影直线绕z轴旋转第二旋转角度后的第三直线的第三直线方程;根据第三直线方程和第一直线方程,计算扫描线相对第三直线沿x轴方向的截距,作为雷达坐标系相对相机坐标系在x轴方向上的距离。
60.具体地,由于第一直线方程为:,根据投影直线方程以及第一直线方程,可通过以下公式计算扫描线相对投影直线绕z轴旋转的第二旋转角度:;其中,;式中,是第二旋转角度。
61.因此,投影直线绕z轴旋转第二旋转角度后的第三直线的第三直线方程为:;则有;
62.且投影直线绕z轴旋转后的第三直线到雷达坐标系的原点的距离不变,则有:
63.化简得到:;由于第三直线与第一直线平行,则他们的斜率相同,即:;
64.根据第三直线方程和第一直线方程,通过以下公式计算扫描线相对第三直线沿x轴方向的截距:,即将第三直线沿x轴方向平移d的距离可与第一直线重合,从而得到深度相机与2d激光雷达之间的转换关系,实现标定的目的。
65.由上可知,本技术提供的深度相机与2d激光雷达标定的装置,获取由深度相机采集的竖直墙面在相机坐标系下的第一点云数据,以及由2d激光雷达采集的竖直墙面在雷达坐标系下的第二点云数据;根据第一点云数据计算竖直墙面在相机坐标系下的第一平面方程;根据第一平面方程计算雷达坐标系的xoy平面相对相机坐标系的x1o1y1平面绕y1坐标轴
旋转的第一旋转角度,并计算竖直墙面绕y1坐标轴旋转第一旋转角度后在相机坐标系下的第二平面方程;根据第二点云数据计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程;根据第二平面方程,计算第二平面方程对应的第二平面在2d激光雷达的扫描平面上的投影直线的投影直线方程;根据投影直线方程和第一直线方程,计算扫描线相对投影直线绕雷达坐标系的z轴旋转的第二旋转角度和相机坐标系相对雷达坐标系在x轴方向上的距离,完成标定,本技术仅需将差速机器人放置于水平面上,使差速机器人的正前方面向竖直墙面,即可快速建立深度相机与2d激光雷达之间的转换关系,实现标定,简单且易使用。
66.请参照图3,图3为本技术实施例提供的一种电子设备的结构示意图,本技术提供一种电子设备,包括:处理器301和存储器302,处理器301和存储器302通过通信总线303和/或其他形式的连接机构(未标出)互连并相互通讯,存储器302存储有处理器301可执行的计算机程序,当电子设备运行时,处理器301执行该计算机程序,以执行上述实施例的任一可选的实现方式中的深度相机与2d激光雷达标定方法,以实现以下功能:获取由深度相机采集的竖直墙面在相机坐标系下的第一点云数据,以及由2d激光雷达采集的竖直墙面在雷达坐标系下的第二点云数据;根据第一点云数据计算竖直墙面在相机坐标系下的第一平面方程;根据第一平面方程计算雷达坐标系的xoy平面相对相机坐标系的x1o1y1平面绕y1坐标轴旋转的第一旋转角度,并计算竖直墙面绕y1坐标轴旋转第一旋转角度后在相机坐标系下的第二平面方程;根据第二点云数据计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程;根据第二平面方程,计算第二平面方程对应的第二平面在2d激光雷达的扫描平面上的投影直线的投影直线方程;根据投影直线方程和第一直线方程,计算扫描线相对投影直线绕雷达坐标系的z轴旋转的第二旋转角度和相机坐标系相对雷达坐标系在x轴方向上的距离,完成标定。
67.本技术实施例提供一种存储介质,其上存储有计算机程序,计算机程序被处理器执行时,执行上述实施例的任一可选的实现方式中的深度相机与2d激光雷达标定方法,以实现以下功能:获取由深度相机采集的竖直墙面在相机坐标系下的第一点云数据,以及由2d激光雷达采集的竖直墙面在雷达坐标系下的第二点云数据;根据第一点云数据计算竖直墙面在相机坐标系下的第一平面方程;根据第一平面方程计算雷达坐标系的xoy平面相对相机坐标系的x1o1y1平面绕y1坐标轴旋转的第一旋转角度,并计算竖直墙面绕y1坐标轴旋转第一旋转角度后在相机坐标系下的第二平面方程;根据第二点云数据计算2d激光雷达在竖直墙面上的扫描线在雷达坐标系下的第一直线方程;根据第二平面方程,计算第二平面方程对应的第二平面在2d激光雷达的扫描平面上的投影直线的投影直线方程;根据投影直线方程和第一直线方程,计算扫描线相对投影直线绕雷达坐标系的z轴旋转的第二旋转角度和相机坐标系相对雷达坐标系在x轴方向上的距离,完成标定。其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(static random access memory, 简称sram),电可擦除可编程只读存储器(electrically erasable programmable read-only memory, 简称eeprom),可擦除可编程只读存储器(erasable programmable read only memory, 简称eprom),可编程只读存储器(programmable red-only memory, 简称prom),只读存储器(read-only memory, 简称rom),磁存储器,快闪存储器,磁盘或光盘。
68.在本技术所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
69.另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
70.再者,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
71.在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
72.以上仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1