CN115236643A - 一种传感器标定方法、系统、装置、电子设备及介质 - Google Patents
一种传感器标定方法、系统、装置、电子设备及介质 Download PDFInfo
- Publication number
- CN115236643A CN115236643A CN202210734948.4A CN202210734948A CN115236643A CN 115236643 A CN115236643 A CN 115236643A CN 202210734948 A CN202210734948 A CN 202210734948A CN 115236643 A CN115236643 A CN 115236643A
- Authority
- CN
- China
- Prior art keywords
- calibration
- transformation matrix
- point cloud
- target
- matching degree
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S7/00—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
- G01S7/48—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
- G01S7/497—Means for monitoring or calibrating
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D18/00—Testing or calibrating apparatus or arrangements provided for in groups G01D1/00 - G01D15/00
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本公开实施例提供了一种传感器标定方法、系统、装置、电子设备及介质,涉及标定技术领域,本公开实施例的技术方案包括:获取目标点云和目标图像,然后将目标点云和目标图像输入标定模型,得到粗标定变换矩阵。再确定粗标定变换矩阵对应的匹配度,其中匹配度为使用粗标定变换矩阵将目标点云投影到目标图像的坐标系,投影后的目标点云与目标图像之间的匹配度。之后对粗标定变换矩阵进行第一指定变换,得到第一变换矩阵,若第一变换矩阵对应的匹配度大于粗标定变换矩阵对应的匹配度,则将第一变换矩阵作为标定结果;否则,将粗标定变换矩阵作为所述标定结果。从而简化激光雷达与相机的标定过程,以适应自动驾驶领域中对传感器的标定。
Description
技术领域
本公开涉及标定技术领域,特别是涉及一种传感器标定方法、系统、装置、电子设备及介质。
背景技术
目前的自动驾驶领域中存在单车智能自动驾驶和车路协同自动驾驶两种技术路线,其中,车路协同自动驾驶作为无人驾驶和智慧交通的主要发展方向之一,在生产生活中发挥着重要作用。
由于自动驾驶环境比较复杂,难以依靠单一传感器实现精准地环境感知,因此需要通过多个传感器感知周围环境。例如,在单车智能自动驾驶场景中,在车辆上安装激光雷达和相机等传感器;在车路协同自动驾驶场景中,在路侧安装主激光雷达、补盲雷达和相机等传感器。为了联合多个传感器采集的数据,需要将传感器采集的数据统一到同一坐标系,即对传感器进行标定。
目前,对激光雷达和相机的标定方法中,需要在激光雷达和相机前安装棋盘格等特定尺寸的三维物体作为标定目标,利用激光雷达对标定目标进行扫描得到点云,利用相机对标定目标进行拍摄得到图像。利用标定目标在点云中对应的激光点以及在图像中对应的像素点,确定点云的坐标系与图像坐标系之间的坐标转换关系,从而实现激光雷达与相机的标定。但是该过程比较繁琐,需要设置特定的标定物体,难以适应自动驾驶领域中对传感器的标定。
发明内容
本公开实施例的目的在于提供一种传感器标定方法、系统、装置、电子设备及介质,以实现简化激光雷达与相机的标定过程,从而适应自动驾驶领域中对传感器的标定。具体技术方案如下:
第一方面,本公开实施例提供了一种多传感器联合标定方法,所述方法包括:
获取激光雷达采集的目标点云和相机采集的目标图像,所述目标点云的采集时刻和所述目标图像的采集时刻之间的时间差小于预设时间差;
将所述目标点云和所述目标图像输入预先训练得到的标定模型,得到所述标定模型输出的粗标定变换矩阵,所述标定模型为基于样本点云和样本图像对神经网络模型进行训练得到的模型;
确定所述粗标定变换矩阵对应的匹配度,所述匹配度为使用所述粗标定变换矩阵将所述目标点云投影到所述目标图像的坐标系,投影后的目标点云与所述目标图像之间的匹配度;
对所述粗标定变换矩阵进行第一指定变换,得到第一变换矩阵,并计算第一变换矩阵对应的匹配度,若所述第一变换矩阵对应的匹配度大于所述粗标定变换矩阵对应的匹配度,则将所述第一变换矩阵作为标定结果;否则,将所述粗标定变换矩阵作为所述标定结果;
其中,变换矩阵用于表示所述激光雷达采集的点云的坐标系与所述相机的坐标系之间的坐标转换关系。
在本公开的一些实施例中,所述确定所述粗标定变换矩阵对应的匹配度,包括:
将所述目标图像转换为灰度图,并针对所述灰度图中每个像素点,将该像素点的像素值设置为该像素点与多个相邻的像素点之间的像素差值中的最大值,得到边缘图像;
对所述边缘图像进行图像插值处理;
针对所述目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积;所述目标像素点为插值处理后的边缘图像中,与使用所述粗标定矩阵将该激光点投影到所述目标图像的坐标系下的位置相同的像素点;
对计算得到的各乘积求和,得到所述粗标定变换矩阵对应的匹配度。
在本公开的一些实施例中,在针对所述目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积之前,所述方法还包括:
针对所述目标点云中由同一个激光线束扫描得到的多个激光点,确定相邻的激光点之间的距离,删除与相邻的激光点之间的距离均超过预设阈值的激光点,得到筛选后的目标点云;
所述针对所述目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积,包括:
针对筛选后的目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积。
在本公开的一些实施例中,所述变换矩阵包括旋转矩阵和平移矩阵;所述对所述粗标定变换矩阵进行第一指定变换,得到第一变换矩阵,并计算第一变换矩阵对应的匹配度,若所述第一变换矩阵对应的匹配度大于所述粗标定变换矩阵对应的匹配度,则将所述第一变换矩阵作为标定结果,包括:
对所述粗标定变换矩阵的旋转矩阵和平移矩阵分别添加多种扰动参数,将添加扰动参数后的旋转矩阵和平移矩阵的每一种组合,作为一个第一变换矩阵;
确定每个第一变换矩阵对应的匹配度,并确定各第一变换矩阵对应的匹配度中的最大匹配度;
若所述最大匹配度大于所述粗标定变换矩阵对应的匹配度,则将具有所述最大匹配度的第一变换矩阵作为所述标定结果。
在本公开的一些实施例中,在将所述目标点云和所述目标图像输入预先训练得到的标定模型之前,所述方法还包括:
判断是否存在标定结果;
若是,则对所述标定结果进行第一指定变换,得到第二变换矩阵,基于所述目标点云和所述目标图像,分别计算所述标定结果对应的匹配度和所述第二变换矩阵对应的匹配度,若所述第二变换矩阵对应的匹配度大于所述标定结果对应的匹配度,则将所述第二变换矩阵作为更新后的标定结果;
若否,则执行所述将所述目标点云和所述目标图像输入预先训练得到的标定模型的步骤。
在本公开的一些实施例中,在将所述目标点云和所述目标图像输入预先训练得到的标定模型之前,所述方法还包括:
识别所述目标点云中的前景区域,删除所述目标点云中背景区域包括的激光点,得到处理后的目标点云;
识别所述目标图像中的前景区域,删除所述目标图像中背景区别包括的像素点,得到处理后的目标图像;
所述将所述目标点云和所述目标图像输入预先训练得到的标定模型,包括:
将处理后的目标点云和处理后的目标图像输入所述标定模型。
在本公开的一些实施例中,所述标定模型通过以下步骤训练获得:
将采集时间差小于所述预设阈值的样本点云和样本图像作为一组训练样本,并将该组训练样本的标准变换矩阵作为该组训练样本的标签;
针对每组训练样本,将该组训练样本的标准变换矩阵进行第二指定变换,并将该组训练样本的样本点云进行所述第二指定变换,将变换后的样本点云和该组训练样本包括的样本图像作为一组训练样本,并将所述第二指定变换后的变换矩阵作为该组训练样本的标签;
利用各组训练样本以及每组训练样本的标签,训练神经网络模型,得到所述标定模型。
第二方面,本公开实施例提供了一种传感器标定系统,所述系统包括:
激光雷达,用于采集点云;
相机,用于采集图像;
电子设备,用于执行上述第一方面任一项所述的方法。
第三方面,本公开实施例提供了一种多传感器联合标定装置,所述装置包括:
获取模块,用于获取激光雷达采集的目标点云和相机采集的目标图像,所述目标点云的采集时刻和所述目标图像的采集时刻之间的时间差小于预设时间差;
粗标定模块,用于将所述获取模块获取的所述目标点云和所述目标图像输入预先训练得到的标定模型,得到所述标定模型输出的粗标定变换矩阵,所述标定模型为基于样本点云和样本图像对神经网络模型进行训练得到的模型;
确定模块,用于确定所述粗标定模块标定得到的所述粗标定变换矩阵对应的匹配度,所述匹配度为使用所述粗标定变换矩阵将所述目标点云投影到所述目标图像的坐标系,投影后的目标点云与所述目标图像之间的匹配度;
细标定模块,用于对所述粗标定模块标定得到的所述粗标定变换矩阵进行第一指定变换,得到第一变换矩阵,并计算第一变换矩阵对应的匹配度,若所述第一变换矩阵对应的匹配度大于所述确定模块确定的所述粗标定变换矩阵对应的匹配度,则将所述第一变换矩阵作为标定结果;否则,将所述粗标定变换矩阵作为所述标定结果;
其中,变换矩阵用于表示所述激光雷达采集的点云的坐标系与所述相机的坐标系之间的坐标转换关系。
在本公开的一些实施例中,所述确定模块,具体用于:
将所述目标图像转换为灰度图,并针对所述灰度图中每个像素点,将该像素点的像素值设置为该像素点与多个相邻的像素点之间的像素差值中的最大值,得到边缘图像;
对所述边缘图像进行图像插值处理;
针对所述目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积;所述目标像素点为插值处理后的边缘图像中,与使用所述粗标定矩阵将该激光点投影到所述目标图像的坐标系下的位置相同的像素点;
对计算得到的各乘积求和,得到所述粗标定变换矩阵对应的匹配度。
在本公开的一些实施例中,所述装置还包括:
筛选模块,用于在针对所述目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积之前,针对所述目标点云中由同一个激光线束扫描得到的多个激光点,确定相邻的激光点之间的距离,删除与相邻的激光点之间的距离均超过预设阈值的激光点,得到筛选后的目标点云;
所述确定模块,具体用于:
针对筛选后的目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积。
在本公开的一些实施例中,所述变换矩阵包括旋转矩阵和平移矩阵;所述细标定模块,具体用于:
对所述粗标定变换矩阵的旋转矩阵和平移矩阵分别添加多种扰动参数,将添加扰动参数后的旋转矩阵和平移矩阵的每一种组合,作为一个第一变换矩阵;
确定每个第一变换矩阵对应的匹配度,并确定各第一变换矩阵对应的匹配度中的最大匹配度;
若所述最大匹配度大于所述粗标定变换矩阵对应的匹配度,则将具有所述最大匹配度的第一变换矩阵作为所述标定结果。
在本公开的一些实施例中,所述装置还包括:
判断模块,用于在将所述目标点云和所述目标图像输入预先训练得到的标定模型之前,判断是否存在标定结果;
所述细标定模块,还用于若所述判断模块的判断结果为是,则对所述标定结果进行第一指定变换,得到第二变换矩阵,基于所述目标点云和所述目标图像,分别计算所述标定结果对应的匹配度和所述第二变换矩阵对应的匹配度,若所述第二变换矩阵对应的匹配度大于所述标定结果对应的匹配度,则将所述第二变换矩阵作为更新后的标定结果;
调用模块,用于若所述判断模块的判断结果为否,则调用所述粗标定模块执行所述将所述目标点云和所述目标图像输入预先训练得到的标定模型的步骤。
在本公开的一些实施例中,所述装置还包括:
前景识别模块,用于在将所述目标点云和所述目标图像输入预先训练得到的标定模型之前,识别所述目标点云中的前景区域,删除所述目标点云中背景区域包括的激光点,得到处理后的目标点云;识别所述目标图像中的前景区域,删除所述目标图像中背景区别包括的像素点,得到处理后的目标图像;
所述粗标定模块,具体用于:
将处理后的目标点云和处理后的目标图像输入所述标定模型。
在本公开的一些实施例中,所述装置还包括训练模块,所述训练模块用于:
将采集时间差小于所述预设阈值的样本点云和样本图像作为一组训练样本,并将该组训练样本的标准变换矩阵作为该组训练样本的标签;
针对每组训练样本,将该组训练样本的标准变换矩阵进行第二指定变换,并将该组训练样本的样本点云进行所述第二指定变换,将变换后的样本点云和该组训练样本包括的样本图像作为一组训练样本,并将所述第二指定变换后的变换矩阵作为该组训练样本的标签;
利用各组训练样本以及每组训练样本的标签,训练神经网络模型,得到所述标定模型。
第四方面,本公开实施例提供了一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面任一所述的传感器标定方法步骤。
第五方面,本公开实施例提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一所述的传感器标定方法步骤。
第六方面,本公开实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的传感器标定方法。
本公开实施例有益效果:
本公开实施例提供的传感器标定方法、系统、装置、电子设备及介质,可以获取采集时间差小于预设阈值的目标点云和目标图像,利用标定模型对目标点云和目标图像进行粗标定,得到粗标定变换矩阵。再确定粗标定变换矩阵对应的匹配度,对粗标定变换矩阵进行第一指定变换,得到第一变换矩阵,在第一变换矩阵对应的匹配度大于粗标定变换矩阵对应的匹配度的情况下,将第一变换矩阵作为标定结果;否则,将粗标定变换矩阵作为标定结果,从而实现对变换矩阵的细标定。可见本公开实施例中,通过标定模型完成粗标定,并通过对粗标定矩阵进行变换,进而通过变换矩阵的匹配度完成细标定,相比于通过单一标定方式得到的标定结果,通过结合粗标定和细标定得到的标定结果的准确度更高。而且本公开实施例无需设置标定对象,因此简化了标定过程,能够适应自动驾驶领域中对传感器的标定。即本公开实施例能够在自动驾驶领域中提高对传感器的标定准确度。
当然,实施本公开的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
图1为本公开实施例提供的一种传感器标定系统的结构示意图;
图2为本公开实施例提供的一种传感器标定方法的流程图;
图3为本公开实施例提供的另一种传感器标定方法的流程图;
图4为本公开实施例提供的一种传感器标定场景的示例性示意图;
图5为本公开实施例提供的另一种传感器标定方法的流程图;
图6为本公开实施例提供的一种传感器标定装置的结构示意图;
图7为本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员基于本公开所获得的所有其他实施例,都属于本公开保护的范围。
为了简化激光雷达与相机的标定过程,从而适应自动驾驶领域中对传感器的标定,本公开实施例提供了一种传感器标定方法,该方法应用在传感器标定系统中,如图1所示,该系统包括:激光雷达101、相机102和电子设备103。其中,电子设备103可以是安装于道路旁的路侧计算单元或者为车辆中的车机等具备数据处理能力的设备。
激光雷达101,用于采集点云。
相机102,用于采集图像。
电子设备103,用于对激光雷达101和相机102进行标定。具体的标定方法可参考下文描述。
图1中仅示例性地示出了两个激光雷达101和一个相机102,在实际应用场景中,传感器标定系统包括的各设备数量不限于图1所示的数量。
结合图1,本公开实施例提供的传感器标定方法,可应用在电子设备中,如图2所示,该方法包括如下步骤:
S201、获取激光雷达采集的目标点云和相机采集的目标图像。其中,目标点云的采集时刻和目标图像的采集时刻之间的时间差小于预设时间差。
在本公开实施例中,电子设备中可以包括时间同步装置,电子设备可以通过时间同步装置,将激光雷达扫描得到点云的时刻和相机拍摄得到图像的时刻统一到同一时间域,从而确定点云与图像之间的采集时间差,并将采集时间差小于预设阈值的点云和图像作为一组,将距离当前时刻最近的一组作为目标点云和目标图像。
例如,电子设备每当接收到一帧点云时,将该点云的采集时刻统一到指定时间域,并且每当接收到一张图像时,将该图像的采集时刻统一到指定时间域。
另外,可以在每当统一点云的采集时刻后,确定与该点云的采集时间差最近的图像,并计算该点云与该图像的采集时间差是否小于预设阈值,若是,则将该图像作为目标图像,将该点云作为目标点云。
或者,每间隔一定周期,将距离当前时刻最近的点云作为目标点云,并确定与目标点云的采集时间差最小的图像,并计算该图像与目标点云的采集时间差是否小于预设阈值,若是,则将该图像作为目标图像。
S202、将目标点云和目标图像输入预先训练得到的标定模型,得到标定模型输出的粗标定变换矩阵。其中,标定模型为基于样本点云和样本图像对神经网络模型进行训练得到的模型。
本公开实施例中的每个变换矩阵,如下文中的粗标定变换矩阵、第一变换矩阵和第二变换矩阵,均用于表示激光雷达采集的点云的坐标系与相机的坐标系之间的坐标转换关系。
S203、确定粗标定变换矩阵对应的匹配度。
其中,粗标定变换矩阵对应的匹配度为:使用粗标定变换矩阵将目标点云投影到目标图像的坐标系,投影后的目标点云与目标图像之间的匹配度。也就是说,该匹配度表示使用粗标定矩阵将目标点云投影到目标图像的坐标系后,投影后的目标点云中由多个激光点表示的物体的位置,与目标图像中该物体的位置之间的对齐程度。即该匹配度能够表示粗标定矩阵的准确度。
S204、对粗标定变换矩阵进行第一指定变换,得到第一变换矩阵,并计算第一变换矩阵对应的匹配度,判断第一变换矩阵对应的匹配度是否大于粗标定变换矩阵对应的匹配度。若是,则执行S205;否则,执行S206。
本公开实施例中的变换矩阵包括平移矩阵和旋转矩阵,第一指定变换可以是平移变换和/或旋转变换。其中,对变换矩阵的平移变换可以是对平移矩阵添加预设扰动参数,对变换矩阵的旋转变换可以是对旋转矩阵添加预设扰动参数。
计算第一变换矩阵对应的匹配度的方式,与计算粗标定变换矩阵对应的匹配度的方式相同。相应的,第一变换矩阵对应的匹配度为:使用第一变换矩阵将目标点云投影到目标图像的坐标系,投影后的目标点云与目标图像之间的匹配度;第一变换矩阵对应的匹配度能够表示第一变换矩阵的准确度。
S205、将第一变换矩阵作为标定结果。
在第一变换矩阵对应的匹配度大于粗标定变换矩阵对应的匹配度的情况下,说明第一变换矩阵的准确度更高,因此将第一变换矩阵作为标定结果。
S206、将粗标定变换矩阵作为标定结果。
在第一变换矩阵对应的匹配度小于或等于粗标定变换矩阵对应的匹配度的情况下,说明粗标定变换矩阵的准确度更高,因此将粗标定变换矩阵作为标定结果。
得到标定结果之后,可以使用标定结果将点云投影到相机的坐标系,然后再利用相机的内参矩阵,将相机坐标系下的点云投影到图像的坐标系。或者,将利用相机的内参矩阵,将图像中的像素点投影到相机的坐标系,再使用标定结果将相机坐标系下的像素点投影到激光雷达的坐标系。以便联合点云和图像实现目标识别和目标跟踪等功能。
本公开实施例提供的传感器标定方法,可以获取采集时间差小于预设阈值的目标点云和目标图像,利用标定模型对目标点云和目标图像进行粗标定,得到粗标定变换矩阵。再确定粗标定变换矩阵对应的匹配度,对粗标定变换矩阵进行第一指定变换,得到第一变换矩阵,在第一变换矩阵对应的匹配度大于粗标定变换矩阵对应的匹配度的情况下,将第一变换矩阵作为标定结果;否则,将粗标定变换矩阵作为标定结果,从而实现对变换矩阵的细标定。可见本公开实施例中,通过标定模型完成粗标定,并通过对粗标定矩阵进行变换,进而通过变换矩阵的匹配度完成细标定,相比于通过单一标定方式得到的标定结果,通过结合粗标定和细标定得到的标定结果的准确度更高。而且本公开实施例无需设置标定对象,因此简化了标定过程,能够适应自动驾驶领域中对传感器的标定。即本公开实施例能够在自动驾驶领域中提高对传感器的标定准确度。
在本公开的一些实施例中,在获取目标点云和目标图像之后,电子设备还可以对目标点云和目标图像分别进行滤波处理。
其中,对目标点云的滤波处理包括:采用统计滤波算法,去除目标点云中的离群点。并使用条件滤波算法,通过设置滤波条件为激光点表示的物理位置超出相机水平视野范围、以及激光点表示的物理位置与激光雷达之间的距离超过指定距离,从而过滤掉超出相机水平视野范围的激光点以及与激光雷达距离较远的激光点。从而减少目标点云中的环境噪声,减少目标点云包括的激光点数量,进而减少标定消耗的时间,提高标定效率。
对目标图像的滤波处理包括:根据相机的内参矩阵和畸变参数,使用针孔模型进行建模,并使用建模结果矫正目标图像,从而去除相机的径向畸变和切向畸变导致的图像畸变,即减少了相机噪声,提高了标定的准确性。其中,针孔模型指的是物体的光线穿过相机中心在成像平面形成一副倒立的影像,物体和影像满足相似三角形的关系。
或者,本公开实施例还可以采取其他的方式对目标点云和目标图像进行滤波,本公开实施例对此不作具体限定。
本公开实施例可以对目标点云和目标图像进行滤波,从而减少环境噪声对于标定结果的干扰,而且减少了点云包括的激光点数量,可减少标定的计算量,从而实现了提高标定的精度和速度。
在本公开的一些实施例中,在上述S202使用标定模型进行粗标定之前,电子设备还可以对目标点云和目标图像进行前景分割,从而分割出目标点云中前景,以及目标图像中的前景,从而减少背景区域中的干扰因素对于标定的影响。
前景分割的方式包括:识别目标点云中的前景区域,删除目标点云中背景区域包括的激光点,得到处理后的目标点云;并识别目标图像中的前景区域,删除目标图像中背景区别包括的像素点,得到处理后的目标图像。相应的,S202进行粗标定的方式可以实现为:将处理后的目标点云和处理后的目标图像输入标定模型。
可选的,对目标点云进行前景分割的方式可以实现为:预先获取一帧或多帧点云,并通过栅格地图法对每帧点云建立栅格地图,记录栅格地图中每个栅格包括的激光点数量。其中,预先获取的点云为激光雷达扫描静止的环境得到的点云,即该环境中不包含运动物体。之后,可以对目标点云建立栅格地图,针对每个栅格,判断该栅格包括的激光点数量与预先获取的点云中该栅格包括的激光点数量之间的差值是否大于预设差值。若是,则说明当前栅格中包括运动物体的可能性较低,因此删除当前点云中该栅格包括的激光点;若否,则说明当前栅格中包括运动物体的可能性较高,因此保留目标点云中该栅格包括的激光点。从而实现对目标点云中前景区域的提取。
对目标图像进行前景分割的方式可以实现为:使用高斯混合模型(GaussianMixture Model,GMM)算法对当前图像进行前景分割。GMM算法的原理是:对连续的多张图像采用GMM算法进行建模,即对多张图像中同一个位置的像素点建立GMM模型,GMM模型包括多个单模型。对于目标图像中的每个像素点,判断该像素点符合该像素点的位置对应的GMM模型,即判断该像素点的位置对应的GMM模型中是否存在与该像素点匹配的单模型。若符合,则根据该像素点的像素值,更新与该像素点匹配的单模型的权重、期望和方差;若不符合,则根据该像素点的像素值,更新该GMM模型的权重。在该像素点存在匹配的单模型的情况下,按照权重和方差的比值,对该GMM模型包括的各单模型进行降序排序,并判断该像素点对应的单模型的权重和方差的比值是否大于模型阈值;若是,则确定该像素点属于背景,若否,则确定该像素点属于前景。其中,模型阈值的取值范围为[0,1]。可以在多个不同的环境下设置多种阈值,并确定每个环境的不同阈值下的前景分割效果,取每个环境下前景分割效果最优的阈值,并对这些最优的阈值取平均值,作为模型阈值。
由于物体趋于静止时,在连续的图像中位置相同,而且该位置处的像素值变换较小,因此对应的高斯分布的方差更小,对应的权重更大。对于运动的物体,一般不会匹配到单模型,因此运动的物体在图像中的位置对应的高斯模型的方差更大,权重更低。因此GMM算法中可以通过模型的方差和权重,来确定图像中的运动物体,从而实现前景分割。
或者,本公开实施例还可以采取其他的方式对目标点云和目标图像进行前景分割,本公开实施例对此不作具体限定。
本公开实施例对目标点云和目标图像进行前景分割,从而减少背景区域中的环境噪声对于标定结果的干扰,提高了标定精度。
在本公开的一些实施例中,参见图3,上述S203确定粗标定变换矩阵对应的匹配度的方式,包括以下步骤:
S2031、将目标图像转换为灰度图,并针对灰度图中每个像素点,将该像素点的像素值设置为该像素点与多个相邻的像素点之间的像素差值中的最大值,得到边缘图像。
本公开实施例中,针对灰度图中的每个像素点,分别计算该像素点的像素值与相邻的8个像素点的像素值之间的差值绝对值,得到8个绝对值,并将这8个绝对值中的最大绝对值,作为该像素点的像素值。
通过这种方式处理目标图像,能够使得目标图像中物体的边缘更加明显,其他部分更加模糊,达到图像中物体的边缘与非边缘的对比更加明显的效果,因此将处理后的图像称为边缘图像。
S2032、对边缘图像进行图像插值处理。
可选的,可采用双线性差值算法、最近邻差值算法或者反距离变换算法等,对边缘图像进行图像插值处理。从而对边缘图像中物体的边缘实现增广,进而增加目标点云投影到边缘图像之后,目标点云包括的激光点与边缘图像中物体的边缘重合的可能性,从而减少标定得到的标定结果为局部最优解的情况。
例如,可通过公式(1)对边缘图像进行反距离变换,从而实现对边缘图像进行图像插值。
其中,Di,j为反距离变换后的边缘图像中第i行第j列像素点的像素值,α和γ均为预设的变换参数,取值范围均为[0,1]。Ei,j为边缘图像中第i行第j列像素点的像素值,Ex,y为边缘图像中第x行第y列像素点的像素值,且第x行第y列像素点的像素值为边缘图像中各像素值的最大值,即该像素点是边缘图像中最亮的像素点。
S2033、针对目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积。
其中,目标像素点为插值处理后的边缘图像中,与使用粗标定矩阵将该激光点投影到目标图像的坐标系下的位置相同的像素点。投影时,可以使用粗标定矩阵将激光点投影到相机的坐标系,再利用相机的内参矩阵,将相机坐标系下的激光点投影到目标图像的坐标系。
每个激光点是一个三维坐标点,三维坐标包括水平值、高度值和深度值。水平值表示激光点对应的物理位置与激光雷达之间的水平距离,高度值表示激光点对应的物理位置与激光雷达之间的高度距离,深度值表示激光点对应的物理位置与激光雷达之间的深度距离。
一种实施方式中,在S2033之前,还可以针对目标点云中由同一个激光线束扫描得到的多个激光点,确定相邻的激光点之间的距离,删除与相邻的激光点之间的距离均超过预设阈值的激光点,得到筛选后的目标点云。
由于激光线束扫描到物体时能够产生激光点,因此激光线束扫描到同一个物体产生的各激光点中,相邻的激光点之间的距离较近。如果一个激光点与两边相邻的激光点之间的距离均较远,说明该激光点与两边相邻的激光点均不属于同一个物体,那么该激光点可能是该激光线束扫描到背景区域的干扰得到的激光点,因此将该激光点删除,从而减少目标点云中的噪声。
相应的,在执行S2033时,可以针对筛选后的目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积。由于对目标点云通过上述方法进行筛选,能够减少目标点云包括的激光点数量,提高了标定效率;而且也保留了扫描前景中的物体得到的激光点,因此不会影响标定的精度。
另一实施方式中,在S2033之前,可以不对目标点云进行筛选,从而在执行S2033时,直接针对目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积。从而减少筛选目标点云消耗的时间,提高标定效率。
S2034、对计算得到的各乘积求和,得到粗标定变换矩阵对应的匹配度。
通过S2033针对每个激光点,都得到一个乘积,执行S2034时,将S2033得到的各乘积求和,从而得到粗标定变换矩阵对应的匹配度。
通过上述方法,本公开实施例能够通过对目标图像进行处理,保留目标图像中物体的边缘处的像素点,并通过利用粗标定矩阵将目标点云投影到目标图像的坐标系,来确定目标点云与目标图像中物体边缘对齐程度,即得到粗标定矩阵对应的匹配度,使得得到的匹配度能够表示粗标定矩阵的准确性。
在本公开的一些实施例中,上述S204-S206进行细标定的方式,可以实现为以下步骤:
步骤1、对粗标定变换矩阵的旋转矩阵和平移矩阵分别添加多种扰动参数,将添加扰动参数后的旋转矩阵和平移矩阵的每一种组合,作为一个第一变换矩阵。
在本公开实施例中,对旋转矩阵添加多种扰动参数,得到多个添加扰动参数后的旋转矩阵;对平移矩阵添加多种扰动参数,得到多个添加扰动参数后的平移矩阵。针对添加扰动参数后的每个旋转矩阵,将其与每个添加扰动参数后的平移矩阵的组合,作为一个第一变换矩阵。
其中,旋转矩阵可以表示为(roll、yaw、pitch),平移矩阵可以表示为(x,y,z),其中,roll为绕Z轴旋转角度,yaw为绕Y轴旋转角度,pitch为绕X轴旋转角度,x为沿X轴平移量,y为沿Y轴平移量,z为沿Z轴平移量,X轴指向激光雷达正前方,Y轴指向激光雷达左方,Z轴指向激光雷达上方。
在本公开实施例中,对旋转矩阵添加多种扰动参数,可使得旋转矩阵包括的三个维度的值产生不同的程度的增大或减小;同理,对平移矩阵添加多种扰动参数,可使得平移矩阵包括的三个维度的值产生不同的程度的增大或减小。
例如,每次为旋转矩阵的三个维度添加的扰动参数相同,各种扰动参数分别为:-0.5°、-0.4°、-0.3°、-0.2°、-0.1°、0°、0.1°、0.2°、0.3°、0.4°、0.5°。每次为平移矩阵的三个维度添加的扰动参数相同,各种扰动参数分别为:-0.2、-0.16、-0.12、-0.08、-0.04、0、0.04、0.08、0.12、0.16、0.2,默认单位为厘米。
步骤2、确定每个第一变换矩阵对应的匹配度,并确定各第一变换矩阵对应的匹配度中的最大匹配度。
第一变换矩阵对应的匹配度为:使用第一变换矩阵将目标点云投影到目标图像的坐标系,投影后的目标点云与目标图像之间的匹配度。第一变换矩阵对应的匹配度能够表示第一变换矩阵的准确度。
确定第一变换矩阵对应的匹配度的方式,与上述确定粗标定矩阵对应的匹配度的方式相同,可参考上述描述,此处不再赘述。
步骤3、若最大匹配度大于粗标定变换矩阵对应的匹配度,则将具有最大匹配度的第一变换矩阵作为标定结果。反之,若最大匹配度小于或等于粗标定变换矩阵对应的匹配度,则保持标定结果。
由于变换矩阵对应的匹配度能够表示变换矩阵的准确度,因此在最大匹配度大于粗标定变换矩阵对应的匹配度的情况下,说明具有最大匹配度的第一变换矩阵的准确度比粗标定矩阵的准确度更高,因此将具有最大匹配度的第一变换矩阵作为标定结果,从而实现了优化粗标定结果。
通过上述方法,本公开实施例可以在粗标定变换矩阵的基础上,添加扰动参数,得到多个第一变换矩阵,并对比各第一变换矩阵与粗标定变换矩阵的准确度,将其中准确度最高的作为更新后的标定结果。即本公开实施例能够在粗标定变换矩阵周围寻找准确度更高的标定结果,实现了对粗标定结果的优化。
在本公开的一些实施例中,上述S202进行粗标定是为了得到一个初始的标定结果,以便后续利用细标定对初始的标定结果进行优化,因此当第一次获取到目标图像和目标点云时,需要进行粗标定,以便得到粗标定结果并进一步进行细标定。当后续获取到目标图像和目标点云时,由于已存在具有一定准确度的标定结果,因此不需要再次进行粗标定,可以直接对当前的标定结果进行细标定,从而进一步优化当前的标定结果。
即在上述S202将目标点云和目标图像输入预先训练得到的标定模型之前,电子设备还可以判断是否存在标定结果。
若是,则对标定结果进行第一指定变换,得到第二变换矩阵,基于目标点云和目标图像,分别计算标定结果对应的匹配度和第二变换矩阵对应的匹配度,若第二变换矩阵对应的匹配度大于标定结果对应的匹配度,则将第二变换矩阵作为更新后的标定结果。
若否,则执行上述S202。
其中,得到第二变换矩阵的方式可参考得到第一变换矩阵的方式,此处不再赘述。
标定结果对应的匹配度为使用标定结果将目标点云投影到目标图像的坐标系,投影后的目标点云与目标图像之间的匹配度;第二变换矩阵对应的匹配度为使用第二变换矩阵将目标点云投影到目标图像的坐标系,投影后的目标点云与目标图像之间的匹配度。计算标定结果对应的匹配度和第二变换矩阵对应的匹配度的方式,可参考上述计算粗标定矩阵对应的匹配度的方式,此处不再赘述。
通过上述方法,本公开实施例可以在没有标定结果的情况下,先进行粗标定得到粗标定变换矩阵,作为初始的标定结果,再细标定对初始的标定结果进行优化。而后续再次获取目标点云和目标图像后,可以直接在最近优化得到的标定结果的基础上,进一步进行细标定,从而进一步优化标定结果。使得本公开实施例能够不断优化标定结果,从而提高标定结果的准确性,以便实时地适应当前的场景。
在本公开的一些实施例中,上述S202中的标定模型可以通过以下步骤训练获得:
步骤一、将采集时间差小于预设阈值的样本点云和样本图像作为一组训练样本,并将该组训练样本的标准变换矩阵作为该组训练样本的标签。
其中,一组训练样本的标准变换矩阵为通过人工或其他高精度方法对该组训练样本进行标定得到的标定结果。
可选的,可获取多个场景下的样本点云和样本图像以及该组训练样本的标准变换矩阵,从而提高标定模型的泛化能力。
步骤二、针对每组训练样本,将该组训练样本的标准变换矩阵进行第二指定变换,并将该组训练样本的样本点云进行第二指定变换,将变换后的样本点云和该组训练样本包括的样本图像作为一组训练样本,并将第二指定变换后的变换矩阵作为该组训练样本的标签。
其中,第二指定变换包括旋转变换和/或平移变换。可以对标准变换矩阵的旋转矩阵和平移矩阵分别添加多种扰动参数,将添加扰动参数后的旋转矩阵和平移矩阵的每一种组合,作为一个第二变换矩阵。
例如,每次为旋转矩阵的三个维度添加的扰动参数相同,各种扰动参数分别为:-20°、-19.99°、-19.98°、…、20°。每次为平移矩阵的三个维度添加的扰动参数相同,各种扰动参数分别为:-200、-199.08、-199.06、…、200,默认单位为厘米。
本公开实施例对标准变换矩阵和样本点云进行相同的平移和/或旋转变换,以便变换后的标准变换矩阵能够作为样本图像和变换后的样本点云的标签。例如,将标准变换矩阵的平移矩阵的每个维度增加1,同样地,也为样本点云中的每个激光点的坐标在X轴、Y轴和Z轴上分别增加1。
步骤三、利用各组训练样本以及每组训练样本的标签,训练神经网络模型,得到标定模型。
在本公开实施例中,可以将训练样本输入神经网络模型,得到神经网络模型输出的变换矩阵。并确定输出的变换矩阵和输入的训练样本的标签之间的误差,利用该误差调整神经网络模型的模型参数。之后返回将训练样本输入神经网络模型的步骤,直至神经网络模型收敛时,将当前的神经网络模型作为标定模型。例如,神经网络模型可以是卷积神经网络(Convolutional Neural Networks,CNN)或者循环神经网络(Recurrent NeuralNetwork,RNN)等,本公开实施例对此不作具体限定。
采用上述方法,本公开实施例可以基于训练样本组和训练样本组的标签,拓展出更多的训练样本组及其对应的标签,从而增加训练样本组的数量,提高标定模型的泛化能力。
以下结合实际应用场景,对本公开实施例提供的传感器标定方法进行说明。
参见图4,图4示出了不同角度下的道路环境,图4所示的车路协同自动驾驶场景中,路侧设置有:路侧计算单元1、定位模块2、同步模块3、激光雷达4、主相机5、补盲相机6和路侧单元(Road Side Unit,RSU)模块7。路侧计算单元1可以是移动边缘计算(Mobile EdgeComputing,MEC)模块。
其中,激光雷达4用于采集所处环境中360°全范围的三维数据,即点云。
主相机5和补盲相机6均用于拍摄所处环境中的二维数据,即图像,且主相机5和补盲相机6的拍摄视角不完全相同。
同步模块3用于对激光雷达4采集的点云、主相机5和补盲相机6拍摄的图像进行时间同步,即将各传感器采集的数据统一到同一时间域下。
路侧计算单元1用于基于激光雷达4、主相机5和补盲相机6采集的数据,并完成激光雷达与主相机5的标定,以及激光雷达4与补盲相机6的标定;以及识别所处环境中的目标,完成目标跟踪等。
定位模块2用于接收卫星发送的经纬度数据和时间戳信息,完成对路侧计算单元1、定位模块2、同步模块3、激光雷达4、主相机5、补盲相机6和RSU模块7的定位。
RSU模块7用于接收路侧计算单元1对目标的识别结果,并将识别结果发送到车端。
参见图5,以下对本公开实施例提供的传感器标定方法的整体流程进行说明:
S501、周期性地获取目标点云和目标图像。
S502、对目标点云进行滤波处理,并目标图像进行去畸变处理。
S503、判断是否存在标定结果。若存在,则执行S510;若不存在,则执行S504。
S504、识别目标点云中的前景区域,删除目标点云中背景区域包括的激光点,得到处理后的目标点云,并识别目标图像中的前景区域,删除目标图像中背景区别包括的像素点,得到处理后的目标图像。
S505、将处理后的目标点云和目标图像输入预先训练得到的标定模型,得到标定模型输出的粗标定变换矩阵。
S506、确定粗标定变换矩阵对应的匹配度,对粗标定变换矩阵进行第一指定变换,得到第一变换矩阵,并计算第一变换矩阵对应的匹配度。
S507、判断第一变换矩阵对应的匹配度是否大于粗标定变换矩阵对应的匹配度。若是,则执行S508;若否,则执行S509。
S508、将第一变换矩阵作为标定结果。
S509、将粗标定变换矩阵作为标定结果。
S510、对标定结果进行第一指定变换,得到第二变换矩阵,基于目标点云和目标图像,分别计算标定结果对应的匹配度和第二变换矩阵对应的匹配度。其中,标定结果为最近一次更新得到的标定结果。
S511、判断第二变换矩阵对应的匹配度是否大于标定结果对应的匹配度。若是,则执行S512;若否,则执行S513。
S512、将第二变换矩阵作为更新后的标定结果。
S513、保持标定结果。
图5中各步骤的具体实现方式可参考上述描述,此处不再赘述。
传统的无特定标定目标的传感器标定方法分为:传统特征提取配准的标定方法与基于深度学习的标定方法。
在传统特征提取配准的标定方法中,通过提取从点云和图像中提取平面、线束和特征点等环境信息,并基于初始标定结果,确定变换矩阵。而初始标定结果依赖人工获得,因此该方法需要消耗大量的人力成本。
在基于深度学习的标定方法中,通过深度学习模型识别变换矩阵。但是该方法为了保证模型的识别精度,在模型训练过程中,需要使用大量精确的标定数据,但精确的标定数据难以获得,因此难以得到识别精度高的深度学习模型,导致该方法的标定精度较差。
而本公开实施例结合粗标定和细标定两种方式,并不断通过细标定的迭代来优化标定结果,弥补了使用标定模型进行粗标定的精度不高的问题。而且,本申请实施例中的初始标定结果是通过标定模型进行粗标定获得的,因此不需要人工确定的初始标定结果,从而减少了人工标定的工作量,降低了人力成本。
此外,在自动驾驶领域中,无论是路侧的传感器,还是车辆上安装的传感器,所处的自然环境复杂,安装的相对位置和相对角度均容易收到大风等恶劣天气影响而发生变化,导致预先的标定结果失效。而本公开实施例能够在传感器采集数据的过程中,实时地不断优化标定结果,从而使得标定得到的变换矩阵实时地适应当前环境,实现了对标定结果的监测与校正,从而增加适应复杂环境的鲁棒性,满足自动驾驶场景下对标定的可靠性与准确性要求,进而提高自动驾驶场景中环境感知与物体跟踪的准确性与可靠性。
基于相同的发明构思,对应于上述方法实施例,本公开实施例提供了一种多传感器联合标定装置,如图6所示,该装置包括:获取模块601、粗标定模块602、确定模块603和细标定模块604;
获取模块601,用于获取激光雷达采集的目标点云和相机采集的目标图像,目标点云的采集时刻和目标图像的采集时刻之间的时间差小于预设时间差;
粗标定模块602,用于将获取模块601获取的目标点云和目标图像输入预先训练得到的标定模型,得到标定模型输出的粗标定变换矩阵,标定模型为基于样本点云和样本图像对神经网络模型进行训练得到的模型;
确定模块603,用于确定粗标定模块602标定得到的粗标定变换矩阵对应的匹配度,匹配度为使用粗标定变换矩阵将目标点云投影到目标图像的坐标系,投影后的目标点云与目标图像之间的匹配度;
细标定模块604,用于对粗标定模块602标定得到的粗标定变换矩阵进行第一指定变换,得到第一变换矩阵,并计算第一变换矩阵对应的匹配度,若第一变换矩阵对应的匹配度大于确定模块603确定的粗标定变换矩阵对应的匹配度,则将第一变换矩阵作为标定结果;否则,将粗标定变换矩阵作为标定结果;
其中,变换矩阵用于表示激光雷达采集的点云的坐标系与相机的坐标系之间的坐标转换关系。
在本公开的一些实施例中,确定模块603,具体用于:
将目标图像转换为灰度图,并针对灰度图中每个像素点,将该像素点的像素值设置为该像素点与多个相邻的像素点之间的像素差值中的最大值,得到边缘图像;
对边缘图像进行图像插值处理;
针对目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积;目标像素点为插值处理后的边缘图像中,与使用粗标定矩阵将该激光点投影到目标图像的坐标系下的位置相同的像素点;
对计算得到的各乘积求和,得到粗标定变换矩阵对应的匹配度。
在本公开的一些实施例中,该装置还包括:
筛选模块,用于在针对目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积之前,针对目标点云中由同一个激光线束扫描得到的多个激光点,确定相邻的激光点之间的距离,删除与相邻的激光点之间的距离均超过预设阈值的激光点,得到筛选后的目标点云;
确定模块603,具体用于:
针对筛选后的目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积。
在本公开的一些实施例中,变换矩阵包括旋转矩阵和平移矩阵;细标定模块604,具体用于:
对粗标定变换矩阵的旋转矩阵和平移矩阵分别添加多种扰动参数,将添加扰动参数后的旋转矩阵和平移矩阵的每一种组合,作为一个第一变换矩阵;
确定每个第一变换矩阵对应的匹配度,并确定各第一变换矩阵对应的匹配度中的最大匹配度;
若最大匹配度大于粗标定变换矩阵对应的匹配度,则将具有最大匹配度的第一变换矩阵作为标定结果。
在本公开的一些实施例中,该装置还包括:
判断模块,用于在将目标点云和目标图像输入预先训练得到的标定模型之前,判断是否存在标定结果;
细标定模块604,还用于若判断模块的判断结果为是,则对标定结果进行第一指定变换,得到第二变换矩阵,基于目标点云和目标图像,分别计算标定结果对应的匹配度和第二变换矩阵对应的匹配度,若第二变换矩阵对应的匹配度大于标定结果对应的匹配度,则将第二变换矩阵作为更新后的标定结果;
调用模块,用于若判断模块的判断结果为否,则调用粗标定模块602执行将目标点云和目标图像输入预先训练得到的标定模型的步骤。
在本公开的一些实施例中,该装置还包括:
前景识别模块,用于在将目标点云和目标图像输入预先训练得到的标定模型之前,识别目标点云中的前景区域,删除目标点云中背景区域包括的激光点,得到处理后的目标点云;识别目标图像中的前景区域,删除目标图像中背景区别包括的像素点,得到处理后的目标图像;
粗标定模块602,具体用于:
将处理后的目标点云和处理后的目标图像输入标定模型。
在本公开的一些实施例中,该装置还包括训练模块,训练模块用于:
将采集时间差小于预设阈值的样本点云和样本图像作为一组训练样本,并将该组训练样本的标准变换矩阵作为该组训练样本的标签;
针对每组训练样本,将该组训练样本的标准变换矩阵进行第二指定变换,并将该组训练样本的样本点云进行第二指定变换,将变换后的样本点云和该组训练样本包括的样本图像作为一组训练样本,并将第二指定变换后的变换矩阵作为该组训练样本的标签;
利用各组训练样本以及每组训练样本的标签,训练神经网络模型,得到标定模型。
本公开实施例还提供了一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现上述方法实施例中的方法步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本公开提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一传感器标定方法的步骤。
在本公开提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一传感器标定方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本公开实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统和装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本公开的较佳实施例,并非用于限定本公开的保护范围。凡在本公开的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本公开的保护范围内。
Claims (17)
1.一种多传感器联合标定方法,其特征在于,所述方法包括:
获取激光雷达采集的目标点云和相机采集的目标图像,所述目标点云的采集时刻和所述目标图像的采集时刻之间的时间差小于预设时间差;
将所述目标点云和所述目标图像输入预先训练得到的标定模型,得到所述标定模型输出的粗标定变换矩阵,所述标定模型为基于样本点云和样本图像对神经网络模型进行训练得到的模型;
确定所述粗标定变换矩阵对应的匹配度,所述匹配度为使用所述粗标定变换矩阵将所述目标点云投影到所述目标图像的坐标系,投影后的目标点云与所述目标图像之间的匹配度;
对所述粗标定变换矩阵进行第一指定变换,得到第一变换矩阵,并计算第一变换矩阵对应的匹配度,若所述第一变换矩阵对应的匹配度大于所述粗标定变换矩阵对应的匹配度,则将所述第一变换矩阵作为标定结果;否则,将所述粗标定变换矩阵作为所述标定结果;
其中,变换矩阵用于表示所述激光雷达采集的点云的坐标系与所述相机的坐标系之间的坐标转换关系。
2.根据权利要求1所述的方法,其特征在于,所述确定所述粗标定变换矩阵对应的匹配度,包括:
将所述目标图像转换为灰度图,并针对所述灰度图中每个像素点,将该像素点的像素值设置为该像素点与多个相邻的像素点之间的像素差值中的最大值,得到边缘图像;
对所述边缘图像进行图像插值处理;
针对所述目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积;所述目标像素点为插值处理后的边缘图像中,与使用所述粗标定矩阵将该激光点投影到所述目标图像的坐标系下的位置相同的像素点;
对计算得到的各乘积求和,得到所述粗标定变换矩阵对应的匹配度。
3.根据权利要求2所述的方法,其特征在于,在针对所述目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积之前,所述方法还包括:
针对所述目标点云中由同一个激光线束扫描得到的多个激光点,确定相邻的激光点之间的距离,删除与相邻的激光点之间的距离均超过预设阈值的激光点,得到筛选后的目标点云;
所述针对所述目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积,包括:
针对筛选后的目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积。
4.根据权利要求1所述的方法,其特征在于,所述变换矩阵包括旋转矩阵和平移矩阵;所述对所述粗标定变换矩阵进行第一指定变换,得到第一变换矩阵,并计算第一变换矩阵对应的匹配度,若所述第一变换矩阵对应的匹配度大于所述粗标定变换矩阵对应的匹配度,则将所述第一变换矩阵作为标定结果,包括:
对所述粗标定变换矩阵的旋转矩阵和平移矩阵分别添加多种扰动参数,将添加扰动参数后的旋转矩阵和平移矩阵的每一种组合,作为一个第一变换矩阵;
确定每个第一变换矩阵对应的匹配度,并确定各第一变换矩阵对应的匹配度中的最大匹配度;
若所述最大匹配度大于所述粗标定变换矩阵对应的匹配度,则将具有所述最大匹配度的第一变换矩阵作为所述标定结果。
5.根据权利要求1-4任一项所述的方法,其特征在于,在将所述目标点云和所述目标图像输入预先训练得到的标定模型之前,所述方法还包括:
判断是否存在标定结果;
若是,则对所述标定结果进行第一指定变换,得到第二变换矩阵,基于所述目标点云和所述目标图像,分别计算所述标定结果对应的匹配度和所述第二变换矩阵对应的匹配度,若所述第二变换矩阵对应的匹配度大于所述标定结果对应的匹配度,则将所述第二变换矩阵作为更新后的标定结果;
若否,则执行所述将所述目标点云和所述目标图像输入预先训练得到的标定模型的步骤。
6.根据权利要求1-4任一项所述的方法,其特征在于,在将所述目标点云和所述目标图像输入预先训练得到的标定模型之前,所述方法还包括:
识别所述目标点云中的前景区域,删除所述目标点云中背景区域包括的激光点,得到处理后的目标点云;
识别所述目标图像中的前景区域,删除所述目标图像中背景区别包括的像素点,得到处理后的目标图像;
所述将所述目标点云和所述目标图像输入预先训练得到的标定模型,包括:
将处理后的目标点云和处理后的目标图像输入所述标定模型。
7.根据权利要求1-4任一项所述的方法,其特征在于,所述标定模型通过以下步骤训练获得:
将采集时间差小于所述预设阈值的样本点云和样本图像作为一组训练样本,并将该组训练样本的标准变换矩阵作为该组训练样本的标签;
针对每组训练样本,将该组训练样本的标准变换矩阵进行第二指定变换,并将该组训练样本的样本点云进行所述第二指定变换,将变换后的样本点云和该组训练样本包括的样本图像作为一组训练样本,并将所述第二指定变换后的变换矩阵作为该组训练样本的标签;
利用各组训练样本以及每组训练样本的标签,训练神经网络模型,得到所述标定模型。
8.一种传感器标定系统,其特征在于,所述系统包括:
激光雷达,用于采集点云;
相机,用于采集图像;
电子设备,用于执行上述权利要求1-7任一项所述的方法。
9.一种多传感器联合标定装置,其特征在于,所述装置包括:
获取模块,用于获取激光雷达采集的目标点云和相机采集的目标图像,所述目标点云的采集时刻和所述目标图像的采集时刻之间的时间差小于预设时间差;
粗标定模块,用于将所述获取模块获取的所述目标点云和所述目标图像输入预先训练得到的标定模型,得到所述标定模型输出的粗标定变换矩阵,所述标定模型为基于样本点云和样本图像对神经网络模型进行训练得到的模型;
确定模块,用于确定所述粗标定模块标定得到的所述粗标定变换矩阵对应的匹配度,所述匹配度为使用所述粗标定变换矩阵将所述目标点云投影到所述目标图像的坐标系,投影后的目标点云与所述目标图像之间的匹配度;
细标定模块,用于对所述粗标定模块标定得到的所述粗标定变换矩阵进行第一指定变换,得到第一变换矩阵,并计算第一变换矩阵对应的匹配度,若所述第一变换矩阵对应的匹配度大于所述确定模块确定的所述粗标定变换矩阵对应的匹配度,则将所述第一变换矩阵作为标定结果;否则,将所述粗标定变换矩阵作为所述标定结果;
其中,变换矩阵用于表示所述激光雷达采集的点云的坐标系与所述相机的坐标系之间的坐标转换关系。
10.根据权利要求9所述的装置,其特征在于,所述确定模块,具体用于:
将所述目标图像转换为灰度图,并针对所述灰度图中每个像素点,将该像素点的像素值设置为该像素点与多个相邻的像素点之间的像素差值中的最大值,得到边缘图像;
对所述边缘图像进行图像插值处理;
针对所述目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积;所述目标像素点为插值处理后的边缘图像中,与使用所述粗标定矩阵将该激光点投影到所述目标图像的坐标系下的位置相同的像素点;
对计算得到的各乘积求和,得到所述粗标定变换矩阵对应的匹配度。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
筛选模块,用于在针对所述目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积之前,针对所述目标点云中由同一个激光线束扫描得到的多个激光点,确定相邻的激光点之间的距离,删除与相邻的激光点之间的距离均超过预设阈值的激光点,得到筛选后的目标点云;
所述确定模块,具体用于:
针对筛选后的目标点云中的每个激光点,计算该激光点的深度值以及目标像素点的像素值之间的乘积。
12.根据权利要求9所述的装置,其特征在于,所述变换矩阵包括旋转矩阵和平移矩阵;所述细标定模块,具体用于:
对所述粗标定变换矩阵的旋转矩阵和平移矩阵分别添加多种扰动参数,将添加扰动参数后的旋转矩阵和平移矩阵的每一种组合,作为一个第一变换矩阵;
确定每个第一变换矩阵对应的匹配度,并确定各第一变换矩阵对应的匹配度中的最大匹配度;
若所述最大匹配度大于所述粗标定变换矩阵对应的匹配度,则将具有所述最大匹配度的第一变换矩阵作为所述标定结果。
13.根据权利要求9-12任一项所述的装置,其特征在于,所述装置还包括:
判断模块,用于在将所述目标点云和所述目标图像输入预先训练得到的标定模型之前,判断是否存在标定结果;
所述细标定模块,还用于若所述判断模块的判断结果为是,则对所述标定结果进行第一指定变换,得到第二变换矩阵,基于所述目标点云和所述目标图像,分别计算所述标定结果对应的匹配度和所述第二变换矩阵对应的匹配度,若所述第二变换矩阵对应的匹配度大于所述标定结果对应的匹配度,则将所述第二变换矩阵作为更新后的标定结果;
调用模块,用于若所述判断模块的判断结果为否,则调用所述粗标定模块执行所述将所述目标点云和所述目标图像输入预先训练得到的标定模型的步骤。
14.根据权利要求9-12任一项所述的装置,其特征在于,所述装置还包括:
前景识别模块,用于在将所述目标点云和所述目标图像输入预先训练得到的标定模型之前,识别所述目标点云中的前景区域,删除所述目标点云中背景区域包括的激光点,得到处理后的目标点云;识别所述目标图像中的前景区域,删除所述目标图像中背景区别包括的像素点,得到处理后的目标图像;
所述粗标定模块,具体用于:
将处理后的目标点云和处理后的目标图像输入所述标定模型。
15.根据权利要求9-12任一项所述的装置,其特征在于,所述装置还包括训练模块,所述训练模块用于:
将采集时间差小于所述预设阈值的样本点云和样本图像作为一组训练样本,并将该组训练样本的标准变换矩阵作为该组训练样本的标签;
针对每组训练样本,将该组训练样本的标准变换矩阵进行第二指定变换,并将该组训练样本的样本点云进行所述第二指定变换,将变换后的样本点云和该组训练样本包括的样本图像作为一组训练样本,并将所述第二指定变换后的变换矩阵作为该组训练样本的标签;
利用各组训练样本以及每组训练样本的标签,训练神经网络模型,得到所述标定模型。
16.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一所述的方法步骤。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210734948.4A CN115236643A (zh) | 2022-06-27 | 2022-06-27 | 一种传感器标定方法、系统、装置、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210734948.4A CN115236643A (zh) | 2022-06-27 | 2022-06-27 | 一种传感器标定方法、系统、装置、电子设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115236643A true CN115236643A (zh) | 2022-10-25 |
Family
ID=83671757
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210734948.4A Pending CN115236643A (zh) | 2022-06-27 | 2022-06-27 | 一种传感器标定方法、系统、装置、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115236643A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117705177A (zh) * | 2024-02-06 | 2024-03-15 | 中国气象科学研究院 | 一种基于智能仪器的光学标校方法及系统 |
-
2022
- 2022-06-27 CN CN202210734948.4A patent/CN115236643A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117705177A (zh) * | 2024-02-06 | 2024-03-15 | 中国气象科学研究院 | 一种基于智能仪器的光学标校方法及系统 |
CN117705177B (zh) * | 2024-02-06 | 2024-05-10 | 中国气象科学研究院 | 一种基于智能仪器的光学标校方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111563442B (zh) | 基于激光雷达的点云和相机图像数据融合的slam方法及系统 | |
CN111553859B (zh) | 一种激光雷达点云反射强度补全方法及系统 | |
CN105678689B (zh) | 高精地图数据配准关系确定方法及装置 | |
CN108802785B (zh) | 基于高精度矢量地图和单目视觉传感器的车辆自定位方法 | |
CN111340797A (zh) | 一种激光雷达与双目相机数据融合检测方法及系统 | |
CN112733812B (zh) | 三维车道线检测方法、装置及存储介质 | |
CN113340334B (zh) | 用于无人车的传感器标定方法、装置及电子设备 | |
CN114926726B (zh) | 基于多任务网络的无人船感知方法及相关设备 | |
CN113205604A (zh) | 一种基于摄像机和激光雷达的可行区域检测方法 | |
CN113761999A (zh) | 一种目标检测方法、装置、电子设备和存储介质 | |
CN111986214B (zh) | 一种地图中人行横道的构建方法和电子设备 | |
CN112991389A (zh) | 一种目标跟踪方法、装置及移动机器人 | |
CN112036359B (zh) | 一种车道线的拓扑信息获得方法、电子设备及存储介质 | |
CN115451948A (zh) | 一种基于多传感器融合的农业无人车定位里程计方法及系统 | |
CN111507340B (zh) | 一种基于三维点云数据的目标点云数据提取方法 | |
CN114217665A (zh) | 一种相机和激光雷达时间同步方法、装置及存储介质 | |
CN113313047A (zh) | 一种基于车道结构先验的车道线检测方法及系统 | |
CN112683228A (zh) | 单目相机测距方法及装置 | |
CN113970734A (zh) | 路侧多线激光雷达降雪噪点去除方法、装置及设备 | |
CN112652020A (zh) | 一种基于AdaLAM算法的视觉SLAM方法 | |
CN115236643A (zh) | 一种传感器标定方法、系统、装置、电子设备及介质 | |
CN117541655A (zh) | 融合视觉语义消除radar建图z轴累积误差的方法 | |
CN116844124A (zh) | 三维目标检测框标注方法、装置、电子设备和存储介质 | |
CN114005110B (zh) | 3d检测模型训练方法与装置、3d检测方法与装置 | |
CN115937449A (zh) | 高精地图生成方法、装置、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |