CN115713564A - 相机标定方法及装置 - Google Patents
相机标定方法及装置 Download PDFInfo
- Publication number
- CN115713564A CN115713564A CN202211486153.2A CN202211486153A CN115713564A CN 115713564 A CN115713564 A CN 115713564A CN 202211486153 A CN202211486153 A CN 202211486153A CN 115713564 A CN115713564 A CN 115713564A
- Authority
- CN
- China
- Prior art keywords
- feature points
- camera
- target
- calibration
- target feature
- 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
Landscapes
- Length Measuring Devices By Optical Means (AREA)
Abstract
本申请提供相机标定方法及装置。本申请的技术方案中,通过获取目标标定图像,该目标标定图像为待标定相机对预设的一张平面标定板进行拍摄得到的一张照片,平面标定板中包括对位特征点和按照预设排列参数排放的多个预设特征点,且平面标定板的对位特征点位于待标定相机的主光轴上;获取目标标定图像中的多个目标特征点的亚像素坐标以及世界坐标;根据多个目标特征点的亚像素坐标和世界坐标,确定待标定相机的相机标定参数,该相机标定参数至少包括内部参数、外部参数以及畸变参数中的至少一种。本申请的相机标定方法中,仅通过对预设的一张平面标定板进行拍摄得到的一张照片即可实现待标定相机的相机标定参数的标定,采集图像时间短,标定效率高。
Description
技术领域
本申请涉及计算机视觉领域,尤其涉及相机标定方法及装置。
背景技术
相机标定是通过一定的技术手段获取相机的真实投影模型参数和畸变模型参数,进而对失真图像进行校正,获得高保真的视觉图像的技术,是计算机视觉领域中的一项重要研究课题,在图像全景拼接、三维重构、零部件三维测量、汽车自主导航、机器人智能避障等领域应用广泛。
在目前相关技术中,现有的相机标定方法可分为3类:相机自标定法、主动视觉相机标定法和基于标定物的相机标定法,其中,基于标定物的标定法因其具有鲁棒性较好、适用于任意投影模型、标定过程简单、成本低等优点,近年来得到了较好的发展。
然而,现有的基于标定物的标定方法存在标定效率不高的问题。
发明内容
本申请提供相机标定方法及装置,可以提高相机的标定效率。
第一方面,本申请提供一种相机标定方法,该方法包括:获取目标标定图像,所述目标标定图像为待标定相机对预设的一张平面标定板进行拍摄得到的一张照片,所述平面标定板中包括对位特征点和按照预设排列参数排放的多个预设特征点,所述平面标定板的对位特征点位于所述待标定相机的主光轴上;获取所述目标标定图像中的多个目标特征点的亚像素坐标以及世界坐标,所述多个目标特征点为所述多个预设特征点的部分或全部特征点;根据所述多个目标特征点的亚像素坐标和世界坐标,确定所述待标定相机的相机标定参数,所述相机标定参数至少包括内部参数、外部参数以及畸变参数中的至少一种。
在本申请实施例中,通过对预设的一张包括按照预设排列参数排放的多个预设特征点的平面标定板进行拍摄得到的一张照片进行标定,可以确定待标定相机的相机标定参数,该标定方法采集图像时间短,标定效率高。
结合第一方面,在一种可能的实现方式中,所述获取所述目标标定图像中的多个目标特征点的世界坐标,包括:基于所述多个目标特征点的亚像素坐标、所述多个目标特征点中相邻的两个目标特征点的斜率以及相邻的两个目标特征点之间的间距,对所述多个目标特征点进行拓扑排序;根据所述拓扑排序后的多个目标特征点,获取所述多个目标特征点中每个目标特征点在世界坐标系中对应的世界坐标。
结合第一方面,在一种可能的实现方式中,所述每个目标特征点的世界坐标通过以下公式确定:
x=(n-1)δx
y=(m-1)δy
其中,x为所述目标特征点在世界坐标系中第一方向的取值,y为所述目标特征点在所述世界坐标系中第二方向的取值,n为所述目标特征点在所述拓扑排序后的多个目标特征点中所在的列,m为所述目标特征点在所述拓扑排序后的多个目标特征点中所在的行,δx为所述平面标定板中的所述预设特征点之间在所述第一方向的间距,δy为所述平面标定板中的所述预设特征点之间在所述第二方向的间距,所述第一方向与所述第二方向垂直。
结合第一方面,在一种可能的实现方式中,所述多个预设特征点的部分特征点包括位于所述目标标定图像的中心区域的至少四个中心特征点,根据所述多个目标特征点的亚像素坐标和世界坐标,确定所述待标定相机的相机标定参数,包括:基于所述至少四个中心特征点的亚像素坐标和世界坐标,确定所述待标定相机的内部参数和外部参数;根据所述多个目标特征点的亚像素坐标和世界坐标、所述内部参数以及所述外部参数,确定所述待标定相机的畸变参数。
结合第一方面,在一种可能的实现方式中,基于所述至少四个中心特征点的亚像素坐标和世界坐标,确定所述待标定相机的内部参数和外部参数,包括:根据世界坐标系和相机坐标系之间的对应关系以及所述至少四个中心特征点的世界坐标,得到所述至少四个中心特征点的相机坐标;根据所述至少四个中心特征点的亚像素坐标、所述至少四个中心特征点的世界坐标、所述至少四个中心特征点的相机坐标以及第一对应关系,确定所述内部参数和所述外部参数,所述第一对应关系为所述世界坐标系、所述像素坐标系以及所述相机坐标系之间的对应关系。
结合第一方面,在一种可能的实现方式中,根据所述多个目标特征点的亚像素坐标和世界坐标、所述内部参数以及所述外部参数,确定所述待标定相机的畸变参数,包括:基于每个目标特征点的亚像素坐标和世界坐标、所述待标定相机的内部参数和外部参数,获取所述每个目标特征点的畸变归一化坐标和无畸变归一化坐标,得到所述多个目标特征点的畸变归一化坐标集和无畸变归一化坐标集;根据所述畸变归一化坐标集、所述无畸变归一化坐标集以及第二对应关系,确定所述畸变参数,所述第二对应关系为畸变归一化坐标和无畸变归一化坐标之间的对应关系。
结合第一方面,在一种可能的实现方式中,所述多个目标特征点还包括位于所述目标标定图像的边缘区域的多个边缘特征点,以确定所述待标定相机的畸变参数。
结合第一方面,在一种可能的实现方式中,所述多个目标特征点的亚像素坐标是根据目标区域的灰度重心确定的,所述目标区域为所述多个目标特征点所处区域中灰度值大于预设阈值的区域。
第二方面,本申请提供一种相机标定装置,该装置包括:获取模块,用于获取目标标定图像,所述目标标定图像为待标定相机对预设的一张平面标定板进行拍摄得到的一张照片,所述平面标定板中包括对位特征点和按照预设排列参数排放的多个预设特征点,所述平面标定板的对位特征点位于所述待标定相机的主光轴上;所述获取模块还用于获取所述目标标定图像中的多个目标特征点的亚像素坐标以及世界坐标,所述多个目标特征点为所述多个预设特征点的部分或全部特征点;确定模块,用于根据所述多个目标特征点的亚像素坐标和世界坐标,确定所述待标定相机的相机标定参数,所述相机标定参数至少包括内部参数、外部参数以及畸变参数中的至少一种。
结合第二方面,在一种可能的实现方式中,所述获取模块具体用于:基于所述多个目标特征点的亚像素坐标、所述多个目标特征点中相邻的两个目标特征点的斜率以及相邻的两个目标特征点之间的间距,对所述多个目标特征点进行拓扑排序;根据所述拓扑排序后的多个目标特征点,获取所述多个目标特征点中每个目标特征点在世界坐标系中对应的世界坐标。
结合第二方面,在一种可能的实现方式中,所述每个目标特征点的世界坐标通过以下公式确定:
x=(n-1)δx
y=(m-1)δy
其中,x为所述目标特征点在世界坐标系中第一方向的取值,y为所述目标特征点在所述世界坐标系中第二方向的取值,n为所述目标特征点在所述拓扑排序后的多个目标特征点中所在的列,m为所述目标特征点在所述拓扑排序后的多个目标特征点中所在的行,δx为所述平面标定板中的所述预设特征点之间在所述第一方向的间距,δy为所述平面标定板中的所述预设特征点之间在所述第二方向的间距,所述第一方向与所述第二方向垂直。
结合第二方面,在一种可能的实现方式中,所述多个预设特征点的部分特征点包括位于所述目标标定图像的中心区域的至少四个中心特征点,所述确定模块具体用于:基于所述至少四个中心特征点的亚像素坐标和世界坐标,确定所述待标定相机的内部参数和外部参数;根据所述多个目标特征点的亚像素坐标和世界坐标、所述内部参数以及所述外部参数,确定所述待标定相机的畸变参数。
结合第二方面,在一种可能的实现方式中,所述确定模块具体用于:根据世界坐标系和相机坐标系之间的对应关系以及所述至少四个中心特征点的世界坐标,得到所述至少四个中心特征点的相机坐标;根据所述至少四个中心特征点的亚像素坐标、所述至少四个中心特征点的世界坐标、所述至少四个中心特征点的相机坐标以及第一对应关系,确定所述内部参数和所述外部参数,所述第一对应关系为所述世界坐标系、所述像素坐标系以及所述相机坐标系之间的对应关系。
结合第二方面,在一种可能的实现方式中,所述确定模块具体用于:基于每个目标特征点的亚像素坐标和世界坐标、所述待标定相机的内部参数和外部参数,获取所述每个目标特征点的畸变归一化坐标和无畸变归一化坐标,得到所述多个目标特征点的畸变归一化坐标集和无畸变归一化坐标集;根据所述畸变归一化坐标集、所述无畸变归一化坐标集以及第二对应关系,确定所述畸变参数,所述第二对应关系为畸变归一化坐标和无畸变归一化坐标之间的对应关系。
结合第二方面,在一种可能的实现方式中,所述多个目标特征点还包括位于所述目标标定图像的边缘区域的多个边缘特征点,以确定所述待标定相机的畸变参数。
结合第二方面,在一种可能的实现方式中,所述多个目标特征点的亚像素坐标是根据目标区域的灰度重心确定的,所述目标区域为所述多个目标特征点所处区域中灰度值大于预设阈值的区域。
第三方面,本申请提供一种电子设备,包括处理器和存储器,所述存储器用于存储代码指令;所述处理器用于运行所述代码指令,以实现上述第一方面或其中任一种可能实现方式中的方法。
第四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序(也可以称为代码,或指令)当其在计算机上运行时,使得计算机执行上述第一方面或其中任一种可能实现方式中的方法。
第五方面,本申请提供一种计算机程序产品,所述计算机程序产品包括:计算机程序(也可以称为代码,或指令),当计算机程序被运行时,使得计算机执行上述第一方面或其中任一种可能实现方式中的方法。
附图说明
图1是本申请一个实施例提供的应用场景的示意图;
图2为本申请一个实施例提供的相机标定方法的流程图;
图3为本申请一个实施例提供的平面标定板图案的示意图;
图4为本申请一个实施例提供的待标定相机的主光轴对齐示意图;
图5为本申请另一个实施例提供的相机标定方法的流程图;
图6为本申请一个实施例提供的像素坐标系示意图;
图7为本申请又一个实施例提供的相机标定方法的流程图;
图8为本申请一个实施例提供的目标标定图像的中心区域示意图;
图9为本申请一个实施例提供的相机标定设备的结构示意图;
图10为本申请一个实施例提供的相机标定装置的结构性示意图;
图11为本申请另一个实施例提供的装置的结构性示意图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一指令和第二指令是为了区分不同的用户指令,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
需要说明的是,本申请中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
此外,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a、b和c中的至少一项(个),可以表示:a,或b,或c,或a和b,或a和c,或b和c,或a、b和c,其中a,b,c可以是单个,也可以是多个。
在介绍本申请技术方案之前,对本申请涉及到的一些名词进行简单解析。首先,相机标定就是构建位于世界坐标系中的三维空间点(x,y,z)到位于图像坐标系中的像素点(u,v)点的映射关系,是计算机三维视觉的关键技术之一。相机标定在图像全景拼接、三维重构、零部件三维测量、汽车自主导航、机器人智能避障等领域应用广泛。
相机标定参数可以分为相机的内部参数、外部参数和畸变参数,其中,内部参数描述相机的成像特征,包括图像焦距(单位为pixel)、图像主点坐标和偏斜参数;外部参数描述相机坐标系与世界坐标系的6D位姿关系和不同相机坐标系之间的6D位姿关系,可包括外参旋转矩阵和外参平移矩阵,外参旋转矩阵用于描述世界坐标系到图像坐标系的旋转关系,外参平移矩阵用于描述世界坐标系到图像坐标系的平移关系;畸变参数包括径向畸变参数和切向畸变参数。
结合上述介绍,现有的相机标定方法可分为3类:相机自标定法、主动视觉相机标定法和基于标定物的相机标定法。其中,相机自标定法不需要标定物,灵活性强,但算法的鲁棒性和精度均较差。主动视觉标定法依赖高精度的运行控制系统,虽然方法简单,可以线性求解,但成本高且是不能运用于相机运动参数未知的应用场合。相较于前两类相机标定方法,基于标定物的标定法具有标定精度较高、鲁棒性较好、适用于任意投影模型、标定过程简单、成本低等优点,近年得到了较好的发展。本申请实施例主要以基于标定物的标定法为例进行描述。
图1为本申请一个实施例提供的应用场景示意图。如图1所示,该应用场景可以包括相机101和标定物102。其中,相机101可以对标定物102进行拍摄,通过建立标定物102上坐标已知的点与相机101拍摄得到的图像上的点之间的对应,利用一定的算法获得相机标定参数(如内部参数、外部参数和畸变参数)。在此说明的是,本申请实施例中对于相机101和标定物102的具体形式不进行限定。
应理解,上述相机101主要由光学镜头、感光器件、数字信号处理(digital signalprocessing,DSP)模块等关键零部件构成。其中,环境光线经光学镜头投射到感光器件,例如互补金属氧化物半导体(complementary metal oxide semiconductor,CMOS)、电荷耦合器件(charge coupled device,CCD),感光器件将光信号转换为电信号,经过DSP模块处理后生成数字图像。然而光学镜头组固有的透视失真导致成像存在透视畸变;另外,广角、超广角镜头模组为追求大视场角(field of view,FOV),将光学镜头组经过特殊设计,导致近端成像存在显著的非线性变形;再另外的,光学透镜组的制作和装配存在误差导致成像存在径向畸变和切向畸变;如果直接将畸变的图像在应用于视觉三维重构、目标物体定位、汽车智能避障等领域,存在重构误差大、定位精度差等问题。因此,相机标定就是通过一定的技术手段获取相机标定参数,进而对失真图像进行校正,获得高保真的视觉图像。此外,双目相机模组和多目相机模组因相机装配时存在误差,常导致相机间的相对位置和姿态偏离设计值,同样需要通过标定技术获取相机间的真实相位位置和姿态。
标定物102可以包括三维标定物和平面型标定物,三维标定物可由单幅图像进行标定,主要利用已知的三维标志点坐标和图像点,标定精度较高,但高精密三维标定物的加工和维护较困难;平面型标定物比三维标定物制作简单,精度易保证。
需要说明的是,本申请实施例主要以标定物102为平面型标定物为例进行描述。
现有的基于标定物的标定方法通常对标定板拍摄多张照片来实现对相机的标定,标定效率低。
有鉴于此,本申请实施例提供了一种相机标定方法及装置,仅通过对预设的一张平面标定板进行拍摄得到的一张照片即可实现待标定相机的相机标定参数的标定,采集图像时间短,标定效率高。
下面结合附图对本申请实施例提供的相机标定方法进行详细说明。
请参考图2,为本申请一个实施例提供的相机标定方法的流程图。该方法可以应用于上述图1所示的应用场景,除此之外还可以应用于其他场景,本申请实施例对此不做限定。为方便说明,下文中以该方法应用在如图1所示的应用场景中为例,相应地,下文中的待标定相机为图1所示的相机101,下文中的平面标定板为图1所示的标定物102。下面详细说明图2所示的方法中的各个步骤,该流程图包括:
S201,获取目标标定图像,该目标标定图像为待标定相机对预设的一张平面标定板进行拍摄得到的一张照片,该平面标定板中包括对位特征点和按照预设排列参数排放的多个预设特征点,且平面标定板的对位特征点位于待标定相机的主光轴上。
该步骤中,通过待标定相机对预设的一张平面标定板进行拍摄得到目标标定图像,该目标标定图像为单张照片,也就是说,只采集一次就可以获得目标标定图像,不用借助机械移动设备,可以减少图像采集时间,提高相机标定效率。
应理解,平面标定板中包括按照预设排列参数排放的多个预设特征点,例如可以参阅图3,图3为本申请一个实施例提供的平面标定板图案的示意图,在图3中以11*11个预设特征点为例,这些预设特征点中相邻特征点之间的间距相等,且在该平面标定板中设置有对位特征点。当然,相邻特征点之间的间距还可以不相等,本申请实施例仅以图3作为示例进行说明。
可选地,平面标定板中的对位特征点可以位于平面标定板的中心区域,也可以位于平面标定板的其他区域,本申请对此不做限定。
需要说明的是,在获取目标标定图像之前,还需要通过调节待标定相机和平面标定板的位置和姿态,使得待标定相机的主光轴上的点在待标定相机的感光平面的成像位于图像中心,且平面标定板的对位特征点位于待标定相机的主光轴上。
示例性地,请参考图4,图4为本申请一个实施例提供的待标定相机的主光轴对齐示意图,也就是说,调节待标定相机和平面标定板的位置和姿态后,使得平面标定物内的对位特征点位于相机的主光轴Oc上,如图4-a所示;平面标定物内的对位特征点的成像位于图像的中心,如图4-b所示。
可选地,平面标定板的预设特征点行数、预设特征点列数可根据实际需求进行调整,同样的,平面标定板的特征点间距可根据实际需求进行调整,本申请对此不做限制。
S202,获取目标标定图像中的多个目标特征点的亚像素坐标以及世界坐标,多个目标特征点为多个预设特征点的部分或全部特征点。
该步骤中,针对目标标定图像,提取该目标标定图像中的多个目标特征点,然后获取该多个目标特征点的亚像素坐标。
其中,亚像素是比像素更小的一个概念,例如两个像素之间有5.2微米的距离,在宏观上可以看作是连在一起的。但是在微观上,它们之间还有无限的更小的东西存在,这个更小的东西我们称它为“亚像素”,亚像素坐标代表亚像素在图像中的位置。
理解性地,对于多个目标特征点的亚像素坐标的获取,可以首先对目标标定图像进行图像增强、滤波、二值化或连通域求解等操作来获得多个目标特征点的候选区域,其中,每个目标特征点的候选区域包含一个目标特征点;然后计算上述每一个目标特征点的候选区域的灰度最大值,将得到的灰度最大值小于预设阈值的目标特征点的候选区域过滤掉,再进一步计算剩下的每个目标特征点的候选区域的灰度重心的坐标作为该候选区域中的目标特征点的亚像素坐标。
还应理解,目标特征点的候选区域的灰度最大值小于预设阈值时,说明该候选区域可能存在拍摄的不够清楚,其中的特征点不好识别等情况。
可选地,该多个目标特征点的亚像素坐标是以齐次坐标的形式表示的,有利于通过矩阵运算法则进行公式推导获得特征点的亚像素坐标、世界坐标、相机标定参数等,如后续实施例中涉及到的各种矩阵运算,以及,有利于程序代码的实现。
进一步地,基于多个目标特征点的亚像素坐标以及该平面标定板中任意两个相邻的特征点之间的间距信息,获得多个目标特征点的世界坐标。
可选的,平面标定板中任意两个相邻的特征点之间的间距信息可以包括平面标定板中的水平方向上的最小特征点间距、竖直方向上的最小特征点间距或平均特征点间距等,可以根据实际需求来确定,本申请对此不做限制。
S203,根据多个目标特征点的亚像素坐标和世界坐标,确定待标定相机的相机标定参数,相机标定参数至少包括内部参数、外部参数以及畸变参数中的至少一种。
应理解,获得的多个目标特征点的世界坐标体现了目标特征点的真实物理坐标,通过对比目标特征点的世界坐标和目标特征点的亚像素坐标,获得相机标定参数,进行标定。
可选地,相机标定参数至少包括内部参数、外部参数以及畸变参数中的至少一种。其中,内部参数包括图像焦距、图像主点坐标和偏斜参数;外部参数包括外参旋转矩阵和外参平移矩阵,外参旋转矩阵用于描述世界坐标系到图像坐标系的旋转关系,外参平移矩阵用于描述世界坐标系到图像坐标系的平移关系,畸变参数包括径向畸变参数和切向畸变参数。
综上,在上述技术方案中,通过对预设的一张包括按照预设排列参数排放的多个预设特征点的平面标定板进行拍摄得到的一张照片进行标定,可以确定待标定相机的相机标定参数,该标定方法采集图像时间短,标定效率高。
基于上述实施例,请参考图5,图5为本申请另一个实施例提供的相机标定方法的流程图,在图5所示的实施例中,以对多个目标特征点进行拓扑排序进而获取世界坐标为例,下面详细说明图5所示的方法中的各个步骤,该流程图包括:
S501,获取目标标定图像,该目标标定图像为待标定相机对预设的一张平面标定板进行拍摄得到的一张照片,该平面标定板中包括对位特征点和按照预设排列参数排放的多个预设特征点,且平面标定板的对位特征点位于待标定相机的主光轴上。
该步骤和图2所示的实施例中的步骤S201相似,在此不再赘述。
S502,获取目标标定图像中的多个目标特征点的亚像素坐标,多个目标特征点为多个预设特征点的部分或全部特征点。
该步骤和图2所示的实施例中的步骤S202中获取亚像素坐标的方法相似,在此不再赘述。
S503,基于多个目标特征点的亚像素坐标、多个目标特征点中相邻的两个目标特征点的斜率以及相邻的两个目标特征点之间的间距,对多个目标特征点进行拓扑排序。
该步骤中,首先在目标标定图像内建立用于目标特征点排序的像素坐标系uov,其对应的像素坐标系示意图如图6所示。
应理解,对多个目标特征点进行拓扑排序时,一般是按照一行一行进行排序的,其中,多个目标特征点中相邻的两个目标特征点指的是排序时所对应的那一行特征点中相邻的两个特征点。
下面结合图6,对目标标定图像内的所有目标特征点进行拓扑排序的过程详细介绍如下:
第1步、计算目标特征点到像素坐标系uov的坐标原点的汉明距离,汉明距离最小的点定义为第一关键目标特征点p1,亚像素坐标为(up1,vp1),作为第一行目标特征点的首个目标特征点;然后沿u正方向寻找距离第一关键目标特征点最近的目标特征点,定义为第二关键目标特征点p2,亚像素坐标为(up2,vp2),作为第一行目标特征点的第二个目标特征点;沿v方向寻找距离第一关键目标特征点最近的目标特征点,定义为第三关键目标特征点p3,亚像素坐标为(up3,vp3),并作为第二行目标特征点的首个目标特征点。
第2步、根据目标特征点p1和目标特征点p2在uov坐标系下的亚像素坐标,计算目标特征点p1沿u方向的特征点斜率(loc_ku)p1和特征点间距(loc_dist_u)p1,其中,根据目标特征点p1和目标特征点p2的亚像素坐标计算目标特征点p1的特征点斜率(loc_ku)p1的计算公式(1)和特征点间距(loc_dist_u)p1的计算公式(2)如下:
其中,在公式(1)中,当up1=up2时,特征点斜率(loc_ku)p1可以是无穷大,在代码程序里面,可以定义一个较大数字,如10000、800000等。
第3步、第一行目标特征点排序:
以第一行目标特征点的首个目标特征点p1为当前目标特征点pcurr,沿当前目标特征点pcurr的特征点斜率(loc_ku)purr方向搜索距离当前目标特征点pcurr最近的下一个目标特征点pnext,将当前目标特征点pcurr看作p1和下一个目标特征点pnext看作p2代入公式(1),计算当前目标特征点pcurr与下一个目标特征点pnext之间的斜率作为pnext的特征点斜率,计算当前目标特征点pcurr与下一个目标特征点pnext之间的平均特征点间距作为下一个目标特征点pnext的特征点间距。其中,平均特征点间距的计算公式(3)如下:
其中,(loc_dist_u)next为下一个目标特征点pnext的特征点间距,(upcurr,vpcurr)为当前目标特征点pcurr的亚像素坐标,(upnext,vpnext)为下一个目标特征点pnext的亚像素坐标,((loc_dist_u)curr为当前目标特征点pcurr的特征点间距。
进一步地,以上述的下一个目标特征点pnext作为新的当前目标特征点pcurr,重复上述过程,直到当前目标特征点pcurr沿当前目标特征点pcurr的特征点斜率方向找不到下一个目标特征点为止,则第一行目标特征点搜索结束,然后将搜索到的第一行目标特征点在uov坐标系下按照坐标值u值从小到大进行排序。
在对第一行目标特征点的所有目标特征点进行排序后,可以利用上述公式(1)和公式(2)重新计算第一行目标特征点的首个目标特征点的特征点斜率和特征点间距,对第二行目标特征点的首个目标特征点进行初始化,可以理解的是,重新计算得到的第一行目标特征点的首个目标特征点的特征点斜率和特征点间距与上述第2步中计算得到的相同。
第4步、第二行目标特征点排序:
以在第3步中最后重新计算得到的第一行目标特征点的首个目标特征点的特征点斜率和特征点间距,作为第二行目标特征点的首个目标特征点p3的特征点斜率和特征点间距,以目标特征点p3作为当前目标特征点,然后沿当前目标特征点p3的特征点斜率方向搜索距离最近的下一个目标特征点,即采用第3步中相似的搜索过程,直至在沿最后一个当前目标特征点的特征点斜率方向搜索不到下一个目标特征点为止,结束第二行目标特征点的搜索,然后在uov坐标系下按照坐标值中的u值从小到大进行排序。
在对第二行目标特征点的所有目标特征点进行排序后,可以采用公式(1)和公式(2)重新计算第二行目标特征点的首个目标特征点的特征点斜率和特征点间距,即,利用上述第2步中计算第一行目标特征点的首个目标特征点的特征点斜率和特征点间距的计算方式重新计算第二行目标特征点的首个目标特征点的特征点斜率和特征点点间距,以对第三行目标特征点的首个目标特征点进行初始化。
第5步、第N行目标特征点排序(当目标特征点行数大于等于3时,即N为大于等于3的正整数):
根据第N-2行和第N-1行的目标特征点排序结果,计算第N-1行所有目标特征点沿v方向的斜率,以第N-1行所有目标特征点为当前目标特征点,沿各当前目标特征点v方向斜率的方向搜索距离各当前目标特征点最近的目标特征点作为第N行目标特征点的首个目标特征点的候选点,然后将搜索到的所有候选点按在uov坐标系下按照u值大小排序,选取u值最小的目标特征点作为第N行目标特征点的首个目标特征点,并找出第N-1行所有目标特征点中到第N行目标特征点的首个目标特征点的特征点间距最小的点ptemp,将ptemp的特征点间距和特征点斜率作为第N行目标特征点的首个目标特征点的特征点间距和特征点斜率。以第N行目标特征点的首个目标特征点作为当前目标特征点pcurr,重复第3步的操作过程,直至在当前目标特征点pcurr的特征点斜率方向上找不到下一个目标特征点为止,然后在uov坐标系下按u值大小排序搜索到的第N行所有目标特征点。
若根据第N-2行和第N-1行的目标特征点排序结果无法搜索到第N行目标特征点的首个目标特征点,则表示特征点像素坐标的拓扑关系构建结束。
S504,根据拓扑排序后的多个目标特征点,获取多个目标特征点中每个目标特征点在世界坐标系中对应的世界坐标。
该步骤中,获取拓扑排序后的多个目标特征点所在的行数和列数,以及获取平面标定板中的预设特征点之间在第一方向的间距信息和在第二方向的间距信息;根据行数和列数、在第一方向的间距信息和在第二方向的间距信息,计算对应目标特征点的世界坐标,其中,第一方向与第二方向垂直。
应理解,上述间距信息包括预设特征点之间的最小间距、平均间距或者其他间距,本申请对此不做限定。
示例性地,世界坐标系下的目标特征点与像素坐标系下的目标特征点之间存在双射对应关系,假设目标特征点的世界坐标为(x,y,0),则其中x和y通过以下公式(4)确定:
其中,x为目标特征点在世界坐标系中第一方向的取值,y为目标特征点在世界坐标系中第二方向的取值,n为目标特征点在拓扑排序后的多个目标特征点中所在的列,m为目标特征点在拓扑排序后的多个目标特征点中所在的行,δx为平面标定板中的预设特征点之间在第一方向的间距,δy为平面标定板中的预设特征点之间在第二方向的间距。
可选地,第一方向可以是世界坐标系中水平向右的x轴的方向,第二方向可以是世界坐标系中向下的y轴的方向。
S505,根据多个目标特征点的亚像素坐标和世界坐标,确定待标定相机的相机标定参数,相机标定参数至少包括内部参数、外部参数以及畸变参数中的至少一种。
该步骤和图2所示的实施例中的步骤S203相似,在此不再赘述。
该实施例中,能够基于目标特征点的坐标、特征点斜率和特征点间距,对目标标定图像内所有目标特征点进行排序,排序算法不依赖于固定的特征点行数、列数及目标特征点总数,从而能够在平面标定板图像特征点检测存在漏检或误检情况下,可稳定准确构建目标特征点在世界坐标系的坐标(x,y,z)与目标特征点在像素坐标系的坐标(u,v)的对应关系,进而实现待标定相机的高精度标定,环境适应性较强。且对所有目标特征点进行拓扑排序,排序不依赖于预设编码图案,从而能够在对低分辨率相机模组(如视频图形阵列(video graphic array,VGA)、视频图形阵列的四分之一尺寸(quarter video graphicarray,QVGA))进行标定时,依然能准确构建目标特征点在世界坐标系的坐标(x,y,z)与目标特征点在像素坐标系的坐标(u,v)的对应关系,进而实现待标定相机的高精度标定,因此,本发明实施例可用于低分辨率相机标定。
基于上述图2或图5所述的实施例,请参考图7,图7为本申请又一个实施例提供的相机标定方法的流程图,在图7所示的实施例中,以具体怎么确定待标定相机的相机标定参数为例,下面详细说明图7所示的方法中的各个步骤,该流程图包括:
S701,获取目标标定图像,该目标标定图像为待标定相机对预设的一张平面标定板进行拍摄得到的一张照片,该平面标定板中包括对位特征点和按照预设排列参数排放的多个预设特征点,且平面标定板的对位特征点位于待标定相机的主光轴上。
S702,获取目标标定图像中的多个目标特征点的亚像素坐标以及世界坐标,多个目标特征点为多个预设特征点的部分或全部特征点。
步骤S701和S702的详细说明和图2所示的实施例中的步骤S201和S202相似,在此不再赘述。
S703,基于至少四个中心特征点的亚像素坐标和世界坐标,确定待标定相机的内部参数和外部参数。
应理解,至少四个中心特征点为目标标定图像中中心区域的目标特征点,当然,在一些特殊情况下,也可以通过三个中心特征点确定出待标定相机的内部参数和外部参数,大多数情况下需要四个以上,本申请以需要至少四个中心特征点为例进行描述。
示例性地,中心特征点的数量可以是8个,如图8中中心区域的特征点q1、特征点q2、特征点q3、特征点q4、特征点q5、特征点q6、特征点q7和特征点q8所示,该中心特征点只是一种示例,本申请对此不做限定。
示例性地,以无畸变下相机标定的理论模型为例,特征点在世界坐标系中的世界坐标(x,y,z)与特征点在像素坐标系中的像素坐标(u,v,1)的投影关系通过公式(5)描述,如下:
其中,zc为待标相机光心到平面标定板的垂直距离(也即特征点在相机坐标系下的z方向的取值),fx为像素坐标中x方向的尺度因子,fy为像素坐标中y方向的尺度因子,cx为像素主点坐标中x方向的值,cy为像素主点坐标中y方向的值,β为待标定相机的偏斜参数,r11、r12、r13、r21、r22、r23、r31、r32和r33为旋转分量,tx、ty和tz为平移向量。
需要说明的是,下面实施例中出现的和公式(5)中一样的参数,所表示的含义也一样。
进一步地,根据世界坐标系和相机坐标系之间的对应关系以及至少四个中心特征点的世界坐标,得到至少四个中心特征点的相机坐标。
示例性地,特征点在世界坐标系中的世界坐标(x,y,z)和在相机坐标系下的相机坐标(xc,yc,zc)通过公式(6)描述,如下:
则根据至少四个中心特征点的亚像素坐标、至少四个中心特征点的世界坐标、至少四个中心特征点的相机坐标以及第一对应关系,确定内部参数和外部参数,第一对应关系为世界坐标系、像素坐标系以及相机坐标系之间的对应关系,下面对确定内部参数和外部参数以及第一对应关系进行详细描述。
理解性地,待标定相机的内部参数可以通过以下公式(7)确定:
其中,K为内部参数。
通常待标定相机的偏斜参数β=0且fx=fy=fxy,因此公式(5)可以简化为公式(8),如下:
可以理解,待标定相机的外部参数包括外参旋转矩阵和外参平移矩阵,则世界坐标系到相机坐标系的外参旋转矩阵,也即待标定相机的外参旋转矩阵R可由正交矩阵表示为公式(9),如下:
其中,r1、r2、r3为旋转分量。
世界坐标系到相机坐标系的外参平移矩阵,也即待标定相机的外参平移矩阵T可由公式(10)表示,如下:
在本申请实施例中,在构建世界坐标系时,将世界坐标系的xoy面与平面标定板所在平面重合,世界坐标系中z=0。因此,当特征点的世界坐标z=0时,上述公式(8)可简化为公式(11),如下:
其中,单应性矩阵H可由公式(12)表示,如下:
通过待标定相机的主光轴Oc对齐可实现相机坐标系原点与世界坐标系原点之间的平移向量t=(0,0,tz)。
因此,上述单应性矩阵H可以进一步简化为式(13)。
进一步地,基于小孔成像原理,相机坐标系下点(xc,yc,zc)在像素坐标系上的点对应的(u,v)可由如下公式(14)计算。
平面标定板中相邻的特征点的物理间距为“DistanceGap”,像素距离为“DistancePixel”。以图8中的特征点q1和特征点q2为例,将特征点q1、特征点q2的亚像素坐标和相机坐标系下的物理坐标带入公式(14)可得公式(15)。
对公式(15)整理可得公式(16),此时zc=DistanceCamera为待标定相机光心到平面标定板的垂直距离,也即图4-a中所示的垂直距离,则相机的焦距可以由以下公式确定:
进一步地,对公式(13)进行整理可得公式(17)。
其中,单应性矩阵H可由至少四个中心特征点的亚像素坐标和世界坐标系中的物理坐标的对应关系求得。由公式(17)可得,等式左边为H矩阵,右边为待标定相机的内部参数和外部参数的乘积矩阵,由两矩阵相等等价于两矩阵对应元素相等,可构建9个方程。且公式(17)右边矩阵有9个未知数,正好构成9组线性方程,可直接求解得到待标定相机的光心坐标(cx,cy)、外参旋转矩阵R的旋转分量r1和r2以及平移向量t=(0,0,tz)。旋转矩阵R的第三分量r3可由公式(18)计算得到。
其中,在公式(18)中,r1、r2和r3是相互交互的,且表示的是单位向量,通过求解r1和r2相乘,再除以模值,即可得到旋转分量r3。
综上,基于至少四个中心特征点的亚像素坐标、世界坐标、相机坐标,以及世界坐标系、像素坐标系和相机坐标系之间的对应关系,确定待标定相机的内部参数和外部参数,充分考量了相机的成像特点,即中心区域畸变小、边缘畸变大,这样得出的内部参数和外部参数更加准确。
S704,根据多个目标特征点的亚像素坐标和世界坐标、内部参数以及外部参数,确定待标定相机的畸变参数。
该步骤中,根据多个目标特征点中每个目标特征点的亚像素坐标和世界坐标、待标定相机的内部参数和外部参数,获取每个目标特征点的畸变归一化坐标和无畸变归一化坐标,得到多个目标特征点的畸变归一化坐标集和无畸变归一化坐标集。
进一步地,根据畸变归一化坐标集、无畸变归一化坐标集以及第二对应关系,确定畸变参数,该第二对应关系为相机坐标系的畸变归一化坐标和无畸变归一化坐标之间的对应关系,具体描述如下:
理解性地,相机的畸变参数主要包括切向畸变参数和径向畸变参数,用公式(19)表示。其中(xcorrect,ycorrect)T为无畸变归一化坐标,(xdistort,ydistort)T为畸变归一化坐标。
其中,k1,k2,k3为径向畸变参数,p1,p2为切向畸变参数,r为分量,且r可由下列公式(20)计算得到:
无畸变归一化坐标可由下列公式(21)计算得到,其中(x,y,z)为目标特征点在世界坐标系下的坐标。
畸变归一化坐标可以由公式(22)计算得到。
假设目标标定图像的目标特征点的数量为N,将所有目标特征点的像素坐标及对应的世界坐标带入公式(21)和(22)中,可获得N对无畸变和畸变的归一化坐标对。将得到的归一化坐标对带入公式(19)可得到关于径向畸变参数k1,k2,k3和切向畸变参数p1,p2的2N个线性方程组,可通过最小二乘法优化求解符合该方程组的最佳畸变参数。
最后,通过Levenberg-Marquardt方法迭代优化相机的内部参数、外部参数和畸变参数。
可选地,该步骤中的多个目标特征点还包括位于目标标定图像的边缘区域的多个边缘特征点,这样标定获得的待标定相机的畸变参数可准确描述图像边缘区域的成像特征。
该实施例中,选取了目标标定图像中中心区域的特征点来计算待标定相机的内部参数和外部参数,充分考量了相机的成像特点,可以适用于不同畸变的相机标定;且使用中心区域的特征点来计算焦距,进而计算待标定相机的平均焦距,避免了因低分辨率(如VGA、QVGA)导致的特征点检测精度低,进而造成的相机标定精度低的问题,标定精度高;使用所有目标特征点计算待标定相机的畸变参数,可准确描述目标标定图像的成像特征。
可选地,本申请实施例中的待标定相机可以安装在相机安装平台上使用,平面标定板可以安装在标定物安装平台上使用,具体如图9-a和图9-b所示,相机安装平台901包括相机位置控制模块9011和相机姿态控制模块9012,标定物安装平台902包括标定物位置控制模块9021和标定物姿态控制模块9022。
其中,待标定相机安装在相机安装平台901上,平面标定板安装在标定物安装平台902上,相机位置控制模块9011和相机姿态控制模块9012可以用于控制待标定相机的空间位置和姿态,标定物位置控制模块9021和标定物姿态控制模块9022可以用于控制平面标定板的空间位置和姿态。
作为一种示例,通过调节相机位置控制模块9011、相机姿态控制模块9012、标定物位置控制模块9021和标定物姿态控制模块9022可以使得平面标定板内的对位特征点的成像位于待标定相机拍摄获得的图像的指定位置(例如中心)。
综上,本申请提供的相机的标定方法中,仅对预设的一张包括按照预设排列参数排放的多个预设特征点的平面标定板进行拍摄得到的一张照片进行标定,可以确定待标定相机的相机标定参数,标定效率高;能够基于目标特征点的坐标、特征点斜率和特征点间距,对目标标定图像内所有目标特征点进行拓扑排序,从而能够在平面标定板图像特征点检测存在漏检或误检情况下,可稳定准确构建目标特征点在世界坐标系的坐标与目标特征点在像素坐标系的坐标的对应关系,进而实现待标定相机的高精度标定;另外,基于目标标定图像中中心区域的特征点来计算待标定相机的内部参数和外部参数,基于所有目标特征点来计算畸变参数,充分考量了相机的成像特点,可以适用于不同畸变的相机标定,还可以准确描述目标标定图像的成像特征。
在上述实施例的基础上,图10为本申请一个实施例提供的装置1000的结构性示意图,该装置1000包括:获取模块1001和确定模块1002。
其中,获取模块1001,用于获取目标标定图像,所述目标标定图像为待标定相机对预设的一张平面标定板进行拍摄得到的一张照片,所述平面标定板中包括对位特征点和按照预设排列参数排放的多个预设特征点,所述平面标定板的对位特征点位于所述待标定相机的主光轴上;所述获取模块1001还用于获取所述目标标定图像中的多个目标特征点的亚像素坐标以及世界坐标,所述多个目标特征点为所述多个预设特征点的部分或全部特征点;确定模块1002,用于根据所述多个目标特征点的亚像素坐标和世界坐标,确定所述待标定相机的相机标定参数,所述相机标定参数至少包括内部参数、外部参数以及畸变参数中的至少一种。
作为一种示例,装置1000可以用于执行图2所示的方法,例如,获取模块1001用于执行S201和S202,确定模块1002用于执行S203。
在一种可能的实现方式中,所述获取模块1001具体用于:基于所述多个目标特征点的亚像素坐标、所述多个目标特征点中相邻的两个目标特征点的斜率以及相邻的两个目标特征点之间的间距,对所述多个目标特征点进行拓扑排序;根据所述拓扑排序后的多个目标特征点,获取所述多个目标特征点中每个目标特征点在世界坐标系中对应的世界坐标。
在一种可能的实现方式中,所述每个目标特征点的世界坐标通过以下公式确定:
x=(n-1)δx
y=(m-1)δy
其中,x为所述目标特征点在世界坐标系中第一方向的取值,y为所述目标特征点在所述世界坐标系中第二方向的取值,n为所述目标特征点在所述拓扑排序后的多个目标特征点中所在的列,m为所述目标特征点在所述拓扑排序后的多个目标特征点中所在的行,δx为所述平面标定板中的所述预设特征点之间在所述第一方向的间距,δy为所述平面标定板中的所述预设特征点之间在所述第二方向的间距,所述第一方向与所述第二方向垂直。
在一种可能的实现方式中,所述多个预设特征点的部分特征点包括位于所述目标标定图像的中心区域的至少四个中心特征点,所述确定模块1002具体用于:基于所述至少四个中心特征点的亚像素坐标和世界坐标,确定所述待标定相机的内部参数和外部参数;根据所述多个目标特征点的亚像素坐标和世界坐标、所述内部参数以及所述外部参数,确定所述待标定相机的畸变参数。
在一种可能的实现方式中,所述确定模块1002具体用于:根据世界坐标系和相机坐标系之间的对应关系以及所述至少四个中心特征点的世界坐标,得到所述至少四个中心特征点的相机坐标;根据所述至少四个中心特征点的亚像素坐标、所述至少四个中心特征点的世界坐标、所述至少四个中心特征点的相机坐标以及第一对应关系,确定所述内部参数和所述外部参数,所述第一对应关系为所述世界坐标系、所述像素坐标系以及所述相机坐标系之间的对应关系。
在一种可能的实现方式中,所述确定模块1002具体用于:基于每个目标特征点的亚像素坐标和世界坐标、所述待标定相机的内部参数和外部参数,获取所述每个目标特征点的畸变归一化坐标和无畸变归一化坐标,得到所述多个目标特征点的畸变归一化坐标集和无畸变归一化坐标集;根据所述畸变归一化坐标集、所述无畸变归一化坐标集以及第二对应关系,确定所述畸变参数,所述第二对应关系为畸变归一化坐标和无畸变归一化坐标之间的对应关系。
在一种可能的实现方式中,所述多个目标特征点还包括位于所述目标标定图像的边缘区域的多个边缘特征点,以确定所述待标定相机的畸变参数。
在一种可能的实现方式中,所述多个目标特征点的亚像素坐标是根据目标区域的灰度重心确定的,所述目标区域为所述多个目标特征点所处区域中灰度值大于预设阈值的区域。
应理解,这里的装置1000以功能模块的形式体现。这里的术语“模块”可以指应用特有集成电路(application specific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。在一个可选例子中,本领域技术人员可以理解,装置1000可以具体为上述实施例中的待标定相机,或者,上述实施例中待标定相机的功能可以集成在装置1000中,装置1000可以用于执行上述方法实施例中与待标定相机对应的各个流程和/或步骤,为避免重复,在此不再赘述。
上述装置1000具有实现上述方法中待标定相机执行的相应步骤的功能;上述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
图11为本申请另一个实施例提供的装置的结构性示意图。图11所示的装置可以用于执行前述任意一个实施例的方法。
如图11所示,本实施例的装置1100包括:存储器1101、处理器1102、通信接口1103以及总线1104。其中,存储器1101、处理器1102、通信接口1103通过总线1104实现彼此之间的通信连接。
存储器1101可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器1101可以存储程序,当存储器1101中存储的程序被处理器1102执行时,处理器1102用于执行上述实施例中所示的方法的各个步骤。
处理器1102可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例中所示的各个方法。
处理器1102还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请实施例的方法的各个步骤可以通过处理器1102中的硬件的集成逻辑电路或者软件形式的指令完成。
上述处理器1102还可以是通用处理器、数字信号处理器(digital signalprocessing,DSP)、ASIC、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1101,处理器1102读取存储器1101中的信息,结合其硬件完成本申请装置包括的单元所需执行的功能。
通信接口1103可以使用但不限于收发器一类的收发装置,来实现装置1100与其他设备或通信网络之间的通信。
总线1104可以包括在装置1100各个部件(例如,存储器1101、处理器1102、通信接口1103)之间传送信息的通路。
应理解,本申请实施例所示的装置1100可以是电子设备,或者,也可以是配置于电子设备中的芯片。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (11)
1.一种相机标定方法,其特征在于,包括:
获取目标标定图像,所述目标标定图像为待标定相机对预设的一张平面标定板进行拍摄得到的一张照片,所述平面标定板中包括对位特征点和按照预设排列参数排放的多个预设特征点,所述平面标定板的对位特征点位于所述待标定相机的主光轴上;
获取所述目标标定图像中的多个目标特征点的亚像素坐标以及世界坐标,所述多个目标特征点为所述多个预设特征点的部分或全部特征点;
根据所述多个目标特征点的亚像素坐标和世界坐标,确定所述待标定相机的相机标定参数,所述相机标定参数至少包括内部参数、外部参数以及畸变参数中的至少一种。
2.根据权利要求1所述的方法,其特征在于,所述获取所述目标标定图像中的多个目标特征点的世界坐标,包括:
基于所述多个目标特征点的亚像素坐标、所述多个目标特征点中相邻的两个目标特征点的斜率以及相邻的两个目标特征点之间的间距,对所述多个目标特征点进行拓扑排序;
根据所述拓扑排序后的多个目标特征点,获取所述多个目标特征点中每个目标特征点在世界坐标系中对应的世界坐标。
3.根据权利要求2所述的方法,其特征在于,所述每个目标特征点的世界坐标通过以下公式确定:
x=(n-1)δx
y=(m-1)δy
其中,x为所述目标特征点在世界坐标系中第一方向的取值,y为所述目标特征点在所述世界坐标系中第二方向的取值,n为所述目标特征点在所述拓扑排序后的多个目标特征点中所在的列,m为所述目标特征点在所述拓扑排序后的多个目标特征点中所在的行,δx为所述平面标定板中的所述预设特征点之间在所述第一方向的间距,δy为所述平面标定板中的所述预设特征点之间在所述第二方向的间距,所述第一方向与所述第二方向垂直。
4.根据权利要求1所述的方法,其特征在于,所述多个预设特征点的部分特征点包括位于所述目标标定图像的中心区域的至少四个中心特征点,所述根据所述多个目标特征点的亚像素坐标和世界坐标,确定所述待标定相机的相机标定参数,包括:
基于所述至少四个中心特征点的亚像素坐标和世界坐标,确定所述待标定相机的内部参数和外部参数;
根据所述多个目标特征点的亚像素坐标和世界坐标、所述内部参数以及所述外部参数,确定所述待标定相机的畸变参数。
5.根据权利要求4所述的方法,其特征在于,所述基于所述至少四个中心特征点的亚像素坐标和世界坐标,确定所述待标定相机的内部参数和外部参数,包括:
根据世界坐标系和相机坐标系之间的对应关系以及所述至少四个中心特征点的世界坐标,得到所述至少四个中心特征点的相机坐标;
根据所述至少四个中心特征点的亚像素坐标、所述至少四个中心特征点的世界坐标、所述至少四个中心特征点的相机坐标以及第一对应关系,确定所述内部参数和所述外部参数,所述第一对应关系为所述世界坐标系、所述像素坐标系以及所述相机坐标系之间的对应关系。
6.根据权利要求4所述的方法,其特征在于,所述根据所述多个目标特征点的亚像素坐标和世界坐标、所述内部参数以及所述外部参数,确定所述待标定相机的畸变参数,包括:
基于每个目标特征点的亚像素坐标和世界坐标、所述待标定相机的内部参数和外部参数,获取所述每个目标特征点的畸变归一化坐标和无畸变归一化坐标,得到所述多个目标特征点的畸变归一化坐标集和无畸变归一化坐标集;
根据所述畸变归一化坐标集、所述无畸变归一化坐标集以及第二对应关系,确定所述畸变参数,所述第二对应关系为畸变归一化坐标和无畸变归一化坐标之间的对应关系。
7.根据权利要求6所述的方法,其特征在于,所述多个目标特征点还包括位于所述目标标定图像的边缘区域的多个边缘特征点,以确定所述待标定相机的畸变参数。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述多个目标特征点的亚像素坐标是根据目标区域的灰度重心确定的,所述目标区域为所述多个目标特征点所处区域中灰度值大于预设阈值的区域。
9.一种相机标定装置,其特征在于,包括:
获取模块,用于获取目标标定图像,所述目标标定图像为待标定相机对预设的一张平面标定板进行拍摄得到的一张照片,所述平面标定板中包括对位特征点和按照预设排列参数排放的多个预设特征点,所述平面标定板的对位特征点位于所述待标定相机的主光轴上;
所述获取模块还用于获取所述目标标定图像中的多个目标特征点的亚像素坐标以及世界坐标,所述多个目标特征点为所述多个预设特征点的部分或全部特征点;
确定模块,用于根据所述多个目标特征点的亚像素坐标和世界坐标,确定所述待标定相机的相机标定参数,所述相机标定参数至少包括内部参数、外部参数以及畸变参数中的至少一种。
10.一种电子设备,其特征在于,包括处理器和存储器,所述存储器用于存储代码指令;所述处理器用于运行所述代码指令,以执行如权利要求1至8中任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序包括用于实现如权利要求1至8中任一项所述的方法的指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211486153.2A CN115713564A (zh) | 2022-11-24 | 2022-11-24 | 相机标定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211486153.2A CN115713564A (zh) | 2022-11-24 | 2022-11-24 | 相机标定方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115713564A true CN115713564A (zh) | 2023-02-24 |
Family
ID=85234678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211486153.2A Pending CN115713564A (zh) | 2022-11-24 | 2022-11-24 | 相机标定方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115713564A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116934871A (zh) * | 2023-07-27 | 2023-10-24 | 湖南视比特机器人有限公司 | 一种基于标定物的多目系统标定方法、系统及存储介质 |
CN118365713A (zh) * | 2024-04-26 | 2024-07-19 | 浙江安吉吾知科技有限公司 | 随机移动多目摄像机的动态标定方法 |
CN118429445A (zh) * | 2024-07-05 | 2024-08-02 | 陕西龙跃锐星科技有限公司 | 一种相机与转台的联合标定方法 |
-
2022
- 2022-11-24 CN CN202211486153.2A patent/CN115713564A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116934871A (zh) * | 2023-07-27 | 2023-10-24 | 湖南视比特机器人有限公司 | 一种基于标定物的多目系统标定方法、系统及存储介质 |
CN116934871B (zh) * | 2023-07-27 | 2024-03-26 | 湖南视比特机器人有限公司 | 一种基于标定物的多目系统标定方法、系统及存储介质 |
CN118365713A (zh) * | 2024-04-26 | 2024-07-19 | 浙江安吉吾知科技有限公司 | 随机移动多目摄像机的动态标定方法 |
CN118429445A (zh) * | 2024-07-05 | 2024-08-02 | 陕西龙跃锐星科技有限公司 | 一种相机与转台的联合标定方法 |
CN118429445B (zh) * | 2024-07-05 | 2024-09-13 | 陕西龙跃锐星科技有限公司 | 一种相机与转台的联合标定方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109035320B (zh) | 基于单目视觉的深度提取方法 | |
CN109146980B (zh) | 基于单目视觉的优化的深度提取和被动测距方法 | |
JP6967715B2 (ja) | カメラ校正方法、カメラ校正プログラム及びカメラ校正装置 | |
CN115713564A (zh) | 相机标定方法及装置 | |
Nomura et al. | Simple calibration algorithm for high-distortion lens camera | |
WO2020237574A1 (zh) | 相机的内参及相对姿态的标定方法、装置、无人机和存储装置 | |
CN111179358A (zh) | 标定方法、装置、设备及存储介质 | |
CN112270719B (zh) | 相机标定方法、装置及系统 | |
CN112562014B (zh) | 相机标定方法、系统、介质及装置 | |
CN111263142B (zh) | 一种摄像模组光学防抖的测试方法、装置、设备及介质 | |
CN109255818B (zh) | 一种新型标靶及其亚像素级角点的提取方法 | |
CN111123242B (zh) | 一种基于激光雷达和相机的联合标定方法及计算机可读存储介质 | |
CN113409391B (zh) | 视觉定位方法及相关装置、设备和存储介质 | |
CN113256729B (zh) | 激光雷达与相机的外参标定方法、装置、设备及存储介质 | |
CN113920205B (zh) | 一种非同轴相机的标定方法 | |
CN112465877B (zh) | 一种基于运动状态估计的卡尔曼滤波视觉追踪稳定方法 | |
CN110956660A (zh) | 定位方法、机器人以及计算机存储介质 | |
US20110235898A1 (en) | Matching process in three-dimensional registration and computer-readable storage medium storing a program thereof | |
CN110260857A (zh) | 视觉地图的校准方法、装置及存储介质 | |
JP6479296B2 (ja) | 位置姿勢推定装置および位置姿勢推定方法 | |
CN114299156A (zh) | 无重叠区域下多相机的标定与坐标统一方法 | |
CN111383264A (zh) | 一种定位方法、装置、终端及计算机存储介质 | |
CN117173254A (zh) | 一种相机标定方法、系统、装置和电子设备 | |
CN108520541B (zh) | 一种广角摄像机的标定方法 | |
CN116051634A (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 |