高教社杯全国大学生数学建模竞赛承诺书我们仔细阅读了中国大学生数学建模竞赛的竞赛规则.我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。我们知道,抄袭别人的成果是违反竞赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。如有违反竞赛规则的行为,我们将受到严肃处理。我们参赛选择的题号是(从A/B/C/D中选择一项填写):我们的参赛报名号为(如果赛区设置报名号的话):所属学校(请填写完整的全名):参赛队员(打印并签名):1.2.3.指导教师或指导教师组负责人(打印并签名):日期:年月日赛区评阅编号(由赛区组委会评阅前进行编号):高教社杯全国大学生数学建模竞赛编号专用页赛区评阅编号(由赛区组委会评阅前进行编号):赛区评阅记录(可供赛区评阅时使用):评阅人评分备注全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):数码相机定位问题的研究于洋(南京航空航天大学,南京210016)摘要:在充分理解题意的基础上,我们提出了合理的假设。通过对问题的深入分析,解决了数码相机的标定问题和双目定位的问题。针对问题一,我们研究了数码相机定标,采用小孔成像模型和直接线性转换,利用最小二乘法解超定线性方程组,得到世界坐标系的点与图像坐标系中的点之间的对应关系。针对问题二,我们通过matlab对图像进行处理,得到靶标像图中标定的十个点的像素坐标。然后,解得世界坐标与图像坐标的转换关系,利用转换关系求得五个点的圆心在图像坐标系的位置(59.76,31.07),(-49.88,-51.29),(-23.49,-49.30),(18.82,31.60),(33.79,-44.98),由图像处理求中心的方法得到的结果比较,结果相近。针对问题三,我们将靶标示意图圆周上的点投影到像平面并与之比较找出像素坐标值之间的差异,得到偏差的均方差的值为20.45pix,即20.0315mm。从而说明模型的精确性较高,并对畸变的问题进行了讨论。针对问题四,通过相同的靶标和两部相机不同的照片,我们可以求得两部相机各自的外部参数R、t,再利用世界坐标系到光心坐标系的欧式变换,可得到两部相机的光心在世界坐标系中各自的坐标,从而确定两部相机的相对位置。关键词:定标;直接线性模型;畸变;双目定位1、问题的提出数码相机定位在交通监管(电子警察)等方面有广泛的应用。所谓数码相机定位是指用数码相机摄制物体的相片确定物体表面某些特征点的位置。最常用的定位方法是双目定位,即用两部相机来定位。对物体上一个特征点,用两部固定于不同位置的相机摄得物体的像,分别获得该点在两部相机像平面上的坐标。只要知道两部相机精确的相对位置,就可用几何的方法得到该特征点在固定一部相机的坐标系中的坐标,即确定了特征点的位置。于是对双目定位,精确地确定两部相机的相对位置就是关键,这一过程称为系统标定。标定的一种做法是:在一块平板上画若干个点,同时用这两部相机照相,分别得到这些点在它们像平面上的像点,利用这两组像点的几何关系就可以得到这两部相机的相对位置。然而,无论在物平面或像平面上我们都无法直接得到没有几何尺寸的“点”。实际的做法是在物平面上画若干个圆(称为靶标),它们的圆心就是几何的点了。而它们的像一般会变形,如图1所示,所以必须从靶标上的这些圆的像中把圆心的像精确地找到,标定就可实现。图1靶标上圆的像有人设计靶标如下,取1个边长为100mm的正方形,分别以四个顶点(对应为A、C、D、E)为圆心,12mm为半径作圆。以AC边上距离A点30mm处的B为圆心,12mm为半径作圆,如图2所示。图2靶标示意图用一位置固定的数码相机摄得其像,如图3所示。图3靶标的像要解决的问题:(1)建立数学模型和算法以确定靶标上圆的圆心在该相机像平面的像坐标,这里坐标系原点取在该相机的焦点,x-y平面平行于像平面;(2)对由图2、图3分别给出的靶标及其像,计算靶标上圆的圆心在像平面上的像坐标,该相机的像距(即焦点到像平面的距离)是1577个像素单位(1毫米约为3.78个像素单位),相机分辨率为1024×786;(3)设计一种方法检验你们的模型,并对方法的精度和稳定性进行讨论;(4)建立用此靶标给出两部固定相机相对位置的数学模型和方法。2、模型的假设与符号说明2.1模型的假设1、假设相机的焦距不变。2、uff物距焦距。3、在影像数字变换过程中所产生的主要是仿射变形,忽略成像的电子设备等物理影响。2.2模型的符号说明,,:世界坐标。根据自然环境选定的坐标系,坐标值用,,表示,xy:图像坐标。以光轴与图像平面的交点为坐标原点,即位于图像平面的中心,X轴、Y轴分别平行于图像平面的两条垂直边,坐标值用,xy表示,单位为mm。,uv:像素坐标。以图像平面的左上角为坐标原点,X轴、Y轴分别平行于图像坐标系的X轴、Y轴,坐标值用,uv表示,且为离散的整数值,单位为像素。,,cccXYZ:光心坐标。以相机的光心为坐标原点,X轴、Y轴分别平行于图像坐标系的X轴、Y轴,相机的光轴为Z轴,坐标值用cccXYZ表示R:旋转矩阵,111213212223313233rrrRrrrrrrt:位移向量,xyzttttf:焦距uf:物距vf:像距dx:在X方向相邻像素的距离dy:在Y方向相邻像素的距离rx、ry:径向的畸变量x、y:切向畸变量,ddXY:考虑畸变时的实际图像坐标,uuXY:理想图像坐标3、模型的建立和求解3.1模型的准备3.1.1相机成像原理构成镜头是凸透镜。凸透镜有聚光的作用,能把外界的各种光线会集起来,形成一定的影像。现代照相机的复式镜头都具有聚光成像的作用。透镜成像在理想的情况下,同一物点发出的全部光线,通过透镜后仍相交于一点,每一条直线都相对于惟一的一条直线,每一个平面,都对应于惟一的一个平面。这种物与像一一相对应的关系,叫做共轭关系。一般地说,被摄物体离镜头30米以上,即称之为无穷远,用符号“∞”表示。无穷远处的物体散射出来的光线,通过镜头的透镜形成的像点,就是焦点,从焦点到透镜中心的距离,就是焦距。当物体在凸透镜的二倍焦距外时,在凸透镜的另一侧一倍焦距和二倍焦距之间成一个倒立的缩小的实像,被相机的感光设备所接受。cF2FF2F图1照相机的成像原理3.2.2坐标转换在本问题中,我们所用到的坐标系有世界坐标系,光心坐标系,图像坐标系,像素坐标系。通过空间矩阵的转变,我们建立了世界坐标系和光心坐标系,光心坐标系和图像坐标系,图像坐标系和像素坐标系的矩阵关系,使用这些关系,得到了世界坐标系和像素坐标系之间的直接关系。图2坐标系转换关系图cy.ffYX,...uuuYXP,dddYXP,fPoz,0,0YXtOwOwxwywz.....成像平面图像光心OcxYXcziOuuuYXP,fPoz,0,0dddYXP,cccYXP,图3成像示意图3.1.3用最小二乘法解超定方程设线性方程组Axb中,ijmnAa,b是m维已知向量,x是n维解向量,当mn即方程组中方程的个数多于未知量的个数时,称此方程组为超定方程组。一般来说,超定方程组无解(此时为矛盾方程组),这时需要寻找方程组的一个“最近似”的解。记rbAx,称使2r即22r最小的*x解为方程组rbAx的最小二乘解。存在如下定理:*x是rbAx的最小二乘解的充分必要条件为,*x是TTAAxAb的解。3.2问题1的建模与求解问题1中我们建立直接线性变换模型,计算圆心在像平面上的像坐标由于uff物距焦距,采用小孔成像的模型,利用直接线性变换设,,是物体上一点在世界坐标系上的坐标。世界坐标系到光心坐标系的转换关系为0111cwcwTcwXXYYRtZZ(1)其中,0元素为0的列向量。R是转移矩阵,t是位移向量。根据光学成像的针孔模型,得到光心坐标系向图像坐标系的透视投影转换,可用齐次坐标与矩阵表示:000000100101ccccXxfYZyfZ(2)其中,,,cccXYZ是光心坐标系中物体上一点P的坐标,,xy是对应图像坐标系中点p的坐标。把(1)代人(2)得到世界坐标系到图像坐标系的转换为000010011wwcwXxfYZyfRtZ(3)其中,0000001ff为满秩矩阵,可以求得其逆,同时在等号两端左乘,设MRt,则(3)式变为11121314212223243132333411111iwiwiwiwiciiwiwixXXfmmmmYYZymmmmMfZZmmmm令iixkf,iiylf,il,ik为像坐标的计算值,则对于任意一点i,有111213142122232431323334ciiwiwiwiciiwiwiwiciwiwiwiZkmXmYmZmZlmXmYmZmZmXmYmZm消去ciZ11121314313233342122232431323334wiwiwiiwiiwiiwiiwiwiwiiwiiwiiwiiXmYmZmmkXmkYmkZmkmXmYmZmmlXmlYmlZmlm所以,在世界坐标系中取n个点可以得到2n个方程。写成矩阵形式得1112131111111111411111111121222324313233100000000110000000011341342342343434.....nnkmlmkmlmkmlm(4)当211n时,可以通过上式,利用最小二乘拟合的方法,得到方程组的解。将式(4)左右两侧同时除以3434(0)mm并不影响方程组的解,式(4)可简写为KhU,其最小二乘解为1()TThKKKU。因此1234345678910111hhhhMmhhhhhhh。又因为R为正交矩阵,所以有34222910111mhhh。最后可以得到M矩阵,找出世界坐标系上的点通过投影变换到图像平面的变换关系。3.3问题2的建模与求解问题2中,我们利用问题1中给出的算法计算靶标上圆的圆心在像平面上的像坐标。3.3.1采取图像处理的方法我们将图像导入到MATLAB,把图像转换为二值图,采用计算重心的方法计算出图像中每个圆的圆心,并取得其像素坐标值(左上角为原点)。图4MATLAB计算标出的圆心像素坐标值如下表。u坐标v坐标284.6657501.7731322.8948189.4935422.996196.9423582.7329502.9824639.8994213.1522表1根据图像坐标系到像素坐标系的转换关系为001/001/10011udxuxvdyvy(5)其中,00,uv是图像坐标系原点在像素坐标系中的坐标,,dxdy分别是在X方向和Y方向相