一种非同轴相机的标定方法转让专利

申请号 : CN202111526560.7

文献号 : CN113920205B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 魏宇明杨洋黄涛黄淦吴创廷翟爱亭

申请人 : 深圳市华汉伟业科技有限公司

摘要 :

一种非同轴相机的标定方法,包括:获取非同轴相机拍摄的标定板图像;获取标定板图像中的特征点及其图像坐标和世界坐标;计算单应性矩阵;根据预设的由世界坐标到图像坐标的转换模型,对单应性矩阵进行分解得到非同轴相机的内参和外参,其中内参包括表示由倾斜像平面坐标系到非倾斜像平面坐标系的变换的倾斜矩阵,倾斜像平面为垂直于镜头光轴的像平面,非倾斜像平面为非同轴相机的像平面;对畸变系数和分解得到的内参、外参进行非线性优化,得到最终的内参、外参和畸变系数。由于引入了倾斜像平面和非倾斜像平面,增加了倾斜矩阵用于描述由倾斜像平面坐标系到非倾斜像平面坐标系的变换,能有效提高非同轴相机的标定精度。

权利要求 :

1.一种非同轴相机的标定方法,所述非同轴相机包括像平面和镜头,所述像平面的法向量和所述镜头的光轴不同轴,其特征在于,包括:获取非同轴相机拍摄的标定板图像;

获取所述标定板图像中的特征点,以及特征点的图像坐标和对应的世界坐标;

根据特征点的图像坐标和对应的世界坐标计算单应性矩阵H;

根据预设的由世界坐标到图像坐标的转换模型,对单应性矩阵进行分解计算得到非同轴相机的内参和外参,其中内参包括倾斜矩阵Htilt,倾斜矩阵Htilt表示由倾斜像平面坐标系到非倾斜像平面坐标系的变换,其中倾斜像平面为垂直于所述镜头的光轴的像平面,非倾斜像平面为所述非同轴相机的像平面,所述转换模型为:,

其中,单应性矩阵 , 

T T

(r,c) 为特征点的图像坐标,(xw,yw,zw) 为特征点的世界坐标, 为由世界坐标系到相机坐标系的变换矩阵,R为旋转矩阵,t为位移矩阵,zc为特征点在相机坐标系中的z坐标, 为由相机坐标系到倾斜像平面坐标系的变换矩阵,f为非同轴相机的焦距, 为由非倾斜像平面坐标系到图像坐标系的变换矩阵,sx和sy分别为非同轴相机水平方向上和垂直方向上的像素尺寸,(cx,cy)为主光轴点,为内参部分, 为外参部分;

所述非同轴相机的镜头为非远心镜头或物方远心镜头,所述倾斜矩阵为,

其中,h11、h12、h13、h21、h22、h23、h31、h32、h33为所述倾斜矩阵中的元素,d为所述倾斜像平面到所述非倾斜像平面的平移距离,q11、q12、q13、q21、q22、q23、q31、q32、q33为旋转矩阵Q中的元素,旋转矩阵Q表示所述倾斜像平面相对于原始坐标系的旋转变换,且,

其中ρ表示绕Z轴旋转的角度,τ表示绕X轴旋转的角度,所述原始坐标系的X轴为所述非倾斜像平面的水平方向,Y轴为所述非倾斜像平面的垂直方向,Z轴为所述非倾斜像平面的垂直线;

对非同轴相机的畸变系数和分解得到的内参、外参进行非线性优化,得到非同轴相机最终的内参、外参和畸变系数。

2.如权利要求1所述的标定方法,其特征在于,所述对单应性矩阵进行分解计算得到非同轴相机的内参和外参包括:

根据以下约束条件计算参数矩阵A,

其中

h1为单应性矩阵H的第一列向量,h2为单应性矩阵H的第二列向量,h3为单应性矩阵H的第三列向量,r1为旋转矩阵R的第一列向量,r2为旋转矩阵R的第二列向量;

‑1 ‑1 ‑1

根据r1=A h1,r2=A h2,t=A h3计算得到矩阵[r1 r2 t],根据 计算得到倾斜矩阵Htilt。

3.如权利要求1所述的标定方法,其特征在于,所述非同轴相机的外参还包括等效旋转轴k和等效轴角θ,所述对单应性矩阵进行分解计算得到非同轴相机的内参和外参包括:根据以下约束条件计算参数矩阵A,

其中,

‑1 ‑1 ‑1

根据r1=A h1,r2=A h2,t=A h3计算得到矩阵[r1 r2 t];

其中h1为单应性矩阵H的第一列向量,h2为单应性矩阵H的第二列向量,h3为单应性矩阵H的第三列向量,r1为旋转矩阵R的第一列向量,r2为旋转矩阵R的第二列向量;

根据计算得到的旋转矩阵R,获得等效旋转轴k和等效轴角θ,其中旋转矩阵R与等效旋转轴k和等效轴角θ的变换关系如下:;kx、

ky、kz为等效旋转轴k的三个分量;

根据 计算得到倾斜矩阵Htilt。

4.如权利要求1所述的标定方法,其特征在于,所述对非同轴相机的畸变系数和分解得到的内参、外参进行非线性优化,得到非同轴相机最终的内参、外参和畸变系数,包括:预先设置畸变系数的初始值,并将分解得到的内参、外参作为内参、外参的初始值,根据以下损失函数迭代求解最优解,得到非同轴相机最终的内参、外参和畸变系数:,

其中,nm为标定板图像中特征点的数量,nc为相机的数量,n0为相机拍摄的标定板图像的数量,pj为特征点在世界坐标系中的坐标,el表示标定板图像在参考相机中的外参,rk表示第k个相机相对于参考相机的变换,ik表示在第k个相机下的变换,pjkl为第k个相机拍摄的第l个标定板图像中第j个特征点的图像坐标,vjkl取值为0或1,当第j个特征点在第k个相机拍摄的第l个标定板图像中可见时则为1,否则为0;函数 表示由图像坐标系到倾斜像平面坐标系的变换,其中包括利用内参将图像坐标系变换到倾斜像平面坐标系、利用畸变系数对倾斜像平面坐标进行反畸变;函数 表示由世界坐标系到倾斜像平面坐标系的变换,其中包括利用外参将世界坐标系转换到相机坐标系。

5.如权利要求4所述的标定方法,其特征在于,还包括:在每次进行迭代前,利用已计算得到的畸变系数对特征点的倾斜像平面坐标进行畸变校正。

6.如权利要求4所述的标定方法,其特征在于,根据公式 进行迭代求解最优解,其中qk表示第k次迭代时非同轴相机的内参、外参和畸变系数组成的向量,δ由公式确定,其中ε为当前次迭代时各相机拍摄的各个标定板图像中所有的特征点对应的与 的差组成的向量,J为雅克比矩阵,其由各相机的雅克比矩阵组成,且第i个相机的雅克比矩阵为,

其中 和 分别表示第i个相机拍摄的第j个标定板图像对应的内、外参的偏导数。

7.如权利要求1所述的标定方法,其特征在于,所述标定板图像为圆阵列标定板图像;

通过以下方式获取所述标定板图像中的特征点,以及特征点的图像坐标:对标定板图像进行图像处理以获得其中的圆形特征点;

对圆形特征点进行边缘提取以获得圆形特征点的边缘点,利用边缘点进行椭圆拟合得到圆形特征点的图像坐标,其中圆形特征点的图像坐标指圆形特征点的圆心的图像坐标;

