1、1高教社杯全国大学生数学建模竞赛承 诺 书我们仔细阅读了中国大学生数学建模竞赛的竞赛规则.我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。我们知道,抄袭别人的成果是违反竞赛规则的, 如果引用别人的成果或其他公开的资料(包括网上查到的资料) ,必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。如有违反竞赛规则的行为,我们将受到严肃处理。我们参赛选择的题号是(从 A/B/C/D 中选择一项填写): 我们的参赛报名号为(如果赛区设置报名
2、号的话): 所属学校(请填写完整的全名): 参赛队员 (打印并签名) :1. 2. 3. 指导教师或指导教师组负责人 (打印并签名): 日期: 年 月 日赛区评阅编号(由赛区组委会评阅前进行编号):2高教社杯全国大学生数学建模竞赛编 号 专 用 页赛区评阅编号(由赛区组委会评阅前进行编号):赛区评阅记录(可供赛区评阅时使用):评阅人评分备注全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):3数码相机定位问题研究摘要基于双目 CCD 立体测量系统标定技术被广泛用于交通监管中,该技术的核心是摄影测量。本文利用 MATLAB 对圆的边界提取,再用最小二乘法拟合椭
3、圆曲线,并借助摄影测量基本公式建立二维模型求得靶标圆心像坐标。并对该模型作 检验,再利用针孔模型分别求得两部相机像平面对应于物平面的旋转向量t和平移向量 ,进而确定两相机的相对位置。12,R12,t首先,我们假设:已知四点的物平面坐标和像平面坐标,借助摄影测量基本公式建立二维模型求得物平面与像平面的对应关系,但有 . 八个未知12,c8数待定(将在第二问中给予求解) 。其次,我们根据 A、B、C、D、E 五个圆形靶标的成像情况利用 MATLAB 软件提取其边缘阈值。在此基础上利用最小二乘法拟合椭圆求得其中心坐标。在不考虑畸变影响的前提下,该中心坐标即为圆心的像坐标。任取 A、B、C、D、E中四
4、点代入模型一中,即可求得物平面和像平面的对应关系。再次,我们在第三问中分别以 A、B、C 为研究对象求出其在模型一的条件下的圆心像坐标。利用 检验,比较拟合椭圆中心坐标与模型一求得结果的差异,t在置信度 情况下,这三组结果无显著差异,从而检验了模型的精度及稳0.5a定性。最后利用线性相机模型(针孔模型)确定世界坐标系和计算机数字图像坐标的对应关系,从而分别求得两部摄像机的旋转矩阵 和平移向量 ,从12,R12,t而我们可以求得两相机相机坐标系间的关系: 12R1tt问题二的求解结果如下表:A、B、C、D、E 五点在像平面上的像坐标坐标点 像坐标(mm) 像坐标(像素)A (-49.83,51.
5、37) (-188,194)B (-23.51,49.43) (-89,187)C (34.16,45.13) (129,171)D (18.89,-31.47) (71,-119)E (-60.09,-31.21) (-227,-118)注:该坐标系原点为像平面的中点,向右为 x 轴正方向,向上为 y 轴正方向。1. 问题重述4(1)问题的背景摄影技术自 20 世纪 40 年代开始应用于交通事故分析,已经得到广泛的应用,但仅用做简单定性分析,随着计算机视觉和图像处理技术的发展,摄影测量技术在交通事故现场测量中的应用研究已经成为热点,国内外许多学者已经做了大量研究,使定量分析成为可能。如在 8
6、0 年代,Kerkoff 对透视投影发展的历史、透视绘图原理和透视成像原理进行了详细阐述,根据透视原理研究了利用摄影图像确定拖痕长度等的方法,逐步形成了二维摄影测量方法,开发出 Pc-rect 等现场测量软件。在 1994 年,Nicholas 等提出了交通事故现场的反投影照片三维重建法 。近年来,随着计算机视觉原理的突破和飞速发展,国内学者李江教授、许洪国教授等相继提出了利用立体视觉原理的多照片重建交通事故现场的方法,并初步开发了软件。为改变标定参考物的限制,进行照相机自标定研究,鲁光泉等提出了基于基础矩阵的交通事故现场三维重建方法。当前主要的交通事故现场重建方法,有二维方法、三维方法等。(
7、2)问题的提出用数码相机摄制物体的相片确定物体表面某些特征点的位置,目前最常用的定位方法是双目定位,即用两部相机来定位。对物体上一个特征点,用两部固定于不同位置的相机摄得物体的像,分别获得该点在两部相机像平面上的坐标。只要知道两部相机精确的相对位置,就可用几何的方法得到该特征点在固定一部相机的坐标系中的坐标,即确定了特征点的位置。于是对双目定位,精确地确定两部相机的相对位置是关键,这一过程称为系统标定。本问题的第四小问就是解决该问题。系统标定最常用的一种做法是:在一块平板上画若干个点,同时用这两部相机照相,分别得到这些点在它们像平面上的像点,利用这两组像点的几何关系就可以得到这两部相机的相对位
8、置。然而,无论在物平面或像平面上我们都无法直接得到没有几何尺寸的“点” 。所以我们实际的做法是在物平面上画若干个圆(称为靶标) ,它们的圆心就是几何的点了。而它们的像一般会变形,所以必须从靶标上的这些圆的像中把圆心的像精确地找到,系统标定就可实现。题目中第一问和第二问就是解决该问题。该题目不但要求我们建立模型和算法,而且要求我们对所见的模型进行精度和稳定性分析。在前三个问题的基础上,第四问要求我们通过物平面与像平面的对应关系找到像平面相对物平面的旋转矩阵和平移矩阵,从而建立两部相机像平面的夹角和距离关系,以便确定两部相机的相对位置。2. 条件假设(1)不考虑相机自身因素导致的误差(2)对第二问
9、中抽样选取部分边界点拟合的椭圆误差不予考虑(3)两相机透镜光心处于同一水平高度(4)两部相机的内部参数是相同(5)本题中所给图像信息和数据真实准确(6)不考虑人为因素造成的误差3. 符号说明5:物点在二维图像平面坐标系上的坐标(,)xy:物点在二维物平面坐标系上的坐标XY:表示图像的灰度值I:处理前图像的信息矩阵A:处理后图像的信息矩阵B:相机的像距(这里假定两部相机的焦距一样)f:像平面上 x 轴方向每一像素的物理尺寸dx:像平面上 y 轴方向每一像素的物理尺寸y:若图像中心在 u、v 坐标系中的坐标为( ) (以像素为单位)0(,)uv:被摄像点在世界坐标系中坐标wXYZ:被摄像点在摄像机
10、 1 中的 u、v 坐标系中的坐标1(,)v:被摄像点在摄像机 1 中的 u、v 坐标系中的坐标2u:被摄像点在摄像机 1 的相机坐标系中的 坐标1cZ Z:被摄像点在摄像机 2 的相机坐标系中的 坐标2:系统内部参数矩阵1M:系统外部参数矩阵2:投影矩阵:旋转矩阵R:平移向量t4. 模型的建立及分析6问题一的模型:对于给定的像平面上的靶标圆的图像,我们可以先提取其边界坐标,再根据最小二乘法进行椭圆拟合(在问题二中将进行详细讨论) ,用拟合椭圆的中心近似地代替靶标上圆心像的坐标。但是,当我们只有靶标上的圆而没有它的图像时,是否也可以通过某种替代关系,找出它在相机平面上的坐标呢?本文对其展开如下
11、讨论:图 1如上图所示:在靶标上建立实际坐标系 ,在相机平面内建立平面坐XY标系 ,透视中心表示相机光心。若在实际坐标系中各待求像坐标点在同一xy平面上,则可以根据直接线性变换,推出从实际坐标平面到图像平面的对应关系,若已知实际坐标系中 4 个或 4 个以上共面点的空间坐标和像坐标,这种对应关系就可以求得。根据对应关系,可以求平面上任一靶标圆心的像坐标了。其原理如下:设空间坐标系中任意点 和它在二维图像平面坐标系上的坐标为 ,(,)XYZ (,)xy根据摄影测量基本公式空间点和图像点满足 12378cxy456781cxyY假设四个已知点的空间坐标和图像坐标分别是 1(,)XY2(,)3(,)
12、XY和 可得如下方程组:4(,)XY1(,)xy2(,)3(,)xy4(,)712131781()cxycXxcyA221323738()cxycxcy4441XA156178()cxycYxcy42223563783(1)cxycxcyA4444Y通过对上述方程组的求解,我们可以得到 到 ,这样就建立起空间坐标系中1c8的点和二维图像平面对应点之间的关系,也就是说如果知道空间坐标系中一点,通过以下公式就能得到其对应点在二维图像平面的坐标 。(,)XYZ (,)xy31728456XccXcxYyY A问题二的求解:在问题一中,我们建立了求解没有图像的空间点的像坐标,它是基于 4 个以上含有像
13、坐标的空间点的。因此,只有当我们把四个(或以上)像坐标求出,模型一才是有效的。现在就已知空间点和它的图像求其像坐标的问题进行如下讨论:我们认为空间中一个圆孔经过相机成像后,在图像平面上呈现为椭圆形状。对于图像中的圆中心像坐标,可以用如下方法进行提取:自动阈值分割图像中的椭圆,提取椭圆轮廓并用轮廓数据进行最小二乘椭圆拟合,求出椭圆的中心作为空间圆孔所对应的图像坐标,下面是具体算法。1.取 ROI 图像灰度范围内的中值作为初始阈值:maxin02其中,I 表示图像的灰度值。2.根据 将图像分割成目标和背景两个部分,求出两部分的平均灰度值 ,k o。b8其中 为权重系数,一般取=1,ij(1)求出新
14、的阈值: ,*,kkijoijjij,*,kkijbijjij如果,结束迭代。去迭代结束时的为最佳分割阈值对 ROI 图像进行二值化。但是,在本题中,图像的坐标已进行二值化,因此上述步骤本文并未进行。(2)提取椭圆轮廓并拟合椭圆包含源口特征的 ROI 图像进行轮廓提取,其提取方法如下:首先将本题中所给的分别率为 的图像信息读入到 MATLAB1024768的一数组 A 中,然后利用 MATLAB 中的边界函数 edge 对数组 A 进行处理,通过这一过程我们可将图像中边界的相关信息读入另一数组 B 中,再通过对数组 B 的简单处理,我们便可得到图像的轮廓信息。得到如下图所示的图像:图 2 处理
15、前的图像(即本文中数组 A 对应的图像)9图 3 处理后的图像(即本文中数组 B 对应的图像)注:数组 A、B 都是 的二维数组,其对应元素值为 0 和 17681024其中图像上白色的区域值为 1,黑色的区域值为 0从而得到椭圆轮廓数据,下表为其中一个椭圆的轮廓上的坐标值对以 E 点为圆心的圆在像中部分边界点坐标提取编号 坐标 编号 坐标1 (502,246) 12 (493,324)2 (509,246) 13 (502,324)3 (483,254) 14 (517,318)4 (475,262) 15 (527,310)5 (471,270) 16 (532,302)6 (468,27
16、8) 17 (535,294)7 (467,286) 18 (537,286)8 (467,294) 19 (537,278)9 (469,302) 20 (536,270)10 (472,310) 21 (533,262)11 (480,318) 22 (526,254)注:该坐标系为以像左上角为原点,向下为 x 轴,向右为 y 轴,以像素为坐标单位这样通过这些边界点坐标就可以利用最小二乘法实现椭圆拟合。(3)求解椭圆的中心作为空间圆孔中心所对应的图像坐标椭圆的中心坐标可以通过如下公式求得:对于曲线 的中心坐标 可以由下式2134510cxycxcy0,xy得出: 243501c345021
17、y因此,拟合椭圆后,可以将椭圆方程的系数代入上式求出圆孔中心图像坐标。10我们依然以E点为研究对象,我们把上文表格中的E值横坐标和纵坐标分存在两个数组中:X=502,509,483,475,526;Y=246,246,254,262,254。 在本文中,我们直接采用美国人Andrew Fitzgibbon, Maurizio Pilu, Bob Fisher编的最小二乘法拟合椭圆,采用上述原理直接返回椭圆的中心E(-227,-118) 。依照此方法我们求得A、B、C、D、E的像素坐标和实际坐标如下表:A、B、C、D、E的像素坐标A 点坐标 (-188,194)B 点坐标 (-89,187)C
18、点坐标 (129,171)D 点坐标 (71,-119)E 点坐标 (-227,-118)注:该坐标系原点为像平面的中点,向右为 x 轴,向上为 y 轴,以像素为坐标单位A、B、C、D、E 五点在像平面上的像坐标A 点坐标 (-49.83,51.37)B 点坐标 (-23.51,49.43)C 点坐标 (34.16,45.13)D 点坐标 (18.89,-31.47)E 点坐标 (-60.09,-31.21)注:该坐标系原点为像平面的中点,向右为 x 轴,向上为 y 轴,以毫米为坐标单位结果的检验:因为物平面内 A、B、C 三点共线,这三点在像平面内也应该共线即 ABCK49.351.70.328BAyKx.456CBB可以近似地认为 。从而验证了我们第二问结果的科学性。AK问题三:基于成对数据的 检验:t为了比较像平面中的拟合椭圆中心点坐标和建立多元线性回归拟合出来的像平面上的靶标中心坐标的差异,我们取三对坐标 , (,)axy(,)aXY(,)bxy, 作对比试验,得到一批成对的观察值,然后分析观察(,)bXY(,)cxy(,)cXY数据作出推断,由于 A、B、C 三点坐标与其位置有关,不能看作三个独立的随机变量观察值,因此我们采用逐对比较法。如果不考虑横纵坐标的差异,我们可以将试验对象看作 6 对相互独立的观