本发明涉及激光雷达领域,尤其涉及一种自旋转激光雷达及其旋转轴标定方法。
背景技术:
在无人自动驾驶、无人机自动测绘、机器人等多个领域中,常选用机械式激光雷达作为一种获取周围空间物体位姿的传感器设备,其具有高精度、长测距、抗干扰能力强、体积小、重量轻等特点。在常见的无人驾驶、测绘、机器人等领域,激光雷达机体与载体一般采用固定连接,保持二者的相对静止姿态,通过载体的运动,再机加上激光雷达与定位导航实现周围三维空间物体信息的获取。
采用以上方法进行周围空间三维信息的获取,仅仅实现了从“点”到“线”的周围空间物体信息的获取,其获取的周围物体的点云信息会出现信息量不足的缺点,无法实现高精度的实景建模,应用场景受限。
技术实现要素:
本发明提供的一种自旋转激光雷达及其旋转轴标定方法,主要解决的技术问题是:点云信息获取量不足,影响建模精度。
为解决上述技术问题,本发明提供一种自旋转激光雷达,包括旋转端与固定端,旋转端用于固定激光雷达,固定端用于固定提供旋转动力的设备以及角度传感器;所述提供旋转动力的设备用于带动旋转端旋转,使激光雷达绕自身轴旋转;所述角度传感器用于检测激光雷达绕自身轴旋转的旋转角度。
进一步的,所述提供旋转动力的设备为伺服电机。
本发明还提供一种基于自旋转激光雷达的旋转轴标定方法,包括:
保持自旋转激光雷达的旋转端与固定端相对静止,通过激光雷达采集标定球的点云数据,记录点云数据为p0,利用角度传感器获取当前旋转位置为α0;
通过提供旋转动力的设备驱动旋转端旋转相对角度,并利用角度传感器获取当前旋转位置为α1;并在该旋转位置下保持所述标定球、固定端与地球相对静止,此时使用激光雷达采集所述标定球的点云数据,记录点云数据为p1;
获取旋转角度α=α1-α0;基于所述点云数据p0、p1,使用最小二乘法拟合标定球,获取所述标定球的圆心位置c0(x0,y0,z0)与c1(x1,y1,z1);
假设激光雷达所绕自身轴的单位向量为n(nx,ny,nz),且经过点q(xq,yq,zq),以构建如下非线性方程组:
其中,k=1-cos(α),m=nxxq+nyyq+nzzq,nx2+ny2+nz2=1;
根据已知数据c0(x0,y0,z0)、c1(x1,y1,z1)、α,采用最小二乘进行求解,即可求得旋转轴的单位向量n(nx,ny,nz),与经过点q坐标q(xq,yq,zq)。
进一步的,所述基于所述点云数据p0、p1,使用最小二乘法拟合标定球,获取所述标定球的圆心位置c0(x0,y0,z0)与c1(x1,y1,z1)包括:
e为误差的平方和,优化目标为e值最小,e是x’,y’,z’的函数,ei为标定球半径拟合估计值与实际值的差值,其表示如下:
ei(x′,y′,z′)=(xi-x′)2+(yi-y′)2+(zi-z′)2-r2;
其中r为标定球的实际半径值。
进一步的,在所述使用最小二乘法拟合标定球,获取所述标定球的圆心位置之前,还包括对点云数据p0、p1去噪滤波。
本发明的有益效果是:
根据本发明提供的一种自旋转激光雷达及其旋转轴标定方法,自旋转激光雷达包括旋转端与固定端,旋转端用于固定激光雷达,固定端用于固定提供旋转动力的设备以及角度传感器;所述提供旋转动力的设备用于带动旋转端旋转,使激光雷达绕自身轴旋转;所述角度传感器用于检测激光雷达绕自身轴旋转的旋转角度。本发明通过在激光雷达与载体间加装一个自旋转装置,即让激光雷达在载体上绕激光雷达自身做旋转运动,这就将原来从“点”到“线”获取周围空间信息的方式,改变为从“点”到“线”再到“面”的方式,从而可获取更加稠密、视角范围更广的周围空间物体点云信息。
附图说明
图1为本发明的自旋转激光雷达结构示意图;
图2为本发明的固定端示意方案概图一;
图3为本发明的固定端示意方案概图二;
图4为本发明的旋转轴标定方法流程示意图;
图5为本发明的第一次采集数据时的场景示意图;
图6为本发明的第二次采集数据时的场景示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面通过具体实施方式结合附图对本发明作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一:
请参见图1,本实施例提供一种自旋转激光雷达,包括旋转端与固定端,旋转端用于固定激光雷达,固定端用于固定提供旋转动力的设备以及角度传感器;所述提供旋转动力的设备用于带动旋转端旋转,使激光雷达绕自身轴旋转;所述角度传感器用于检测激光雷达绕自身轴旋转的旋转角度。
如图2所示为固定端示意方案概图一,固定端可选安装步进电机与编码器,分别为旋转端提供旋转动力与实时旋转角度反馈。或者,如图3所示为固定端示意方案概图二,直接采用伺服电机为旋转端提供动力以及实时旋转角度记录。
固定端的安装方式可随实际应用场景不同,做出可适应性调整,但必须安装为旋转端提供旋转动力的设备以及记录旋转端旋转角度的传感器。
本发明通过在激光雷达与载体间加装一个自旋转装置,即让激光雷达在载体上绕激光雷达自身做旋转运动,这就将原来从“点”到“线”获取周围空间信息的方式,改变为从“点”到“线”再到“面”的方式,从而可获取更加稠密、视角范围更广的周围空间物体点云信息。
采用在载体与激光雷达之间加装自旋转装置的方法,可获取更加稠密与视角范围更广,周围空间信息更全面空间点云,但由于机械上的安装精度以及整个激光雷达外壳的尺寸精度等,都会影响周围空间物体点云信息的获取精度。
为了解决这个问题,本发明还提供了一种基于自旋转激光雷达的旋转轴标定方法,可高效、方便地对激光雷达的自旋转轴进行标定。请参见图4:
s401、如图5所示,为第一次采集数据时的场景示意图。准备一个或者多个特制标定球(半径为r),保持自旋转装置旋转端与固定端相对静止,使用激光雷达采集所用标定球的球面点云数据,记录此时的球面点云数据为p0,使用角度传感器获取当前旋转位置为α0。
s402、如图6所示,为第二次采集数据时的场景示意图。使用驱动固定端提供旋转动力设备,旋转旋转端,此过程中保持所用特质标定球、固定端与地球相对静止。待旋转端旋转了某一相对角度后,停止旋转。
s403、停止旋转之后,使用激光雷达又一次采集所用标定球的球面点云数据,记录此时的球面点云数据为p1,以及当前旋转位置为α1。
s404、对点云数据p0、p1去噪滤波,获取其中所用标定球的点云数据。
去噪录播可以采用现有任意方式,也可人工去噪,目标是得到的标定球的球面点云数据更加精确。
s405、采用所用标定球的点云数据使用最小二乘法拟合标定球。即可获取标定球的圆心位置c0(x0,y0,z0)与c1(x1,y1,z1)。
对p0点云数据去噪滤波,利用最小二乘法拟合所用标定球圆心位置c0;对p1点云数据去噪滤波,利用最小二乘法拟合所用标定球圆心位置c1。
步骤s405所述最小二乘法优化原理如下:
e为误差的平方和,优化目标为e值最小,e是x’,y’,z’的函数,ei为标定球半径拟合后估计值与实际值的差值,其表示如下:
ei(x′,y′,z′)=(xi-x′)2+(yi-y′)2+(zi-z′)2-r2
其中r为标定球的实际半径值;x’,y’,z’为圆心拟合坐标,xi,yi,zi为标定球的球面点云数据,已在步骤s405中求得其数据。故e(x’,y’,z’)为关于x’,y’,z’的方程,只需分别对x’,y’,z’求偏导即可得到e最小值时x’,y’,z’的取值,即求得了圆心实际坐标,步骤s405中的多个圆心坐标c0(x0,y0,z0)与c1(x1,y1,z1)都可采用此方法进行求解。
根据两次的旋转位置,可计算得到激光雷达绕自身轴旋转的旋转角度α,α=α1-α0。
s406、根据标定球圆心位置数据c0(x0,y0,z0)与c1(x1,y1,z1)以及绕自身轴旋转角度α,进行如下描述:圆心位置c0(x0,y0,z0)绕任意轴旋转角度α得到新的圆心位置c1(x1,y1,z1),旋转轴轴线的单位向量为n(nx,ny,nz),且过点q(xq,yq,zq),其中nx2+ny2+nz2=1。
将圆心位置c0和c1一一对应,并以旋转轴方向向量正交为约束条件,旋转角度α为已知条件,对c1=tc0做最小二乘求解,即可求得旋转轴的坐标表示,旋转轴方向向量n(nx,ny,nz)和过点坐标q(xq,yq,zq)。具体包括:
构建以下的非线性方程组:
其中,k=1-cos(α),m=nxxq+nyyq+nzzq,nx2+ny2+nz2=1。
s407、根据已知数据c0(x0,y0,z0)、c1(x1,y1,z1)、α,采用最小二乘进行求解,即可求得旋转轴轴线的单位向量n(nx,ny,nz),与过点q坐标的q(xq,yq,zq)。
s407中最小二乘法优化原理如下:
数,ei为点到旋转轴距离拟合估计值与实际值的差值,其表示如下:
ei(nx,ny,nz,xq,yq,zq)=(l1-l′1)2
其中l1为圆心位置c1至旋转轴的实际距离,可表示为:l1(nx,ny,nz,xq,yq,zq,x1,y1,z1),l′1为圆心位置c1至旋转轴的理论距离,可表示为:l′1(nx,ny,nz,xq,yq,zq,x0,y0,z0)。其中x0,y0,z0,x1,y1,z1已在步骤七中求得,故e(nx,ny,nz,xq,yq,zq)是关于nx,ny,nz,xq,yq,zq的方程。对e分别求nx,ny,nz,xq,yq,zq的偏导函数,并将偏导函数值等于0组成方程,即可求解出nx,ny,nz,xq,yq,zq所对应的值。
至此,完成了自旋转激光雷达的标定。
采用本发明方法可快速标定出自旋转机械激光雷达的旋转轴坐标,标定精度在1°以内。通过该自旋转装置与现有的定位导航算法(slam、gps+rtk等)相结合,获取的周围空间物体信息会更加稠密。使用激光雷达采集周围空间点云信息时,使用自旋转装置的方法可获取到视角范围更广的点云数据。
显然,本领域的技术人员应该明白,上述本发明的各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在计算机存储介质(rom/ram、磁碟、光盘)中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。所以,本发明不限制于任何特定的硬件和软件结合。
以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。