确定圆形特征点的图像坐标与世界坐标的对应关系;

利用椭圆方程对圆形特征点的图像坐标进行误差校正,得到圆形特征点最终的图像坐标。

8.一种计算机可读存储介质,其特征在于,所述介质上存储有程序,所述程序能够被处理器执行以实现如权利要求1至7中任一项所述的标定方法。

说明书 :

一种非同轴相机的标定方法

技术领域

[0001] 本发明涉及相机标定技术领域,具体涉及一种非同轴相机的标定方法。

背景技术

[0002] 在图像测量过程以及机器视觉应用中,为了确定空间物体表面某点的三维几何位置,必须建立相机成像的几何模型,也就是确定空间物体表面某点的三维几何位置与其在
图像上的对应点的对应关系,这样在获得相机所拍摄图像的图像坐标后,根据相机成像的
几何模型就可以推知相应的三维空间坐标。几何模型中的参数就是相机的参数,而确定相
机的参数的过程称之为相机标定。相机参数的标定是非常关键的环节,标定结果的精度及
标定算法的稳定性直接影响相机工作产生结果的准确性。因此,做好相机标定是做好后续
工作的前提。相机标定常利用标定板来进行,标定板在机器视觉、图像测量、摄影测量、三维
重建等方面有广泛应用,通过相机拍摄带有固定间距图案阵列的标定板的图像,经过标定
算法的计算,可以得出相机成像的几何模型,从而得到高精度的测量和重建结果。目前,通
常采用带有棋盘格图案或实心圆阵列图案的标定板进行相机标定,其中棋盘格标定板通过
定位棋盘格角点来获取特征点,圆阵列标定板通过定位圆点中心来获取特征点,在确定特
征点的坐标以及与世界坐标的对应关系后即可以进行后续的标定工作。

发明内容

[0003] 本申请提供一种非同轴相机的标定方法,能够用于对非同轴相机进行标定。
[0004] 根据第一方面,一种实施例中提供一种非同轴相机的标定方法,所述非同轴相机包括像平面和镜头,所述像平面的法向量和所述镜头的光轴不同轴,所述标定方法包括:
[0005] 获取非同轴相机拍摄的标定板图像;
[0006] 获取所述标定板图像中的特征点,以及特征点的图像坐标和对应的世界坐标;
[0007] 根据特征点的图像坐标和对应的世界坐标计算单应性矩阵H;
[0008] 根据预设的由世界坐标到图像坐标的转换模型,对单应性矩阵进行分解计算得到非同轴相机的内参和外参,其中内参包括倾斜矩阵Htilt,倾斜矩阵Htilt表示由倾斜像平面坐
标系到非倾斜像平面坐标系的变换,其中倾斜像平面为垂直于所述镜头的光轴的像平面,
非倾斜像平面为所述非同轴相机的像平面;
[0009] 对非同轴相机的畸变系数和分解得到的内参、外参进行非线性优化,得到非同轴相机最终的内参、外参和畸变系数。
[0010] 一种实施例中,所述转换模型为:
[0011] ,
[0012] 其中,单应性矩阵 , (r,T T
c) 为特征点的图像坐标,(xw,yw,zw) 为特征点的世界坐标, 为由世界坐标系到相
机坐标系的变换矩阵,R为旋转矩阵,t为位移矩阵,zc为特征点在相机坐标系中的z坐标,
为由相机坐标系到倾斜像平面坐标系的变换矩阵,f为非同轴相机的焦距,
为由非倾斜像平面坐标系到图像坐标系的变换矩阵,sx和sy分别为非
同轴相机水平方向上和垂直方向上的像素尺寸,(cx ,cy)为主光轴点,
为内参部分, 为外参部分。
[0013] 一种实施例中,所述非同轴相机的镜头为非远心镜头或物方远心镜头,所述倾斜矩阵为
[0014] ,
[0015] 其中,d为所述倾斜像平面到所述非倾斜像平面的平移距离,q11、q12、q13、q21、q22、q23、q31、q32、q33为旋转矩阵Q中的元素,旋转矩阵Q表示所述倾斜像平面相对于原始坐标系的
旋转变换,且
[0016] ,
[0017] 其中ρ表示绕Z轴旋转的角度,τ表示绕X轴旋转的角度,所述原始坐标系的X轴为所述非倾斜像平面的水平方向,Y轴为所述非倾斜像平面的垂直方向,Z轴为所述非倾斜像平
面的垂直线。
[0018] 一种实施例中,所述对单应性矩阵进行分解计算得到非同轴相机的内参和外参包括:
[0019] 根据以下约束条件计算参数矩阵A
[0020] ,
[0021] 其中,
[0022] ,
[0023] ;
[0024] h1为单应性矩阵H的第一列向量,h2为单应性矩阵H的第二列向量,h3为单应性矩阵H的第三列向量,r1为旋转矩阵R的第一列向量,r2为旋转矩阵R的第二列向量;
[0025] 根据r1=A‑1h1,r2=A‑1h2,t=A‑1h3计算得到矩阵[r1 r2 t],根据计算得到倾斜矩阵Htilt。
[0026] 一种实施例中,所述非同轴相机的外参还包括等效旋转轴k和等效轴角θ,所述对单应性矩阵进行分解计算得到非同轴相机的内参和外参包括:
[0027] 根据以下约束条件计算参数矩阵A
[0028] ,
[0029] 其中,
[0030] ,
[0031] ;
[0032] 根据r1=A‑1h1,r2=A‑1h2,t=A‑1h3计算得到矩阵[r1 r2 t];
[0033] 其中h1为单应性矩阵H的第一列向量,h2为单应性矩阵H的第二列向量,h3为单应性矩阵H的第三列向量,r1为旋转矩阵R的第一列向量,r2为旋转矩阵R的第二列向量;
[0034] 根据计算得到的旋转矩阵R,获得等效旋转轴k和等效轴角θ,其中旋转矩阵R与等效旋转轴k和等效轴角θ的变换关系如下:
[0035] R(k,θ)=
[0036] ;
[0037] kx、ky、kz为等效旋转轴k的三个分量;
[0038] 根据 计算得到倾斜矩阵Htilt。
[0039] 一种实施例中,所述对非同轴相机的畸变系数和分解得到的内参、外参进行非线性优化,得到非同轴相机最终的内参、外参和畸变系数,包括:
[0040] 预先设置畸变系数的初始值,并将分解得到的内参、外参作为内参、外参的初始值,根据以下损失函数迭代求解最优解,得到非同轴相机最终的内参、外参和畸变系数:
[0041] ,
[0042] 其中,nm为标定板图像中特征点的数量,nc为相机的数量,n0为相机拍摄的标定板图像的数量,pj为特征点在世界坐标系中的坐标, 表示标定板图像在参考
相机中的外参, 表示第k个相机相对于参考相机的变换,ik表示在第k个相
机下的变换,pjkl为第k个相机拍摄的第l个标定板图像中第j个特征点的图像坐标,vjkl取值
为0或1,当第j个特征点在第k个相机拍摄的第l个标定板图像中可见时则为1,否则为0;函
数 表示由图像坐标系到倾斜像平面坐标系的变换,其中包括利用内参将图像
坐标系变换到倾斜像平面坐标系、利用畸变系数对倾斜像平面坐标进行反畸变;函数
表示由世界坐标系到倾斜像平面坐标系的变换,其中包括利用外参将世
界坐标系转换到相机坐标系。
[0043] 一种实施例中,所述非同轴相机的标定方法还包括:在每次进行迭代前,利用已计算得到的畸变系数对特征点的倾斜像平面坐标进行畸变校正。
[0044] 一种实施例中,根据公式 进行迭代求解最优解,其中qk表示第k次迭代时非同轴相机的内参、外参和畸变系数组成的向量,δ由公式 确定,其中ε为当
前次迭代时各相机拍摄的各个标定板图像中所有的特征点对应的 与
的差组成的向量,J为雅克比矩阵,其由各相机的雅克比矩阵组成,且
第i个相机的雅克比矩阵为
[0045] ,
[0046] 其中 和 分别表示第i个相机拍摄的第j个标定板图像对应的内、外参的偏导数。
[0047] 一种实施例中,所述标定板图像为圆阵列标定板图像;通过以下方式获取所述标定板图像中的特征点,以及特征点的图像坐标:
[0048] 对标定板图像进行图像处理以获得其中的圆形特征点;
[0049] 对圆形特征点进行边缘提取以获得圆形特征点的边缘点,利用边缘点进行椭圆拟合得到圆形特征点的图像坐标,其中圆形特征点的图像坐标指圆形特征点的圆心的图像坐
标;
[0050] 确定圆形特征点的图像坐标与世界坐标的对应关系;
[0051] 利用椭圆方程对圆形特征点的图像坐标进行误差校正,得到圆形特征点最终的图像坐标。
[0052] 根据第二方面,一种实施例中提供一种计算机可读存储介质,所述介质上存储有程序,所述程序能够被处理器执行以实现上述第一方面所述的非同轴相机的标定方法。
[0053] 依据上述实施例的非同轴相机的标定方法和计算机可读存储介质,针对非同轴相机,在建立由世界坐标到图像坐标的转换模型时,考虑了非同轴相机镜头的光轴与成像平
面的光轴不同轴的情况,引入了倾斜像平面和非倾斜像平面的概念,其中倾斜像平面为垂
直于非同轴相机的镜头的光轴的像平面,非倾斜像平面为非同轴相机的成像平面,增加了
倾斜矩阵Htilt这一参数,用于描述由倾斜像平面坐标系到非倾斜像平面坐标系的变换,将
倾斜矩阵Htilt视为相机内参的一部分,修正了现有方法中的数学模型,能够很好地描述非
同轴相机中坐标系转换的过程,提高了非同轴相机的标定精度,减少了应用非同轴相机的
过程中所产生的工作结果的误差。

