摄像机标定算法的MATLAB语言实现概要Word格式.docx
- 文档编号:18977162
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:9
- 大小:118.25KB
摄像机标定算法的MATLAB语言实现概要Word格式.docx
《摄像机标定算法的MATLAB语言实现概要Word格式.docx》由会员分享,可在线阅读,更多相关《摄像机标定算法的MATLAB语言实现概要Word格式.docx(9页珍藏版)》请在冰豆网上搜索。
2003-08-20.
作者简介:
徐世杰(1980-,男,硕士研究生,主要研究方向:
机器视觉、数字图像处理.
RealityofcameracalibrationprocedurewithMATLAB
XUShi2jie,SHANYi
(SchoolofAutomation,HarbinEngineeringUniversity,Harbin150001,China
Abstract:
ThetraditionalprocedureofcameracalibrationwasmodifiedwithMATLABtheresearchintocameradistortionandasymmetricprojection.Theexperimentalresultsmoreaccuracythanthatofthetraditionalprocedure.Keywords:
MATLAB;
cameracalibration 像信息出发,何信息,.图像上每一点,而该点在图像上的位置则与空间物体表面相应点的位置有关.这些位置的相互关系,与摄像机成像几何模型有关.该几何模型的参数称为摄像机参数.摄像机标定的任务就是求解这些参数.为了提高标定的精度,本文在以往标定算法的基础上,主要考虑了摄像机标定过程中存在的3种畸变模型:
径向畸变,切向畸变和投影不对称时圆形标定点所产生的投影畸变.并就该畸变模型提出了基于MATLAB语言的修正算法,使定标精度进一步提高.
1
摄像机参数
摄像机参数可以分为内外2种参数.外部参数用来把目标的世界坐标系转换成摄像机坐标系.其最简单的模型是线性模型,或称针孔模型.由于摄像机可安放在环境中的任何位置,
可在环境中选择一个基准坐标系来描述摄像机的位置,并用它来描述环境中任何物体的位置,该坐标系称为世界坐标系
.摄像机坐标系(xi,yi,
zi与世界
(Xi,Yi,Zi之间的关系可以用旋转矩阵R与平移向量t来描述.矩阵R与向量t就被称为摄像机的外部参数.为了表达空间中任一点的摄像机坐标,可用以下公式表示[2]
xiyiz=m11m12m13m21m22m23m31
m32
mXiYiZ+x0y0z.(1
式中:
m11……m33是矩阵R的参数,x0,y0,z0是平移向量t的分量.
摄像机的内部参数通常包括焦距f,比例因子su,图像中心坐标
(u0,v0.由于图像像素坐标(u,v
并没有用物理单位表示出该像素在图像中的位置,因此,需要再建立以物理单位(
mm表示的图像物理坐标系(u′i,v′i.该坐标系以图像中心坐标O1(u0,v0为原点,x轴与y轴分别与u,v轴平行.x轴与y轴方向上单位物理尺寸上像素个数为Du与Dv,所以两者的关系可用式(2
表达:
uiv=Dusuui
Dvv′i+
u0v(2考虑到透镜的径向畸变[δu(ri,δv(r
i]和切向畸变
[δu(t
i
δv(t
i],对式(2进行如下修正[1,3]:
uiv=
Dusu(ui+δu(r
+δu(t
Dv(vi+δv(r
i+δt
i
+
u0v.(3
2 投影畸变校正
如果物体表面和投影图像平面不是平行的
话,任意形状的物体在向图像坐标系平面投影时,物体形状会发生畸变.本文只研究了圆形物体的
投影.这是因为分析圆形和其投影之间的关系比较容易,且许多物体的表面都可以用圆形来近似.通常情况下,整个圆形在图像平面坐标系上的投影畸变的大小,要依据物体表面和投影平面之间的位置关系和夹角大小来定.只有当两平面是平行正对的时候,投影才保持圆形.下面来看看依据投影关系所建立的方程.
首先定义世界坐标系Ω1(X,Y,Z∈R3的原点为摄像机光心坐标O,并使其Z
轴垂直于物体表面Π1(见图1.
图1 圆形投影图
从图中可以看出从圆Г1发出的光线经投影
到光心O,形成一个斜圆锥体,那么平行与Π1的平面与此圆锥体相交的曲线方程可以表示为
(X-αZ2+(Y-βZ2=γ2Z2
.
(4式中:
参数α与β表征了圆锥体在X和Y轴方向上倾斜程度;
参数γ表征了圆锥顶角的大小.如果用d表示摄像机的焦点到物体表面的距离,那么曲线方程可以表示为
(X-αd2+(Y-βd2=(γd2
(5再定义摄像机坐标系Ω2(x,y,z∈R3的原点也为摄像机光心,但其z轴垂直于图像平面Π2,且x与y轴平行于图像平面坐标系的u,v轴.因此从坐标系Ω2到Ω1的转换可以用下面的方程表示:
XY=a11a12a13a21a22a23a31
a32
ax
yz
(6
其中向量[a11 a21 a31]T,[a12 a22 a32]T,
[a13 a23 a33]T
为标准正交基.现在就可用摄像
机坐标系表达方程(4:
[(a11-αa31x+(a12+αa32y
(a13-αa33z]2+[(a21-βa31x+(a22+βa32y+(a23-αa33z]2=γ2(a31x+a32y+a33z2
(7
用f表示焦距,那么曲线Г2可表示为
(n2+k2-r2x2+2(kl+np-rsxy+(l2+p2-s2y2+2(km+nq-rlx+2(lm+pq-st+m2+q2-t2=0.(8式中:
k=a11-ta31,n=a21-sa31,r=γa31,l=a12-ta32,p=a22-sa32,s=γa32,m=(a13-ta33f,q=(a23-sa33f,t=γa33f.
式(8表示为二次曲线,其几何解释可以是双
曲线,抛物线,椭圆.实际上因为人眼视觉的局限,投影常常被看作圆或椭圆.由式(8可以得到椭圆中心的坐标:
uc=
-nl-ks---2
c(kp-nl2-(ks-lr2-(ns-pr2
(9
为了找到圆心的投影坐标,考虑半径为零的情况,即γ=0,所以r,s,t的值都变为零,所得投影圆心的坐标:
u0=(lp-pm/(kp-nl,
v0=(mn-kq/(kp-nl.
(10
若半径不为零,只有当a31=a32=0,即在只围绕Z轴旋转的情况下,方程(9和(10才能相等.在通常情况下,椭圆中心和投影圆心的坐标是不等的.
因为投影存在畸变,若想得到投影圆心的坐标,则应用式(8和(9来校正误差.现有2种办法可以修正投影误差.一种办法是用最小二乘法对(uc-u0,vc-v0进行运算,使其达到最小值.但这种方法收敛速度慢,计算量较大.另一种办法是递归的计算摄像机参数,运用最小二乘法对式(9和(10进行估计.利用观察得到的图像坐标(Ui,Vi列出方程:
U′i=Ui-Dusu(uc,i-u0,iV′i=Vi-DV(
vc,i-v0,i(11
经校正后,重新计算得到摄像机参数.
3 实验结果
实验所用参照物图片如图2.
(下转第49页
・
64・应 用 科 技 第31卷
表1 利用标准铂铑30—铂铑6进行温度校准后的输出电压与温度的对应关系
温度
T/℃
光纤温度计的输出电压010*********
1004.174.985.886.837.848.9510.0611.2012.4113.69120015.0616.7218.5520.6222.9725.4528.2931.2534.3237.64130041.3544.9648.7052.6656.7360.9565.1069.3773.6678.21140082.7987.3892.1997.18102.32108.11114.22120.38126.58132.841500139.22145.90152.88159.91167.32174.78182.04189.73197.55205.441600213.40221.45229.60237.82245.96254.18262.39270.64278.97287.36 注:
环境温度T=20℃
表1给出的是每间隔10℃的传感器电压输出.U/T之间的关系为对数曲线.所以若使用补偿电路可采用对数放大器.将表1中标定的数据预存入测温仪器的微处理器.使用时将测量数据输入微处理器并和标定值比较.在各标定点之间的温度采用分段线性拟合.
插值点温度值的计算公式为
T=U/K(
t.(5式中:
K(t为蓝宝石光纤温度计的拟合曲线斜率:
K(t=ΔU/ΔT.(校准后的仪器测量精度可达到1℃.
4 结束语
高的灵敏度,但非线性误差较大.经过标定和补偿
电路,用它来测量熔炉温度主要性能指标方面完全可以达到实际需要.相比快速热电偶熔融金属高温计测量成本大幅下降,具有很高的经济效益和实用价值.
参考文献:
[1]王信化.[J].现代计量测试,(4-47.
GBLI[M].北京:
1991.
张立国,侯培国.光纤辐射式多路温度巡回检
测仪[J].电子测量与仪器学报,2002(4:
79-82.
[责任编辑:
李雪莲]
(上接第46页
图2 参照物图
运用上面改进公式进行MATLAB编程,所得摄像机
内部参数如下:
f=14.2380mm,
U0(pixels=257.2169,V0(pixels=246.4390,
K1(mm-2=-1.601640e-2
K2(mm-2=3.485141e-3
T1(mm-1=9.781695e-3
T2(mm-1
=6.745
896e-3.
式中f是焦距;
(U0,V0是图像中心点坐标;
(K1,K2,(T1,T2
分别是摄像机镜头径向畸变和切向畸变系数.
4 结 论
本文主要研究了基于3种畸变模型的摄像机定标算法的MATLAB实现,对畸变进行了修正,修正前后单个像素标定的标准偏差由0.4196下降到0.35583.试验结果表明标定精度有所提高.
[1]WENGJY,COHENP,HEMIONM.Cameracalibrationwithdistortionmodelandaccuracyevaluation.IEEETransonPA2MI,1992,14(10:
965-980.
[2]马颂德,张正友.计算机视觉—计算理论与算法基础[M].北京:
科学出版社,1998.
[3]于起峰,陆宏伟,刘肖琳.基于图像的精密测量与运动测量[M].北京:
科学出版社,2002.
94・第7期 柳长源:
蓝宝石光纤温度传感器的非线性误差分析与校正
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 摄像机 标定 算法 MATLAB 语言 实现 概要
![提示](https://static.bdocx.com/images/bang_tan.gif)