激光与光电子学进展, 2020, 57 (2): 021504, 网络出版: 2020-01-03   

单像空间后方交会算法的研究 下载: 1047次

A New Algorithm for Single Image Space Based Resection
作者单位
郑州大学物理工程学院, 河南 郑州 450001
摘要
采用单像空间后方交会算法求解相机的外参数是摄影测量及机器视觉等领域的基本问题。在介绍前人研究成果的基础上,提出一种新的单像空间后方交会算法,即利用3个控制点建立临时坐标系,根据这些控制点在临时坐标系下的部分坐标分量为0的特点,将后方交会求解转换为三元二次方程组的求解,3个控制点的图像坐标数据可为非线性方程组的迭代求解提供初始值,使求解过程更加可靠。利用某商用工业摄影测量系统对实验空间中布设的控制场拍摄了120幅图像并计算其外参数,采用后方交会算法和角锥体算法分别对所取特征点计算外参数,结果表明:后方交会算法求解的参数正确,且迭代求解收敛性好,适用于任意旋转角的相机外参数求解。
Abstract
Solving the camera external parameters with single image space resection algorithm is a fundamental problem in the fields of photogrammetry and machine vision. Based on the previous work, a new robust algorithm is presented in this paper. A temporary coordinate system is created by three control points. Due to part of the coordinate component of these control points in the temporary coordinate system being zero, the resection solving is transformed to the solution of ternary quadratic equations, the initialize solutions for the nonlinear equations can be acquired by the image coordinates of the three points, which makes the solving process more reliable. In the experiment, 120 images of the control field are taken by the commercial industrial photogrammetry system and the external parameters are calculated with the proposed resection algorithm and the pyramid algorithm. Experimental results illustrate that the parameters calculated by the proposed resection algorithm are correct, and the convergence is good, showing that the proposed algorithm is suitable for solving external parameters of cameras with arbitrary rotation angles.

1 引言

单像空间后方交会算法,是一种在三维空间中,根据控制点与像点之间的对应关系获得相机外参数的求解方法[1],主要有角锥体法和共线方程法两种。共线方程法可根据其变换过程中旋转变换的表达,分为基于旋转矩阵的共线方程法和基于四元数描述的共线方程法。官云兰等[2]通过改进角锥体法计算获得相机外参数,该算法需要利用多个控制点才能获得更高精度;刘建辉[3]通过实验证明基于几何代数的后方交会算法不依赖于初值,但是计算精度较低;黄旭等[4]利用单应性模型的约束条件,在多个控制点共面时可将共线方程转换为线性方程求解,无需初值就可以获得相机外参数的直接解;龚辉等[5]采用绝对定向与正交投影2种变换代替共线方程,利用非线性方程的直接迭代实现单像空间后方交会求解;贲进等[6]基于Pope-Hinsken算法,采用四元数构造旋转矩阵,计算结果一定程度上依赖于初值;江刚武等[7]直接迭代求解旋转矩阵,王勇等[8]采用四元数描述像片位置和姿态,这2种方法均避免了旋转矩阵与欧拉角相互转换引起的误差;江刚武等[9]提出了一种基于四元数的不依赖于初值的空间后方交会算法,实验结果表明该算法对外参数初值无特殊要求;徐振亮等[10]采用加权直接线性方法估计物像间的投影矩阵,经过转换计算后得到摄影测量中的外参数,计算过程较为复杂;吕继兵等[11-12]利用四元数推导了空间三维坐标转换方法,该方法无需线性化,计算过程较简单;洪洋等[13]提出了基于矩形几何特性的位姿分步估计方法;李鑫等[14]利用直线段之间的距离,通过求解三元三次方程组获得旋转矩阵的全局最优解;宋佳慧等[15]通过合作靶球与测量仪器靶球之间的相互替换,实现视觉坐标系和外部标准坐标系下公共点的直接获取,进而实现视觉传感器的外参标定。