附图说明

[0054] 图1为同轴相机的光学结构示意图;
[0055] 图2为非同轴相机的光学结构示意图;
[0056] 图3为针孔相机模型中各坐标系的变换示意图;
[0057] 图4为一种实施例中的非同轴相机的标定方法的流程图;
[0058] 图5为倾斜变换的示意图;
[0059] 图6为一种实施例的圆阵列标定板的特征点高精度坐标提取方法的流程图;
[0060] 图7为一种实施例中对标定板图像进行图像处理以获得其中的圆形特征点的流程图;
[0061] 图8为另一种实施例中对标定板图像进行图像处理以获得其中的圆形特征点的流程图;
[0062] 图9为带三角形标志物的圆阵列标定板的示意图;
[0063] 图10为有空心点的圆阵列标定板的示意图;
[0064] 图11为带三角形标志物的圆阵列标定板中,确定圆形特征点的图像坐标与世界坐标的对应关系的流程图;
[0065] 图12为有空心点的圆阵列标定板中,确定圆形特征点的图像坐标与世界坐标的对应关系的流程图;
[0066] 图13为线扫相机模型中各坐标系的变换示意图;
[0067] 图14为一种实施例中的线扫相机的标定方法的流程图。

具体实施方式

[0068] 下面通过具体实施方式结合附图对本发明作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了
使得本申请能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征
在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本申
请相关的一些操作并没有在说明书中显示或者描述,这是为了避免本申请的核心部分被过
多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们
根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。
[0069] 另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易
见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一
个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。
[0070] 本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本申请所说“连接”、“联接”,如无特别说明,均包括直接和
间接连接(联接)。本文中提及的“像平面”、“成像平面”均为同一概念。
[0071] 当前主要使用的相机中镜头的光轴和成像平面的光轴(也就是成像平面的法向量)是同轴的,但在机器视觉领域,因为制造或设计等的原因,有些相机的透镜与成像平面
不一定平行,也即相机镜头的光轴与成像平面的光轴不同轴,如果不考虑这一点而按传统
方法进行标定,会引入无法忽视的误差。
[0072] 当前相机标定的主要方法多根据张正友标定法进行设计和计算,主要包括以下几个计算步骤:
[0073] (1)根据标定板中特征点的世界坐标和图像坐标的对应关系,获得单应性矩阵;
[0074] (2)对单应性矩阵进行分解,计算得到内参或者外参的初始参数;
[0075] (3)采用LM(Levenberg‑Marquardt,列文伯格‑马夸尔特)算法对初始参数进行非线性优化,迭代计算内参、外参和畸变系数,获得最终的标定结果。
[0076] 然而张正友标定法中,主要考虑的是镜头的光轴和成像平面的光轴同轴的情况,并没有给出非同轴情况下的处理方式和数学模型的设计,因此提供一种能够用于非同轴相
机的标定方法是十分必要的。
[0077] 在无偏轴或者说同轴的情况下,相机的光学结构如图1所示,其中的像平面的光轴(即像平面的垂直轴或者说法向量)和镜头的光轴是重合的,而在存在偏轴或者说非同轴的
情况下,相机的光学结构如图2所示,其中的像平面的光轴和镜头的光轴并不重合,而是存
在一定的角度θ。
[0078] 在同轴的情况下,相机的成像过程中各坐标系的投影变换关系可以用针孔相机模型来表示,如图3所示。世界坐标系(WCS,World Coordinate System)中的点Pw通过镜头投
影中心投影到成像平面上的点P,为了得到点Pw投影到成像平面上的图像坐标qi,需要首先
将其转换到相机坐标系(CCS,Camera Coordinate System)中。相机坐标系的x轴和y轴分别
平行于图像的c轴和r轴,z轴垂直于图像所在的成像平面并且z轴的方向设置将使相机前的
所有点的z坐标为正数,其中图像的c轴方向为图像的水平方向,r轴方向为图像的垂直方
向。图3中xc轴、yc轴和zc轴分别表示相机坐标系的x轴、y轴和z轴。由世界坐标系到相机坐标
c T
系的变换可以用公式Pc=HwPw来表示,其中Pc=(xc,yc,zc) 为相机坐标系中的坐标,Pw=(xw,
T c
yw,zw) 为世界坐标系中的坐标,Hw可以用旋转矩阵R和平移矩阵t来表示。
[0079] 在将世界坐标系转换到相机坐标系后,需要将其转换到像平面坐标系上,这是一个由3D坐标转换到2D坐标的过程。对于非远心的镜头如CCTV(Closed Circuit 
Television,闭路电视)镜头而言,这一变换可以表示为:
[0080] ,
[0081] 其中f表示相机镜头的焦距,(u,v)T表示像平面坐标系中的坐标。
[0082] 对于远心镜头而言,这一变换可以表示为:
[0083] ,
[0084] 其中m表示镜头的放大倍率。
[0085] 在投影到成像平面后,镜头的畸变将导致坐标qc=(u,v)T发生变化,使得在成像平面上形成的是畸变的坐标 ,这个变化可以单独在成像平面上建立模型,也就
是说这里不需要三维信息。对于大多数镜头而言,它们的畸变都可以充分地近似为径向畸
变,通常有两种模型可以用来描述畸变,一种是除法模型,一种是多项式模型。除法模型如
下:
[0086] ,
[0087] 其中参数κ表示了径向畸变量级,如果κ为负值,即变为桶形畸变,如果κ为正值,即变为枕形畸变。可以通过下式对畸变进行校正:
[0088] 。
[0089] 多项式模型如下:
[0090] ,
[0091] 其中 ,k1、k2、k3、p1、p2为模型系数。根据以上模型,利用牛顿法可以求解得到u、v,迭代初始值选用未畸变的初始值本身。
[0092] 最后将像平面坐标系转换到图像坐标系(ICS,Image Coordinate System)中,用公式表示为:
[0093] ,                   (1)
[0094] 其中sx和sy分别为相机水平方向上和垂直方向上的像素尺寸,(cx,cy)为主光轴点,一般为图像的中心。
[0095] 因此上述的整个变换如果不考虑畸变可以表示为:
[0096] ,
[0097] 这便是相机标定所依据的数学模型。
[0098] 在非同轴相机中,由于像平面的光轴和镜头的光轴并不重合,而是存在偏角θ,因此在将相机坐标系转换到图像坐标系的过程中上述模型并不适用,为此,本申请引入倾斜
像平面和非倾斜像平面的概念,其中倾斜像平面为垂直于非同轴相机的镜头的光轴的像平
面,非倾斜像平面为非同轴相机的成像平面,在将相机坐标系转换到图像坐标系的过程中,
首先将相机坐标系转换到倾斜像平面坐标系,然后再将倾斜像平面坐标系转换到非倾斜像
平面坐标系,最后将非倾斜像平面坐标系转换到图像坐标系。倾斜像平面坐标系到非倾斜
像平面坐标系的变换用倾斜矩阵Htilt来表示,因此整个变换过程如果不考虑畸变可以表示
为:
[0099] 。
[0100] 在上述转换模型的基础上,本申请提供一种非同轴相机的标定方法,请参考图4,一种实施例中该方法包括步骤110 150,下面具体说明。
~
[0101] 步骤110:获取非同轴相机拍摄的标定板图像。
[0102] 标定板可以是棋盘格标定板、圆阵列标定板等。在进行标定时,可以根据经验将非同轴相机置于多个位姿(位姿也即非同轴相机相对于标定板的位置和角度),并在处于每个
位姿时对标定板进行拍摄,从而得到多个不同的标定板图像用于进行标定。
[0103] 步骤120:获取标定板图像中的特征点,以及特征点的图像坐标和对应的世界坐标。
[0104] 对于棋盘格标定板来说特征点是棋盘格的角点,对于圆阵列标定板来说特征点是圆阵列中圆形特征点的圆心,圆形特征点即圆阵列标定板上的圆形图案。
[0105] 可以根据标定板的参数信息来构建世界坐标系从而得到特征点对应的世界坐标,标定板的参数信息包括标定板的尺寸、棋盘格的尺寸、圆形特征点的半径、特征点之间的间
距等。特征点的图像坐标可以通过对标定板图像进行图像处理来获得,特征点图像坐标的
精准提取对于相机标定工作至关重要,有必要采取措施提高特征点定位的精度,本申请针
对圆阵列标定板提出了一种特征点高精度坐标提取方法,能够利用椭圆方程对特征点的图
像坐标进行误差校正,有效提高了特征点图像坐标的精度,从而提升了相机标定的精度,下
文中将对该方法进行详细阐述。
[0106] 步骤130:根据特征点的图像坐标和对应的世界坐标计算单应性矩阵H。利用多个特征点的图像坐标和对应的世界坐标可以计算单应性矩阵H。
[0107] 步骤140:根据预设的由世界坐标到图像坐标的转换模型,对单应性矩阵H进行分解计算得到非同轴相机的内参和外参,其中内参包括倾斜矩阵Htilt。
[0108] 可以理解,单应性矩阵,因此对单应性矩阵H
进行分解即可得到非同轴相机的内参和外参。将倾斜矩阵Htilt视为内参的一部分,那么非
同轴相机的内参部分为 ,外参部分为

