CN115994955A - 相机外参标定方法、装置和车辆 - Google Patents
相机外参标定方法、装置和车辆 Download PDFInfo
- Publication number
- CN115994955A CN115994955A CN202310287682.8A CN202310287682A CN115994955A CN 115994955 A CN115994955 A CN 115994955A CN 202310287682 A CN202310287682 A CN 202310287682A CN 115994955 A CN115994955 A CN 115994955A
- Authority
- CN
- China
- Prior art keywords
- target
- frame
- dimensional point
- calibration plate
- point cloud
- 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.)
- Granted
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Image Processing (AREA)
Abstract
本申请涉及一种相机外参标定方法、装置和车辆。所述方法包括:根据多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的标定板在相机坐标系下的第一平面方程;根据各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点和对应的标定板在相机坐标系下的边缘直线方程;根据多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和各帧目标三维点云中标定板的多个目标激光边缘点;进而根据上述结果建立相机和激光雷达之间的外参的目标函数;基于目标函数确定相机的目标外参。采用本方法能够提高相机外参标定的准确率。
Description
技术领域
本申请涉及图像处理技术领域,特别是涉及一种相机外参标定方法、装置、车辆、计算机设备、存储介质和计算机程序产品。
背景技术
随着自动驾驶领域的不断发展,车载相机可以用于实现车辆的自动驾驶功能。为保证车辆的自动驾驶功能的体验效果,需要对相机外参进行标定。
传统技术中,可以基于普通标定板边缘进行外参标定,具体地,通过对相机采集的图像进行边缘提取,并利用激光雷达采集的点云坐标和偏航角特性进行边缘提取,以通过投影到像素坐标系下的边线关系,获得相机外参。
然而,在上述方式中,由于点云存在抖动、拖点等现象,图像的采集环境存在不确定性,导致激光雷达和相机的边缘检测存在大量噪点,会在点云中把非边缘点当成边缘点,把图像的背景线当成标定板边缘线使用,使得得到的相机外参的准确性不高。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高外参标定准确率的相机外参标定方法、装置和车辆。
第一方面,本申请提供了一种相机外参标定方法,所述方法包括:获取相机采集标定板的多帧目标图像数据和激光雷达采集标定板的多帧目标三维点云;根据多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的标定板在相机坐标系下的第一平面方程;根据各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点和对应的标定板在相机坐标系下的边缘直线方程;根据多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和各帧目标三维点云中标定板的多个目标激光边缘点;根据各帧目标图像数据中标定板的多个角点位置、边缘直线方程和第一平面方程、以及各帧目标三维点云、各帧目标三维点云中标定板的多个目标激光边缘点和第二平面方程,建立相机和激光雷达之间的外参的目标函数;基于目标函数,确定相机的目标外参。
在其中一个实施例中,根据各帧目标图像数据中标定板的多个角点位置、边缘直线方程和第一平面方程、以及各帧目标三维点云、各帧目标三维点云中标定板的多个目标激光边缘点和第二平面方程,建立相机和激光雷达之间的外参的目标函数,包括:通过目标外参,将各帧目标三维点云投影到相机坐标系下,获得各帧目标三维点云中标定板对应的第一目标投影点;通过目标外参,将各帧目标图像数据中标定板的多个角点位置投影到相机坐标系下,获得各帧目标图像数据中标定板对应的第二目标投影点;通过目标外参,将各帧目标三维点云中标定板对应的多个目标激光边缘点投影到相机坐标系下,获得各帧目标三维点云中标定板对应的第三目标投影点;根据各帧目标三维点云中标定板对应的第一目标投影点和第一平面方程、各帧目标图像数据中标定板对应的第二目标投影点和第二平面方程、以及各帧目标三维点云中标定板对应的第三目标投影点和边缘直线方程,建立相机和激光雷达之间的外参的目标函数。
在其中一个实施例中,根据各帧目标三维点云中标定板对应的第一目标投影点和第一平面方程、各帧目标图像数据中标定板对应的第二目标投影点和第二平面方程、以及各帧目标三维点云中标定板对应的第三目标投影点和边缘直线方程,建立相机和激光雷达之间的外参的目标函数,包括:根据各帧目标三维点云中标定板对应的第一目标投影点到对应的第一平面方程的第一距离,建立各帧目标三维点云中标定板对应的第一代价函数;根据各帧目标图像数据中标定板对应的第二目标投影点到对应的第二平面方程的第二距离,建立各帧目标图像数据中标定板对应的第二代价函数;根据各帧目标三维点云中标定板对应的第三目标投影点到边缘直线方程的第三距离,建立各帧目标三维点云中标定板对应的第三代价函数;基于各帧目标三维点云中标定板对应的第一代价函数、各帧目标图像数据中标定板对应的第二代价函数、以及各帧目标三维点云中标定板对应的第三代价函数,建立相机和激光雷达之间的外参的目标函数。
在其中一个实施例中,根据多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的标定板在相机坐标系下的第一平面方程,包括:根据预设角点函数和多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置;获取各帧目标图像数据中标定板的多个角点位置通过相机内参投影到世界坐标系下的第四目标投影点;对各帧目标图像数据中标定板对应的第四目标投影点进行数据拟合,根据数据拟合结果,获得各帧目标图像数据中标定板在相机坐标系下的第一平面方程。
在其中一个实施例中,标定板包括棋盘板,根据各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点和对应的标定板在相机坐标系下的边缘直线方程,包括:根据棋盘板中格子的尺寸、棋盘板的边缘到棋盘板中格子的距离、以及各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点;对各帧目标图像数据中标定板的多个目标相机边缘点进行数据拟合,根据数据拟合结果,获得各帧目标图像数据中标定板在相机坐标系下的边缘直线方程。
在其中一个实施例中,根据多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和各帧目标三维点云中标定板的多个目标激光边缘点,包括:对多帧目标三维点云中的各帧目标三维点云分别进行数据拟合,根据数据拟合结果,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程;根据对应的第二平面方程的系数,对各帧目标三维点云进行投影,获得各帧目标二维点云;根据各帧目标二维点云和第一半径,获得各帧目标二维点云中每个点对应的点云候选集合;根据对应的点云候选集合和预设曲面方程,获得各帧目标二维点云中每个点对应的法向量;根据各帧目标二维点云中每个点对应的点云候选集合和各帧目标二维点云中每个点对应的法向量,获得各帧目标三维点云中标定板对应的多个目标激光边缘点。
在其中一个实施例中,根据各帧目标二维点云中每个点对应的点云候选集合和各帧目标二维点云中每个点对应的法向量,获得各帧目标三维点云中标定板对应的多个目标激光边缘点,包括:将各帧目标二维点云中每个点对应的点云候选集合分别投影到目标切平面,获得对应的平面投影点集合;目标切平面为各帧目标二维点云中每个点和对应的法向量构成的平面;以各帧目标二维点云中每个点为原点,对应的法向量为y轴建立坐标系,根据各帧目标二维点云中每个点分别到对应的平面投影点集合中每个点的连线与坐标系的夹角,获得各帧目标二维点云中每个点对应的目标夹角集合;当根据对应的目标夹角集合中的夹角大于预设角度,确定对应的点云候选集合的点为边缘点时,获得各帧目标三维点云中标定板对应的多个目标激光边缘点。
在其中一个实施例中,多帧目标三维点云的获取方式,包括:获取激光雷达采集标定板的多帧初始三维点云;根据多帧初始三维点云对应的预设关键点和第二半径,获得多帧候选三维点云;对多帧候选三维点云进行去噪处理,获得多帧目标三维点云。
第二方面,本申请提供一种相机外参标定装置,装置包括:获取模块,用于获取相机采集标定板的多帧目标图像数据和激光雷达采集标定板的多帧目标三维点云;第一处理模块,用于根据多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的标定板在相机坐标系下的第一平面方程;第二处理模块,用于根据各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点和对应的标定板在相机坐标系下的边缘直线方程;第三处理模块,用于根据多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和各帧目标三维点云中标定板的多个目标激光边缘点;第四处理模块,用于根据各帧目标图像数据中标定板的多个角点位置、边缘直线方程和第一平面方程、以及各帧目标三维点云、各帧目标三维点云中标定板的多个目标激光边缘点和第二平面方程,建立相机和激光雷达之间的外参的目标函数;确定模块,用于基于目标函数,确定相机的目标外参。
第三方面,本申请提供一种车辆,车辆包括:相机、激光雷达和处理器;相机,用于采集标定板的多帧目标图像数据;激光雷达,用于采集标定板的多帧目标三维点云;处理器,用于执行上述的方法的步骤。
上述相机外参标定方法、装置和车辆,通过获取相机采集标定板的多帧目标图像数据和激光雷达采集标定板的多帧目标三维点云,以根据多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的标定板在相机坐标系下的第一平面方程,通过结合标定板的角点位置确定对应的标定板所在的平面,可以避免环境中的干扰物对相机外参标定的影响;并根据各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点和对应的标定板在相机坐标系下的边缘直线方程,通过结合标定板的角点位置确定标定板的边缘点,可以避免将环境中的干扰物作为标定板的边缘点,进而可以提高基于边缘点获得对应的边缘直线方程的准确率;并根据各帧目标图像数据中标定板的多个角点位置、边缘直线方程和第一平面方程、以及各帧目标三维点云、各帧目标三维点云中标定板的多个目标激光边缘点和第二平面方程,建立相机和激光雷达之间的外参的目标函数,通过结合相机和激光雷达对应的标定板的边缘特性和平面特征建立相机和激光雷达之间的外参的目标函数,以基于目标函数,确定相机的目标外参,可以提高相机外参标定的准确率。
附图说明
图1为一个实施例中相机外参标定方法的应用环境图;
图2为一个实施例中相机外参标定方法的流程示意图;
图3为一个实施例中根据各帧目标图像数据中标定板的多个角点位置、边缘直线方程和第一平面方程、以及各帧目标三维点云、各帧目标三维点云中标定板的多个目标激光边缘点和第二平面方程,建立相机和激光雷达之间的外参的目标函数的流程示意图;
图4为一个实施例中根据各帧目标三维点云中标定板对应的第一目标投影点和第一平面方程、各帧目标图像数据中标定板对应的第二目标投影点和第二平面方程、以及各帧目标三维点云中标定板对应的第三目标投影点和边缘直线方程,建立相机和激光雷达之间的外参的目标函数的流程示意图;
图5为一个实施例中根据多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的标定板在相机坐标系下的第一平面方程的流程示意图;
图6为一个实施例中根据根各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点和对应的标定板在相机坐标系下的边缘直线方程的流程示意图;
图7为一个实施例中棋盘格的示意图;
图8为一个实施例中根据多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和各帧目标三维点云中标定板的多个目标激光边缘点的流程示意图;
图9为一个实施例中根据各帧目标二维点云中每个点对应的点云候选集合和各帧目标二维点云中每个点对应的法向量,获得各帧目标三维点云中标定板对应的多个目标激光边缘点的流程示意图;
图10为一个实施例中多帧目标三维点云的获取方式的流程示意图;
图11为一个实施例中相机外参标定装置的结构框图;
图12为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的相机外参标定方法,可以应用于如图1所示的应用环境中。其中,车辆100包括相机102、激光雷达104和处理器106;当标定板放置在车辆前方时,相机102用于采集标定板对应的图像数据,激光雷达104用于标定板对应的三维点云,处理器根据标定板对应的图像数据,可以获得标定板的多帧目标图像数据,以及根据标定板对应的三维点云,可以获得标定板的多帧目标三维点云。
进一步地,处理器106可以根据相机采集标定板的多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的标定板在相机坐标系下的第一平面方程;并根据各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点和对应的标定板在相机坐标系下的边缘直线方程;以及,处理器106可以根据多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和各帧目标三维点云中标定板的多个目标激光边缘点;并根据各帧目标图像数据中标定板的多个角点位置、边缘直线方程和第一平面方程、以及各帧目标三维点云中标定板的多个目标激光边缘点和第二平面方程,建立相机和激光雷达之间的外参的目标函数,以基于目标函数,确定相机和激光雷达之间的目标外参,实现对相机外参的标定。
在一个实施例中,如图2所示,提供了一种相机外参标定方法,以该方法应用于图1中的处理器106为例进行说明,包括以下步骤:
S202,获取相机采集标定板的多帧目标图像数据和激光雷达采集标定板的多帧目标三维点云。
其中,标定板可以包括棋盘板和其他类型的用于进行外参标定的普通板,为便于描述,后续以标定板为棋盘板为例进行说明。当标定板放置在车辆前方时,车辆中安装的相机和激光雷达可以获取对应的数据。例如,标定板可以放置在距离车辆第一距离处的左侧位置、中间位置和右侧位置,标定板还可以放置在距离车辆第二距离处的左侧位置、中间位置和右侧位置,第二距离小于第二距离。
通常地,相机和激光雷达的频率为10hz-30hz,当标定板的位置变化时,相机和激光雷达采集的标定板的数据是连续的数据,因此,为避免环境中的其他干扰物对相机外参标定的影响,在相机和激光雷达采集相应的数据后,处理器可以对相应的数据进行数据处理,以得到多帧目标图像数据和多帧目标三维点云。例如,处理器可以从相机采集的数据中选取多个关键帧对应的数据作为多帧目标图像数据。
其中,关键帧可以包括标定板距离车辆第一距离处的左侧位置、中间位置和右侧位置、以及标定板距离车辆第二距离处的左侧位置、中间位置和右侧位置、以及标定板距离车辆第三距离处的其他位置时对应的帧。其中,第三距离大于第一距离,且小于第二距离,或者,第三距离大于第二距离,标定板距离车辆第三距离处的其他位置可以包括标定板距离车辆第三距离处的左侧位置、中间位置、右侧位置中的至少一个位置或至少两个位置之间的位置。
S204,根据多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的标定板在相机坐标系下的第一平面方程。
其中,标定板为棋盘板时,标定板的角点位置指的是相邻黑、白格子的顶点相交的位置;通过对多帧目标图像数据进行处理,可以获得各帧目标图像数据中标定板的多个角点位置,角点位置与标定板在同一平面,因此,根据各帧目标图像数据中标定板的多个角点位置,可以获得各帧目标图像数据中标定板在相机坐标系下的第一平面方程。
S206,根据各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点和对应的标定板在相机坐标系下的边缘直线方程。
其中,目标相机边缘点指的是对相机采集的数据进行处理而得到的标定板的边缘点。边缘直线方程用于指示标定板的边缘点对应的直线方程。在一些实施例中,可以根据各帧目标图像数据中标定板的多个角点位置,推测各帧目标图像数据中标定板的多个目标相机边缘点,进而根据各帧目标图像数据中标定板的多个目标相机边缘点,获得各帧目标图像数据中标定板在相机坐标系下的边缘直线方程。
S208,根据多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和各帧目标三维点云中标定板的多个目标激光边缘点。
其中,目标激光边缘点指的是对激光雷达采集的数据进行处理而得到的标定板的边缘点。在一些实施例中,通过对多帧目标三维点云进行处理,可以确定各帧目标三维点云中标定板对应的点云,进而根据各帧目标三维点云中标定板对应的点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程;并根据各帧目标三维点云中标定板的边缘点对应的点云,获得各帧目标三维点云中标定板的多个目标激光边缘点。
S210,根据各帧目标图像数据中标定板的多个角点位置、边缘直线方程和第一平面方程、以及各帧目标三维点云、各帧目标三维点云中标定板的多个目标激光边缘点和第二平面方程,建立相机和激光雷达之间的外参的目标函数。
S212,基于目标函数,确定相机的目标外参。
在一些实施例中,可以根据各帧目标三维点云与第一平面方程之间的距离、各帧目标图像数据中标定板的多个角点位置与第二平面方程之间的距离、以及各帧目标三维点云中标定板对应的多个目标激光边缘点与边缘直线方程之间的距离,建立相机和激光雷达之间的外参的目标函数,进而基于目标函数,确定相机的目标外参。
综上,在图2所示的实施例中,通过获取相机采集标定板的多帧目标图像数据和激光雷达采集标定板的多帧目标三维点云,以根据多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的标定板在相机坐标系下的第一平面方程,通过结合标定板的角点位置确定对应的标定板所在的平面,可以避免环境中的干扰物对相机外参标定的影响;并根据各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点和对应的标定板在相机坐标系下的边缘直线方程,通过结合标定板的角点位置确定标定板的边缘点,可以避免将环境中的干扰物作为标定板的边缘点,进而可以提高基于边缘点获得对应的边缘直线方程的准确率;并根据各帧目标图像数据中标定板的多个角点位置、边缘直线方程和第一平面方程、以及各帧目标三维点云、各帧目标三维点云中标定板的多个目标激光边缘点和第二平面方程,建立相机和激光雷达之间的外参的目标函数,通过结合相机和激光雷达对应的标定板的边缘特性和平面特征建立相机和激光雷达之间的外参的目标函数,以基于目标函数,确定相机的目标外参,可以提高相机外参标定的准确率。
在一个实施例中,如图3所示,提供了一种根据各帧目标图像数据中标定板的多个角点位置、边缘直线方程和第一平面方程、以及各帧目标三维点云、各帧目标三维点云中标定板的多个目标激光边缘点和第二平面方程,建立相机和激光雷达之间的外参的目标函数的流程示意图,包括以下步骤:
S302,通过目标外参,将各帧目标三维点云投影到相机坐标系下,获得各帧目标三维点云中标定板对应的第一目标投影点。
S304,通过目标外参,将各帧目标图像数据中标定板的多个角点位置投影到相机坐标系下,获得各帧目标图像数据中标定板对应的第二目标投影点。
其中,角点位置是二维坐标,通过目标外参将角点位置投影到相机坐标系下,可以获得对应的三维坐标。
S306,通过目标外参,将各帧目标三维点云中标定板对应的多个目标激光边缘点投影到相机坐标系下,获得各帧目标三维点云中标定板对应的第三目标投影点。
其中,目标激光边缘点是三维坐标,通过目标外参将目标激光边缘点投影到相机坐标系下,可以获得对应的二维坐标。
S308,根据各帧目标三维点云中标定板对应的第一目标投影点和第一平面方程、各帧目标图像数据中标定板对应的第二目标投影点和第二平面方程、以及各帧目标三维点云中标定板对应的第三目标投影点和边缘直线方程,建立相机和激光雷达之间的外参的目标函数。
在一些实施例中,可以根据各帧目标三维点云中标定板对应的第一目标投影点到第一平面方程的距离、各帧目标图像数据中标定板对应的第二目标投影点到第二平面方程的距离、以及各帧目标三维点云中标定板对应的第三目标投影点到边缘直线方程的距离,建立相机和激光雷达之间的外参的目标函数。
综上,在图3所示的实施例中,通过目标外参,将各帧目标三维点云投影到对应的第一平面方程,获得各帧目标三维点云中标定板对应的第一目标投影点;并通过目标外参将各帧目标图像数据中标定板的多个角点位置投影到对应的第二平面方程,获得各帧目标图像数据中标定板对应的第二目标投影点;并通过目标外参将各帧目标三维点云中标定板对应的多个目标激光边缘点投影到对应的边缘直线方程,获得各帧目标三维点云中标定板对应的第三目标投影点,以根据各帧目标三维点云中标定板对应的第一目标投影点和第一平面方程、各帧目标图像数据中标定板对应的第二目标投影点和第二平面方程、以及各帧目标三维点云中标定板对应的第三目标投影点和边缘直线方程,建立相机和激光雷达之间的外参的目标函数。这样,通过结合相机和激光雷达对应的标定板的边缘特性和平面特征建立相机和激光雷达之间的外参的目标函数,以基于目标函数,确定相机的目标外参,可以提高相机外参标定的准确率。
在一个实施例中,如图4所示,提供了一种根据各帧目标三维点云中标定板对应的第一目标投影点和第一平面方程、各帧目标图像数据中标定板对应的第二目标投影点和第二平面方程、以及各帧目标三维点云中标定板对应的第三目标投影点和边缘直线方程,建立相机和激光雷达之间的外参的目标函数的流程示意图,包括以下步骤:
S402,根据各帧目标三维点云中标定板对应的第一目标投影点到对应的第一平面方程的第一距离,建立各帧目标三维点云中标定板对应的第一代价函数。
其中,通过目标外参,将各帧目标三维点云中的点投影到相机坐标系下,可以获得各帧目标三维点云中标定板对应的第一目标投影点,并计算各帧目标三维点云中标定板对应的第一目标投影点到第一平面方程的距离,可以得到对应的第一距离,以基于对应的第一距离建立对应的第一代价函数。第一平面方程可以表示为:,则第一代价函数可以表示为:
;
其中,Nq表示各帧目标三维点云中的点数,q表示各帧目标三维点云中点的id号,为各帧目标三维点云中标定板对应的第一目标投影点的坐标,A1、B1、C1和D1为对应的第一平面方程的系数。
S404,根据各帧目标图像数据中标定板对应的第二目标投影点到对应的第二平面方程的第二距离,建立各帧目标图像数据中标定板对应的第二代价函数。
其中,通过目标外参,将各帧目标图像数据中标定板的多个角点位置(ui,vi)投影到相机坐标系下,获得各帧目标图像数据中标定板对应的第二目标投影点;并计算各帧目标图像数据中标定板对应的第二目标投影点到第二平面方程的距离,可以得到对应的第二距离,以基于对应的第二距离建立对应的第二代价函数。其中,第二平面方程可以表示为:;N为各帧目标图像数据中标定板的角点数量,则第二代价函数可以表示为:
;
其中,Nw表示各帧目标图像数据中标定板的角点数量,w表示各帧目标图像数据中标定板的角点的id号,为各帧目标图像数据中标定板对应的第二目标投影点的坐标,A2、B2、C2和D2为对应的第二平面方程的系数。
S406,根据各帧目标三维点云中标定板对应的第三目标投影点到边缘直线方程的第三距离,建立各帧目标三维点云中标定板对应的第三代价函数。
其中,通过目标外参,将各帧目标三维点云中标定板对应的多个目标激光边缘点投影到相机坐标系下,获得各帧目标三维点云中标定板对应的第三目标投影点;并计算各帧目标三维点云中标定板对应的第三目标投影点到边缘直线方程距离,可以得到对应的第三距离,以基于对应的第三距离建立对应的第三代价函数。其中,边缘直线方程可以表示为:,则第三代价函数可以表示为:
。
其中,Ne表示各帧目标三维点云中标定板对应的激光边缘点的数量,e表示各帧目标三维点云中标定板对应的激光边缘点的id号,为各帧目标三维点云中标定板对应的第三目标投影点的坐标,A、B以及C为对应的边缘直线方程的系数。
S408,基于各帧目标三维点云中标定板对应的第一代价函数、各帧目标图像数据中标定板对应的第二代价函数、以及各帧目标三维点云中标定板对应的第三代价函数,建立相机和激光雷达之间的外参的目标函数。
其中,基于多帧目标三维点云中标定板对应的代价函数和多帧目标图像数据中标定板对应的代价函数,可以得到目标函数,目标函数满足下述公式:
其中,为相机内参,和为相机的外参旋转参数和平移参数,相机的外参包括旋转参数和平移参数。
其中,M表示目标三维点云的帧数,s表示各帧目标三维点云对应的帧号,Ns表示第s帧目标三维点云中的点数,m表示第s帧目标三维点云中点的id号,为第s帧目标图像数据中标定板对应的第一平面方程,A1s、B1s、C1s和D1s为第s帧目标图像数据中标定板对应的第一平面方程的系数,表示第s帧目标三维点云中第m个点的坐标。
其中,N表示目标图像数据对应的帧数,i表示各帧目标图像数据对应的帧号,Ni表示第i帧目标图像数据中标定板对应的角点数量,n为各帧目标图像数据中标定板的角点的id号,为第i帧目标三维点云中标定板对应的第二平面方程,A2i、B2i、C2i和D2i为第i帧目标三维点云中标定板对应的第二平面方程的系数,表示第i帧目标图像数据中标定板的第n个角点的位置(坐标)。
其中,P为各帧目标图像数据中标定板对应的边缘直线方程的数量,在标定板为单个棋盘板时,P=4;j为第s帧目标图像数据中标定板对应的各边缘直线方程对应的边线号,Ksj为第s帧目标三维点云中标定板的第j条边上的目标激光边缘点的点数,k为第j条边上的目标激光边缘点的id号,为第s帧目标三维点云中标定板的第j条边上的第k个目标激光边缘点对应的边缘直线方程,Asjk、Bsjk和Csjk为对应的边缘直线方程的系数,表示第s帧目标三维点云中标定板的第j条边上的第k个目标激光边缘点的坐标。
综上,在图4所示的实施例中,通过根据各帧目标三维点云中标定板对应的第一目标投影点到对应的第一平面方程的第一距离,建立各帧目标三维点云中标定板对应的第一代价函数;根据各帧目标图像数据中标定板对应的第二目标投影点到对应的第二平面方程的第二距离,建立各帧目标图像数据中标定板对应的第二代价函数;根据各帧目标三维点云中标定板对应的第三目标投影点到边缘直线方程的第三距离,建立各帧目标三维点云中标定板对应的第三代价函数;进而基于各帧目标三维点云中标定板对应的第一代价函数、各帧目标图像数据中标定板对应的第二代价函数、以及各帧目标三维点云中标定板对应的第三代价函数。这样,通过结合相机和激光雷达对应的标定板的边缘特性和平面特征建立相机和激光雷达之间的外参的目标函数,以基于目标函数,确定相机的目标外参,可以提高相机外参标定的准确率。
在一个实施例中,如图5所示,提供了一种根据多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的标定板在相机坐标系下的第一平面方程的流程示意图,包括以下步骤:
S502,根据预设角点函数和多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置。
在一些实施例中,预设角点函数可以包括opencv中的findChessboardCornersSB()函数,通过将多帧目标图像数据输入findChessboardCornersSB()函数,可以获得各帧目标图像数据中标定板的多个角点位置;其中,opencv版本可以包括4.0版本以上。
S504,获取各帧目标图像数据中标定板的多个角点位置通过相机内参投影到世界坐标系下的第四目标投影点。
其中,在得到各帧目标图像数据中标定板的多个角点位置后,通过相机内参进行pnp求解,可以得到多个角点位置在世界坐标系下的第四目标投影点。
S506,对各帧目标图像数据中标定板对应的第四目标投影点进行数据拟合,根据数据拟合结果,获得各帧目标图像数据中标定板在相机坐标系下的第一平面方程。
其中,通过Ransac算法对各帧目标图像数据中标定板对应的第四目标投影点进行数据拟合,根据数据拟合结果,可以获得各帧目标图像数据中标定板在相机坐标系下的第一平面方程。例如,第一平面方程可以描述为:。
综上,在图5所示的实施例中,通过根据预设角点函数和多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置,以获取各帧目标图像数据中标定板的多个角点位置通过相机内参投影到世界坐标系下的第四目标投影点,进而对各帧目标图像数据中标定板对应的第四目标投影点进行数据拟合,根据数据拟合结果,获得各帧目标图像数据中标定板在相机坐标系下的第一平面方程。这样,基于相机对应的标定板的平面特征建立相机和激光雷达之间的外参的目标函数,以基于目标函数,确定相机的目标外参,可以提高相机外参标定的准确率。
在一个实施例中,标定板包括棋盘板,棋盘板中包括多个黑、白格子,黑、白格子中边的尺寸相同;如图6所示,提供了一种根据根各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点和对应的标定板在相机坐标系下的边缘直线方程的流程示意图,可以包括以下步骤:
S602,根据棋盘板中格子的尺寸、棋盘板的边缘到棋盘板中格子的距离、以及各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点。
示例性的,如图7所示,提供了一种棋盘格的示意图,其中,棋盘格中包括角点①、角点②和边缘点③,角点①的角点位置为(x1,y1),角点②的角点位置为(x2,y2),棋盘板中格子的尺寸为d,棋盘板的边缘到棋盘板中格子的距离包括h1和h2,若边缘点③的位置为(x3,y3),根据(x3-x2)/(x2-x1)=(h1+d)/d,以及(y3-y2)/(y2-y1)=(h2+d)/d,则可以得到边缘点③的位置为(x3,y3)。
S604,对各帧目标图像数据中标定板的多个目标相机边缘点进行数据拟合,根据数据拟合结果,获得各帧目标图像数据中标定板在相机坐标系下的边缘直线方程。
其中,可以通过最小二成法对各帧目标图像数据中标定板的多个目标相机边缘点进行数据拟合,根据数据拟合结果,获得各帧目标图像数据中标定板在相机坐标系下的边缘直线方程。
综上,在图6所示的实施例中,通过根据棋盘板中格子的尺寸、棋盘板的边缘到棋盘板中格子的距离、以及各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点,以对各帧目标图像数据中标定板的多个目标相机边缘点进行数据拟合,根据数据拟合结果,获得各帧目标图像数据中标定板在相机坐标系下的边缘直线方程。这样,通过使用棋盘板的尺度值来拟合边缘线时,可以避免将非边缘点当成边缘点使用,从而基于相机对应的标定板的边缘特征建立相机和激光雷达之间的外参的目标函数,以基于目标函数确定相机的目标外参时,可以提高相机外参标定的准确率。
在一个实施例中,如图8所示,提供了一种根据多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和各帧目标三维点云中标定板的多个目标激光边缘点的流程示意图,可以包括以下步骤:
S802,对多帧目标三维点云中的各帧目标三维点云分别进行数据拟合,根据数据拟合结果,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程。
其中,可以通过Ransac算法,对多帧目标三维点云中的各帧目标三维点云分别进行数据拟合,根据数据拟合结果,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程;例如,第二平面方程可以表示为:。
S804,根据对应的第二平面方程的系数,对各帧目标三维点云进行投影,获得各帧目标二维点云。
其中,第二平面方程可以表示为:,通过A2、B2以及C2将各帧目标三维点云投影到二维平面,可以获得各帧目标二维点云。
S806,根据各帧目标二维点云和第一半径,获得各帧目标二维点云中每个点对应的点云候选集合。
其中,以各帧目标二维点云中的任一点pi为例,可以对pi做第一半径为r的邻域点搜索,得到各帧目标二维点云中每个点对应的点云候选集合N(pi)。
S808,根据对应的点云候选集合和预设曲面方程,获得各帧目标二维点云中每个点对应的法向量。
其中,可以根据对应的点云候选集合和预设曲面方程,对应的点云候选集合中每个点到预设曲面方程的距离,根据该距离获得各帧目标二维点云中每个点对应的法向量。
例如,以各帧目标二维点云中的任一点pi(x1,y1,z1=0)为例,可以对pi做第一半径为r的邻域点搜索,得到各帧目标二维点云中每个点对应的点云候选集合N(pi);预设曲面方程可以表示为:,,d为棋盘板中黑、白格子的尺寸;通过根据点云候选集合N(pi)和预设曲面方程,可以得到点云候选集合N(pi)中的任一点到预设曲面方程的距离:,并将∑(di²)最小时对应的特征向量确定为各帧目标二维点云中的任一点pi对应的法向量。
S810,根据各帧目标二维点云中每个点对应的点云候选集合和各帧目标二维点云中每个点对应的法向量,获得各帧目标三维点云中标定板对应的多个目标激光边缘点。
在一些实施例中,可以对各帧目标二维点云中每个点对应的点云候选集合进行投影,并根据投影后的点和对应的法向量,获得各帧目标三维点云中标定板对应的多个目标激光边缘点。
综上,在图8所示的实施例中,通过对多帧目标三维点云中的各帧目标三维点云分别进行数据拟合,并根据数据拟合结果,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程;并根据对应的第二平面方程的系数,对各帧目标三维点云进行投影,获得各帧目标二维点云;并根据各帧目标二维点云和第一半径,获得各帧目标二维点云中每个点对应的点云候选集合;并根据对应的点云候选集合和预设曲面方程,获得各帧目标二维点云中每个点对应的法向量;进而根据各帧目标二维点云中每个点对应的点云候选集合和各帧目标二维点云中每个点对应的法向量,获得各帧目标三维点云中标定板对应的多个目标激光边缘点。通过在激光雷达中使用基于法向量的点云进行边界提取,使得提取出的边缘噪点更少,这样,基于激光雷达对应的标定板的目标激光边缘点建立相机和激光雷达之间的外参的目标函数,以基于目标函数确定相机的目标外参时,可以提高相机外参标定的准确率。
在一个实施例中,如图9所示,提供了一种根据各帧目标二维点云中每个点对应的点云候选集合和各帧目标二维点云中每个点对应的法向量,获得各帧目标三维点云中标定板对应的多个目标激光边缘点的流程示意图,可以包括以下步骤:
S902,将各帧目标二维点云中每个点对应的点云候选集合分别投影到目标切平面,获得对应的平面投影点集合;目标切平面为各帧目标二维点云中每个点和对应的法向量构成的平面。
其中,以各帧目标二维点云中任一点pi(x1,y1)和对应的法向量n组成的平面为目标切平面,将点pi对应的点云候选集合N(pi)内的点投影到目标切平面,可以得到对应的平面投影点集合。
S904,以各帧目标二维点云中每个点为原点,对应的法向量为y轴建立坐标系,根据各帧目标二维点云中每个点分别到对应的平面投影点集合中每个点的连线与坐标系的夹角,获得各帧目标二维点云中每个点对应的目标夹角集合。
其中,以各帧目标二维点云中任一点pi(x1,y1)为原点,对应的法向量n为y轴建立坐标系,通过计算pi与对应的平面投影点集合中每个点的连线与坐标系的夹角,可以得到对应的目标夹角集合θ(pi)。
S906,当根据对应的目标夹角集合中的夹角大于预设角度,确定对应的点云候选集合的点为边缘点时,获得各帧目标三维点云中标定板对应的多个目标激光边缘点。
其中,预设角度越小,选取的标定板的边缘越宽;预设角度越大,选取的标定板的边缘则过于稀疏;在本实施例中,预设角度可以设置为π/2。
综上,在图9所示的实施例中,通过将各帧目标二维点云中每个点对应的点云候选集合分别投影到目标切平面,获得对应的平面投影点集合,目标切平面为各帧目标二维点云中每个点和对应的法向量构成的平面;并以各帧目标二维点云中每个点为原点,对应的法向量为y轴建立坐标系,根据各帧目标二维点云中每个点分别到对应的平面投影点集合中每个点的连线与坐标系的夹角,获得各帧目标二维点云中每个点对应的目标夹角集合;进而当根据对应的目标夹角集合中的夹角大于预设角度,确定对应的点云候选集合的点为边缘点时,获得各帧目标三维点云中标定板对应的多个目标激光边缘点。这样,通过在激光雷达中使用基于法向量的点云进行边界提取,使得提取出的边缘噪点更少,这样,基于激光雷达对应的标定板的目标激光边缘点建立相机和激光雷达之间的外参的目标函数,以基于目标函数确定相机的目标外参时,可以提高相机外参标定的准确率。
在一个实施例中,如图10所示,提供了一种多帧目标三维点云的获取方式的流程示意图,可以包括以下步骤:
S1002,获取激光雷达采集标定板的多帧初始三维点云。
其中,为避免环境中的其他干扰物对相机外参标定的影响,在激光雷达采集相应的数据后,处理器可以对相应的数据进行数据处理,以得到多帧初始三维点云。例如,处理器可以从激光雷达采集的数据中选取多个关键帧对应的数据作为多帧初始三维点云。其中,关键帧的具体内容可以参考S202中的内容适应描述,也可以根据实际应用场景进行设定,本实施例不作具体限定。
S1004,根据多帧初始三维点云对应的预设关键点和第二半径,获得多帧候选三维点云。
其中,根据多帧初始三维点云对应的预设关键点,可以将多帧初始三维点云对应的预设关键点周围在第二半径内的点筛选出来,获得多帧候选三维点云。
S1006,对多帧候选三维点云进行去噪处理,获得多帧目标三维点云。
其中,为避免将非边缘点作为标定板的边缘点,可以对多帧候选三维点云进行去噪处理,获得多帧目标三维点云。
综上,在图10所示的实施例中,通过获取激光雷达采集标定板的多帧初始三维点云,并根据多帧初始三维点云对应的预设关键点和第二半径,获得多帧候选三维点云,通过对多帧候选三维点云进行去噪处理,可以获得多帧目标三维点云,这样,通过避免将非边缘点作为标定板的边缘点,可以对多帧候选三维点云进行去噪处理,获得多帧目标三维点云,以根据多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和各帧目标三维点云中标定板的多个目标激光边缘点时,提高得到的结果的准确率。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的相机外参标定方法的相机外参标定装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个相机外参标定装置实施例中的具体限定可以参见上文中对于相机外参标定方法的限定,在此不再赘述。
在一个实施例中,如图11所示,提供了一种相机外参标定装置,包括:获取模块1102、第一处理模块1104、第二处理模块1106、第三处理模块1108、第四处理模块1110和确定模块1112,其中:获取模块1102,用于获取相机采集标定板的多帧目标图像数据和激光雷达采集标定板的多帧目标三维点云;第一处理模块1104,用于根据多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的标定板在相机坐标系下的第一平面方程;第二处理模块1106,用于根据各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点和对应的标定板在相机坐标系下的边缘直线方程;第三处理模块1108,用于根据多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和各帧目标三维点云中标定板的多个目标激光边缘点;第四处理模块1110,用于根据各帧目标图像数据中标定板的多个角点位置、边缘直线方程和第一平面方程、以及各帧目标三维点云、各帧目标三维点云中标定板的多个目标激光边缘点和第二平面方程,建立相机和激光雷达之间的外参的目标函数;确定模块1112,用于基于目标函数,确定相机的目标外参。
在其中一个实施例中,第四处理模块,还用于:通过目标外参,将各帧目标三维点云投影到相机坐标系下,获得各帧目标三维点云中标定板对应的第一目标投影点;通过目标外参,将各帧目标图像数据中标定板的多个角点位置投影到相机坐标系下,获得各帧目标图像数据中标定板对应的第二目标投影点;通过目标外参,将各帧目标三维点云中标定板对应的多个目标激光边缘点投影到相机坐标系下,获得各帧目标三维点云中标定板对应的第三目标投影点;根据各帧目标三维点云中标定板对应的第一目标投影点和第一平面方程、各帧目标图像数据中标定板对应的第二目标投影点和第二平面方程、以及各帧目标三维点云中标定板对应的第三目标投影点和边缘直线方程,建立相机和激光雷达之间的外参的目标函数。
在其中一个实施例中,第四处理模块,还用于:根据各帧目标三维点云中标定板对应的第一目标投影点到对应的第一平面方程的第一距离,建立各帧目标三维点云中标定板对应的第一代价函数;根据各帧目标图像数据中标定板对应的第二目标投影点到对应的第二平面方程的第二距离,建立各帧目标图像数据中标定板对应的第二代价函数;根据各帧目标三维点云中标定板对应的第三目标投影点到边缘直线方程的第三距离,建立各帧目标三维点云中标定板对应的第三代价函数;基于各帧目标三维点云中标定板对应的第一代价函数、各帧目标图像数据中标定板对应的第二代价函数、以及各帧目标三维点云中标定板对应的第三代价函数,建立相机和激光雷达之间的外参的目标函数。
在其中一个实施例中,第一处理模块,还用于:根据预设角点函数和多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置;获取各帧目标图像数据中标定板的多个角点位置通过相机内参投影到世界坐标系下的第四目标投影点;对各帧目标图像数据中标定板对应的第四目标投影点进行数据拟合,根据数据拟合结果,获得各帧目标图像数据中标定板在相机坐标系下的第一平面方程。
在其中一个实施例中,标定板包括棋盘板,第二处理模块,还用于:根据棋盘板中格子的尺寸、棋盘板的边缘到棋盘板中格子的距离、以及各帧目标图像数据中标定板的多个角点位置,获得各帧目标图像数据中标定板的多个目标相机边缘点;对各帧目标图像数据中标定板的多个目标相机边缘点进行数据拟合,根据数据拟合结果,获得各帧目标图像数据中标定板在相机坐标系下的边缘直线方程。
在其中一个实施例中,第三处理模块,还用于:对多帧目标三维点云中的各帧目标三维点云分别进行数据拟合,根据数据拟合结果,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程;根据对应的第二平面方程的系数,对各帧目标三维点云进行投影,获得各帧目标二维点云;根据各帧目标二维点云和第一半径,获得各帧目标二维点云中每个点对应的点云候选集合;根据对应的点云候选集合和预设曲面方程,获得各帧目标二维点云中每个点对应的法向量;根据各帧目标二维点云中每个点对应的点云候选集合和各帧目标二维点云中每个点对应的法向量,获得各帧目标三维点云中标定板对应的多个目标激光边缘点。
在其中一个实施例中,第三处理模块,还用于:将各帧目标二维点云中每个点对应的点云候选集合分别投影到目标切平面,获得对应的平面投影点集合;目标切平面为各帧目标二维点云中每个点和对应的法向量构成的平面;以各帧目标二维点云中每个点为原点,对应的法向量为y轴建立坐标系,根据各帧目标二维点云中每个点分别到对应的平面投影点集合中每个点的连线与坐标系的夹角,获得各帧目标二维点云中每个点对应的目标夹角集合;当根据对应的目标夹角集合中的夹角大于预设角度,确定对应的点云候选集合的点为边缘点时,获得各帧目标三维点云中标定板对应的多个目标激光边缘点。
在其中一个实施例中,获取模块,还用于:获取激光雷达采集标定板的多帧初始三维点云;根据多帧初始三维点云对应的预设关键点和第二半径,获得多帧候选三维点云;对多帧候选三维点云进行去噪处理,获得多帧目标三维点云。
上述相机外参标定装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图12所示。该计算机设备包括通过***总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储相机采集标定板的多帧目标图像数据和激光雷达采集标定板的多帧目标三维点云。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种相机外参标定方法。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric RandomAccess Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccessMemory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种相机外参标定方法,其特征在于,所述方法包括:
获取相机采集标定板的多帧目标图像数据和激光雷达采集所述标定板的多帧目标三维点云;
根据所述多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的所述标定板在相机坐标系下的第一平面方程;
根据所述各帧目标图像数据中标定板的多个角点位置,获得所述各帧目标图像数据中标定板的多个目标相机边缘点和对应的所述标定板在相机坐标系下的边缘直线方程;
根据所述多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和所述各帧目标三维点云中标定板的多个目标激光边缘点;
根据所述各帧目标图像数据中标定板的多个角点位置、所述边缘直线方程和所述第一平面方程、以及所述各帧目标三维点云、所述各帧目标三维点云中标定板的多个目标激光边缘点和所述第二平面方程,建立所述相机和所述激光雷达之间的外参的目标函数;
基于所述目标函数,确定所述相机的目标外参。
2.根据权利要求1所述的方法,其特征在于,所述根据所述各帧目标图像数据中标定板的多个角点位置、所述边缘直线方程和所述第一平面方程、以及所述各帧目标三维点云、所述各帧目标三维点云中标定板的多个目标激光边缘点和所述第二平面方程,建立所述相机和所述激光雷达之间的外参的目标函数,包括:
通过所述目标外参,将所述各帧目标三维点云投影到相机坐标系下,获得所述各帧目标三维点云中标定板对应的第一目标投影点;
通过所述目标外参,将所述各帧目标图像数据中标定板的多个角点位置投影到所述相机坐标系下,获得所述各帧目标图像数据中标定板对应的第二目标投影点;
通过所述目标外参,将所述各帧目标三维点云中标定板对应的多个目标激光边缘点投影到所述相机坐标系下,获得所述各帧目标三维点云中标定板对应的第三目标投影点;
根据所述各帧目标三维点云中标定板对应的第一目标投影点和第一平面方程、所述各帧目标图像数据中标定板对应的第二目标投影点和第二平面方程、以及所述各帧目标三维点云中标定板对应的第三目标投影点和边缘直线方程,建立所述相机和所述激光雷达之间的外参的目标函数。
3.根据权利要求2所述的方法,其特征在于,所述根据所述各帧目标三维点云中标定板对应的第一目标投影点和第一平面方程、所述各帧目标图像数据中标定板对应的第二目标投影点和第二平面方程、以及所述各帧目标三维点云中标定板对应的第三目标投影点和边缘直线方程,建立所述相机和所述激光雷达之间的外参的目标函数,包括:
根据所述各帧目标三维点云中标定板对应的第一目标投影点到对应的所述第一平面方程的第一距离,建立所述各帧目标三维点云中标定板对应的第一代价函数;
根据所述各帧目标图像数据中标定板对应的第二目标投影点到对应的所述第二平面方程的第二距离,建立所述各帧目标图像数据中标定板对应的第二代价函数;
根据所述各帧目标三维点云中标定板对应的第三目标投影点到所述边缘直线方程的第三距离,建立所述各帧目标三维点云中标定板对应的第三代价函数;
基于所述各帧目标三维点云中标定板对应的第一代价函数、所述各帧目标图像数据中标定板对应的第二代价函数、以及所述各帧目标三维点云中标定板对应的第三代价函数,建立所述相机和所述激光雷达之间的外参的目标函数。
4.根据权利要求1所述的方法,其特征在于,所述根据所述多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的所述标定板在相机坐标系下的第一平面方程,包括:
根据预设角点函数和所述多帧目标图像数据,获得所述各帧目标图像数据中标定板的多个角点位置;
获取所述各帧目标图像数据中标定板的多个角点位置通过相机内参投影到世界坐标系下的第四目标投影点;
对所述各帧目标图像数据中标定板对应的第四目标投影点进行数据拟合,根据数据拟合结果,获得所述各帧目标图像数据中标定板在相机坐标系下的第一平面方程。
5.根据权利要求1所述的方法,其特征在于,所述标定板包括棋盘板,所述根据所述各帧目标图像数据中标定板的多个角点位置,获得所述各帧目标图像数据中标定板的多个目标相机边缘点和对应的所述标定板在相机坐标系下的边缘直线方程,包括:
根据所述棋盘板中格子的尺寸、所述棋盘板的边缘到所述棋盘板中格子的距离、以及所述各帧目标图像数据中标定板的多个角点位置,获得所述各帧目标图像数据中标定板的多个目标相机边缘点;
对所述各帧目标图像数据中标定板的多个目标相机边缘点进行数据拟合,根据数据拟合结果,获得所述各帧目标图像数据中标定板在相机坐标系下的边缘直线方程。
6.根据权利要求1所述的方法,其特征在于,所述根据所述多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和所述各帧目标三维点云中标定板的多个目标激光边缘点,包括:
对所述多帧目标三维点云中的各帧目标三维点云分别进行数据拟合,根据数据拟合结果,获得所述各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程;
根据对应的所述第二平面方程的系数,对所述各帧目标三维点云进行投影,获得各帧目标二维点云;
根据所述各帧目标二维点云和第一半径,获得所述各帧目标二维点云中每个点对应的点云候选集合;
根据对应的所述点云候选集合和预设曲面方程,获得所述各帧目标二维点云中每个点对应的法向量;
根据所述各帧目标二维点云中每个点对应的点云候选集合和所述各帧目标二维点云中每个点对应的法向量,获得所述各帧目标三维点云中标定板对应的多个目标激光边缘点。
7.根据权利要求6所述的方法,其特征在于,所述根据所述各帧目标二维点云中每个点对应的点云候选集合和所述各帧目标二维点云中每个点对应的法向量,获得所述各帧目标三维点云中标定板对应的多个目标激光边缘点,包括:
将所述各帧目标二维点云中每个点对应的点云候选集合分别投影到目标切平面,获得对应的平面投影点集合;所述目标切平面为所述各帧目标二维点云中每个点和对应的所述法向量构成的平面;
以所述各帧目标二维点云中每个点为原点,对应的所述法向量为y轴建立坐标系,根据所述各帧目标二维点云中每个点分别到对应的所述平面投影点集合中每个点的连线与所述坐标系的夹角,获得所述各帧目标二维点云中每个点对应的目标夹角集合;
当根据对应的所述目标夹角集合中的夹角大于预设角度,确定对应的所述点云候选集合的点为边缘点时,获得所述各帧目标三维点云中标定板对应的多个目标激光边缘点。
8.根据权利要求1所述的方法,其特征在于,所述多帧目标三维点云的获取方式,包括:
获取激光雷达采集所述标定板的多帧初始三维点云;
根据所述多帧初始三维点云对应的预设关键点和第二半径,获得多帧候选三维点云;
对所述多帧候选三维点云进行去噪处理,获得所述多帧目标三维点云。
9.一种相机外参标定装置,其特征在于,所述装置包括:
获取模块,用于获取相机采集标定板的多帧目标图像数据和激光雷达采集所述标定板的多帧目标三维点云;
第一处理模块,用于根据所述多帧目标图像数据,获得各帧目标图像数据中标定板的多个角点位置和对应的所述标定板在相机坐标系下的第一平面方程;
第二处理模块,用于根据所述各帧目标图像数据中标定板的多个角点位置,获得所述各帧目标图像数据中标定板的多个目标相机边缘点和对应的所述标定板在相机坐标系下的边缘直线方程;
第三处理模块,用于根据所述多帧目标三维点云,获得各帧目标三维点云中标定板在激光雷达坐标系下的第二平面方程和所述各帧目标三维点云中标定板的多个目标激光边缘点;
第四处理模块,用于根据所述各帧目标图像数据中标定板的多个角点位置、所述边缘直线方程和所述第一平面方程、以及所述各帧目标三维点云、所述各帧目标三维点云中标定板的多个目标激光边缘点和所述第二平面方程,建立所述相机和所述激光雷达之间的外参的目标函数;
确定模块,用于基于所述目标函数,确定所述相机的目标外参。
10.一种车辆,其特征在于,所述车辆包括:相机、激光雷达和处理器;
所述相机,用于采集标定板的多帧目标图像数据;
所述激光雷达,用于采集所述标定板的多帧目标三维点云;
所述处理器,用于执行权利要求1至8任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310287682.8A CN115994955B (zh) | 2023-03-23 | 2023-03-23 | 相机外参标定方法、装置和车辆 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310287682.8A CN115994955B (zh) | 2023-03-23 | 2023-03-23 | 相机外参标定方法、装置和车辆 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115994955A true CN115994955A (zh) | 2023-04-21 |
CN115994955B CN115994955B (zh) | 2023-07-04 |
Family
ID=85992440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310287682.8A Active CN115994955B (zh) | 2023-03-23 | 2023-03-23 | 相机外参标定方法、装置和车辆 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115994955B (zh) |
Citations (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170094251A1 (en) * | 2015-09-30 | 2017-03-30 | Faro Technologies, Inc. | Three-dimensional imager that includes a dichroic camera |
CN111127563A (zh) * | 2019-12-18 | 2020-05-08 | 北京万集科技股份有限公司 | 联合标定方法、装置、电子设备及存储介质 |
CN111179358A (zh) * | 2019-12-30 | 2020-05-19 | 浙江商汤科技开发有限公司 | 标定方法、装置、设备及存储介质 |
CN111369630A (zh) * | 2020-02-27 | 2020-07-03 | 河海大学常州校区 | 一种多线激光雷达与相机标定的方法 |
CN111486864A (zh) * | 2019-01-28 | 2020-08-04 | 北京工商大学 | 基于立体正八边结构的多源传感器联合标定方法 |
WO2020215257A1 (zh) * | 2019-04-24 | 2020-10-29 | 深圳市大疆创新科技有限公司 | 图像立体匹配的方法和辅助驾驶装置 |
CN111862224A (zh) * | 2019-04-17 | 2020-10-30 | 杭州海康威视数字技术股份有限公司 | 确定相机与激光雷达之间外参的方法和装置 |
CN112379352A (zh) * | 2020-11-04 | 2021-02-19 | 广州文远知行科技有限公司 | 一种激光雷达标定方法、装置、设备及存储介质 |
CN112785702A (zh) * | 2020-12-31 | 2021-05-11 | 华南理工大学 | 一种基于2d激光雷达和双目相机紧耦合的slam方法 |
CN113256729A (zh) * | 2021-03-17 | 2021-08-13 | 广西综合交通大数据研究院 | 激光雷达与相机的外参标定方法、装置、设备及存储介质 |
CN113506318A (zh) * | 2021-07-12 | 2021-10-15 | 广东工业大学 | 一种车载边缘场景下的三维目标感知方法 |
CN113658337A (zh) * | 2021-08-24 | 2021-11-16 | 哈尔滨工业大学 | 一种基于车辙线的多模态里程计方法 |
WO2021237520A1 (zh) * | 2020-05-27 | 2021-12-02 | 华为技术有限公司 | 外参标定方法、装置、设备及存储介质 |
CN113763478A (zh) * | 2020-09-09 | 2021-12-07 | 北京京东乾石科技有限公司 | 无人车相机标定方法、装置、设备、存储介质及*** |
CN113902812A (zh) * | 2021-10-13 | 2022-01-07 | 岱悟智能科技(上海)有限公司 | 一种基于多标定板的激光雷达与相机外参自动标定方法 |
CN114140534A (zh) * | 2021-11-15 | 2022-03-04 | 上海大学 | 一种用于激光雷达与相机的联合标定方法 |
US20220080597A1 (en) * | 2020-09-17 | 2022-03-17 | Techman Robot Inc. | Device and method for calibrating coordinate system of 3d camera and robotic arm |
CN114387347A (zh) * | 2021-10-26 | 2022-04-22 | 浙江智慧视频安防创新中心有限公司 | 确定外参标定的方法、装置、电子设备及介质 |
CN114758005A (zh) * | 2022-03-23 | 2022-07-15 | 中国科学院自动化研究所 | 激光雷达与相机外参标定方法及装置 |
WO2022160879A1 (zh) * | 2021-01-26 | 2022-08-04 | 华为技术有限公司 | 一种转换参数的确定方法和装置 |
CN115097421A (zh) * | 2022-05-27 | 2022-09-23 | 中国人民解放军战略支援部队信息工程大学 | 一种相机-激光雷达外参标定装置及方法 |
CN115222919A (zh) * | 2022-07-27 | 2022-10-21 | 徐州徐工矿业机械有限公司 | 一种用于移动机械彩色点云地图构建的感知***及方法 |
CN115359130A (zh) * | 2022-10-19 | 2022-11-18 | 北京格镭信息科技有限公司 | 雷达和相机的联合标定方法、装置、电子设备及存储介质 |
CN115409897A (zh) * | 2022-06-06 | 2022-11-29 | 北京科技大学顺德研究生院 | 基于背景点云精细化处理的激光雷达与相机联合标定方法 |
CN115661262A (zh) * | 2022-10-19 | 2023-01-31 | 南方科技大学 | 内外参标定方法、装置及电子设备 |
CN115792865A (zh) * | 2022-10-31 | 2023-03-14 | 东风悦享科技有限公司 | 一种基于相机和机械式激光雷达外参标定方法、***、介质及车辆 |
-
2023
- 2023-03-23 CN CN202310287682.8A patent/CN115994955B/zh active Active
Patent Citations (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170094251A1 (en) * | 2015-09-30 | 2017-03-30 | Faro Technologies, Inc. | Three-dimensional imager that includes a dichroic camera |
CN111486864A (zh) * | 2019-01-28 | 2020-08-04 | 北京工商大学 | 基于立体正八边结构的多源传感器联合标定方法 |
CN111862224A (zh) * | 2019-04-17 | 2020-10-30 | 杭州海康威视数字技术股份有限公司 | 确定相机与激光雷达之间外参的方法和装置 |
WO2020215257A1 (zh) * | 2019-04-24 | 2020-10-29 | 深圳市大疆创新科技有限公司 | 图像立体匹配的方法和辅助驾驶装置 |
CN111127563A (zh) * | 2019-12-18 | 2020-05-08 | 北京万集科技股份有限公司 | 联合标定方法、装置、电子设备及存储介质 |
CN111179358A (zh) * | 2019-12-30 | 2020-05-19 | 浙江商汤科技开发有限公司 | 标定方法、装置、设备及存储介质 |
CN111369630A (zh) * | 2020-02-27 | 2020-07-03 | 河海大学常州校区 | 一种多线激光雷达与相机标定的方法 |
WO2021237520A1 (zh) * | 2020-05-27 | 2021-12-02 | 华为技术有限公司 | 外参标定方法、装置、设备及存储介质 |
CN113763478A (zh) * | 2020-09-09 | 2021-12-07 | 北京京东乾石科技有限公司 | 无人车相机标定方法、装置、设备、存储介质及*** |
US20220080597A1 (en) * | 2020-09-17 | 2022-03-17 | Techman Robot Inc. | Device and method for calibrating coordinate system of 3d camera and robotic arm |
CN112379352A (zh) * | 2020-11-04 | 2021-02-19 | 广州文远知行科技有限公司 | 一种激光雷达标定方法、装置、设备及存储介质 |
CN112785702A (zh) * | 2020-12-31 | 2021-05-11 | 华南理工大学 | 一种基于2d激光雷达和双目相机紧耦合的slam方法 |
WO2022160879A1 (zh) * | 2021-01-26 | 2022-08-04 | 华为技术有限公司 | 一种转换参数的确定方法和装置 |
CN113256729A (zh) * | 2021-03-17 | 2021-08-13 | 广西综合交通大数据研究院 | 激光雷达与相机的外参标定方法、装置、设备及存储介质 |
CN113506318A (zh) * | 2021-07-12 | 2021-10-15 | 广东工业大学 | 一种车载边缘场景下的三维目标感知方法 |
CN113658337A (zh) * | 2021-08-24 | 2021-11-16 | 哈尔滨工业大学 | 一种基于车辙线的多模态里程计方法 |
CN113902812A (zh) * | 2021-10-13 | 2022-01-07 | 岱悟智能科技(上海)有限公司 | 一种基于多标定板的激光雷达与相机外参自动标定方法 |
CN114387347A (zh) * | 2021-10-26 | 2022-04-22 | 浙江智慧视频安防创新中心有限公司 | 确定外参标定的方法、装置、电子设备及介质 |
CN114140534A (zh) * | 2021-11-15 | 2022-03-04 | 上海大学 | 一种用于激光雷达与相机的联合标定方法 |
CN114758005A (zh) * | 2022-03-23 | 2022-07-15 | 中国科学院自动化研究所 | 激光雷达与相机外参标定方法及装置 |
CN115097421A (zh) * | 2022-05-27 | 2022-09-23 | 中国人民解放军战略支援部队信息工程大学 | 一种相机-激光雷达外参标定装置及方法 |
CN115409897A (zh) * | 2022-06-06 | 2022-11-29 | 北京科技大学顺德研究生院 | 基于背景点云精细化处理的激光雷达与相机联合标定方法 |
CN115222919A (zh) * | 2022-07-27 | 2022-10-21 | 徐州徐工矿业机械有限公司 | 一种用于移动机械彩色点云地图构建的感知***及方法 |
CN115359130A (zh) * | 2022-10-19 | 2022-11-18 | 北京格镭信息科技有限公司 | 雷达和相机的联合标定方法、装置、电子设备及存储介质 |
CN115661262A (zh) * | 2022-10-19 | 2023-01-31 | 南方科技大学 | 内外参标定方法、装置及电子设备 |
CN115792865A (zh) * | 2022-10-31 | 2023-03-14 | 东风悦享科技有限公司 | 一种基于相机和机械式激光雷达外参标定方法、***、介质及车辆 |
Non-Patent Citations (2)
Title |
---|
PING, G等: "Visual Enhanced 3D Point Cloud Reconstruction from A Single Image", 《COMPUTER VISION AND PATTERN RECOGNITION》, pages 1 - 8 * |
唐旭: "视觉—激光融合的机器人室内高精度定位和建图方法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 3, pages 138 - 1244 * |
Also Published As
Publication number | Publication date |
---|---|
CN115994955B (zh) | 2023-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8199977B2 (en) | System and method for extraction of features from a 3-D point cloud | |
US20200007855A1 (en) | Stereo Correspondence and Depth Sensors | |
US9135710B2 (en) | Depth map stereo correspondence techniques | |
CN109584156B (zh) | 显微序列图像拼接方法及装置 | |
CN109784250B (zh) | 自动引导小车的定位方法和装置 | |
CN111080662A (zh) | 车道线的提取方法、装置及计算机设备 | |
CN112801047B (zh) | 缺陷检测方法、装置、电子设备及可读存储介质 | |
CN111459269B (zh) | 一种增强现实显示方法、***及计算机可读存储介质 | |
CN114359665B (zh) | 全任务人脸识别模型的训练方法及装置、人脸识别方法 | |
CN111080682A (zh) | 点云数据的配准方法及装置 | |
CN106062824A (zh) | 边缘检测装置、边缘检测方法和程序 | |
CN116091574A (zh) | 一种基于平面约束与位置约束的3d目标检测方法及*** | |
CN111476812A (zh) | 地图分割方法、装置、位姿估计方法和设备终端 | |
CN117132737B (zh) | 一种三维建筑模型构建方法、***及设备 | |
CN114638996A (zh) | 基于对抗学习的模型训练方法、装置、设备和存储介质 | |
CN115994955B (zh) | 相机外参标定方法、装置和车辆 | |
CN112150522A (zh) | 遥感图像的配准方法、装置、设备、存储介质及*** | |
CN114913500B (zh) | 位姿确定方法、装置、计算机设备和存储介质 | |
CN116977671A (zh) | 基于图像空间定位的目标跟踪方法、装置、设备及存储介质 | |
CN117058022A (zh) | 深度图像去噪方法、装置、计算机设备及存储介质 | |
CN112785651A (zh) | 用于确定相对位姿参数的方法和装置 | |
CN115830073A (zh) | 地图要素重建方法、装置、计算机设备和存储介质 | |
Haque et al. | Robust feature-preserving denoising of 3D point clouds | |
Guo et al. | Full-automatic high-precision scene 3D reconstruction method with water-area intelligent complementation and mesh optimization for UAV images | |
CN112652056A (zh) | 一种3d信息展示方法及装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: Floor 25, Block A, Zhongzhou Binhai Commercial Center Phase II, No. 9285, Binhe Boulevard, Shangsha Community, Shatou Street, Futian District, Shenzhen, Guangdong 518000 Patentee after: Shenzhen Youjia Innovation Technology Co.,Ltd. Address before: 518048 401, building 1, Shenzhen new generation industrial park, No. 136, Zhongkang Road, Meidu community, Meilin street, Futian District, Shenzhen, Guangdong Province Patentee before: SHENZHEN MINIEYE INNOVATION TECHNOLOGY Co.,Ltd. |