本文通过研究提出了一种新的后方交会算法,此算法是利用3个控制点建立临时坐标系,根据这些控制点在临时坐标系下的部分坐标分量为0的特点,将后方交会求解转换为三元二次方程组的求解,3个控制点的图像坐标数据可为方程组的迭代求解提供初始值。

2 算法模型

2.1 共线条件方程

图1给出了三点后方交会原理示意图,MNL为空间任意3个控制点,mnl为其对应的像点,其中OC-XCYCZC为相机坐标系,OW-XWYWZW为世界坐标系。空间某控制点在2个坐标系中三维坐标的转换关系为

XCYCZC=a1b1c1txa2b2c2tya3b3c3tzXWYWZW1,(1)

式中: txtytz为平移向量; a1b1c1a2b2c2a3b3c3为旋转矩阵。通过(1)式即可求解出旋转矩阵参数。

图 1. 三点后方交会原理示意图

Fig. 1. Schematic of three-point resection principle

下载图片 查看所有图片

用(x,y)表示空间某控制点经过畸变纠正后的图像坐标,f为相机焦距,用(x',y')= xf,yf表示像点的归一化图像坐标,(XC,YC,ZC)为相机坐标。依据共线条件可知

λxyf=λx'y'1=XCYCZC,(2)

式中:λ为齐次因子。将(1)式代入(2)式中,可得:

λx'y'1=a1b1c1txa2b2c2tya3b3c3tzXWYWZW1(3)

2.2 求解算法

在控制点中任取3个不共线的控制点(MNL),以M点为原点, MN---向量为X轴,上述3点形成空间平面的法向量为Z轴,按照右手规则建立临时坐标系O-XYZ,如图1虚线部分所示,则该坐标系与世界坐标系间的转换参数可以依据3个控制点的三维坐标计算出来,计算过程此处不再赘述。

若以坐标系O-XYZ为世界坐标系,(3)式仍然成立,在坐标系O-XYZ中,MNL 3点的三维坐标为

M=000N=XN00L=XLYL0,(4)

式中:XNXLN点、L点在O-XYZ坐标系中的X轴坐标;YLL点在O-XYZ坐标系中的Y轴坐标。在坐标系O-XYZ下,MNL点的Z轴坐标均为0,消去齐次因子后,(3)式可表示为

-X0x'·X-Y0x'·Y-10x'0-Xy'·X0-Yy'·Y0-1y'·(a1a2a3b1b2b3txtytz)T=0(5)

将像点m的归一化图像坐标(x'm,y'm,1)以及空间点MO-XYZ坐标系下的三维坐标(0,0,0)代入(5)式可得:

-10x'm0-1y'm·txtytz=0(6)

将像点n的归一化图像坐标(x'n,y'n,1)以及空间点NO-XYZ坐标系下的三维坐标(XN,0,0)代入(5)式可得:

-XN0x'n·XN-YN0x'n·YN-10x'n0-XNy'n·XN0-YNy'n·YN0-1y'n·a1a2a3b1b2b3txtytzT=0(7)

将(6)式和(7)式合并可得

a1a2=k1e1k2e2·a3tz,(8)

式中:k1=x'n;e1= x'n-x'mXN;k2=y'n;e2= y'n-y'mXN

将像点l的归一化图像坐标(x'l,y'l,1)以及空间点L在坐标系O-XYZ下的三维坐标(XL,YL,0)代入式(5)可得

-XL0x'l·XL-YL0x'l·YL-10x'l0-XLy'l·XL0-YLy'l·YL0-1y'l·a1a2a3b1b2b3txtytzT=0(9)

将(8)式和(9)式合并可得

tza3=q1q2q3r1r2r3·b1b2b3,(10)