[0109] 请参考图5,本申请引入三个参数来表示倾斜矩阵Htilt,即像面距离d、旋转角度τ和ρ,倾斜像平面可视为相对非倾斜像平面(即非同轴相机的像平面)平移距离d,绕原始坐
标系的X轴旋转角度τ,绕Z轴旋转角度ρ得到,其中原始坐标系的X轴为非倾斜像平面的水平
方向,Y轴为非倾斜像平面的垂直方向,Z轴为非倾斜像平面的垂直线。用旋转矩阵Q来表示
倾斜像平面相对于原始坐标系的旋转变换,那么由几何变换关系可以计算得到
[0110] Q= = ,
[0111] 那么根据几何变换关系,对于非远心镜头如CCTV镜头和物方远心镜头来说,倾斜矩阵Htilt为
[0112] ,
[0113] 对于像方远心镜头和双侧远心镜头来说,倾斜矩阵Htilt为
[0114] 。
[0115] 在对单应性矩阵H进行分解计算非同轴相机的内参和外参时,可以把
[0116] (2)
[0117] 看作一个整体,设 ,根据正交性,可以获得:
[0118] ,
[0119] 其中 ,h1为单应性矩阵H的第一列向量,h2为单应性矩阵H的第二列向量,h3为单应性矩阵H的第三列向量,r1为旋转矩阵R的第一列向量,r2为旋转矩
阵R的第二列向量。可以根据以下约束条件计算参数矩阵A:
[0120] ,
[0121] 然后根据r1=A‑1h1,r2=A‑1h2,t=A‑1h3计算得到矩阵[r1 r2 t],从而得到外参部分。内参部分,相机焦距f,像素尺寸sx和sy,主光轴点(cx,cy)可以事先知晓,再根据
可以计算得到倾斜矩阵Htilt。
[0122] 在一种实施例中,可以将旋转矩阵R用等效旋转轴k和等效轴角θ来表示,等效旋转轴k和等效轴角θ可视为外参的一部分。旋转矩阵R与等效旋转轴k和等效轴角θ的变换关系
如下:
[0123] ,
[0124] kx、ky、kz为等效旋转轴k的三个分量。
[0125] 在根据r1=A‑1h1,r2=A‑1h2,t=A‑1h3计算得到矩阵[r1 r2 t]后就得到了旋转矩阵R,根据上式可以计算得到等效旋转轴k和等效轴角θ。
[0126] 步骤150:对非同轴相机的畸变系数和分解得到的内参、外参进行非线性优化,得到非同轴相机最终的内参、外参和畸变系数。
[0127] 本步骤中,通过设置的损失函数对非同轴相机的畸变系数和分解得到的内参、外参进行非线性优化,迭代过程中内参、外参的初始值可以为上述分解得到的内参、外参,而
畸变系数的初始值可以根据经验预先设置。由于畸变发生在将点经镜头投影到倾斜像平面
的过程中,而畸变是一非线性变化,因此可以选择在倾斜像平面上建立损失函数,将整个变
换分成两部分:一部分是从图像坐标系到倾斜像平面坐标系的变换,一部分是从世界坐标
系到倾斜像平面的变换,两者的结果越接近说明标定结果越好,因此可以构建损失函数如
下:
[0128] ,(3)
[0129] 该损失函数可以适应多个相机的标定,其中一个相机被定为参考相机,其他相机可以变换到参考相机的坐标系下,统一进行计算。其中,nm为标定板图像中特征点的数量,nc
为相机的数量,n0为相机拍摄的标定板图像的数量,pj为特征点在世界坐标系中的坐标,
表示标定板图像在参考相机中的外参, 表示第k个相机
相对于参考相机的变换,ik表示该变换是在第k个相机下的变换,pjkl为第k个相机拍摄的第
l个标定板图像中第j个特征点的图像坐标,vjkl取值为0或1,当第j个特征点在第k个相机拍
摄的第l个标定板图像中可见时则为1,否则为0。函数 表示由图像坐标系到倾
斜像平面坐标系的变换,由上文可知这其中包括利用内参将图像坐标系变换到非倾斜像平
面坐标系、由非倾斜像平面坐标系变换到倾斜像平面坐标系、利用畸变系数对倾斜像平面
坐标进行反畸变的过程。函数 表示由世界坐标系到倾斜像平面坐标系的
变换,由上文可知这其中包括利用外参将世界坐标系转换到相机坐标系、将相机坐标系转
换到倾斜像平面坐标系的过程。
[0130] 可以利用LM算法进行迭代计算,迭代过程中参数的更新可以表示为,其中qk表示第k次迭代时非同轴相机的内参、外参和畸变系数组成的向量,
δ由公式 确定,其中ε为当前次迭代时各相机拍摄的各个标定板图像中所有的特征
点对应的 与 的差组成的向量,J为雅克比矩阵,其由各
相机的雅克比矩阵组成,且第i个相机的雅克比矩阵为
[0131] ,
[0132] 其中 和 分别表示第i个相机拍摄的第j个标定板图像对应的内、外参的偏导数。下面对偏导数的求解进行说明。
[0133] 对于外参部分,将旋转矩阵R用等效旋转轴和等效轴角来表示,设旋转轴为[rx,ry,T
rz] ,则等效轴角等于: ,因此可以得到单位的旋转向量为
,则旋转矩阵R可以表示为:
[0134] ,
[0135] 其中I为单位矩阵,Rz为反对称矩阵,且 。
[0136] 定义 ,可得
[0137] a0=‑sinθli,a1=[sinθ‑2(1‑cosθ)θ’]li,
[0138] a2=2(1‑cosθ)θ’,a3=[cosθ‑θ’sinθ] li,a4=θ’sinθ,
[0139] 当i=0,li= lx;i=1,li= ly;i=2,li= lz。
[0140] 定义向量:
[0141] i=[1,0,0,0,1,0,0,0,1],rt=[ ,lxly,lxlz,lxly,,lylz,lxlz,lylz, ],
[0142] dr0=[2lx,ly,lz,ly,0,0,lz,0,0],dr1=[0,lx,0,lx,2ly,lz,0,lz,0],dr2=[0,0,lx,0,0,ly,lx,ly,2lz],qx=[0,‑rz,ry,rz,0,‑rx,‑ ry,rx,0],
[0143] dq0=[0,0,0,0,0,‑1,0,1,0],dq1=[0,0,1,0,0,0,‑1,0,0],dq2=[0,‑1,0,1,0,0,0,0,0],
[0144] 那么第i个相机的外参的偏导数可以表示为:
[0145] ,
[0146] 其中 = a0i+a1rt+a2dri+a3qx+a4dqi(i=0,1,2)。
[0147] 对于内参部分,由公式(2)可知,可以分为三个部分进行求解。第一部分是 ,由于公式(3)中涉及的是图像坐标系到非倾斜像平面坐标系的变换,因此是对 进行求导,
可得
[0148] ,
[0149] 根据公式(1)可知,在不考虑畸变的情况下
[0150] u=(c‑cx)Sx,v=(r‑cy)Sy,
[0151] 因此求偏导数可得:
[0152] 。
[0153] 第二部分是倾斜矩阵Htilt,同样的这里需要对 进行求导,可以通过对旋转矩阵Q求偏导来得到Htilt的偏导。对于旋转矩阵Q,如果直接根据τ和ρ进行计算,由于旋转角二
义性的原因,求得的τ和ρ不是唯一解,而是会出现两个符合条件的解。为了消除二义性,这
里增加约束条件:
[0154] ,2 2 2 2
[0155] 令t2=tan ( )=S +C ,c2=2cos ( )= = 。则旋转矩阵Q中各个参数可表达为:
[0156]
[0157] 因此可得
[0158] 。
[0159] 根据公式
[0160]
[0161]
[0162] 可求出t2、c2关于S、C的偏导,代入旋转矩阵Q中即可以求得旋转矩阵Q关于S、C的偏导,从而可以求得倾斜矩阵Htilt的偏导 ,根据逆矩阵的微分矩阵公式
,可以求得 的偏导。
[0163] 第三部分是 ,同样的这里需要对 进行求导。对于CCTV镜头而言, 部分的变换可以表示为:
[0164] ,
[0165] 那么可得: 。
[0166] 对于远心镜头而言, 部分的变换可以表示为:
[0167] ,
[0168] 那么可得: 。
[0169] 对于畸变系数部分,对于除法模型,则
[0170] 。
[0171] 对于多项式模型,则 ,因此可得:
[0172]
[0173] 。
[0174] 将求导的变量写成向量表示 ,则上式可以表示为:
[0175] 。
[0176] 综合上述各部分,根据链式法则可以求得整个内参部分的偏导数。
[0177] 由于在步骤140中计算内参和外参时没有考虑畸变,因此可以在非线性优化的过程中加入畸变校正,一种实施例中,在非线性优化的过程中,在每次进行迭代前,都利用已
计算得到的畸变系数对特征点的倾斜像平面坐标进行畸变校正。具体的,对于除法模型来
说,由于可以直接求可逆解,因此根据下式直接计算即可:
[0178] 。
[0179] 对于多项式模型,假设畸变模型可以表示为 ,其中 为畸变的倾斜像平面坐标, 为相机坐标系中的坐标,向量fd由fu和fv两部分组成,且
[0180] 。
[0181] 因此校正后的坐标可以表示为 ,为了计算fd可以对其进行泰勒展开,仅考虑线性部分:
[0182] ,
[0183] 因此可得
[0184] ,
[0185] 因此对于多项式模型来说畸变校正的过程如下:T
[0186] (1)将图像坐标(r,c) 变换到倾斜像平面坐标 。
[0187] (2)迭代计算消除畸变:
[0188] 初始化 ,计算 和 ,然后根据下式更新x、y,进行迭代:
[0189]
[0190] 。
[0191] 依据上述实施例的非同轴相机的标定方法,针对非同轴相机,在建立由世界坐标到图像坐标的转换模型时,考虑了非同轴相机镜头的光轴与成像平面的光轴不同轴的情
况,引入了倾斜像平面和非倾斜像平面的概念,其中倾斜像平面为垂直于非同轴相机的镜
头的光轴的像平面,非倾斜像平面为非同轴相机的成像平面,增加了倾斜矩阵Htilt这一参
数,用于描述由倾斜像平面坐标系到非倾斜像平面坐标系的变换,将倾斜矩阵Htilt视为相
机内参的一部分,修正了现有方法中的数学模型;并且引入了绕原始坐标系的X轴的旋转角
度τ,绕Z轴的旋转角度ρ来表示倾斜像平面和非倾斜像平面之间的变换,能够很好地描述非
同轴相机中坐标系转换的过程;在一种实施例中还在非线性优化的过程中对倾斜像平面坐
标进行畸变校正。综上所述,本申请提供的非同轴相机的标定方法,提高了非同轴相机的标
定精度,减少了应用非同轴相机的过程中所产生的工作结果的误差。
[0192] 下面介绍步骤120中提及的用于圆阵列标定板的特征点高精度坐标提取方法,请参考图6,一种实施例中,该方法包括步骤210 250。
~
[0193] 步骤210:获取标定板图像。需要说明的是,所获取的标定板图像可以是同轴相机拍摄的,也可以是非同轴相机拍摄的。
[0194] 步骤220:对标定板图像进行图像处理以获得其中的圆形特征点。图像处理包括二值化、滤波、特征筛选等。请参考图7,一种实施例中获得圆形特征点的流程包括步骤310
~
340,下面具体说明。
[0195] 步骤310:对标定板图像进行边缘提取以获取标定板边界框,从而得到标定板在标定板图像中的位置。
[0196] 步骤320:对标定板区域构建图像金字塔,获得各层的金字塔图像,其中标定板区域为标定板图像中位于标定板边界框内的区域。在图像金字塔中,上层的图像分辨率较小,
下层的图像分辨率较大。图像金字塔具体的层数可根据经验设定。
[0197] 步骤330:对当前层金字塔图像进行二值化处理以搜索圆形特征点。当前层金字塔图像的初始值为最顶层的金字塔图像。
[0198] 一种实施例中,二值化处理可以是按照一个灰度值步长迭代进行的过程。具体的,在预设阈值区间内,从小到大间隔预设间隔值来选取灰度阈值,每选取一次灰度阈值,则用
该灰度阈值对当前层金字塔图像进行阈值分割,得到圆形区域,当圆形区域的个数与预设
个数相等时,则判定在当前层金字塔图像中搜索到了符合预设条件的圆形特征点,停止选
取下一个灰度阈值,否则继续选取下一个灰度阈值对当前层金字塔图像进行阈值分割,直
至遍历预设阈值区间为止。例如预设阈值区间50‑90,如果步长为10,即预设间隔值为10,那
么则依次选取50、60、70、80、90作为灰度阈值对当前层金字塔图像进行阈值分割,直到圆形
区域的个数与预设个数相等为止。预设阈值区间可以根据经验设置。在阈值分割得到圆形
区域后,还可以进行一些形态学处理和面积筛选,以得到更准确的结果。
[0199] 步骤340:判断是否在当前层金字塔图像搜索到符合预设条件的圆形特征点。若是则结束流程,否则将下一层金字塔图像作为当前层金字塔图像,返回步骤330。
[0200] 请参考图8,另一种实施例中获得圆形特征点的流程包括步骤410 430,下面具体~
说明。
[0201] 步骤410:对标定板图像构建图像金字塔,获得各层的金字塔图像。
[0202] 步骤420:对当前层金字塔图像进行圆形特征点搜索。当前层金字塔图像的初始值为最顶层的金字塔图像。
[0203] 圆形特征点搜索可以按照以下方式进行:对当前层金字塔图像进行二值化处理以得到圆形区域,对圆形区域的面积进行统计分析处理以得到出现频率最大的面积,根据出
现频率最大的面积计算半径,乘以当前层金字塔图像对应的倍率得到圆形特征点的估计半
径,依据估计半径在标定板图像中搜索圆形特征点。
[0204] 圆形特征点的估计半径可以通过直方图统计来获得。在对当前层金字塔图像进行二值化处理得到圆形区域后,先根据预设的圆度范围和/或面积范围对圆形区域进行筛选,
对筛选后的圆形区域进行面积的直方图统计,建立面积和出现频率的函数映射关系,获得
出现频率最大的面积;然后根据出现频率最大的面积计算半径,乘以当前层金字塔图像对
应的倍率得到圆形特征点的估计半径;最后根据估计半径对标定板图像进行滤波然后进行
阈值分割,得到特征点估计区域,剔除面积大于预设面积阈值的特征点估计区域。计算特征
点估计区域的个数,当特征点估计区域的个数与预设个数相等时,则判定在当前层金字塔
图像中搜索到了符合预设条件的圆形特征点。
[0205] 步骤430:判断是否在当前层金字塔图像搜索到符合预设条件的圆形特征点。若是则结束流程,否则将下一层金字塔图像作为当前层金字塔图像,返回步骤420。
[0206] 上述实施例中的获取标定板图像中圆形特征点的方法,通过构建图像金字塔来搜索圆形特征点,从图像金字塔的顶层开始向下层逐层进行搜索,当在某一层搜索到符合预
设条件的圆形特征点时则可以停止,采用的是一种从粗到精的搜索策略,并不是直接采用
原图进行处理。由于图像金字塔上层的图像分辨率较小,图像较小,因此这种方式有利于提
高圆形特征点的搜索效率。在有的实施例中,二值化处理是按照一个灰度值步长迭代进行
的过程,并不是采用单一灰度阈值进行分割,有利于更准确地提取出圆形特征点。
[0207] 下面继续介绍步骤230 250。~
[0208] 步骤230:对圆形特征点进行边缘提取以获得圆形特征点的边缘点,利用边缘点进行椭圆拟合得到圆形特征点的图像坐标,其中圆形特征点的图像坐标指圆形特征点的圆心
的图像坐标。
[0209] 步骤240:确定圆形特征点的图像坐标与世界坐标的对应关系。
[0210] 常用的标定板往往不带基准,工作人员需要手动选定基准来将特征点的图像坐标与世界坐标进行比对,确定它们的对应关系,比较繁琐。本申请提供两种带基准的圆阵列标
定板,并给出两者确定圆形特征点的图像坐标与世界坐标的对应关系的方法。其中一种为
带三角形标志物的圆阵列标定板,如图9所示,该标定板的一角设有一三角形标志物,该三
角形标志物呈等腰直角三角形,且其直角顶点为圆阵列标定板的其中一个顶点,另两个顶
点分别在圆阵列标定板的与该直角顶点相邻的两条边上。另外一种为有空心点的圆阵列标
定板,如图10所示,空心点聚合成若干簇,如图10中有5个簇。
[0211] 请参考图11,带三角形标志物的圆阵列标定板中,确定圆形特征点的图像坐标与世界坐标的对应关系包括以下步骤:
[0212] 步骤510:在标定板图像中检测三角形标志物,确定圆形特征点与三角形标志物的相对位置关系。可以通过检测三角形的斜边来检测三角形标志物。
[0213] 步骤520:以三角形标志物为基准建立基准坐标系,根据圆阵列标定板的参数信息确定圆形特征点的图像坐标与世界坐标之间的一一对应关系。在步骤510的基础上,建立基
准坐标系后可得到圆形特征点在基准坐标系下的位置,将基准坐标与世界坐标对应上,利
用圆阵列标定板的参数信息可以确定圆形特征点的图像坐标与世界坐标之间的一一对应
关系。
[0214] 请参考图12,有空心点的圆阵列标定板中,确定圆形特征点的图像坐标与世界坐标的对应关系包括以下步骤:
[0215] 步骤610:从所获得的圆形特征点中提取出空心点,利用聚类算法将空心点分为不同的簇。
[0216] 步骤620:计算得到簇中离所有其他空心点距离之和最短的空心点,将其作为簇的中心点,将非空心点划归到与其距离最近的簇中。
[0217] 步骤630:根据簇中空心点的排列方式确定簇在圆阵列标定板中的位置。例如图10中,可以看到5个簇中的空心点的排列方式并不相同,可以据此判断簇在圆阵列标定板中的
位置。
[0218] 步骤640:以其中一个簇作为基准簇,确定其他簇与基准簇的相对位置关系,这样一来也就可以确定其他簇中的圆形特征点与基准簇的相对位置关系。
[0219] 步骤650:以基准簇的中心点为原点建立基准坐标系,根据圆阵列标定板的参数信息确定圆形特征点的图像坐标与世界坐标之间的一一对应关系。在步骤640的基础上,建立
基准坐标系后可得到圆形特征点在基准坐标系下的位置,将基准坐标与世界坐标对应上,
利用圆阵列标定板的参数信息可以确定圆形特征点的图像坐标与世界坐标之间的一一对
应关系。
[0220] 一种实施例中,在得到圆形特征点的图像坐标与世界坐标的对应关系后,还可以进行亚像素边缘提取。具体的,首先根据簇中空心点的图像坐标与世界坐标之间的一一对
应关系计算单应性矩阵,利用该单应性矩阵将其他圆形标志点的世界坐标映射到图像上得
到映射点;然后获取包含映射点的圆形特征点,对其进行亚像素边缘提取和椭圆拟合,得到
圆形特征点新的边缘点和图像坐标。利用亚像素边缘提取得到的边缘点和图像坐标,其精
度得到了进一步提高。
[0221] 步骤250:利用椭圆方程对圆形特征点的图像坐标进行误差校正,得到圆形特征点最终的图像坐标。
[0222] 对于一个半径为r,中心为 的圆其方程可以表示为: ,其中
[0223] 。
[0224] 称F为椭圆方程矩阵。圆的中心可以表示为:  。世界坐标系到图像坐标系的变换可以表示为:Pi=HtPw,因此变换后的圆可以表示为:
,变换后的中心可以表示为: 。
[0225] 上述世界坐标系到图像坐标系的变换表示是没有考虑畸变的,如果考虑畸变,需要建立畸变和非畸变之间的关系。本申请一种实施例中利用上述椭圆方程矩阵,根据观测
值和期望值差距最小的思路,建立目标函数,求解非畸变的图像坐标,实现对圆形特征点的
图像坐标的误差校正。
[0226] 在进行误差校正前的椭圆是一个畸变的椭圆,可以表示为: ,其中 为误差校正前圆形特征点的图像坐标, 为畸变的椭圆方程矩阵。如果不考虑畸变,则是一个
标准的二次曲线,椭圆方程矩阵可以表示为D,曲线的方程为 ,其中p为误差校正
后圆形特征点的图像坐标。D到 的映射可以用变换矩阵HD来表示:
[0227] 。
[0228] 对椭圆方程矩阵进行对角化可得: ,其中
[0229] ,
[0230] 其中λ1、λ2和λ3为椭圆方程矩阵D的特征值,U为由相应的特征向量构成的矩阵,和 为椭圆方程矩阵 的特征值, 为由相应的特征向量构成的矩阵。
[0231] 令 ,则 。
[0232] 获得HD后,可根据以下目标函数求解误差校正后圆形特征点的图像坐标pi:
[0233] ,
[0234] 其中下标i代表第i个点。
[0235] 另一种实施例中,可以通过椭圆拟合的方式求取椭圆方程,得到椭圆中心点的图像坐标,与未经拟合的椭圆中心点的图像坐标比较,用两者的差直接对圆形特征点的图像
坐标进行误差校正。椭圆拟合可以根据下面的目标函数来进行:
[0236]
[0237] ,
[0238] 其中a、b、c、d、e、f为椭圆方程中的系数,(xi,yi)为圆形特征点的边缘点的图像坐标,wi为权重,n为边缘点的个数。
[0239] 然后根据以下公式计算椭圆中心点的图像坐标 :
[0240] ,
[0241] 根据以下公式计算未拟合的椭圆中心点的图像坐标 :
[0242] ,
[0243] 其中F为圆形特征点所在区域的点的集合,即整个圆中的所有点,pi为该集合中的点,I(pi)为点pi的灰度值,(xi,yi)为点pi的图像坐标,下标i代表第i个点。
[0244] 计算图像坐标 和 之间的偏差,对圆形特征点的图像坐标进行补偿,完成误差校正。
[0245] 依据上述实施例的圆阵列标定板的特征点高精度坐标提取方法,对标定板图像进行图像处理获得其中的圆形特征点,然后对圆形特征点进行边缘提取和椭圆拟合获得圆形
特征点的图像坐标,在获得图像坐标后利用椭圆方程对其进行误差校正,误差校正可以通
过椭圆拟合、误差补偿等来实现。在获取圆形特征点的过程中,通过构建图像金字塔来搜索
圆形特征点,从图像金字塔的顶层开始向下层逐层进行搜索,当在某一层搜索到符合预设
条件的圆形特征点时则可以停止,采用的是一种从粗到精的搜索策略,并不是直接采用原
图进行处理。由于图像金字塔上层的图像分辨率较小,图像较小,因此这种方式有利于提高
圆形特征点的搜索效率。在有的实施例中,二值化处理是按照一个灰度值步长迭代进行的
过程,并不是采用单一灰度阈值进行分割,有利于更准确地提取出圆形特征点。综上所述,
本申请提供的圆阵列标定板的特征点高精度坐标提取方法,有效地提高了特征点坐标提取
的精度和效率,从而提升了相机标定的精度。
[0246] 对于线扫相机来说,其标定工作同样重要,本申请还提供一种线扫相机的标定方法。在本申请的线扫相机的标定方法中,对线扫相机进行建模,提供一种线扫相机模型,对
该模型中的参数进行求解,完成对线扫相机的标定,下面先对线扫相机模型进行介绍。
[0247] 请参考图13,线扫相机模型表征了线扫相机中世界坐标到图像坐标的坐标变换关系。对于线扫相机来说,由于其感光单元只有一行,因此需要被拍摄物体进行运动来完成完
整图像的拍摄,在物体运动过程中,线扫相机对物体进行逐行的连续扫描,把每一行图像拼
T
接起来即可得到完整的图像。物体的运动向量可以表示为V=(Vx,Vy,Vz) ,其中,Vx、Vy、Vz分
别表示物体在x、y、z方向上的运动速度。线扫相机中的坐标变换关系可以分为两个部分:一
个是世界坐标系、相机坐标系和像平面坐标系之间的变换关系,一个是像平面坐标系和图
像坐标系之间的变换关系。由于物体一直在运动,因此世界坐标可用运动向量来表示。
[0248] 对于世界坐标系、相机坐标系和像平面坐标系之间的变换关系,用第一变换方程表示,对于非远心镜头如CCTV镜头为:
[0249] ,
[0250] 其中t表示时间,(xc,yc,zc)T表示相机坐标系中的坐标,λ为预设的系数,f表示线扫相机的焦距, 表示畸变的像平面坐标 的横坐标, ,cy为主光轴
点(cx,cy)的纵坐标,sy为y方向上的扩展长度,表征物体运动多长的距离时线扫相机会对其
进行一次扫描, 表示利用畸变模型对 、pv进行计算得到的非
畸变的像平面坐标。
[0251] 对于远心镜头为:
[0252] ,
[0253] 其中m为镜头的放大倍率。
[0254] 像平面坐标系和图像坐标系之间的变换关系可以用第二变换方程表示,具体为:
[0255] 。
[0256] 其中sx为线扫相机x方向上的像素尺寸,(c,r)T表示图像坐标。
[0257] 在建立世界坐标系、相机坐标系和像平面坐标系之间的变换关系时,并未考虑镜头的畸变,使用的是非畸变的像平面坐标,然而实际获得的像平面坐标必然是有畸变的坐
标 ,因此这里需要利用畸变模型对 、pv进行计算以获得非畸变的坐标,这里表示
为 。畸变模型可以是除法模型或多项式模型。
[0258] 上述第一变换方程、第二变换方程和畸变模型即构成了本申请的线扫相机模型。下面对线扫相机的标定方法进行介绍,请参考图14,一种实施例中线扫相机的标定方法包
括步骤710 730,下面具体说明。
~
[0259] 步骤710:获取标定板图像。如前文所述,标定板图像需要线扫相机对移动的标定板进行连续扫描得到。标定板可以是棋盘格标定板、圆阵列标定板等。
[0260] 步骤720:获取标定板图像中的特征点及其图像坐标。对于棋盘格标定板来说特征点是棋盘格的角点,对于圆阵列标定板来说特征点是圆阵列中圆形特征点的圆心,圆形特
征点即圆阵列标定板上的圆形图案。特征点的图像坐标可以通过对标定板图像进行图像处
T
理来获得,第i个特征点的图像坐标可以表示为(ci,ri) 。
[0261] 步骤730:预先设置线扫相机模型中的参数的初始值,根据预设的损失函数进行非线性优化,得到线扫相机模型的参数,从而完成线扫相机的标定。
[0262] 需要求解的线扫相机模型的参数包括焦距f、主光轴点(cx,cy)、线扫相机x方向上T
的像素尺寸sx、y方向上的扩展长度sy、运动向量V=(Vx,Vy,Vz)以及畸变模型中的畸变系数
等。对于这些参数可以根据经验预先设置一个初始值,对于运动向量可以通过初始化参数
搜索来搜索合适的初始值。首先接收用户输入的预设的Vx、Vy、Vz的值,然后在包含该值的一
定范围空间内进行搜索,这里可以是在一个3×3×3的空间内进行搜索,选择误差最小的值
作为Vx、Vy、Vz的初始值,这里误差最小是指第一变换方程中等式两边的值最接近。
[0263] 损失函数在图像坐标系进行建立,依据特征点的图像坐标来设置,定义为:
[0264] ,
[0265] 其中 表示畸变后的图像坐标,qi表示非畸变的图像坐标,n表示特征点的总数,下标i表示第i个特征点。
[0266] 步骤720中获得的图像坐标即为畸变的图像坐标,非畸变的图像坐标可以根据畸变模型和第二变换方程计算得到,可表示为 ,代入后可得损失函数为
[0267] 。
[0268] 对于非畸变的像平面坐标,如果采用除法模型,可以表示为:
[0269] ,
[0270] 其中κ为畸变系数。
[0271] 如果采用多项式模型,假设畸变模型可以表示为 ,其中 为畸变的倾斜像平面坐标,pc为相机坐标系中的坐标,向量fd由 和 两部分组成,且
[0272] ,
[0273] 其中 ,k1、k2、k3、p1、p2为畸变系数。
[0274] 因此非畸变的坐标可以表示为 ,为了计算fd可以对其进行泰勒展开,仅考虑线性部分:
[0275] ,
[0276] 因此可得:
[0277] ,
[0278] 。
[0279] 对于非远心镜头,由第一变换方程可得 ,将其代入第一变换方程中可得:
[0280] ,
[0281] 根据上式可将 用 进行表示,代入到公式(5)中,并联立公式(4)可得 的表达式,该表达式是关于待求参数的表达式,因此将其代入损失函数中,对
损失函数进行求解可以得到线扫相机模型的参数。
[0282] 同理,对于远心镜头可得:
[0283] ,
[0284] 根据上式可将 用 进行表示,同样的将其代入第一变换方程中可得 的表达式,该表达式是关于待求参数的表达式,因此将其代入损失函数中,对损
失函数进行求解可以得到线扫相机模型的参数。
[0285] 求解的过程可以采用LM算法进行迭代计算,迭代过程中参数的更新可以表示为,其中qk表示第k次迭代时线扫相机模型的参数组成的向量,δ由公式
确定,其中J为雅克比矩阵,ε为由所有特征点对应的 的
值组成的向量,δ为由线扫相机模型的参数组成的向量。当线扫相机的镜头为非远心镜头且
畸变模型为多项式模型时,
[0286] ;
[0287] 当线扫相机的镜头为非远心镜头且畸变模型为除法模型时,
[0288] ;
[0289] 当线扫相机的镜头为远心镜头且畸变模型为多项式模型时,
[0290] ;
[0291] 当线扫相机的镜头为远心镜头且畸变模型为除法模型时,
[0292] 。
[0293] 雅克比矩阵J由各待求参数的偏导数组成。对于多项式模型,将畸变系数记为一个向量 ,则偏导数
[0294] 。
[0295] 依据上述实施例的线扫相机的标定方法,首先预先建立线扫相机模型,用于表征线扫相机中世界坐标到图像坐标的坐标变换关系,并设置线扫相机模型的参数的初始值,
在进行标定时,由线扫相机对移动的标定板进行连续扫描得到标定板图像,获取该标定板
图像,然后获取标定板图像中的特征点及其图像坐标,根据预设的损失函数对线扫相机模
型的参数进行非线性优化,其中损失函数依据特征点的图像坐标设置,最终得到线扫相机
模型的参数,从而完成线扫相机的标定,该方法能够有效地对线扫相机进行标定,获得线扫
相机模型较为精确的参数。
[0296] 本文参照了各种示范实施例进行说明。然而,本领域的技术人员将认识到,在不脱离本文范围的情况下,可以对示范性实施例做出改变和修正。例如,各种操作步骤以及用于
执行操作步骤的组件,可以根据特定的应用或考虑与系统的操作相关联的任何数量的成本
函数以不同的方式实现(例如一个或多个步骤可以被删除、修改或结合到其他步骤中)。
[0297] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。另外,如本领域技术人员所理解的,本文的原理可以反映在计算机可读存储介质上的计
算机程序产品中,该可读存储介质预装有计算机可读程序代码。任何有形的、非暂时性的计
算机可读存储介质皆可被使用,包括磁存储设备(硬盘、软盘等)、光学存储设备(CD至ROM、
DVD、Blu Ray盘等)、闪存和/或诸如此类。这些计算机程序指令可被加载到通用计算机、专
用计算机或其他可编程数据处理设备上以形成机器,使得这些在计算机上或其他可编程数
据处理装置上执行的指令可以生成实现指定的功能的装置。这些计算机程序指令也可以存
储在计算机可读存储器中,该计算机可读存储器可以指示计算机或其他可编程数据处理设
备以特定的方式运行,这样存储在计算机可读存储器中的指令就可以形成一件制造品,包
括实现指定功能的实现装置。计算机程序指令也可以加载到计算机或其他可编程数据处理
设备上,从而在计算机或其他可编程设备上执行一系列操作步骤以产生一个计算机实现的
进程,使得在计算机或其他可编程设备上执行的指令可以提供用于实现指定功能的步骤。
[0298] 具有本领域技术的人将认识到,在不脱离本发明的基本原理的情况下,可以对上述实施例的细节进行许多改变。因此,本发明的范围应仅由权利要求确定。