版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 数码相机定位 摘要本文要求对靶标上的点在像平面上的像坐标的确定问题建立数学模型和算法,确定其像的坐标,以及两部相机的相对置。针对问题一,先采用了针孔成像模型,在具体的求解过程中,为了便于计算又采用了摄相机标定线性模型。针对问题二,即对模型的求解,根据射影变换的不变性(几何元素点、线、面等变换后仍保持原先的种类),找出实物中圆的公切线与像片中像的公切线上相对应的点,把这些点带入模型中,通过最小二乘法求出的投影矩阵,再求得靶标上圆、的圆心在像平面上的像坐标分别为、(582,502)、,此处像平面以像片左上角顶点为坐标原点,以像素为单位。针对问题三,以图像平面上的所有圆的像点,通过原模型计算出它在
2、物平面上的坐标,判断这些坐标点落在靶标圆上的点的多少,计算出能落靶标圆上的点与总的像点的比值,即精确率为93.6%,;再选取特殊的特征点,检验模型计算的值是否存在整体的偏移,其计算结果为:在物平面的水平方向向左偏移0.4个像素,垂直方向向上偏移1.7个像素,便可以用此偏移位移对像平面上圆心的位置进行较正。对于问题四,先利用问题一、二的方法得到左摄像机与右摄像机像面上的对应的匹配点(二者是空间同一点在左、右摄像机像面上的点),采用双目立体视觉测量数学模型,求出两部摄像机坐标系之间的旋转矩阵和原点之间的平移矢量,从而找出两部固定相机相对位置。在模型的推广与改进中,不仅考虑到了摄像机畸变问题,利用畸
3、变系数标定原理建立方程,解得畸变参数。还设计出了一个比原靶标更好的靶标,使得确定像的坐标更容易、更精确。从而实现对模型的推广与改进。关键词:旋转矩阵切点平移矢量投影矩阵偏移位移 精确率一、 问题的重述数码相机定位是指用数码相机摄制物体的相片确定物体表面某些特征点的位置。最常用的定位方法是双目定位,即用两部相机来定位。对物体上一个特征点,用两部固定于不同位置的相机摄得物体的像,分别获得该点在两部相机像平面上的坐标。通过两部相机精确的相对位置,用几何的方法得到该特征点在固定一部相机的坐标系中的坐标,即确定了特征点的位置。于是对双目定位,精确地确定两部相机的相对位置就是关键,这一过程称为系统标定。标
4、定的一种做法是:在一块平板上画若干个点,同时用这两部相机照相,分别得到这些点在它们像平面上的像点,利用这两组像点的几何关系就可以得到这两部相机的相对位置。然而,无论在物平面或像平面上都无法直接得到没有几何尺寸的“点”。实际的做法是在物平面上画若干个圆(称为靶标),它们的圆心就是几何的点了。而它们的像一般会变形,所以必须从靶标上的这些圆的像中把圆心的像精确地找到,标定就可实现。有人设计靶标如下,取1个边长为100mm的正方形,分别以四个顶点(对应为A、C、D、E)为圆心,12mm为半径作圆。以AC边上距离A点30mm处的B为圆心,12mm为半径作圆,如图1所示。图1 靶标示意图用一位置固定的数码
5、相机摄得其像,如图2所示图2 靶标的像要求:(1) 建立数学模型和算法以确定靶标上圆的圆心在该相机像平面的像坐标, 这里坐标系原点取在该相机的光学中心,x-y平面平行于像平面;(2) 对由图1、图2分别给出的靶标及其像,计算靶标上圆的圆心在像平面上的像坐标, 该相机的像距(即光学中心到像平面的距离)是1577个像素单位(1毫米约为3.78个像素单位),相机分辨率为1024×768;(3) 设计一种方法检验你们的模型,并对方法的精度和稳定性进行讨论;(4) 建立用此靶标给出两部固定相机相对位置的数学模型和方法。二、模型的假设及符号说明问题假设:1用于摄像的透镜是理想的透镜成像,因透镜的
6、不规则产生的影响可以忽略的;2假设数码相机所成的图像不产生枕形失真与桶形失真;3假设图像的轮廓清晰,能找出图像轮廓;4相机凸透镜的主光柱垂直通过像平面的中心;符号说明:-摄像机坐标系与世界坐标系的旋转矩阵-表示以像素为单位的图像坐标系的坐标-在,坐标系中的坐标-从世界坐标系的原点到光心的矢量-为一问中摄像机的焦距,即光学中心到像平面的距离-物点在摄像机坐标下的坐标-从世界坐标系到像平面坐标系的投影矩阵-精确率(能返回到靶标上的像点个数与总体像点个数的比值)-左摄像机的有效焦距-左摄像机的有效焦距-右摄像机拍摄图像在对应图像坐标系中的坐标-左摄像机拍摄图像在对应图像坐标系中的坐标-点在右摄像机坐
7、标系中的坐标-实际像平面坐标三、问题的分析1)、问题一的分析首先,空间中的一点通过光学透镜在像平面上成一个像点,将像点和物点都置于以光学中心为原点的相机坐标系中,根据已知的像距和成像原理,建立起像点与物点的转换关系。其次,在像坐标系中,因数码相机的CCD感光材料上的像是由已知个数的像素点构成,那像的大小与像素点也存在一个转换关系。再次,空间中的任意一点,同时存在于世界坐标系与相机坐标系中,所以此点在两个坐标系中的坐标必然存在一下的转换关系。最后,已知在世界坐标系中的一点的坐标,可以通过世界坐标系与相机坐标系的转换关系,可求得它在相机坐标系中的坐标,再通过像点坐标与物点坐标的转换关系,便可求得点
8、在相机坐标下的像点的坐标,因为相机的主光柱垂直通过像平面的中心,且焦距已知,所以像点在相机平面上的坐标的中的两个坐标量便是点在像平面的坐标。2)问题二的分析将像经数字图像处理后,再求像中不规则圆的边界。首先,因为已经假设相机成像无枕形失真与桶形失真,所以在靶标中的三点一线,那在像平面中对应的三点也一定一线,可以证明(证明见后)靶标中圆上相切的点一定也是在像中的不规则园上的切点,即图3中点与图4中点一一对应。然后,将这些点在像坐标系中的坐标代入问题一所得的像坐标与世界坐标的转换关系中,只要找的点足够多(实际上转换关系(1.9)中可以看出只需要六个点,而这样的切点实际上能找到18个以上),就可以通
9、过方程组的最小二乘法可解得像坐标与世界坐标的转换矩阵,如(1.5)式。最后,再将世界坐标系中的五个圆心的世界坐标带入上已经解得的像坐标与世界坐标的转换关系中,便可求得五个圆心在像坐标系中的位置为、(582,502)、。实际上经过问题三的误差分析与稳定性分析,可知这样求得的精确率为93.6% 。3)问题三分析对于一、二问中模型的精确度讨论,从两个方面对其进行讨论。首先对像平面上的每个像点通过原模型计算其在物平面的坐标,并判断它是否落在物平面的靶标上,用能落在物平面上的靶标的个数与总的像平面上像点个数的比值作为精确率;因可能存在系统误差,使像点在同一方向上发生移位,故在相互垂直两个方向,在物平面的
10、水平和垂直方向上分别取值几个特征点,通过原模型计算出相应的像坐标,再用计算出的坐标与计算机对图像直接读取的坐标进行比较、判断。4)问题四分析因在此问题中的靶标为确定的,用两部固定相机对此靶标摄得其像,又在对问题一、二的求解过程中可知投影矩阵可以求解出,故靶标上的每个点在每张相片上的相应点的像坐标均能得到。即左摄像机像面上的点都能在右摄像机中找到对应的匹配点(二者是空间同一点在左、右摄像机像面上的点),故可以建立匹配点之间的关系,从而找出两部固定相机相对位置。四、模型的建立与求解问题一1、像素坐标系与物理坐标系之间的转换关系由于本问题中数码相机分辩率为,也就是此数码相机的CCD感光器是由个像素点
11、构成,所以得到的靶的像也是由个点构成。因此,需要建立像素与以物理单位(mm)表示的坐标的转换关系。 图3 图像坐标系建立图像坐标系如图3。其中表示以像素为单位的图像坐标系上的坐标,表示以mm为单位的图像坐标系的坐标。并且在坐标系中,原点定义在数码相机的主光柱与图像的垂直交点处,即坐标系中的点,每一个像素点在轴与轴方向上的物理尺寸分别为、,则图像中的任意一个像素在两个坐标系下的坐标有如下关系: (1.1)因为式中出现了坐标量加上一个常量,所以如果在二维坐标系中用矩阵表示它们之间的转换关系为显然此矩阵表示法因后面加了一常量列,所以并不会对坐标转换带来方便,可能还会使变得更复杂。因此为了方便后面坐标
12、系之间的转换,需用齐次坐标l表示法表示两个图像坐标系中的点,分别表示为和,再将(1.1)的转换关系用齐次坐标系表示即为 (1.2)这样去掉了后面的常量列,方便点集从一个坐标系到另外一个坐标系的转换。2、世界坐标系与相机坐标系的旋转关系又根据数码相机成像原理图,如图4dcbaDACBSbcda图4 数码相机成像原理图1其中平面ABCD表示物平面,平面abcd表示像平面,矩形abcd表为ABCD所成的倒立的像,表示相机的光学中心,表示镜头的主光柱与像平面的交点。根据假设,点为像平面abcd的几何中心,且垂直于像平面abcd,根据成像原理。、分别物点、所对应的像,分别将、绕光学中心点旋转,成新的平面
13、abcd,与原像平面abcd平行,其中、分别与像点、对应,这样以新的平面abcd代替原像平面abcd,便使像平面与物平面成正立的对应的关系,且从物点到光学中心的连线与平面abcd的交点便是像点。图5 世界坐标系与相机坐标系由于相机可放在环境中的任意位置,所以可以在环境中选一个坐标系来描述相机的位置和其它任何点的位置,以此坐标系为世界坐标系,由轴构成,所以相机坐标系可与世界坐标系之间的关系可以用旋转矩阵与平移向量来描述,令空间中的一点在齐次世界坐标系下的坐标为,在齐次相机坐标系下的坐标为,于是存在如下的关系 (1.3)其中为正交单位矩阵;为三维平移向量;; 为矩阵。3、在相机坐标系中像点坐标与物
14、点坐标的对应关系。由透镜成像的坐标关系图如下图6图6:透镜成像的坐标关系图中点为物点,为像点,光学中心,为焦距,则显然物点到主光柱的距离与像点到主光柱的距离有如下关系当然此关系在相机坐标系中也成立,即有其中表示点的图像坐标,表示空间中的点在相机下的坐标。用齐次线性关系组表示此成像关系为 (1.4)其中为成像的透视投影矩阵。4、求以世界坐标系1表示的点与其在像坐标系中的像素位置的对应关系将(1.3)式和(1.2)式代入(1.4)式,便可得到以世界坐标系表示的点与其在像坐标系中的像素位置的对应关系 (1.5)其中,如图6中从物点做到主光柱的垂线,便表示垂点到在相机的光学中心的距离。5、求(1.5)
15、式中的M矩阵的算法5.1、建立世界系与图像坐标系从(1.5)中知M为一的矩阵,现忽略其中元素间的关系,将M视为含12个未知数的矩阵得(1.5)式如下 (1.6)因为表示世界坐标系中的一个坐标,所以可以将世界坐标系的坐标原点置于靶标上A圆与C圆的上切线与A圆和E圆的左切线的交点上,且以靶标平面为平面,以纵柱往下为的正方向,横柱往右方向为的正方向,如图7。并得到坐标柱与圆的五个切点,。图7 以靶标平面为世界坐标系的平面建立的世界坐标系以图像的左上角为坐标原点建立图像坐标系,以像素为单位,以向下为的正方向,向右为的正方向,如图8图8 图像坐标系现将(1.6)式展开,得到以下三个方程 (1.7)将(1
16、.7)中的第一式除第三式,第二式除第三式分别消去后,可得到两个关于的线性方程组 (1.8)在此式中可知,如果靶标上有个特征点,并且知道它们在像中的坐标,就可以直接代入便得式(1.9) (1.9)根据靶标平面建立的世界坐标系,所以;实际上从(1.9)式可得知道只要,那它为其它任意实数值并不影响与的关系,从而取定,从而得到关于矩阵其他元素的个线性方程,这些未知元素的个数为11个,记为11维向量,将上式简写成 (2.0)其中,为式(1.9)左边矩阵;为未知的11维向量;为式(1.9)右边的维向量;为已知向量。对于式(2.0),可以利用线性方程组的常规解法求出矩阵。当时,可用最小二乘法求出上述线性方程
17、的解为: (2.1)向量与构成了所求解的矩阵。由上可见,由空间6个以上已知点与它们的图像点坐标就可以求出矩阵。问题二1、找世界坐标系与像坐标系中能够确切对应的点1.1、证明平面上任意两圆的切线的切点与平面上的相应的不规则圆的切线的切点有一一对应的关系为了方法说明,此处仅以假设的像的上方的公切线上的切点为例。将图像进行数字化处理,找出各圆的像的边界,如图9。图9 各圆的边界实际上,如图10,假设靶标中的两个圆有一条都位于圆心上方的切线,在圆边界上的任一点(除切点与切线的距离为零外)都与切线有垂直距离,且都在切线下方。而数码相机的成像只会缩小的大小,而极限就是,当的所成像的长度小于一个像素单位的物
18、理的长度时,则显示出来的图像有多个切点,如图10所示,但决不会出现在切线的上方。所以在靶标上的圆A和圆C与它们公切线的切点,在所成的图像中还是圆A的像与圆C的像与它们公切线的切点。但在图像中,同一个圆的图像与切线的切点个数可能不唯一,如图10图10 连续的切点与数字化后切点的结果1.2、寻找图像中任意两个圆的公切线上的切点的方法我为了使叙述方便,以下仅以求圆A和圆C的上切线的切点为例。从圆A和圆C的像的边界上各取一相坐标点和,如图11图11 从圆A和圆C的像的边界上找点做直线方程然后连接与点,如图11,建立直线方程为 (2.2)将此直线向上移动一个像素单位,即变成 (2.3)将代入(2.3)的
19、直线方程,解出,将向小方取整记为,再判定中是否还有圆A与C图像的边界点,如果还有,记相应的点为,用它来替换(2.3)式中,点,重复此过程一直到某一个,使中不再有圆A与C图像的边界点,那,即为所要求的切点。同理可得切线为圆的下方、左方、右方的迭代方程如下 (2.4)当求左右切线时代入(2.3)的直线方程,解出,将向小方取整记为,再判定,可得切线为圆的左方的迭代方程如下 (2.5)同理可得切线为圆的右方的迭代方程如下 (2.6)1.3、寻求减少求切点的迭代次数的方法通过matlab数字图像处理将像变矩阵后,通过程序(附录见附录)求得每个圆的像的水平切线的切点的坐标,从其中选取(2.3)式需要的初始
20、点,可很好地减小迭代次数和迭代速度。1.4、用matlab程序求像坐标系上的圆的像的水平方向、竖直方向的切线上的切点如表一(程序见附录)表一 部份圆的部分边界点(由于页面限制,只选取部分数据录入)A上u317318319320321322v149149149149149149下u316317318319320321322323324325326v231231231231231231231231231231231左u282282282282282282282282282282282282282v182183184185186187188189190191192193194C上u637638639
21、640641642643644645646647648649v176176176176176176176176176176176176176下u635v252左u604604604604604604604604604604604604604v210211212213214215216217218219220221222D上u580581582583584585586587588589590591592v471471471471471471471471471471471471471下u570571572573574575576577578579580581582v5365365365365365
22、36536536536536536536536左u549549549549549549549549549549549549549v501502503504505506507508509510511512513E上u282283284285286287288289290291292293294v467467467467467467467467467467467467467下u280281v538538左u246246246246246246246246246246246246v500501502503504505506507508509510511在以上数据表中选取边界点坐标,根据选取的方向代入
23、(2.3)(2.6)中相应的表达式中计算得世界坐标系中与像坐标系中几个水平与竖直切线上的切点之间的对应关系如下表二(程序见附录)表二 几个水平与竖直切线的之间的切点对应关系坐标B圆上切点420157429C圆上切点1120176653A圆左切点012182282E圆左切点0112500246C圆左切点10012210604D圆左切点100112501549A圆下切点1224231316C圆下切点11224252635E圆上切点12100476296D圆上切点112100471598E圆下切点12124538281D圆下切点1121245365831.5、利用表二代入(1.9)式得矩阵如下表三表
24、三(1.9)式中矩阵的值M矩阵3.7995-0.10990284.72620.43193.65970143.23530.00080.00101将表三中数据代入(1.6)得 (2.7)1.6将世界坐标系中的靶标上的五个圆心的坐标代入(2.7)式,可得五个圆的圆心如表四对应关系表四 五个圆的圆心在像坐标系中的坐标ZA322188-50.6614 51.8519 417.1958B424196-23.6772 49.7354417.1958C64321334.2593 45.2381417.1958D58250218.1217 -31.2169417.1958E285500-60.4497 -30.
25、6878417.1958表四中第二、三列为像的圆心在(像坐标系)上的坐标,即像素的位置;第四、五、六列表示像的圆心在相机坐标系下的坐标,即坐标系原点取在该相机的光学中心,像的圆心在该相机像平面的像坐标,再将求得的坐标标于像中如下图12所示图12 靶标圆的圆心在像坐标系中的位置问题三因摄相机采集的图像经数字图像处理后,其图像的取值不再具有连续性,在图像的边缘部分可能会产生模糊的现像(把像片放大后可以观察到图像边缘有的点成一条直线),在对一、二问讨论的过程中,利用了上边缘上的点找切线点,故对一问中的模型的精度进行检验是有必要的。1、首先从整体上对所做模型的精确率进行讨论。若计算出的投影矩阵的值是绝
26、对精确的,显然物平面上的靶标的点在像平面内几乎均能找到与之对应的点(靶标边界点可能找不么),反之,像平面上的点均能在物平面上找到相对应的靶标的点,即越多的像平面上的点通过计算落在物平面的靶标上,其精确率越高。由问题一中式),靶标上的点在世界坐标系中的坐标与相应像点在图像坐标系的坐标满足关系式(3.1)其中为投影矩阵中的元素,均为已知量;像平面上的点在图像坐标系的坐标也均为已知值,故将像平面中像点的所有的图像坐标代入式(3.1),从而得到物平面中与每个与像点相对应的点。若点在靶标上,则此坐标点满足不等式(3.2)(3.3)(3.4)(3.5)(3.6)中的一个,反之,若五个方程均不满足,则该点在
27、靶标外。通过此方法,可以利用找出的己知的点对问一、二中的模型的精度加以提高。首先逐步增加点的对数,经上述思想对模型进行对比,其结果如下表 表五 精确度讨论所取点的对数n误码率偏移量(单位:像素)X方向Y方向6 0.0682 -0.20 -2.10 7 0.0639 -0.40 -1.70 8 0.0642 -0.40 -1.70 9 0.0654 0.20 -0.70 10 0.0669 1.40 -0.50 11 0.0642 1.10 -0.50 12 0.0671 1.30 -0.20 用用计算机搜索求解可知,像平面上的像点个数22618个,代入其中七对已知点的坐标(如表六) ,求得与像
28、点相对应的物点在靶标上的有20073个。表六XYvu42015742911201766530121822820112500246100122106041001125015491224231316故其精确率为即精确率为93.6%。2、 从整体上对所做模型的精确率的讨论,只检验了模型的初步精度,因为模型可能存在系统误差,使像点在同一方向上发生移位。所以设计以下方法对模型进行进一步讨论在物像平行于轴和轴的方向分别找出几个特征点(此处找的是平行于轴和轴的公切线与靶标的交点,即切点),如下图所示图13 世界坐标系中水平切线与竖直切线在物平面的水平上别取值10个特征点(图13中第110个点),把这些点通过
29、原模型计算出相应的像坐标,用计算出的坐标与计算机对图像直接读取的坐标进行比较、判断,即用的平均值来检验在水平方向上的移位量。同理,在物平面的垂直方向上别取值8个特征点(图13中第1118个点),把这些点通过原模型计算出相应的像坐标,用计算出的坐标与计算机对图像直接读取的坐标进行比较、判断,即用的平均值来检验在垂直方向上的偏移量。,得到结果为:在物平面的水平方向向左偏移0.106mm,垂直方向向上偏移0.449。问题四在此问题中的靶标为确定的,用两部固定相机对此靶标摄得其像,又在对问题一、二的求解过程中可知投影矩阵可以求解出,故靶标上的每个点在每张相片上的相应点的像坐标均能得到。即左摄像机像面上
30、的点都能在右摄像机中找到对应的匹配点(二者是空间同一点在左、右摄像机像面上的点),故可以建立匹配点之间的关系。设左摄像机位于世界坐标系的原点处且无旋转,图像坐标系为。有效焦距为;右摄像机坐标系为,图像坐标系为,有效焦距为,图14 双目立体视觉测量中空间点三维重建由(1)、(2)问中建立的摄像机透视变换模型有(4.1)(4.2)坐标系与坐标系之间的相互位置关系可通过空间转换矩阵表示为(4.3)其中,分别为坐标系与坐标系之间的旋转矩阵和原点之间的平移矢量。由式(4.1)(4.3)可知,对于坐标中的空间点,两摄像机像面点之间的对应关系为(4.4)式中,即为一个比例因子。因点与点为匹配点(空间同一点在
31、左、右摄像机像面上的点),它们为已知量,也为已知量,由图形()可知也为已知量。即当取定一对匹配点与后均为已知量。此时的方程式(4.4)与方程式(3.)类似,故可以用问题三的解法(此处不再祥细说明其解法),即找出多于对匹配点(建议用对匹配点)在Matlab中编程对其进行求解即可解得矩阵,即得到坐标系与坐标系之间的旋转矩阵和原点之间的平移矢量。五、模型的优缺点分析优点:本文对靶标上的点在相机像平面的像坐标问题采用了针孔成像模型,在具体的求解过程中为了便于计算再采用摄相机标定线性模型,根据射影变换的不变性(几何元素点、线、面等变换后仍保持原先的种类),找出了对应的切点,并给出了较好的实际可行的算法,
32、给出了精确度达到93.6%的解靶标上圆的圆心在该相机像平面的像坐标。在对模型的的精度和稳定性进行讨论过程中,从两个角度对模型进行讨论,得出模型效果好结论。对用此靶标给出两部固定相机相对位置的确定给出了实际可行的数学模型和方法。并且在模型的推广和改进中主要考虑到摄像机畸变问题,利用畸变系数标定原理建立方程,解得畸变参数,从而实现对模型的推广与改进。缺点:该模型主要是在假设用于摄像的透镜是理想的透镜成像,即因透镜的不规则产生的影响可以忽略的条件下进行的,而实际上,实际的镜头并是理想的透视成像,而是带有不同程度的畸变,使空间点所成点的像并不在线性模型所描述的位置,而本文没深入讨论畸变对像坐标的影响。
33、六、模型的推广和改进推广和改进一在前面的讨论过程中都是在理想的透视成像的条件下进行的,实际上,实际的镜头并是理想的透视成像,而是带有不同程度的畸变,使空间点所成点的像并不在线性模型所描述的位置,而是在受到镜头失真影响而仿移的实际像平面坐标。由射影变换性可知点列交比是射影变换中的基本不变量,且共线四点交比具有特性,其中表示一条直线上的四个点中两个简比的性质,如图所示对于空间同一直线上的四个点,其交比可以写成如下形式:(1)根据透视原理,空间点与对应图像点的坐标关系为(2)空间四点、对应的图像点分别为、,根据交比的不变性质有(3)一般情况下,一阶向径畸变已足够描述非线性畸变,所以可以只考虑径向畸变
34、。其畸变模型如下:(4)其中,则可以得到如下的表达式:(5)将式(5)代入已知条件(3),便可解得畸变参数。故按问题一、二中提供的方法计算得到的像坐标代入式(4)便得到了更精确的解。推广和改进二实际上,按照题中所给的靶标标定方法,在求取世界坐标系与像坐标系中对应切点是比较复杂的,如果将靶标设计成如图15,三个全等等边三角形的三个顶角分别在一条直线上,很容易与像中的三个三角形的顶定对应,便可直接将像中与世界坐标系中对应的9个点的坐标代入(19)式,算出投影矩阵,从而确定世界坐标系三个全等等边三角形的中心在靶标中的像。图15 等边三角形标定法七、参考文献1 张广军,视觉测量,北京:科学出版社,20
35、08年;2朱肇光、孙护、崔炳光,摄影测量学,北京:测绘出版社,2004;3张祖勋,数字摄影测量研究30年,武昌:武汉大学出版社,2007;4王之卓,摄影测量原理,武昌:武汉大学出版社,2008;5张祖勋、张剑清,数字摄影测量学,武昌:武汉大学出版社,2002;6陈利红、毛剑飞,诸静,CCD摄像机标定与修正的简便方法,浙江大学学报(工学报),第卷第四期:407409页,2003年7月;7 宋良君、谭光宇、宋龙,结构光目测系统标定方法,哈尔滨理工大学学报,第12卷第5期:13页,2007年;8谭永基、萘志杰,数学模型,上海:复旦大学出版社,2005年;9 石博强、赵金,Matlab 数学计算与工程
36、分析范例教程,北京:中国铁道出版社,2005年10朱仁峰,精通Matlab 7,北京:清华大学出版社,2006年。附录(1)、第一、二问所设计的程序:getImageEdge.m %图像处理,获得图像的边界clearI=imread('shumo.bmp');% shumo.bmp为靶标图像文件level = graythresh(I);BW = im2bw(I,level);%转化为二值图象:0黑1白rowNum,columnNum=size(BW);BW1=uint8(BW);BW2 = edge(BW1,'sobel');BW3=ones(rowNum,c
37、olumnNum)-BW2;%BW3为边界图像,且0代表黑、1代表白imshow(BW3);downsheft.m %通过(x1,y1)(x2,y2)建立直线方程,求得线的往下切线方向的是否还有边界点function downsheft(bw,x1,y1,x2,y2) Y=;downsheft=;for y=1:1024; x=(y-y1)*(x2-x1)/(y2-y1)+x1; %直线方程 x=ceil(x); %往坐标为增大的方向取整 if x>2; %防止产生x为零的情况 if bw(x,y)=0 %判断(x,y)是否为边界点 downsheft=downsheft;x,y; %交
38、直线上的边界点组成一个数组 end endenddownsheft %输出结果fin_f_ll.m %找出每个圆的下水平切线位置function fin_f_ll(bw,y1,y2) for i=500:580 a=bw(500+(580-i),y1:y2); border=find(a=0); num1,num2=size(border); break; endendborder=border+y1-1 i=580-(i-500)fin_hl.m %找出每个圆的上水平切线位置function fin_hl(bw,y1,y2,y) for i=y:768; a=bw(i,y1:y2); bor
39、der=find(a=0); num1,num2=size(border); if num2>=1; break; endendborder=border+y1-1 i fin_rl.m %找出每个圆的左水平切线位置function fin_rl(bw,x1,x2,x) for i=x:1024; a=bw(x1:x2,i); border=find(a=0); num1,num2=size(border); if num1>=1; break; endendborder=border+x1-1 i leftsheft.m %通过(x1,y1)(x2,y2)建立直线方程,求水平切点
40、function leftsheft(bw,x1,y1,x2,y2) Y=;leftsheft=;for x=2:768; y=(x-x1)*(y2-y1)/(x2-x1)+y1; y=floor(y); if y>2; if bw(x,y)=0 ; leftsheft=leftsheft;x,y; end endendleftsheftudsheft.m %通过(x1,y1)(x2,y2)建立直线方程,求得有圆的下切线上的切点function udsheft(bw,x1,y1,x2,y2) Y=;upsheft=;for y=1:1024; x=(y-y1)*(x2-x1)/(y2-y
41、1)+x1; x=floor(x); if x>2; if bw(x,y)=0 upsheft=upsheft;x,y; end endendupsheftgetM.m %根据模型求得M矩阵的函数function M=getM %I(Image)-代表像,O(Object)代表物 %可在这里随意改变I、O的值,进而获取不同的结果O=42 0;112 0;0 12;0 112;100 12;100 112;12 24;I=157 429;176 653;182 282;500 246;210 604;501 549;231 316;r,c=size(I);Z=0;K=;U=;for i=1
42、:r A=O(i,1) O(i,2) Z 1 0 0 0 0 -I(i,2)*O(i,1) -I(i,2)*O(i,2) -I(i,2)*Z 0 0 0 0 O(i,1) O(i,2) Z 1 -I(i,1)*O(i,1) -I(i,1)*O(i,2) -I(i,1)*Z*O(i,1); K=K;A; B=I(i,2);I(i,1); U=U;B;end%m=KU;m= pinv(K'*K)*K'*U;m=m;1;m=m'M=m(1:4);m(5:8);m(9:12);getImagePoint.m %根据物点坐标求像坐标的函数function firstPoint l
43、astPoint=getImagePoint(M,X,Y)Z=0;u=round(X*M(1,1)+ Y*M(1,2)+ Z*M(1,3) +M(1,4)/(X*M(3,1) +Y*M(3,2)+ Z*M(3,3)+ M(3,4);v=round(X*M(2,1)+Y*M(2,2)+ Z*M(2,3) +M(2,4)/(X*M(3,1)+ Y*M(3,2) +Z*M(3,3)+ M(3,4);firstPoint=u,v;x=(u-1027/2)/3.78;y=(-v+768/2)/3.78;lastPoint=x,y;getFivePoint.m %求得AE五个圆的圆心坐标clear %求五
44、个圆的圆心的坐标clcM=getM;Object=12,12;42,12;112,12;112,112;12,112;result1=;result2=;for i=1:5 pointFirst,pointLast=getImagePoint(M,Object(i,1),Object(i,2); result1=result1;pointFirst; result2=result2;pointLast;endz=1577/3.78;disp('A、B、C、D、E圆的圆心在像上的坐标分别为:(以像素个数为单位)')disp(result1);disp('A、B、C、D、E
45、圆的圆心在空间坐标系的坐标分别为:(以毫米为单位)')disp(result2,z*ones(5,1);getAnyPoint.m %求得物体中任意点在像中的坐标cleardisp('请输入物体的坐标:')X=input('X轴坐标:');Y=input('Y轴坐标:'); M=getM;pointFirst,pointLast=getImagePoint(M,X,Y);disp('特征点在像上的坐标为:(以像素个数为单位)')disp(pointFirst);disp('特征点在空间坐标系的坐标为:(以毫米为单位)')disp(pointLast(1),pointLast(2),1577/3.78);第三问所设计的程序:getObjectPoint.m %根据像点
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广告创意类岗位面试题目及答案解析
- 2026年网络在线学法普法考试题库含答案【达标题】
- 2026年网络在线学法普法考试题库含答案【巩固】
- 2026年教师资格之中学教育知识与能力考试题库300道带答案(突破训练)
- 2026年初级经济师之初级经济师基础知识考试题库300道附完整答案(全优)
- 2026年高校教师资格证之高等教育法规考试题库附完整答案【名师系列】
- 护理专业的社会责任与角色
- 《找因数》数学课件教案
- 社区团购供应链五年整合:产地直采与库存优化报告2025年消费者行为洞察
- 《地理信息系统在高中地理信息化教学资源整合中的应用研究》教学研究课题报告
- 2025中央广播电视总台招聘144人笔试历年题库附答案解析
- 2026年瓦工职业技能鉴定考试题库及答案
- 2025年云南省人民检察院聘用制书记员招聘(22人)笔试考试参考题库及答案解析
- 胃肠外科围手术期护理要点
- 竣工资料归档与管理流程
- 购车合伙协议书模板
- 二手摩托车买卖合同范本
- 2026年山西省财政税务专科学校单招职业倾向性测试题库附答案
- MOOC 理解马克思-南京大学 中国大学慕课答案
- β-丙氨酸补充对运动能力的影响
- 南昌工程学院水电站课程设计
评论
0/150
提交评论