CN115018932A - 相机标定方法、装置、电子设备和存储介质 - Google Patents
相机标定方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN115018932A CN115018932A CN202210689832.3A CN202210689832A CN115018932A CN 115018932 A CN115018932 A CN 115018932A CN 202210689832 A CN202210689832 A CN 202210689832A CN 115018932 A CN115018932 A CN 115018932A
- Authority
- CN
- China
- Prior art keywords
- calibrated
- camera
- calibration image
- parameters
- cameras
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本申请涉及一种相机标定方法、装置、电子设备和存储介质。所述方法包括:通过待标定相机对标定物进行拍摄,得到标定图像,所述标定物包括多个棋盘格,所述多个棋盘格部署于至少三个不同的平面内;确定所述多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量;根据所述标定图像、所述多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量,获取所述标定图像上所有角点的二维坐标;根据所述标定图像上所有角点的二维坐标,确定所述待标定相机的参数,提升了标定效率。
Description
技术领域
本申请涉及相机标定技术领域,特别是涉及一种相机标定方法、装置、电子设备和存储介质。
背景技术
工厂生产出相机后,需要对相机进行标定,得到相机的内参、畸变系数等参数,并将这些参数存储在相机中对应的处理模块中,使得用户使用相机采集到图像后,处理模块可以基于这些参数对图像进行处理。
传统技术中,将棋盘格固定在某一位置,使用相机从不同的距离和角度拍摄棋盘格,然后基于拍摄到的多张图像进行定标。然而,这种方法标定流程耗时较长,标定效率较低,不适用于工厂大规模批量化标定。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升标定效率的相机标定方法、装置、电子设备和存储介质。
第一方面,本申请提供了一种相机标定方法。方法包括:
通过待标定相机对标定物进行拍摄,得到标定图像,标定物包括多个棋盘格,多个棋盘格部署于至少三个不同的平面内;确定多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量;根据标定图像、多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量,获取标定图像上所有角点的二维坐标;根据标定图像上所有角点的二维坐标,确定待标定相机的参数。
在其中一个实施例中,根据标定图像、多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量,获取标定图像上所有角点的二维坐标,包括:
根据至少一个类型中第i个类型,获取第i个类型对应的棋盘格行数和棋盘格列数;根据第i个类型对应的棋盘格的数量、棋盘格行数、棋盘格列数以及标定图像,从标定图像中提取出第i个类型下所有棋盘格内角点的二维坐标,并对标定图像中属于第i个类型的棋盘格对应的区域做涂黑处理,得到第j次涂黑后的标定图像;基于至少一个类型中除第i个类型以外的类型,对第j次涂黑后的标定图像进行角点提取,直到得到标定图像上所有角点的二维坐标。
在其中一个实施例中,根据第i个类型对应的棋盘格的数量、棋盘格行数、棋盘格列数以及标定图像,获取标定图像中第i个类型下所有棋盘格内角点的二维坐标,包括:根据第i个类型对应的棋盘格行数、棋盘格列数、标定图像以及角点检测函数,从标定图像中提取出第i个类型下第k个棋盘格内角点的二维坐标,并将从标定图像中属于第i个类型下第k个棋盘格对应的区域做涂黑处理,得到第p次涂黑后的标定图像;基于第i个类型对应的棋盘格行数、棋盘格列数、第p次涂黑后的标定图像以及角点检测函数,对第p次涂黑后的标定图像中第i个类型下第k+1个棋盘格进行角点提取,直到得到标定图像中第i个类型下所有棋盘格内角点的二维坐标;其中,在获取标定图像中第i个类型下所有棋盘格内角点的二维坐标过程中,对标定图像做涂黑处理的次数和第i个类型下棋盘格的数量相同。
在其中一个实施例中,根据标定图像上所有角点的二维坐标,获取待标定相机的参数,包括:根据标定图像上所有角点的二维坐标和标定物对应的世界坐标系,获取标定图像上所有角点的三维坐标;根据标定图像上所有角点的三维坐标,计算得到待标定相机的参数。
第二方面,本申请提供了一种数据处理方法,包括:获取多个待标定相机中每个待标定相机对标定物进行拍摄得到的标定图像;基于多个标定图像,根据第一方面提供的方法得到多个待标定相机中每个待标定相机的参数;根据所述多个待标定相机中每个待标定相机的参数,计算获取多个待标定相机的参数的标准差;根据标准差和预设阈值,确定多个待标定相机中每个待标定相机的参数是否符合精度要求;在多个待标定相机中相应的待标定相机的参数符合精度要求时,将多个待标定相机中每个待标定相机的参数作为对应待标定相机的目标参数。
在其中一个实施例中,根据标准差和预设阈值,确定多个待标定相机中每个待标定相机的参数是否符合精度要求,包括:若标准差小于预设阈值,则确定多个待标定相机中每个待标定相机的参数均符合精度要求;若标准差大于或者等于预设阈值,则确定多个待标定相机中不是每个待标定相机的参数均符合精度要求。
在其中一个实施例中,方法还包括:在多个待标定相机中不是每个待标定相机的参数均符合精度要求时,则根据所述多个待标定相机中每个待标定相机的参数,计算获取多个待标定相机的参数的均值;根据多个待标定相机中每个待标定相机的参数和均值,从多个待标定相机中确定误差较大的待标定相机;将误差较大的待标定相机对应的参数确定为不符合精度要求,并根据第一方面提供的方法重新确定误差较大的待标定相机的参数;且将多个待标定相机中除误差较大的待标定相机的待标定相机对应的参数确定为符合精度要求。
在其中一个实施例中,根据多个待标定相机中每个待标定相机的参数和均值,从多个待标定相机中确定误差较大的待标定相机,包括:根据多个待标定相机中每个待标定相机的参数和均值,计算得到每个待标定相机的参数和均值之间的差值的绝对值;判断绝对值是否大于预设值,若绝对值大于预设值,则将相应的待标定相机作为误差较大的待标定相机。
第三方面,本申请还提供了一种电子设备。计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现第一方面或者第二方面提供的方法。
第四方面,本申请还提供了一种计算机可读存储介质。计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现第一方面或者第二方面提供的方法。
上述相机标定方法、装置、电子设备和存储介质,通过待标定相机对标定物进行拍摄,得到标定图像,标定物包括多个棋盘格,多个棋盘格部署于至少三个不同的平面内;确定多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量;根据标定图像、多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量,获取标定图像上所有角点的二维坐标;根据标定图像上所有角点的二维坐标,确定待标定相机的参数。上述过程中相机仅拍摄一张图像即可,标定流程简单,可提升工厂大规模批量化标定的效率。
附图说明
图1为一个实施例中相机标定方法的流程示意图;
图2为一个实施例中标定物的示意图;
图3为一个实施例中获取所有角点的二维坐标的流程示意图;
图4为一个实施例中数据处理方法的流程示意图;
图5为一个实施例中相机标定装置的结构框图;
图6为一个实施例中数据处理装置的结构框图;
图7为一个实施例中电子设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一些实施例中,采用如下方式对相机进行标定:将棋盘格固定在某一位置,使用相机从不同的距离和角度拍摄棋盘格,然后基于拍摄到的多张图像进行标定。然而,为了实现从不同的距离和角度拍摄棋盘格,要么需要工作人员拿着相机移动,要么使用机械臂对棋盘格的位置和方向进行调整,使得标定流程耗时较长,标定效率较低,不适用于工厂大规模批量化标定。
为此,本申请提出一种相机标定方法,在拍摄场景中布置多个棋盘格,多个棋盘格部署于至少三个不同的平面内,通过待标定相机对多个棋盘格进行拍摄,得到标定图像,基于该标定图像、多个棋盘格各自对应的类型以及每个类型下棋盘格的数量,获取标定图像上所有角点的二维坐标,基于标定图像上所有角点的二维坐标,确定待标定相机的参数,上述过程中相机仅拍摄一张图像即可,无需上述实施例中,工作人员拿着相机移动以及使用机械臂对棋盘格的位置和方向进行调整的过程,标定流程简单,标定效率提升,可用于工厂大规模批量化标定。
本申请提供的相机标定方法可应用于任何能够实现相应功能的处理设备,该处理设备例如可以是计算机、笔记本电脑等,本申请对处理设备的形态不作限定。下面结合具体的实施例对上述相机标定方法进行详细说明。
在一个实施例中,如图1所示,提供了一种相机标定方法,以该方法应用于计算机为例进行说明,包括以下步骤:
S102、通过待标定相机对标定物进行拍摄,得到标定图像。
其中,工厂生产出来的任何一个相机可作为待标定相机。
可选的,可在拍摄场景中布置标定物,该标定物可包括多个棋盘格,为便于后续计算相机参数过程中最小二乘方程组的求解,可将多个棋盘格部署于至少三个不同的平面内。
示例性的,如图2所示,多个棋盘格可以包括:第一棋盘格、第二棋盘格、第三棋盘格、第四棋盘格、第五棋盘格、第六棋盘格和第七棋盘格。第一棋盘格和第二棋盘格位于同一个平面,第三棋盘格和第四棋盘格位于同一个平面,第五棋盘格和第六棋盘格位于同一个平面,第七棋盘格位于一个平面,夹角α和β不为零。
需要说明的是:图2包括七个棋盘格,七个棋盘格部署于四个不同的平面内,这仅是一种示例,本申请实施例对棋盘格的数量并不限定,只需多个棋盘格所在的平面大于或者等于三个便可。
S104、确定多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量。
在一些实施例中,可提前将多个棋盘格对应的至少一个类型,以及每个类型对应的棋盘格的数量写入配置文件,需要使用这些信息时,直接从配置文件中读取即可。
其中,每个棋盘格的类型用于指示棋盘格的行数和列数,比如:棋盘格的类型为7×6,则表明棋盘格的行数为7,棋盘格的列数6。多个棋盘格的类型可以相同,可以各不相同,也可以其中几个是相同的,本申请实施例对此不作限定。
下面具体说明:
继续参见图2所示,假设第一棋盘格、第三棋盘格和第五棋盘格的类型均为7×6,第二棋盘格、第四棋盘格和第六棋盘格的类型均为6×5,第七棋盘格的类型均为4×3。那么,多个棋盘格对应的类型为:7×6、6×5和4×3,并且7×6这一类型下棋盘格的数量为3,6×5这一类型下棋盘格的数量为3,4×3这一类型下棋盘格的数量为1。可将7×6,数量3;6×5,数量3;4×3,数量1写入配置文件,需要使用这些信息时,直接从配置文件中读取。
S106、根据标定图像、多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量,获取标定图像上所有角点的二维坐标。
在一些实施例中,可从配置文件中读取多个棋盘格对应的至少一个类型以及每个类型下棋盘格的数量,确定每个类型对应的棋盘格行数和棋盘格列数,基于每个类型对应的棋盘格行数和棋盘格列数,采用OpenCV中的角点检测函数findChessboardCorners来提取标定图像上所有角点的二维坐标。
S108、根据标定图像上所有角点的二维坐标,获取待标定相机的参数。
一种可能的实现方式中,可根据标定图像上所有角点的二维坐标和标定物对应的世界坐标系,获取标定图像上所有角点的三维坐标;根据标定图像上所有角点的三维坐标和开源的计算机视觉库OpenCV中用于计算参数的接口,确定待标定相机的参数。
可选的,可建立标定物对应的世界坐标系,得到标定图像上所有角点的二维坐标后,基于该世界坐标系,转换得到标定图像上所有角点的三维坐标,然后基于标定图像上所有角点的二维坐标和标定图像上所有角点的三维坐标,利用计算机视觉库OpenCV中用于计算参数的接口,得到待标定相机的参数。本申请实施例中待标定相机的参数可以包括相机内参、畸变系数等。
本申请实施例提供的相机标定方法,通过待标定相机对标定物进行拍摄,得到标定图像,标定物包括多个棋盘格,多个棋盘格部署于至少三个不同的平面内;确定多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量;根据标定图像、多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量,获取标定图像上所有角点的二维坐标;根据标定图像上所有角点的二维坐标,获取待标定相机的参数。上述过程中相机仅拍摄一张图像即可,标定流程简单,可提升工厂大规模批量化标定的效率。
在一个实施例中,可通过如下方式获取标定图像上所有角点的二维坐标,具体包括:
S301、根据至少一个类型中第i个类型,获取第i个类型对应的棋盘格行数和棋盘格列数。
示例性的,以S104中的举例来说,至少一个类型包括:7×6、6×5和4×3,可将7×6作为第1个类型,将6×5作为第2个类型,将4×3作为第3个类型。第1个类型对应的棋盘格行数为7,棋盘格列数为6。第2个类型对应的棋盘格行数为6,棋盘格列数为5。第3个类型对应的棋盘格行数为4,棋盘格列数为3。
S302、根据第i个类型对应的棋盘格的数量、棋盘格行数、棋盘格列数以及标定图像,从标定图像中提取出第i个类型下所有棋盘格内角点的二维坐标。
S303、对标定图像中属于第i个类型的棋盘格对应的区域做涂黑处理,得到第j次涂黑后的标定图像。
其中,涂黑处理可以理解为,将标定图像中属于第i个类型的棋盘格对应的区域的像素置为0,以免后续重复提取标定图像中属于第i个类型的该棋盘格内的角点的二维坐标。
S304、基于至少一个类型中除第i个类型以外的类型,对第j次涂黑后的标定图像进行角点提取,直到得到标定图像上所有角点的二维坐标。
下面结合S104中的举例,对S302-S305过程进行说明:可将7×6作为第1个类型,将6×5作为第2个类型,将4×3作为第3个类型。首先,根据7×6这一类型对应的棋盘格的数量、棋盘格行数、棋盘格列数以及标定图像,从标定图像中提取出7×6这一类型下所有棋盘格内角点的二维坐标,并对标定图像中属于7×6这一类型的棋盘格对应的区域做涂黑处理,得到第1次涂黑后的标定图像。然后,根据6×5这一类型对应的棋盘格的数量、棋盘格行数、棋盘格列数以及第1次涂黑后的标定图像,从第1次涂黑后的标定图像中提取出6×5这一类型下所有棋盘格内角点的二维坐标,并对第1次涂黑后的标定图像中属于6×5这一类型的棋盘格对应的区域做涂黑处理,得到第2次涂黑后的标定图像。最后,根据4×3这一类型对应的棋盘格的数量、棋盘格行数、棋盘格列数以及第2次涂黑后的标定图像,从第2次涂黑后的标定图像中提取4×3这一类型下所有棋盘格内角点的二维坐标,并对第2次涂黑后的标定图像中属于4×3这一类型的棋盘格对应的区域做涂黑处理,得到第3次涂黑后的标定图像。由此便可得到标定图像上所有角点的二维坐标。
本申请实施例提供的方法,在得到第i个类型下所有棋盘格内角点的二维坐标后,对标定图像中属于第i个类型的棋盘格对应的区域做涂黑处理,可避免对第i个类型做重复提取。
由于,第i个类型下棋盘格的数量可能为1,也可能大于1,下面分这两种情况,对获取第i个类型下所有棋盘格内角点的二维坐标的过程进行说明。
若第i个类型下棋盘格的数量为1,则将第i个类型对应的棋盘格行数、第i个类型对应的棋盘格列数以及标定图像输入OpenCV中的角点检测函数findChessboardCorners,该函数便会输出第i个类型下所有棋盘格内角点的二维坐标,在得到第i个类型下所有棋盘格内角点的二维坐标后,对标定图像中属于第i个类型的棋盘格对应的区域做涂黑处理。
下面举例说明:
以S104中的举例来说,假设第i个类型为4×3,4×3这一类型下棋盘格的数量为1,则将4、3和标定图像输入OpenCV中的角点检测函数findChessboardCorners,便可得到图2中第七棋盘格内角点的二维坐标,将标定图像中第七棋盘格对应的区域做涂黑处理,以免后续重复提取第七棋盘格内的角点的二维坐标。
若第i个类型下棋盘格的数量大于1,则根据第i个类型对应的棋盘格行数、棋盘格列数、标定图像以及角点检测函数,从标定图像中提取出第i个类型下第k个棋盘格内角点的二维坐标,并将从标定图像中属于第i个类型下第k个棋盘格对应的区域做涂黑处理,得到第p次涂黑后的标定图像;基于第i个类型对应的棋盘格行数、棋盘格列数、第p次涂黑后的标定图像以及角点检测函数,对第p次涂黑后的标定图像中第i个类型下第k+1个棋盘格进行角点提取,直到得到标定图像中第i个类型下所有棋盘格内角点的二维坐标;其中,在获取标定图像中第i个类型下所有棋盘格内角点的二维坐标过程中,对标定图像做涂黑处理的次数和第i个类型下棋盘格的数量相同。
下面举例说明:
以S104中的举例来说,假设第i个类型为7×6,7×6这一类型下棋盘格的数量为3,则将7×6这一类型对应的棋盘格行数、棋盘格列数以及相应的图像分3次输入角点检测函数findChessboardCorners,便可得到7×6这一类型下所有棋盘格内角点的二维坐标。具体过程如下:
将7、6和标定图像输入OpenCV中的角点检测函数findChessboardCorners,得到图2中7×6这一类型下第1个棋盘格内角点的二维坐标,假设该棋盘格为图2中的第一棋盘格,将标定图像中第一棋盘格对应的区域做涂黑处理,得到第1次涂黑处理后的标定图像。将7、6和第1次涂黑处理后的标定图像输入OpenCV中的角点检测函数findChessboardCorners,得到图2中7×6这一类型下第2个棋盘格内角点的二维坐标,假设该棋盘格为图2中的第三棋盘格,将第1次涂黑处理后的图像中第三棋盘格对应的区域做涂黑处理,得到第2次涂黑处理后的标定图像。将7、6和第2次涂黑处理后的标定图像输入OpenCV中的角点检测函数findChessboardCorners,得到图2中7×6这一类型下第3个棋盘格内角点的二维坐标,假设该棋盘格为图2中的第五棋盘格,将第2次涂黑处理后的图像中第五棋盘格对应的区域做涂黑处理,由此便得到了标定图像中7×6这一类型下所有棋盘格内角点的二维坐标。
本申请实施例提供的方法,在得到第i个类型下第k个棋盘格内角点的二维坐标后,将第k个棋盘格对应的区域做涂黑处理,可避免对第k个棋盘格做重复提取。
下面以S104的例子对整个处理过程进行说明:
如S104中的举例,至少一个类型包括:7×6、6×5和4×3,可将7×6作为第1个类型,将6×5作为第2个类型,将4×3作为第3个类型。由于7×6这一类型下棋盘格的数量为3,则将7、6和标定图像输入OpenCV中的角点检测函数findChessboardCorners,得到图2中7×6这一类型下第1个棋盘格内角点的二维坐标,假设该棋盘格为图2中的第一棋盘格,将标定图像中第一棋盘格对应的区域做涂黑处理,得到第1次涂黑处理后的标定图像。将7、6和第1次涂黑处理后的标定图像输入OpenCV中的角点检测函数findChessboardCorners,得到图2中7×6这一类型下第2个棋盘格内角点的二维坐标,假设该棋盘格为图2中的第三棋盘格,将第1次涂黑处理后的标定图像中第三棋盘格对应的区域做涂黑处理,得到第2次涂黑处理后的标定图像。将7、6和第2次涂黑处理后的标定图像输入OpenCV中的角点检测函数findChessboardCorners,得到图2中7×6这一类型下第3个棋盘格内角点的二维坐标,假设该棋盘格为图2中的第五棋盘格,将第2次涂黑处理后的图像中第五棋盘格对应的区域做涂黑处理,得到第3次涂黑处理后的标定图像。由于6×5这一类型下棋盘格的数量为3,则将6、5和第3次涂黑处理后的标定图像输入OpenCV中的角点检测函数findChessboardCorners,得到图2中6×5这一类型下第1个棋盘格内角点的二维坐标,假设该棋盘格为图2中的第二棋盘格,将第3次涂黑处理后的标定图像中第二棋盘格对应的区域做涂黑处理,得到第4次涂黑处理后的标定图像。将6、5和第4次涂黑处理后的标定图像输入OpenCV中的角点检测函数findChessboardCorners,得到图2中6×5这一类型下第2个棋盘格内角点的二维坐标,假设该棋盘格为图2中的第四棋盘格,将第4次涂黑处理后的标定图像中第四棋盘格对应的区域做涂黑处理,得到第5次涂黑处理后的标定图像。将6、5和第5次涂黑处理后的标定图像输入OpenCV中的角点检测函数findChessboardCorners,得到图2中6×5这一类型下第3个棋盘格内角点的二维坐标,假设该棋盘格为图2中的第六棋盘格,将第5次涂黑处理后的标定图像中第六棋盘格对应的区域做涂黑处理,得到第6次涂黑处理后的标定图像。由于4×3这一类型下棋盘格的数量为1,则将4、3和第6次涂黑处理后的标定图像输入OpenCV中的角点检测函数findChessboardCorners,得到图2中第七棋盘格内角点的二维坐标,将第6次涂黑处理后的标定图像中第七棋盘格对应的区域做涂黑处理,由此便得到了所有角点的二维坐标。
本申请实施例提供的相机标定方法,提供了如何获取标定图像上所有角点的二维坐标的具体实现方式,该方法中每次提取到一个棋盘格内角点的二维坐标后,将该棋盘格做涂黑处理,可避免后续重复提取该棋盘格内的角点的二维坐标,造成的计算资源浪费。
一般情况下,工厂是批量生产相机的,在采用上述方式对每个相机进行标定后,可通过下面的方法对各个相机的标定精度进行评估。在一个实施例中,本申请提供一种数据处理方法,包括:
S401、获取多个待标定相机中每个待标定相机对标定物进行拍摄得到的标定图像。
S402、基于多个标定图像,根据上述实施例提供的方法得到多个待标定相机中每个待标定相机的参数。
其中,每个待标定相机拍摄得到标定图像后,基于标定图像确定待标定相机的参数的过程参见上述实施例,本申请在此不再赘述。
S403、根据多个待标定相机中每个待标定相机的参数,计算获取多个待标定相机的参数的标准差。
示例性的,可基于标准差的计算公式,计算多个待标定相机的参数的标准差。
S404、根据标准差和预设阈值,确定多个待标定相机中每个待标定相机的参数是否符合精度要求。
示例性的,可将多个待标定相机的参数的标准差和预设阈值进行比较,若标准差小于预设阈值,则确定多个待标定相机中每个待标定相机的参数均符合精度要求;若标准差大于或者等于预设阈值,则确定多个待标定相机中不是每个待标定相机的参数均符合精度要求。
在一些实施例中,在多个待标定相机中不是每个待标定相机的参数均符合精度要求时,可通过如下方式确定不符合精度要求的参数:根据多个待标定相机中每个待标定相机的参数,计算获取多个待标定相机的参数的均值,根据多个待标定相机中每个待标定相机的参数和均值,从多个待标定相机中确定误差较大的待标定相机;将误差较大的待标定相机对应的参数确定为不符合精度要求。
在一些实施例中,可通过如下方式确定误差较大的待标定相机:可根据多个待标定相机中每个待标定相机的参数和均值,计算得到每个待标定相机的参数和均值之间的差值的绝对值;判断绝对值是否大于预设值,若绝对值大于预设值,则将相应的待标定相机作为误差较大的待标定相机。
在一些实施例中,在确定误差较大的待标定相机后,可根据上述实施例提供的方法重新确定误差较大的待标定相机的参数。另外可将多个待标定相机中除误差较大的待标定相机的待标定相机对应的参数确定为符合精度要求。
S405、在多个待标定相机中相应的待标定相机的参数符合精度要求时,将多个待标定相机中每个待标定相机的参数作为对应待标定相机的目标参数。
具体的,对于某个待标定相机,若通过上述方法确定该待标定相机的参数是符合精度要求的,则可将该待标定相机的参数作为目标参数,从而完成对该待标定相机的标定。
本申请实施例提供的相机标定方法,提供的工厂大规模批量化标定场景下,对各个相机的标定精度进行评估的方案,该方案可保证批量生产的相机的参数的稳定性。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的相机标定方法的相机标定装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个相机标定装置实施例中的具体限定可以参见上文中对于相机标定方法的限定,在此不再赘述。
在一个实施例中,如图5所示,提供了一种相机标定装置,包括:获取模块501,用于通过待标定相机对标定物进行拍摄,得到标定图像,标定物包括多个棋盘格,多个棋盘格部署于至少三个不同的平面内;获取模块501,还用于确定多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量;标定模块502,用于根据标定图像、多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量,获取标定图像上所有角点的二维坐标;标定模块502,还用于根据标定图像上所有角点的二维坐标,获取待标定相机的参数。
在一个实施例中,标定模块502,具体用于:根据至少一个类型中第i个类型,获取第i个类型对应的棋盘格行数和棋盘格列数;根据第i个类型对应的棋盘格的数量、棋盘格行数、棋盘格列数以及标定图像,从标定图像中提取出第i个类型下所有棋盘格内角点的二维坐标,并对标定图像中属于第i个类型的棋盘格对应的区域做涂黑处理,得到第j次涂黑后的标定图像;基于至少一个类型中除第i个类型以外的类型,对第j次涂黑后的标定图像进行角点提取,直到得到标定图像上所有角点的二维坐标。
在一个实施例中,标定模块502,具体用于:根据第i个类型对应的棋盘格行数、棋盘格列数、标定图像以及角点检测函数,从标定图像中提取出第i个类型下第k个棋盘格内角点的二维坐标,并将从标定图像中属于第i个类型下第k个棋盘格对应的区域做涂黑处理,得到第p次涂黑后的标定图像;基于第i个类型对应的棋盘格行数、棋盘格列数、第p次涂黑后的标定图像以及角点检测函数,对第p次涂黑后的标定图像中第i个类型下第k+1个棋盘格进行角点提取,直到得到标定图像中第i个类型下所有棋盘格内角点的二维坐标;其中,在获取标定图像中第i个类型下所有棋盘格内角点的二维坐标过程中,对标定图像做涂黑处理的次数和第i个类型下棋盘格的数量相同。
在一个实施例中,标定模块502,具体用于:根据标定图像上所有角点的二维坐标和标定物对应的世界坐标系,获取标定图像上所有角点的三维坐标;根据标定图像上所有角点的三维坐标,计算得到待标定相机的参数。
在一个实施例中,如图6所示,提供了一种数据处理装置,包括:获取模块601,用于获取多个待标定相机中每个待标定相机对标定物进行拍摄得到的标定图像;标定模块602,用于基于多个标定图像,根据上述实施例提供的方法得到多个待标定相机中每个待标定相机的参数;获取模块601,还用于根据多个待标定相机中每个待标定相机的参数,计算获取多个待标定相机的参数的标准差;精度判断模块603,用于根据标准差和预设阈值,确定多个待标定相机中每个待标定相机的参数是否符合精度要求;确定模块604,用于在多个待标定相机中相应的待标定相机的参数符合精度要求时,将多个待标定相机中每个待标定相机的参数作为对应待标定相机的目标参数。
在一些实施例中,精度判断模块603,具体用于:若标准差小于预设阈值,则确定多个待标定相机中每个待标定相机的参数均符合精度要求;若标准差大于或者等于预设阈值,则确定多个待标定相机中不是每个待标定相机的参数均符合精度要求。
在一些实施例中,确定模块604,还用于:在多个待标定相机中不是每个待标定相机的参数均符合精度要求时,则根据多个待标定相机中每个待标定相机的参数,计算获取多个待标定相机的参数的均值;根据多个待标定相机中每个待标定相机的参数和均值,从多个待标定相机中确定误差较大的待标定相机;将误差较大的待标定相机对应的参数确定为不符合精度要求,并根据上述实施例提供的方法重新确定误差较大的待标定相机的参数;且将多个待标定相机中除误差较大的待标定相机的待标定相机对应的参数确定为符合精度要求。
在一些实施例中,确定模块604,还用于:根据多个待标定相机中每个待标定相机的参数和均值,计算得到每个待标定相机的参数和均值之间的差值的绝对值;判断绝对值是否大于预设值,若绝对值大于预设值,则将相应的待标定相机作为误差较大的待标定相机。
上述相机标定装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储配置文件等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种相机标定方法,或者数据处理方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种电子设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:通过待标定相机对标定物进行拍摄,得到标定图像,标定物包括多个棋盘格,多个棋盘格部署于至少三个不同的平面内;确定多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量;根据标定图像、多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量,获取标定图像上所有角点的二维坐标;根据标定图像上所有角点的二维坐标,确定待标定相机的参数。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据至少一个类型中第i个类型,获取第i个类型对应的棋盘格行数和棋盘格列数;根据第i个类型对应的棋盘格的数量、棋盘格行数、棋盘格列数以及标定图像,从标定图像中提取出第i个类型下所有棋盘格内角点的二维坐标,并对标定图像中属于第i个类型的棋盘格对应的区域做涂黑处理,得到第j次涂黑后的标定图像;基于至少一个类型中除第i个类型以外的类型,对第j次涂黑后的标定图像进行角点提取,直到得到标定图像上所有角点的二维坐标。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据第i个类型对应的棋盘格行数、棋盘格列数、标定图像以及角点检测函数,从标定图像中提取出第i个类型下第k个棋盘格内角点的二维坐标,并将从标定图像中属于第i个类型下第k个棋盘格对应的区域做涂黑处理,得到第p次涂黑后的标定图像;基于第i个类型对应的棋盘格行数、棋盘格列数、第p次涂黑后的标定图像以及角点检测函数,对第p次涂黑后的标定图像中第i个类型下第k+1个棋盘格进行角点提取,直到得到标定图像中第i个类型下所有棋盘格内角点的二维坐标;其中,在获取标定图像中第i个类型下所有棋盘格内角点的二维坐标过程中,对标定图像做涂黑处理的次数和第i个类型下棋盘格的数量相同。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据标定图像上所有角点的二维坐标和标定物对应的世界坐标系,获取标定图像上所有角点的三维坐标;根据标定图像上所有角点的三维坐标,计算得到待标定相机的参数。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取多个待标定相机中每个待标定相机对标定物进行拍摄得到的标定图像;基于多个标定图像,根据上述实施例提供的方法得到多个待标定相机中每个待标定相机的参数;根据多个待标定相机中每个待标定相机的参数,计算获取多个待标定相机的参数的标准差;根据标准差和预设阈值,确定多个待标定相机中每个待标定相机的参数是否符合精度要求;在多个待标定相机中相应的待标定相机的参数符合精度要求时,将多个待标定相机中每个待标定相机的参数作为对应待标定相机的目标参数。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:若标准差小于预设阈值,则确定多个待标定相机中每个待标定相机的参数均符合精度要求;若标准差大于或者等于预设阈值,则确定多个待标定相机中不是每个待标定相机的参数均符合精度要求。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:在多个待标定相机中不是每个待标定相机的参数均符合精度要求时,则根据多个待标定相机中每个待标定相机的参数,计算获取多个待标定相机的参数的均值;根据多个待标定相机中每个待标定相机的参数和均值,从多个待标定相机中确定误差较大的待标定相机;将误差较大的待标定相机对应的参数确定为不符合精度要求,并根据上述实施例提供的方法重新确定误差较大的待标定相机的参数;且将多个待标定相机中除误差较大的待标定相机的待标定相机对应的参数确定为符合精度要求。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据多个待标定相机中每个待标定相机的参数和均值,计算得到每个待标定相机的参数和均值之间的差值的绝对值;判断绝对值是否大于预设值,若绝对值大于预设值,则将相应的待标定相机作为误差较大的待标定相机。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:通过待标定相机对标定物进行拍摄,得到标定图像,标定物包括多个棋盘格,多个棋盘格部署于至少三个不同的平面内;确定多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量;根据标定图像、多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量,获取标定图像上所有角点的二维坐标;根据标定图像上所有角点的二维坐标,确定待标定相机的参数。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据至少一个类型中第i个类型,获取第i个类型对应的棋盘格行数和棋盘格列数;根据第i个类型对应的棋盘格的数量、棋盘格行数、棋盘格列数以及标定图像,从标定图像中提取出第i个类型下所有棋盘格内角点的二维坐标,并对标定图像中属于第i个类型的棋盘格对应的区域做涂黑处理,得到第j次涂黑后的标定图像;基于至少一个类型中除第i个类型以外的类型,对第j次涂黑后的标定图像进行角点提取,直到得到标定图像上所有角点的二维坐标。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据第i个类型对应的棋盘格行数、棋盘格列数、标定图像以及角点检测函数,从标定图像中提取出第i个类型下第k个棋盘格内角点的二维坐标,并将从标定图像中属于第i个类型下第k个棋盘格对应的区域做涂黑处理,得到第p次涂黑后的标定图像;基于第i个类型对应的棋盘格行数、棋盘格列数、第p次涂黑后的标定图像以及角点检测函数,对第p次涂黑后的标定图像中第i个类型下第k+1个棋盘格进行角点提取,直到得到标定图像中第i个类型下所有棋盘格内角点的二维坐标;其中,在获取标定图像中第i个类型下所有棋盘格内角点的二维坐标过程中,对标定图像做涂黑处理的次数和第i个类型下棋盘格的数量相同。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据标定图像上所有角点的二维坐标和标定物对应的世界坐标系,获取标定图像上所有角点的三维坐标;根据标定图像上所有角点的三维坐标,计算得到待标定相机的参数。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取多个待标定相机中每个待标定相机对标定物进行拍摄得到的标定图像;基于多个标定图像,根据上述实施例提供的方法得到多个待标定相机中每个待标定相机的参数;根据多个待标定相机中每个待标定相机的参数,计算获取多个待标定相机的参数的标准差;根据标准差和预设阈值,确定多个待标定相机中每个待标定相机的参数是否符合精度要求;在多个待标定相机中相应的待标定相机的参数符合精度要求时,将多个待标定相机中每个待标定相机的参数作为对应待标定相机的目标参数。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若标准差小于预设阈值,则确定多个待标定相机中每个待标定相机的参数均符合精度要求;若标准差大于或者等于预设阈值,则确定多个待标定相机中不是每个待标定相机的参数均符合精度要求。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在多个待标定相机中不是每个待标定相机的参数均符合精度要求时,则根据多个待标定相机中每个待标定相机的参数,计算获取多个待标定相机的参数的均值;根据多个待标定相机中每个待标定相机的参数和均值,从多个待标定相机中确定误差较大的待标定相机;将误差较大的待标定相机对应的参数确定为不符合精度要求,并根据上述实施例提供的方法重新确定误差较大的待标定相机的参数;且将多个待标定相机中除误差较大的待标定相机的待标定相机对应的参数确定为符合精度要求。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据多个待标定相机中每个待标定相机的参数和均值,计算得到每个待标定相机的参数和均值之间的差值的绝对值;判断绝对值是否大于预设值,若绝对值大于预设值,则将相应的待标定相机作为误差较大的待标定相机。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:通过待标定相机对标定物进行拍摄,得到标定图像,标定物包括多个棋盘格,多个棋盘格部署于至少三个不同的平面内;确定多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量;根据标定图像、多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量,获取标定图像上所有角点的二维坐标;根据标定图像上所有角点的二维坐标,确定待标定相机的参数。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据至少一个类型中第i个类型,获取第i个类型对应的棋盘格行数和棋盘格列数;根据第i个类型对应的棋盘格的数量、棋盘格行数、棋盘格列数以及标定图像,从标定图像中提取出第i个类型下所有棋盘格内角点的二维坐标,并对标定图像中属于第i个类型的棋盘格对应的区域做涂黑处理,得到第j次涂黑后的标定图像;基于至少一个类型中除第i个类型以外的类型,对第j次涂黑后的标定图像进行角点提取,直到得到标定图像上所有角点的二维坐标。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据第i个类型对应的棋盘格行数、棋盘格列数、标定图像以及角点检测函数,从标定图像中提取出第i个类型下第k个棋盘格内角点的二维坐标,并将从标定图像中属于第i个类型下第k个棋盘格对应的区域做涂黑处理,得到第p次涂黑后的标定图像;基于第i个类型对应的棋盘格行数、棋盘格列数、第p次涂黑后的标定图像以及角点检测函数,对第p次涂黑后的标定图像中第i个类型下第k+1个棋盘格进行角点提取,直到得到标定图像中第i个类型下所有棋盘格内角点的二维坐标;其中,在获取标定图像中第i个类型下所有棋盘格内角点的二维坐标过程中,对标定图像做涂黑处理的次数和第i个类型下棋盘格的数量相同。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据标定图像上所有角点的二维坐标和标定物对应的世界坐标系,获取标定图像上所有角点的三维坐标;根据标定图像上所有角点的三维坐标,计算得到待标定相机的参数。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取多个待标定相机中每个待标定相机对标定物进行拍摄得到的标定图像;基于多个标定图像,根据上述实施例提供的方法得到多个待标定相机中每个待标定相机的参数;根据多个待标定相机中每个待标定相机的参数,计算获取多个待标定相机的参数的标准差;根据标准差和预设阈值,确定多个待标定相机中每个待标定相机的参数是否符合精度要求;在多个待标定相机中相应的待标定相机的参数符合精度要求时,将多个待标定相机中每个待标定相机的参数作为对应待标定相机的目标参数。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若标准差小于预设阈值,则确定多个待标定相机中每个待标定相机的参数均符合精度要求;若标准差大于或者等于预设阈值,则确定多个待标定相机中不是每个待标定相机的参数均符合精度要求。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在多个待标定相机中不是每个待标定相机的参数均符合精度要求时,则根据多个待标定相机中每个待标定相机的参数,计算获取多个待标定相机的参数的均值;根据多个待标定相机中每个待标定相机的参数和均值,从多个待标定相机中确定误差较大的待标定相机;将误差较大的待标定相机对应的参数确定为不符合精度要求,并根据上述实施例提供的方法重新确定误差较大的待标定相机的参数;且将多个待标定相机中除误差较大的待标定相机的待标定相机对应的参数确定为符合精度要求。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据多个待标定相机中每个待标定相机的参数和均值,计算得到每个待标定相机的参数和均值之间的差值的绝对值;判断绝对值是否大于预设值,若绝对值大于预设值,则将相应的待标定相机作为误差较大的待标定相机。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种相机标定方法,其特征在于,所述方法包括:
通过待标定相机对标定物进行拍摄,得到标定图像,所述标定物包括多个棋盘格,所述多个棋盘格部署于至少三个不同的平面内;
确定所述多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量;
根据所述标定图像、所述多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量,获取所述标定图像上所有角点的二维坐标;
根据所述标定图像上所有角点的二维坐标,确定所述待标定相机的参数。
2.根据权利要求1所述的方法,其特征在于,所述根据所述标定图像、所述多个棋盘格对应的至少一个类型以及每个类型对应的棋盘格的数量,获取所述标定图像上所有角点的二维坐标,包括:
根据所述至少一个类型中第i个类型,获取所述第i个类型对应的棋盘格行数和棋盘格列数;
根据所述第i个类型对应的棋盘格的数量、所述棋盘格行数、所述棋盘格列数以及所述标定图像,从所述标定图像中提取出所述第i个类型下所有棋盘格内角点的二维坐标,并对所述标定图像中属于所述第i个类型的棋盘格对应的区域做涂黑处理,得到第j次涂黑后的标定图像;
基于所述至少一个类型中除所述第i个类型以外的类型,对所述第j次涂黑后的标定图像进行角点提取,直到得到所述标定图像上所有角点的二维坐标。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第i个类型对应的棋盘格的数量、所述棋盘格行数、所述棋盘格列数以及所述标定图像,获取所述标定图像中所述第i个类型下所有棋盘格内角点的二维坐标,包括:
根据所述第i个类型对应的棋盘格行数、所述棋盘格列数、所述标定图像以及角点检测函数,从所述标定图像中提取出所述第i个类型下第k个棋盘格内角点的二维坐标,并将从所述标定图像中属于所述第i个类型下所述第k个棋盘格对应的区域做涂黑处理,得到第p次涂黑后的标定图像;
基于所述第i个类型对应的所述棋盘格行数、所述棋盘格列数、所述第p次涂黑后的标定图像以及所述角点检测函数,对所述第p次涂黑后的标定图像中所述第i个类型下第k+1个棋盘格进行角点提取,直到得到所述标定图像中所述第i个类型下所有棋盘格内角点的二维坐标;
其中,在获取所述标定图像中所述第i个类型下所有棋盘格内角点的二维坐标过程中,对所述标定图像做涂黑处理的次数和所述第i个类型下棋盘格的数量相同。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述标定图像上所有角点的二维坐标,获取所述待标定相机的参数,包括:
根据所述标定图像上所有角点的二维坐标和所述标定物对应的世界坐标系,获取所述标定图像上所有角点的三维坐标;
根据所述标定图像上所有角点的三维坐标,计算得到所述待标定相机的参数。
5.一种数据处理方法,其特征在于,包括:
获取多个待标定相机中每个待标定相机对标定物进行拍摄得到的标定图像;
基于所述多个标定图像,根据权利要求1-4任一项所述的方法得到多个待标定相机中每个待标定相机的参数;
根据所述多个待标定相机中每个待标定相机的参数,计算获取所述多个待标定相机的参数的标准差;
根据所述标准差和预设阈值,确定所述多个待标定相机中每个待标定相机的参数是否符合精度要求;
在所述多个待标定相机中相应的待标定相机的参数符合精度要求时,将所述多个待标定相机中每个待标定相机的参数作为对应待标定相机的目标参数。
6.根据权利要求5所述的方法,其特征在于,所述根据所述标准差和预设阈值,确定所述多个待标定相机中每个待标定相机的参数是否符合精度要求,包括:
若所述标准差小于预设阈值,则确定所述多个待标定相机中每个待标定相机的参数均符合精度要求;
若所述标准差大于或者等于所述预设阈值,则确定所述多个待标定相机中不是每个待标定相机的参数均符合精度要求。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在所述多个待标定相机中不是每个待标定相机的参数均符合精度要求时,则根据所述多个待标定相机中每个待标定相机的参数,计算获取所述多个待标定相机的参数的均值;
根据所述多个待标定相机中每个待标定相机的参数和所述均值,从所述多个待标定相机中确定误差较大的待标定相机;
将所述误差较大的待标定相机对应的参数确定为不符合精度要求,并根据权利要求1-4任一项所述的方法重新确定所述误差较大的待标定相机的参数;且将所述多个待标定相机中除误差较大的待标定相机的待标定相机对应的参数确定为符合精度要求。
8.根据权利要求7所述的方法,其特征在于,根据所述多个待标定相机中每个待标定相机的参数和所述均值,从所述多个待标定相机中确定误差较大的待标定相机,包括:
根据所述多个待标定相机中每个待标定相机的参数和所述均值,计算得到每个待标定相机的参数和所述均值之间的差值的绝对值;
判断所述绝对值是否大于预设值,若所述绝对值大于所述预设值,则将相应的待标定相机作为误差较大的待标定相机。
9.一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210689832.3A CN115018932A (zh) | 2022-06-17 | 2022-06-17 | 相机标定方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210689832.3A CN115018932A (zh) | 2022-06-17 | 2022-06-17 | 相机标定方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115018932A true CN115018932A (zh) | 2022-09-06 |
Family
ID=83075753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210689832.3A Pending CN115018932A (zh) | 2022-06-17 | 2022-06-17 | 相机标定方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115018932A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116883516A (zh) * | 2023-09-07 | 2023-10-13 | 西南科技大学 | 相机参数标定方法及装置 |
-
2022
- 2022-06-17 CN CN202210689832.3A patent/CN115018932A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116883516A (zh) * | 2023-09-07 | 2023-10-13 | 西南科技大学 | 相机参数标定方法及装置 |
CN116883516B (zh) * | 2023-09-07 | 2023-11-24 | 西南科技大学 | 相机参数标定方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113643378B (zh) | 多相机环境中主动式刚体的位姿定位方法及相关设备 | |
CN113592950B (zh) | 基于光学动捕的大空间环境下多相机标定方法及相关设备 | |
CN111291768B (zh) | 图像特征匹配方法及装置、设备、存储介质 | |
CN113689578B (zh) | 一种人体数据集生成方法及装置 | |
US11875486B2 (en) | Image brightness statistical method and imaging device | |
CN108288252B (zh) | 图像批处理方法、装置及电子设备 | |
CN112686950B (zh) | 位姿估计方法、装置、终端设备及计算机可读存储介质 | |
CN112200157A (zh) | 一种降低图像背景干扰的人体3d姿态识别方法及其系统 | |
CN112052805B (zh) | 人脸检测框显示方法、图像处理装置、设备和存储介质 | |
CN115205383A (zh) | 相机位姿的确定方法、装置、电子设备及存储介质 | |
CN115018932A (zh) | 相机标定方法、装置、电子设备和存储介质 | |
CN112508988A (zh) | 一种遥感影像镶嵌线精确提取方法及装置 | |
CN108491818A (zh) | 目标物体的检测方法、装置及电子设备 | |
CN113963072A (zh) | 双目摄像头标定方法、装置、计算机设备和存储介质 | |
CN114757822B (zh) | 一种基于双目的人体三维关键点检测方法及系统 | |
JP7352706B2 (ja) | 貨物計数方法及び装置、コンピュータ装置、並びに記憶媒体 | |
CN113420604B (zh) | 多人姿态估计方法、装置和电子设备 | |
CN115272470A (zh) | 相机定位方法、装置、计算机设备和存储介质 | |
CN115086625A (zh) | 投影画面的校正方法、装置、系统、校正设备和投影设备 | |
JP2022546880A (ja) | オブジェクト関連付け方法及び装置、システム、電子機器、記憶媒体及びコンピュータプログラム | |
CN114750147B (zh) | 机器人的空间位姿确定方法、装置和机器人 | |
CN110443835B (zh) | 图像配准方法、装置、设备和存储介质 | |
CN113781583B (zh) | 相机自标定方法、装置、设备和介质 | |
CN112862961B (zh) | 层位坏点过滤方法、装置、设备及存储介质 | |
CN111127422B (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 |