式中:q1= k12·k21k11·k25-k15·k21;q2= -k11·k23k11·k25-k15·k21;q3= k14·k21-k11·k24k11·k25-k15·k21;r1= k12·k25k15·k21-k11·k25;r2= -k15·k23k15·k21-k11·k25;r3= k14·k25-k24·k15k15·k21-k11·k25;k11=(x'l-x'nXL;k21=(y'l-y'nXL;k15=x'l-x'n-e1·XL;k25=y'l-y'n-e2·XL;k12=-YL;k23=-YL;k14=x'l·YL;k24=yl·YL

将(10)式代入(8)式,并联立(10)式可得

a1a2a3=r11r12r13r21r22r23r31r32r33·b1b2b3,(11)

式中:r11=k1·r1+e1·q1;r12=k1·r2+e1·q2;r13=k1·r3+e1·q3;r21=k2·r1+e2·q1;r22=k2·r2+e2·q2;r23=k2·r3+e2·q3;r31=r1;r32=r2;r33=r3

旋转矩阵为单位正交矩阵,则有:

a12+a22+a32=1b12+b22+b32=1a1·b1+a2·b2+a3·b3=0(12)

将(11)式代入(12)式,得到一个关于旋转矩阵元素b1b2b3的三元二次方程组,即

b12+b22+b32-1=0u1·b12+u2·b22+u3·b32+2·u4·b1·b2+2·u5·b2·b3+2·u6·b1·b3-1=0r11·b12+r22·b22+r33·b32+v1·b1·b2+v2·b2·b3+v3·b1·b3=0,(13)

式中:u1= r112+ r212+ r312;u2= r122+ r222+ r322;u3= r132+ r232+ r332;u4=r11·r12+r21·r22+r31·r32;u5=r13·r12+r23·r22+r33·r32;u6=r11·r13+r21·r23+r31·r33;v1=r12+r21;v2=r23+r32;v3=r13+r31

向量 (b1b2b3)T实际为O-XYZ坐标系在相机坐标系下的Y轴向量,如果在图像平面上,求mn的垂线向量 ml--',则该垂线向量与Y轴方向基本一致,可以直接采用垂线向量作为向量 (b1b2b3)T的初始值,采用牛顿迭代法求解该三元二次方程组得到b1b2b3。将求解出的b1b2b3依次代入 (11)、(10)、(8)、(6)式,求解其他外参数。

三元二次方程组的求解一般会出现多解的情况,可依据垂线向量 ml--'的分量符号进行错误解剔除。如果剔除后还存在多解,则需要选择另外3个点(更换MNL 3个点中的任意1个即可)按照上述过程求解出另一组解,对该组解先按照上述方法进行错误解剔除,若剔除后仍存在多解,则在两组解中寻找最接近平移量的解作为最终解。

上述求解是以O-XYZ为世界坐标系求解出的外参数,依据坐标系O-XYZ与坐标系OW-XWYWZW之间的固有关系,则可将该参数转换至实际的世界坐标系中,转换过程此处不再详述[1,4]

3 结果与分析

为验证本文算法的有效性,在实验空间中布设了由数百个控制点组成的控制场,采用某商用工业摄影测量系统对控制场拍摄120幅图像,并用系统软件测量出控制点的三维坐标,该商用系统软件测量完毕会输出每幅图像的外参数。如表1所示,选取若干幅图像以及这些图像中的一些特征点,标明每一幅图像经过商用系统软件计算得到的外参数。

表 3. 使用本文算法和DLT算法计算得到的相机外参数

Table 3. Results calculated by proposed algorithm and DLT algorithm

PicturePointProposed algorithmDLT algorithm
Rotation angle /(°)External parameter /mmRotation angle /(°)External parameter /mm
2T218T180T50T218T180T110RX=176.6150RY=59.0650RZ=20.5861RX=176.6230RY=59.0665RZ=20.5862XS=473.081YS=867.981ZS=-3703.194XS=473.104YS=867.351ZS=-3703.412RX=176.6167RY=59.0670RZ=20.5865RX=176.6177RY=59.0681RZ=20.5833XS=473.107YS=867.631ZS=-3703.357XS=473.115YS=867.634ZS=-3703.323

查看所有表

表 4. 在3个控制点中同时建立坐标系的计算结果

Table 4. Calculation results in three coordinate systems

No.PointExternal parameter (XS,YS,ZS) /mm
1T71,T18,T148(1802.0109,-355.9513,-3144.2852)
2T18,T148,T71(1802.0122,-355.9536,-3144.2883)
3T71,T18,T148(1802.0098,-355.9502,-3144.2821)

查看所有表

表1中picture 1数据所示,在选取的5个点中任选3个点作为后方交会的控制点,选取3个点的分布形状接近正三角形、锐角三角形和钝角三角形,如图2所示。

表 2. 使用本文方法和角锥体法计算得到的相机外参数

Table 2. Results calculated by proposed algorithm and pyramid algorithm

PicturePointProposed algorithmPyramid algorithm
Rotation angle /(°)External parameter /mmRotation angle /(°)External parameter /mm
1T104T22T108T104T92T108T104T59T22RX=-3.2706RY=148.9007RZ= 174.8491RX=-3.2710RY=148.9011RZ= 174.8501RX=-3.2715RY=148.9013RZ= 174.8533XS=595.371YS=853.956ZS=-4015.724XS=595.300YS=853.984ZS=-4015.756XS=595.319YS=853.965ZS=-4015.634RX=-3.2711RY=149.1014RZ=175.8730RX=-3.2723RY=148.9037RZ= 174.8634RX=-3.2731RY=148.9041RZ= 174.8442XS=595.388YS=853.973ZS=-4015.731XS=595.382YS=853.967ZS=-4015.774XS=595.371YS=853.984ZS=-4015.752

查看所有表

表 1. 三维坐标与二维图像点坐标及相机外参数

Table 1. Three-dimensional coordinates, point coordinates of 2D image, and the external parameters of camera

PicturePoint(X,Y,Z) /mm(x,y) /mmRotation angle /(°)External parameter /mm
1T104(1670.895,-409.056,-3430.976)(-3.0933,6.7968)RX=3.2707XS=595.3770
T92(1476.960,-429.497,-3472.916)(-3.0017,5.5785)
T108(1531.414,-1572.302,-3129.078)(4.2927,6.1865)RY=148.9017YS=853.9520
T59(905.211,-687.339,-3540.126)(-1.4984,2.0549)RZ=174.8506ZS=-4015.7280
T22(318.084,-562.148,-3722.013)(-2.3782.-1.5668)
2T218(1029.608,859.527,-3956.419)(6.1794,5.1611)RX=176.6173XS=473.1250
T180(1628.232,541.346,-3717.694)(10.3908,3.4198)RY=59.0670YS=867.6090
T50(877.690,-114.723,-3711.865)(5.6319,-0.7990)
T110(1848.411,-7.630,-3502.972)(12.4942,-0.1053)RZ=20.5861ZS=-3703.3520
3T71(1339.4444,19.6515,-3229.0245)(10.1810,0.1491)RX=37.5930XS=1802.0107
T18(-106.9948,1151.5441,-3118.2956)(-0.8424,9.0631)RY=2.0048YS=-355.9519
T148(60.8357,-1337.2001,-3811.6095)(0.3919,-8.6104)RZ=-38.0667ZS=-3144.2854

查看所有表

图 2. Picture 1中任意3点分布情况示意图

Fig. 2. Distribution of the control field points in picture 1

下载图片 查看所有图片

分别使用本文方法和角锥体法计算外参数,计算结果如表2所示。

根据表1中picture 2数据,选取的4个控制点近似在1个平面内,以点T218,T180为原点和x轴正方向,分别以点T50、点T110为y轴正方向,利用本文算法和DLT法计算外参数,计算结果如表3所示。

根据表1中的picture 3数据,首先按点T71、T18、T148的顺序,定义T71点为坐标系原点,T18为x轴正方向;然后按照T18、T148、T71的顺序,定义T18点为坐标系原点,T148为x轴正方向;再按照T71、T18、T148的顺序,定义T71为坐标系原点,T18为x轴正方向,计算这3个坐标系下的线元素,计算结果如表4所示。

在三元二次方程组的求解过程中,可以利用垂线向量 ml--'的分量符号进行错误解的剔除。以T71、T18、T148 3个点建立的坐标系为例,向量 ml--'(-0.4491,0.3632)的分量符号为负,不同初值状态下的方程组求解计算结果如表5所示,其中第1行为任意初值计算得到的结果,第2行的初值符号与 ml--'一致,第3行为 ml--'作为初值求解。

由上述实验及对比分析可知,本文方法求解的参数正确,适用于任意大小旋转角的相机外参数求解。

4 结论

提出一种新的后方交会求解算法,通过建立

临时坐标系,根据3个控制点在临时坐标系下的部分坐标分量为0的特点,将后方交会求解转换为三元二次方程组的求解,以3个控制点图像的坐标数据为三元二次方程组的求解提供初始值。针对三元二次方程组多解的情况,依据3个控制点的图像坐标数据进行错误解判断,同时采用两组数据分别求解,通过两组多解求出最接近的正确解,进行最终正确解的判断。计算结果表明,提出的后方交会算法迭代收敛性好,求解的参数准确性高。本文算法输出的外参数可作为后方交会整体平差的迭代初值。

表 5. 三元二次方程组求解结果

Table 5. Results of solving the quadratic equations

No.Initial valueResult
1(1,0,0)(0.6117,0.7334,-0.2966)
2(-0.577,-0.577,0.577)(-0.6117,-0.7334,0.2966)
3(-0.6,-0.7,0.38)(-0.6117,-0.7334,0.2966)

查看所有表

参考文献

[1] 冯其强, 李广云, 黄桂平. 数字工业摄影测量中的单像空间后方交会[J]. 测绘通报, 2008( 6): 4- 6.

    Feng QQ, Li GY, Huang GP. Single image space resection in digital industrial photogrammetry[J]. Bulletin of Surveying and Mapping, 2008( 6): 4- 6.

[2] 官云兰, 周世健, 周铭, 等. 基于角锥体原理的空间后方交会改进算法[J]. 测绘科学, 2006, 31(2): 27-28.

    Guan Y L, Zhou S J, Zhou M, et al. An improved algorithm of space resection based on pyramid principle[J]. Science of Surveying and Mapping, 2006, 31(2): 27-28.

[3] 刘建辉. 基于几何代数的空间后方交会理论与方法[D]. 郑州: 解放军信息工程大学, 2011.

    Liu JH. Principles and methods of space resection based on geometric algebra[D]. Zhengzhou: Information Engineering University, 2011.

[4] 黄旭, 张永军, 杨璟林, 等. 单应性几何下的后方交会直接解法[J]. 遥感学报, 2016, 20(3): 431-440.

    Huang X, Zhang Y J, Yang J L, et al. Closed-form solution to space resection based on homography matrix[J]. Journal of Remote Sensing, 2016, 20(3): 431-440.

[5] 龚辉, 姜挺, 江刚武, 等. 一种基于四元数的空间后方交会全局收敛算法[J]. 测绘学报, 2011, 40(5): 639-645, 654.

    Gong H, Jiang T, Jiang G W, et al. A globally convergent algorithm of space resection based on quaternion[J]. Acta Geodaetica et Cartographica Sinica, 2011, 40(5): 639-645, 654.

[6] 贲进, 童晓冲, 闾海庆. 基于Pope-Hinsken算法的空间后方交会[J]. 测绘科学技术学报, 2011, 28(1): 37-41.

    Ben J, Tong X C, Lü H Q. Space resection based on the Pope-Hinsken algorithm[J]. Journal of Geomatics Science and Technology, 2011, 28(1): 37-41.

[7] 江刚武, 姜挺, 丁静, 等. 直接利用旋转矩阵进行空间后方交会的原理和方法[J]. 测绘科学技术学报, 2009, 26(1): 15-19, 23.

    Jiang G W, Jiang T, Ding J, et al. Principle and method of space resection using orientation matrix[J]. Journal of Geomatics Science and Technology, 2009, 26(1): 15-19, 23.

[8] 王勇, 姜挺, 江刚武, 等. 基于单位四元数描述的单像空间后方交会[J]. 测绘科学技术学报, 2007, 24(2): 133-135, 144.

    Wang Y, Jiang T, Jiang G W, et al. Space resection of single image based on the description of unit quaternions[J]. Journal of Zhengzhou Institute of Surveying and Mapping, 2007, 24(2): 133-135, 144.

[9] 江刚武, 姜挺, 王勇, 等. 基于单位四元数的无初值依赖空间后方交会[J]. 测绘学报, 2007, 36(2): 169-175.

    Jiang G W, Jiang T, Wang Y, et al. Space resection independent of initial value based on unit quaternions[J]. Acta Geodaetica et Cartographica Sinica, 2007, 36(2): 169-175.

[10] 徐振亮, 李艳焕, 闫利. 单张大角度影像后方交会初值确定方法[J]. 辽宁工程技术大学学报(自然科学版), 2014, 33(7): 951-954.

    Xu Z L, Li Y H, Yan L. Pose initial value determining method for single large-angle image[J]. Journal of Liaoning Technical University(Natural Science), 2014, 33(7): 951-954.

[11] 吕继兵, 朱建军, 伍雅晴. 基于单位四元数的三维空间坐标转换直接解法[J]. 资源信息与工程, 2017, 32(2): 94-96, 98.

    Lü J B, Zhu J J, Wu Y Q. Direct solution of coordinate transformation in 3D space based on unit quaternion[J]. Resource Information and Engineering, 2017, 32(2): 94-96, 98.

[12] 王可伟, 岳东杰, 王性猛. 基于单位四元数的三维坐标转换新方法[J]. 测绘与空间地理信息, 2014, 37(11): 216-218.

    Wang K W, Yue D J, Wang X M. A new method of the three-dimensional coordinate transformation based on the unit quaternion[J]. Geomatics & Spatial Information Technology, 2014, 37(11): 216-218.

[13] 洪洋, 孙秀霞, 王栋, 等. 基于矩形几何特性的小型无人机快速位姿估计方法[J]. 中国激光, 2016, 43(5): 0508006.

    Hong Y, Sun X X, Wang D, et al. Fast pose estimation method for unmanned aerial vehicle based on rectangular geometry feature[J]. Chinese Journal of Lasers, 2016, 43(5): 0508006.

[14] 李鑫, 张跃强, 刘进博, 等. 基于直线段对应的相机位姿估计直接最小二乘法[J]. 光学学报, 2015, 35(6): 0615003.

    Li X, Zhang Y Q, Liu J B, et al. A direct least squares method for camera pose estimation based on straight line segment correspondences[J]. Acta Optica Sinica, 2015, 35(6): 0615003.

[15] 宋佳慧, 任永杰, 杨守瑞, 等. 基于合作靶球的视觉传感器外参标定方法[J]. 光学学报, 2017, 37(9): 0915003.

    Song J H, Ren Y J, Yang S R, et al. Extrinsic parameter calibration method based on substitutable target sphere for vision sensors[J]. Acta Optica Sinica, 2017, 37(9): 0915003.

陈继华, 孙荣旭, 张斌. 单像空间后方交会算法的研究[J]. 激光与光电子学进展, 2020, 57(2): 021504. Chen Jihua, Sun Rongxu, Zhang Bin. A New Algorithm for Single Image Space Based Resection[J]. Laser & Optoelectronics Progress, 2020, 57(2): 021504.

本文已被 1 篇论文引用
被引统计数据来源于中国光学期刊网
引用该论文: TXT   |   EndNote

相关论文

加载中...

关于本站 Cookie 的使用提示

中国光学期刊网使用基于 cookie 的技术来更好地为您提供各项服务,点击此处了解我们的隐私策略。 如您需继续使用本网站,请您授权我们使用本地 cookie 来保存部分信息。
全站搜索
您最值得信赖的光电行业旗舰网络服务平台!