摘要
本文基于针孔成像原理建立模型,首先论证了在不考虑畸变的情况下圆的透射投影为椭圆,并给出了相应的公式。在对问题一二的求解中,构造了快速算法、切线算法以及椭圆定义算法这三种中心点的求解算法,其中切线算法可以在非椭圆情况下应用。在以光学中心为原点,x-y轴平行于像平面的坐标系下,用切线法求得五个圆心的像坐标(单位为mm)为:
A=[-49.834, 5.1247,417.196] B=[-24.1265,49.2087,417.196] C=[33.939, 44.9603,417.196] E=[-60.0608, -31.5426,417.196] D=[ 18.8255, -31.7971,417.196]
问题三中,我们采用了电脑模拟的方法进行验证,将由图像处理软件制作的靶标正视图经过由椭圆透射原理构造的旋转矩阵生成仿真椭圆,从而将仿真椭圆的中心坐标精确确定,用以对各算法的准确度进行评定,在验证该方法的稳定度及精确度时,进行噪点辅助处理,从而直观形象地说明了该验证方法精确稳定。
问题四中,我们首先建立了理想针孔成像模型,分别建立像坐标系,相机坐标系,世界坐标系。对于单个相机,利用透射原理建立所给靶标的像与靶标上点的对应关系,列出方程组,求得世界坐标系和相机坐标系之间变换的旋转矩阵和平移向量。对于题中给出的图2、图3,我们最终求得,相机坐标系关于世界坐标系的旋转矩阵和平移向量
0.98720.0229 −0.1579
分别为 ( )= −0.0242−0.9567 −0.2901 ; t=(525.6,822.0,4692.0)T。通过求两
−0.15780.2902 −0.9439
个相机坐标系与世界坐标系之间变换的旋转矩阵和平移向量,确定两个相机坐标系间变换的旋转矩阵和平移向量,即可标定两个相机的相对位置。为了增加模型的精确程度,我们又考虑了非线性畸变的影响,利用交比不变原理对畸变参数进行约束,对模型进行了改进,使其更具有现实意义。
关键词:圆的透射 计算机模拟 旋转矩阵 平移向量 非线性畸变
- 1 -
目录
1. 问题重述 ................................................................................................................................... 3 2. 问题分析 ................................................................................................................................... 3 3. 模型假设 ................................................................................................................................... 3 4. 符号说明 ................................................................................................................................... 4
5. 问题求解准备........................................................................................................................... 4
5.1 定理一 ................................................................................................................................ 4 5.2 亚像素边缘检测算法 ....................................................................................................... 5 6.问题求解 ................................................................................................................................... 6 6.1 问题一与问题二 ............................................................................................................... 6 6.1.1模型建立 ................................................................................................................... 6 6.1.1.1 模型一 ........................................................................................................... 6 6.1.2算法设计及求解 ....................................................................................................... 8 6.1.2.1 快速算法 ....................................................................................................... 8 6.1.2.2 公切线法 ....................................................................................................... 8 6.1.2.3 椭圆定义法 ................................................................................................ 10 6.1.2.4 算法的比较 ................................................................................................ 11 6.2 问题三 .............................................................................................................................. 12 6.2.1模型检验 ................................................................................................................. 13 6.2.2检验方法的精度和稳定性 .................................................................................... 13 6.3问题四 ............................................................................................................................... 15
6.3.1模型二 ..................................................................................................................... 15 6.3.2模型求解 ................................................................................................................. 17
7. 模型改进 .................................................................................................................................. 17 7.1基于非线性畸变的模型改 ............................................................................................. 17 8. 模型优缺点分析 ..................................................................................................................... 18 9. 模型灵敏度分析 ..................................................................................................................... 19 10. 模型扩展 ................................................................................................................................ 20 11. 参考文献 ................................................................................................................................ 20
- 2 -
1.问题重述
题目中给出了数码相机定位以及系统标定的含义,并给出了一种标定的具体做法,即在一块平板上画若干个点, 同时用两部相机照相,分别得到这些点在它们像平面上的像点,利用这两组像点的几何关系就可以得到这两部相机的相对位置。然而,无论在物平面或像平面上我们都无法直接得到没有几何尺寸的“点”。实际的做法是在物平面上画若干个圆(称为靶标),它们的圆心就是几何的点了。而它们的像一般会变形,所以必须从靶标上的这些圆的像中把圆心的像精确地找到,标定就可实现。
2.问题分析
该题目中,设计给出了如下靶标,取1个边长为100mm的正方形,分别以四个顶点(对应为A、C、D、E)为圆心,12mm为半径作圆。以AC边上距离A点30mm处的B为圆心,12mm为半径作圆,以下为原图及某一位置固定的相机所拍摄的图像。
在这里,我们要处理的问题就归结为以下四点:
1. 建立适当的模型,将像平面上的点映射到规定的平面上来,即原点取在该相机的光
学中心,x-y平面平行于像平面的坐标系中,并设计出适合的算法,用以确定靶标上圆的圆心在该相机像平面的像坐标。
2. 对给定的模型靶标进行求解,处理拍摄的图像,利用设计的算法,求出靶标上各个
圆的圆心在像平面上的像坐标,即是对算法的实际应用。
3. 设计合适的方法,用以评定建立的模型,并对各个算法的稳定性以及精确度进行分
析。
4. 建立模型以实现世界坐标系跟像平面坐标系的联系,利用坐标系之间的映射关系,
将两部相机的相对位置予以关联,完成相对位置的求解。
3.模型假设
1. 假设数码相机是理想针孔成像系统, 不考虑镜头畸变对图像的影响。 2. 对于椭圆中存在的中心偏移,在该模型中十分微小,可以忽略。
3. 假设同时拍照的两部相机内部参数相同,即不存在由于参数差异而导致的定位误差。
- 3 -
4. 假设光学中心沿光轴与像平面交于图像中心处,即不存在由于相机制作工艺而导致
的误差。
4.符号说明
, : : ( , ): ( , , ): : ( , ): ( , , ): ( ):
5.问题求解准备
5.1.定理一:
由透视投影原理,对于物平面中的圆(或椭圆),其经过针孔成像后得到的像可以认为是椭圆(在不考虑畸变的情况下),其椭圆中心则可以认为是圆的中心经过映射后得到的点。[1] 证明:
- 4 -
由上面的简化效果图可知,对于透视投影中的圆的像而言,当像平面与物平面平行时,其所成的像必为圆,且中心相对应。
对于半径为r的圆,物平面与像平面成一定的角度β时,图中坐标系原点 设在光学中心,圆心 ,距坐标系原点的距离为 ,摄像机焦距为 ,圆的参数方程为
=
=
=− −
根据相似三角形比例原则,圆上一点与图像中该点的坐标有如下关系:
== − − 经过整理化简之后,便可得到如下方程:
− − + −
− , − 坐标系为 − 坐标系绕 轴旋转 角,围绕 旋转 角极为空间一般姿态的圆。在该简化坐标系中使 与 坐标轴平行,坐标系 − 与
− 有如下关系:
− 0
= 0 01 0
由该方程可知,该方程为椭圆的方程,由此可以证明,在不考虑畸变的时候,圆的
映射可以认为是椭圆。
空间物体的任意姿态可通过绕坐标轴旋转两次得到,设有两坐标系 − 和
− =1
用 、 分替换上述椭圆公式中的 、 ,即得到一般姿态圆的圆心的图像最简椭圆标准
⎧ ⎪ − ⎨
sin ⎪ − ⎩
房产,坐标系 − 变换关系为上式,图像曲线中心相对视轴的偏移坐标 、 为:
5.2.亚像素边缘检测算法
对于像素级别的边缘检测,由于在读取图像时,其获得的最小单位为一个像素,故在检测的时候边缘的精确度因像素的离散化而受到影响,于是在亚像素级别对边缘进行检测,对像素级别的检测结果加以补充修正,从而提高检测精度,使得边缘更加平滑,检测更加准确。
- 5 -
梯度方向: ( , ) = ( / );
Step2:找到像素级精度的边缘,利用边缘附近多个像素的灰度值作为补充信息,采 用梯度幅值均值法确定亚像素边缘。
Step2.1:在粗定位的边缘点上沿梯度方向求梯度幅值 ( , );
Step2.2:根据 ( , ) 的值确定包含边缘的区间,即对给定的阈值T ,确定满足 ( , )> 的 ( , )的取值区间;
Step2.3: 利用梯度分量 和 作为权值,沿梯度方向的边缘位置亚像素级校正 公式为:
⎧∆ = /
⎪
梯度幅值: ( , )= ( + );
算法:
Step1:读取灰度图像,计算各个像素点( , ) 处的梯度分量:
={ [ ( − 1 , + 1) − ( − 1 , − 1) ] +[ ( , + 1) −
( , −1) ] +[ ( + 1 , + 1) − ( + 1 , − 1) ]} / 3; = { [ ( − 1 , − 1) − ( + 1 , − 1) ] +[ ( − 1 , ) −
( + 1 , ) ] +[ ( − 1 , + 1) − ( + 1 , + 1) ]} / 3;
式中 、 是一个像素点沿梯度方向与粗定位边缘点的距离分量; 、 是梯度分量; 为沿梯度方向上 ( , ) > 的像素点数。 Step3:将上述修正量分别与对应的边缘坐标相加,即得到亚像素边缘坐标。
⎨
⎪∆ = / ⎩
6.问题求解
6.1问题一与问题二
6.1.1 模型建立
6.1.1.1模型一:
像坐标系1:定义直角坐标系 , 取在像平面的左上角,平面内任意一点坐标为 , , , 分别表示矩阵中的列数和行数,单位为像素,大小为1024*768px。
像坐标系2:定义直角坐标系 , 取在像平面的中心,即相机光轴与像平面的交
点, , 轴分别平行于轴。 , 是像坐标系1按向量(512,384)的平移
- 6 -
相机坐标系:定义直角坐标系 − ,o取在光学中心, , 轴分别平行于 , 轴, 轴沿光轴方向。
以上坐标系有如下关系:
=+
=+
0 ⎤ ⎥ ⎥ ⎥11⎦
用齐次坐标与矩阵形式表示为
1 0
数码相机成像的理论模型是针孔成像模型,如图所示:
1⎡
⎢ =⎢1⎢0
⎣0
由比例关系有
∙ =
∙ =
0 0
001
用齐次坐标和矩阵表示为
= 010
- 7 -
0
0 01
( , , )是空间一点P在相机坐标系下的坐标,( , )是其在像平面的像坐标。
6.1.2 算法设计及求解
6.1.2.1 快速算法
由和比定理
+ == + 知,对于一个椭圆,连线过中心的两个点的中点必为椭圆中心,故有
∑ ∑ + + ==⋯==⋯== 222∗ /2 ∑ ∑ + + ==⋯==⋯== 222∗ /2 所以可以通过对椭圆上各点的横纵坐标分别取平均值来快速求取椭圆的中心坐标。
通过此算法求得图3各中心像点的坐标如下(单位为像素):
A=[-187.873, 194.112] B=[-92.393, 185.301] C=[128.881, 170.656] E=[-226.535, -119.633] D=[ 71.5526, -119.893]
由假设可知,对于像平面上的点,其z坐标为1577,单位为像素。 将各个点的坐标转换为mm单位,可得到其坐标如下:
A=[-49.7019,51.3524, 417.196] B=[-24.4426,49.0214,417.196] C=[34.0955,45.1471,417.196] E=[-59.93,-31.6489,417.196] D=[18.9293,-31.7177,417.196]
6.1.2.2公切线法:
如图所示,在靶标上添加正方形网格,易知每个圆必与该正方形网格相切,且圆心必在与其相切的正方形的对角线交点上,经过坐标变换,正方形网格可变为任意形状四边形,但它对角线的交点依然对应原图像中的圆心,因此可通过公切线法,求得各圆圆心。
- 8 -
算法: Step1: 分离得到各圆边缘坐标,做出初始公切线斜率k0及截距b0(若要求竖直排列的
两圆的左公切线,则以两圆最左边一点的连线为初始公切线,其余情况同理)。
Step2: 遍历适当范围 k∈(k0−∆k ,k0+∆k),b∈(b0−∆b ,b0+∆b) 内的所有直线,找到满足一下条件的直线作为切线:1、两圆上的点都在该直线同侧;2、两圆上的点到该直线距离之和最短。 Step3: 找到所有切线后,联立方程求得各切线交点,即四边形的四个顶点坐标,并通过这四个坐标求得圆心坐标 利用该算法对第二问求解,得到的图像如下:
300 300200
200
100 100
400200200400 400200200400100 100 200200
300 300
通过此算法求得图3各中心像点的坐标如下(单位为像素): A=[-188.373, 193.713] B=[-91.1983, 186.009] C=[128.289, 169.95] E=[-227.03, -119.231] D=[ 71.1605, -120.193] - 9 -
将各个点的坐标转换为mm单位,可得到其坐标如下:
A=[-49.834, 5.1247,417.196] B=[-24.1265,49.2087,417.196] C=[33.939, 44.9603,417.196] E=[-60.0608, -31.5426,417.196] D=[ 18.8255, -31.7971,417.196]
6.1.2.3 椭圆定义法
由定理一可知,靶标在像平面的投影构成椭圆形,故由椭圆定义得,靶标投影点的集合是到两焦点距离之和为定值的点的集合。于是通过最小化目标函数:
Min f x ,y ,x ,y =Var Dist x ,y ,x ,y ;
i=1,2,3,…,n
其中
Dist x ,y ,x ,y = (x −x ) +(y −y ) + (x −x ) +(y −y ) , 离和的函数。函数Var()表示方差。
这显然是一个求无约束多元函数最小值的问题。通过计算机求解得出两焦点坐标。 而椭圆圆心即为两焦点坐标的中心,故中心(x ,y )可以由下试求解:
x +x x =
2 y +y
y =
2式中Dist x ,y ,x ,y 为求焦点 x ,y ,(x ,y )到椭圆上一点(x ,y )距
算法:
接近的焦点坐标);
Step2:利用Dist 函数求得圆上某点到两焦点的距离之和,对圆上所有点进行遍历,依
次求得它们到两焦点的距离之和,对求得的所有距离之和求取标准差;
Step3:变换焦点的坐标,直到求得的标准差为最小;
Step4:输出此时的两焦点坐标,并求出其中点,即椭圆中心。
通过此算法(程序见附录)求得图3各点的像坐标如下:
A=[-189.0629,194.5677] B=[-89.0584,186.9345] C=[127.8355,170.8880] E=[-227.3400,-117.7745] D=[70.7357,-118.9740]
- 10 -
Step1:分离得到各圆边缘坐标,初始化焦点 x ,y ,(x ,y )(利用快速算法,找到
将各个点的坐标转换为mm单位,可得到其坐标如下:
A=[-50.0166, 51.4729,417.196] B=[-23.5604, 49.4536,417.196] C=[33.8189, 45.2085,417.196] E=[-60.1429, -31.1573,417.196] D=[18.7131, -31.4746,417.196]
6.1.2.4 算法的比较
快速算法
A=[-187.873, 194.112] B=[-92.393, 185.301] C=[128.881, 170.656] D=[ 71.5526, -119.893] E=[-226.535, -119.633]
切线法
A=[-188.373, 193.713] B=[-91.1983, 186.009] C=[128.289, 169.95] D=[ 71.1605, -120.193] E=[-227.03, -119.231] 20015010050椭圆定义法
A=[-189.0629,194.5677] B=[-89.0584,186.9345] C=[127.8355,170.8880] D=[70.7357,-118.9740] E=[-227.3400,-117.7745] 200150100505010050100
由比较可知,这些算法的精度都还是可以的,其位置都大致相同,对应坐标的差值不超过3个像素单位,但是快速算法相对较为粗略,比之另外两种算法稍显不足。
在椭圆的情况下,这几种算法都可以运用,但是切线法最少要有三个圆,通用性略差。如果考虑畸变的影响,图形不再是椭圆,则快速算法跟定义算法失去了理论依据,而切线法则仍可以应用,此时其应用范围便扩大了。
6.2 问题三
为了衡量算法的精度这里采用计算机仿真图像模拟的方法进行模型检验。 即用计算机模拟照相机的成像规律,制作仿真椭圆标志,然后通过对所得图进行处理,将通过模型测出的计算结果与已知值比较。
- 11 -
仿真椭圆标志图:
首先通过图像处理软件制作测试靶标的正视图(大小为1024*768),如图所示:
其上圆形标志的圆心坐标(精确到为0.1个像素单位)分别为: [-210.8,163.9];[-211.0,-160.5];[179.0,163.5] 由定理一的透视投影原理可知,此标靶平面中的圆经过针孔成像后得到的图形为椭圆(不考虑畸变)。这一投影过程可视为对标靶平面上的点施加一个线性变换。通过对投影原理的分析可以确定此线性变换所对应的投影矩阵遵从下式:
= − =
− + − + − = − + −
001
其中 为圆的半径; 为照相机焦距; 为圆心距坐标系原点的距离; 表示照相机平面绕y轴旋转的角度, 为围绕z轴旋转的角度,( , )为圆心从光轴的位移。特别地,此时( , )即为标靶上圆的圆心坐标。注:更为详细的推导过程请参照[1]
=0.5
( + − − ) +2
−2 ( − )至此,在确定了参数 , , , , , , 后我们便可以构建投影矩阵 。通过将 应用于正视图上,可以经过仿真获得椭圆标志图。对其椭圆边缘取点可得下图:
- 12 -
图中为令 = =1577, =15; =60时,对图像进行映射所得椭圆边缘。此时可以计算椭圆圆心坐标依次为:
[-306.5439, 89.7928],[-197.6548, -224.9587],[186.7391, 197.7628]
6.2.1模型检验: 将上述仿真椭圆标志图代入模型,用不同算法得到的椭圆中心坐标与实际坐标的偏差如下所示(这里只列出第一个椭圆中心的数值): 算法 粗定位边缘 亚像素边缘
计算中心 与实际值偏差 计算中心 与实际值偏差
定义算法 [-305.2951, [ 1.2488 , [-305.3082, [1.2357
89.5138] -0.2790] 89.5433] -0.2495]
切线算法 [-305.137, [1.4069, [-305.854, [0.6899,
88.9589] -0.8339] 88.9836] -0.8092]
由此可见我们在6.1中构造的模型和算法具有较高的精度,模型的准确性得证。而通过使用亚像素边缘处理技术,模型的精度也有了较明显的提升。
6.2.2检验方法的精度和稳定性: 由于这里的坐标转换都是通过线性映射实现的,因此该方法的精度主要由制图软件绘制的靶标正视图的精度决定。若靶标的正视图的绘制精度为0.1像素,则每一个靶标的圆心坐标、所得仿真椭圆中心的理论精度也为0.1像素。
下面我们通过对靶标正视图添加噪点的方式来测量检验方法的稳定性。将噪点数量比例控制在0%~2.5%之间进行测试,得到下列数据:
噪点比例 坐标计算值 与实际值偏差 偏差距离 灰度图 0.5% [-305.3148,89.5504] [1.2291,-0.2424] 1.2528 灰度图 1.0% [-305.3259,89.5580] [1.2180,-0.2348] 1.2404 灰度图 1.5% [-305.3102,89.5676] [1.2337,-0.2252] 1.2541
- 13 -
灰度图 2.0% [-305.3094,89.5663] [1.2345,-0.2265] 1.2551 (*)灰度图 2.5% [-344.2762,89.5306] [-37.7323, -0.2622] 37.7332 二位图 10.0% [-305.2792,89.5578] [1.2647, -0.2350] 1.2863
(*):为通过求椭圆上点集合的坐标均值对椭圆中心估算的结果
当靶标正视图为灰度图且噪点比例在2.0%以下时,模型算得的椭圆中心精度很高,其偏差保持平稳,可以通过此方法验证模型的合理性。而当灰度超过2%,到达2.5%时精度出现突变性恶化。此时matlab的edge函数所捕捉的边缘点图像如下所示:
- 14 -
由此可知模型精度出现突变的原因是当噪点的数量增大到一定程度时,椭圆轮廓的颜色梯度变化不再显著,相反地,一些非边缘点满足edge函数的筛选条件,从而对模型精度造成了巨大的影响。通过与含10%噪点的二值图的模型测试结果对比,可以说明噪点比例的增加对灰度图的影响是比较大的,故容易在调用edge函数时出现结果突变,从而导致了模型精度的突变。因此在这时出现精度突变性恶化并不是方法存在稳定性问题,而是由于超出了matlab函数的精度范围。 综合以上因素,可以认为通过对椭圆标志图的仿真来对模型进行验证的方法具有比较高的精度且抗噪音性较强,具有较高的稳定性。
6.3 问题四
6.3.1 模型二: 基于理想针孔成像的模型
数码相机A,B与靶标的位置示意图如下:
世界坐标系:以靶标平面为X O Y 所在平面建立,A为原点,AC BD分别为X 、Y 轴,
[ ]
Z轴的确定满足右手定则。 在问题一的模型基础上我们建立模型
:
空间点P在相机坐标系和该坐标系的坐标(x,y,z),(X ,Y ,Z ),存在如下关系:
( ) = 1 11
- 15 -
元数表示法
其中 ( )为3×3正交单位矩阵,t为三维平移向量 = , , ,0=(0,0,0) ,我们用四
[ ]
来表示旋转矩阵 ( ),即
其中q +q +q +q =1
世界坐标系里的任一点P(X ,Y ,Z )的像坐标(u,v)满足
1⎡
⎢ =⎢1⎢0
⎣0
1 00 ⎤ ⎥ 0⎥ ⎥01⎦ 1
0 0
+ − −
( )= 2( + )
2( − )2( − ) + − −
2( + )2( + )
2( − ) + − −
= × + × + 1)
对于任一点(u,v)可得, = × + × + 2)
= × + × + 3)
联立1)、2)、3)式消掉s得到两个方程
× + × + = × + × + × + × + =
× + × +
那么五个点确立十个方程,再加上q +q +q +q =1共十一个约束,而未知量共
( )
有11个 、 、 、 、 、 、 、 、 、 、 , 。 故可以求解出矩阵
1
这样,对于两个相机坐标系A,B,通过其像平面的坐标即可分别求出其旋转矩阵。他们满足:
( )、 ( )分别为 ( )第一列和第二列的列向量
靶标上的点都满足Z
= 010
0
( ) 0
1 0
1
=0,则可化简为如下形式
0
[ ( ) ( ) ]=
01
= 0
0
0 0
00
( )
00
10
1
1
1
空间任一点P分别在相机A坐标系、B坐标系、世界坐标系的坐标向量为 、 、 ,
- 16 -
联立消掉 后得 = ( ) ( )
= ( ) +
= ( ) +
= ( ) ( )
即
= − ( ) ( )
+ − ( ) ( )
求出 、t即确立出了两相机的相对位置。
6.3.2 模型求解:
由模型的建立与分析可以得到11个非线性方程,利用matlab进行求解,图像信息确定后即可求得 ( ) 、 ( ) 、 、 ,进而确定 、 t
为了验证模型的可行性,对于图2,图3我们进行了求解,可以得到其旋转矩阵,平移
0.98720.0229 −0.1579
向量分别为 ( )= −0.0242−0.9567 −0.2901 ; t=(525.6,822.0,4692.0)
−0.15780.2902 −0.9439
7.模型改进
7.1基于非线性畸变的模型改进
在实际中,由于镜头并不是理想的线性模型,通常带有畸变,使得空间点所成的像并不在线性模型描述的位置( , ),其实际像坐标为( , ),镜头同时存在切向和径向畸变,但一般来说切向畸变小,而且对于一般机器只考虑一阶径向畸变即可。即
[ ]
= +( − )
其中 =( − )+( − )4) = +( − )
在靶标平面设直线EB、EC与AD的交点分别为M,N。其中
E(X ,Y )、B(X ,Y )、C(X ,Y )、A(X ,Y )、D(X ,Y )、M(X ,Y )、N(X ,Y )。如图所示
- 17 -
基于交比不变的性质得
[ ]
,一条直线上的四个点AMND满足CR(A,M;N,D)= / ,
/ 知量时,和模型一比较,考虑畸变后增加了两个未知量k 、k ,同时也多了两个约束方程。不影响方程的求解。因此在模型一的基础上增加以上修正即可比较精确的求出两相机的相对位置。
在 u ,v 已知的情况下,利用以上关系式即可求出畸变系数k 、k 。 u ,v 作为未
(X −X )(X −X )(u −u )(u −u )= (X −X )(X −X )(u −u )(u −u )(Y −Y )(Y −Y )(v −v )(v −v )= (Y −Y )(Y −Y )(v −v )(v −v )8.模型优缺点分析
优点:首先在不考虑非线性畸变的前提下,根据针孔成像模型建立了一个较为简单的模
型,通过坐标系的转换,建立起像素坐标和世界坐标的对应关系矩阵。通过已知圆心的坐标和其所成像的坐标构造方程组,对其求解得出相机坐标系关于世界坐标系的转换矩阵,再通过坐标系的变换,求出两个相机坐标系的转换矩阵。并考虑畸变对模型进行了修正,模型比较精确,可以求出相机的内部和外部参数。
缺点:该模型是方程约束的,由于取点较少,产生的误差就会比较大,从而影响所求相
机外部参数的精确度。可以考虑在靶标和对应的像上多取几个点,转为有约束的最优化问题。
- 18 -
9.模型灵敏度分析 在用椭圆定义算法计算椭圆中心的模型中,需要先对椭圆的焦点进行估算。 在本模型中,焦点初始值是通过估算中心并对称的施加偏移值设定的。而这个初始值的选择一般会影响计算所需时间或者导致误差的进一步加大。因此我们仅针对两个焦点从估算圆心的偏移量( , )进行模型的灵敏度分析。
在确保初始值偏出真实值的前提下,为了便于观察偏移值对模型的影响,在令 = 的情况下调整 ,得到相应计算结果及计算用时,如下表:
椭圆坐标计算值 计算用时
(= )
0 10 20 30 40 50
[-305.2948, 89.5252] [-305.2948, 89.5252] [-305.2948, 89.5252] [-305.2948, 89.5252] [-305.2948, 89.5252] [-305.2948, 89.5252]
3.766336 3.873987 4.202556 4.002491 4.283515 4.145716
椭圆坐标计算值 计算用时
由此可见,在一定范围内调整 对模型算法的结果没有影响。可以看出由于算法采用了搜寻函数最优点的办法,故具有很强的灵敏度。而遗憾的是当偏移值增大时,计算用时也有上升趋势;这也揭示了算法计算量大弊端。
对于理想针孔成像模型,离像坐标原点越远,引起的畸变越严重,对于不同的相机,它们的透镜等因素不同,畸变系数也会不同,如果都用该模型求解,会引起较大偏差,改进后的模型考虑了畸变的影响,灵敏度更高。
- 19 -
10.模型拓展
由于靶标上的点用圆心表示可以更精确,而且圆成像后一般为椭圆,对于寻找圆心对应的像的位置更方便准确,所以采取了用圆刻画点的靶标,但是由于能够确定的准确点少(五个圆心点),所以求出的相机内部外部参数误差较大,可以采取画有大量圆的靶标进行标定,可以提高标定的精度。
11. 参考文献
[ ] 韩庆瑶 万书亭,机器视觉中空间圆透视投影特性研究,华北电力大学学报,第25
卷第1 期:79~84,1998 年。 [ ] 黄桂平,圆形标志中心子像素定位方法的研究与实现,武汉大学学报·信息科学版,
第30 卷第5 期:388~391,2005年。
[ ] 张广军,机器视觉,北京:科学出版社,2005年。 [ ] 贺俊吉 张广军 杨宪铭,基于交比不变性的镜头畸变参数标定法,仪器仪表学报,
第25 卷第5 期:597~599,2004年。
- 20 -
因篇幅问题不能全部显示,请点此查看更多更全内容