论文第一页为承诺书具体内容和格式见本规范第二页 论文题目Word格式文档下载.docx
- 文档编号:16433658
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:19
- 大小:313.17KB
论文第一页为承诺书具体内容和格式见本规范第二页 论文题目Word格式文档下载.docx
《论文第一页为承诺书具体内容和格式见本规范第二页 论文题目Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《论文第一页为承诺书具体内容和格式见本规范第二页 论文题目Word格式文档下载.docx(19页珍藏版)》请在冰豆网上搜索。
由于本文采用的是一个优化模型,求出的是其近似解,与实际的原坐标位置有一定的偏移,所以我们需检验其精度,采用两种方法检验:
1、求出5个点的共面度,结果为mm;
2、通过用B点坐标计算出像的坐标,结果与实际相差1点像素,精度相当不错的。
对于由两部相机摄的像确定两部相机的相对位置及方向,我们给出一个模型II:
利用模型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)建立用此靶标给出两部固定相机相对位置的数学模型和方法。
二、问题的分析
针孔成像:
假设物体表面的反射光都经过一个针孔中心而投影到像平面上,即满足光的直线传播条件。
针孔成像主要有光心(投影中心)、成像面和光轴组成。
本文中的针孔是指光学中心。
本问题研究的是相机的定位问题,数码相机成像原理图如下图
(1),又光线穿过光学中心成像,所以凸透镜成像模型可以简化为一个针孔成像模型,其原理图如图
(2),由图可看出,景物所在的面为物面,底片所在的面为像面,BO为物距,OD为像距,
与
相似,已知物面任意一点的坐标即可根据相似三角形的原理求得对应像面点的坐标。
照相机成像原理
图
(1)
图
(2)针孔成像的原理图形
三、模型的建立与求解
但是由于像坐标的计算上存在误差,这种误差有可能是相机系统造成,也可能是计算标靶圆的像中心时算法所产生的。
这种误差可定是存在的,由数码相机摄制物体的相片确定物体表面某些特征点的位置,则必将导致原物象的变形,所以我们就要求的一种误差最小的方法,该问题可转化一个多目标化的最优化问题。
根据多目标求误差最小化,该问题可分四步来进行求解:
1.求出物面中的点空间坐标
在像面中对应的点
的对应关系。
2.由已知物面中圆的圆心求出对应像面中五个椭圆的中心点
。
3.该问题相当是第一问的反函数,我们已知了像平面上各点的坐标,反推出靶标的位置。
先通过任意3个点的像坐标确定对应靶标的位置,确定一张平面,再验算其他两点是否也在同一张平面上。
检验其精度。
4.用两部相机拍同一实物,得到两张像,在第三问的基础上,找出两个两部相机的夹角,从而确定相机的相对位置。
要确定靶标上圆的圆心在该相机像平面的像坐标,由于我们不能确定相机与实物的相对位置,现以光学中心为原点建立三维空间坐标o-xyz如下图,对于坐标系中的任意一点设其坐标为
,设像距为
,根据成像原理(针孔模型)可以确定像的坐标
,
图3
3.1靶标点与像点坐标的优化模型
思路与分析:
首先,让我们分析数码相机的成像原理。
数码相机是通过以图片文件的格式保存图片的,也就是说,数码相机所产生的图片,不是我们透镜照相机经过折射后所成的照片,这就是我们通常所说的针孔成像,它的照片可以理解为在某一像距处的一种想象的图片。
比如:
在本文中的照片是357*281(像素),可以理解为在像距为1577/2.73(像素)处的照片,如果用1024*768分辩率计算,则可以理解为像距是1577(像素)的照片。
由此可见,数码像机只能用针孔(中心)成像原理的方法来讨论问题,而物理学中的
是不适合数码像机的成像原理。
由于像坐标的计算上存在误差,这种误差有可能是相机系统造成,也可能是计算标靶圆的像中心时算法所产生的。
而且是肯定存在的。
因此简单的通过几何方法,是无法计算出标靶各圆的圆心坐标。
五个标靶圆的圆心是共面的,四条边是垂直的,每条边的长度都是精确的,但是,用像点坐标和几何方法所列出的等式方程由于像坐标的误差而产生互相矛盾,从而使得无解。
这种简单几何比例的方法在理论上是精确的,但像坐标存在误差,必将导致所求出的标靶圆的圆心的坐标是不共面的,它们的边也会不垂直,甚至所求出的各边的长度也不是原来的数值。
所以,要还原出标靶圆的坐标,我们只能寻求一个误差最小的优化方法。
设光学中心与像平面的中心的连线为X轴,建立XYZ直角坐标系,五个标靶圆的圆心坐标设为
A(
),B(
C(
D(
E(
)
由于像平面上的横坐标一样,均为v=1577/3.78,五个像的中心坐标设为
(
),
(1)根据几何学中相似三角形的比例关系,我们很容易的建立下列几个等式关系:
(2)根据边的长度,也可以列出下列几个方程:
(3)
三点共线,方向向量比例关系
(4)四条边互相垂直,可列出下列等式方程:
当然,我们还可以列出其它的方程,但是,这些方程都是等式方程,由于像坐标的误差,使得这些方程之间产生矛盾,从而无法还原出标靶圆的圆心坐标,也就无法确定标靶所在的平面,相机与标靶平面的夹角难以确定。
根据上述的分析,我们采用多目标的方法,来确定标靶的圆心坐标。
既然误差会产生标靶圆和边的变形,我们不强求上的各等式方程都能同时成立,在上述的方程中选取若干个柔性条件的方程转变为目标函数,其他的方程作为约束条件。
这样就可以建立一个多目标的优化数学模型。
由于标靶的边在还原时可能不会等于100,我们将他们改为与100的差的平方最小,从而,这些方程就转变为目标函数,其他方程仍为约束条件。
目标函数:
约束条件:
上面的其余方程均为约束条件方程。
通过求解上述的优化问题,我们可以求出标靶圆的圆心坐标。
进一步的具体做法在后面讨论。
对于上面的模型,即物面上的坐标与像面上的坐标得近似对应关系,也就是用给定的物面上的坐标,就可对应的求得像面上的坐标,已知像面上的坐标,也可对应的求得物面坐标。
3.2确定像平面上各椭圆的中心坐标
这是一张分辨率为1024*768的375*281的真彩24的图片,如果我们把像片看作二维矩阵,由于他们的点的相对是已知的,所以不难求出各点的坐标。
1、我们在椭圆边缘上随机选取三个点,要求有一定距离并且不共线,在每个点处拟合切线。
选取其中两个点,设他们切线的交点为A,两点连线的中点为B,则直线AB过椭圆中心。
利用另外一点再求出这样一条直线,两条直线的交点就是椭圆的中心。
如下图椭圆O的中心为O点,直线AD、DE、CE与椭圆O相切,切点分别为A、B、C,AB中点为F,BC的中点为G,则DF与CG相交于O点。
2、由于相机拍摄的RGB图形,通过用C语言对图形的读取、处理,得到0-1矩阵(0表示的是黑色区域,即是椭圆形的像,程序见附录1),分别用三条两两互不平行的直线在0-1矩阵内部移动,记录每条直线第一次接触0的点(切点)的位置,选取其中任意两个切点,取出两个切点的中点,则两个切点对应直线的交点和中点的连线经过椭圆的中心,利用另外一点再求出这样一条直线,两条直线的交点就是椭圆的中心。
图4
但是在本题中给出的像的图片的像素是375×
281,而实际题目中给出的像素是1024×
768,所以Y,Z轴的每一个元素都应乘以2.73倍,经过上述方法的计算,求得像坐标如下表:
X
Y
Z
A
-1577
198
187
B
190
89
C
174
-127
D
-116
223
E
-78
3.3优化模型的求解(靶标圆心坐标的还原)
有了五点像的中心坐标,从理论上,用上述的优化模型求出五个标靶圆的圆心坐标是可行的,但是,约束条件方程是等式方程,像坐标存在误差,使得该模型的优化变成不可行。
另一方面,我们所建立的优化模型是一个二次的多目标优化模型,需要较大的求解时间。
基于这二点的原因,我们必须先对上述的多目标优化进行改进,才能解决求解问题。
1、把多目标转成单目标处理
原多目标函数都是求最小化,所以,可以将他们求和处理,即将几个多目标的函数取和求最小化。
这样多目标问题就转变为单目标问题。
2、等式方程太多,容易使得方程不相容,仍然无法求解。
因此,必须对约束条件的若干个方程进行适当处理,才能顺利的进行求解。
(1)先用优化方法还原出
四点,即先不考虑
点。
这样等式约束条件方程将减少几个,可以降低由于误差所引起的不相容性,使得求解能继续下去。
(2)从像上观察可看出:
点的像失真较其他的小,我们认为
,是可以成立的,而其他三个
正交性的约束条件方程很可能不会成立,我们把这三个正交性的约束方程转成目标函数,只要求它们尽可能的正交即可。
(3)经过
(1)、
(2)步骤处理后的优化模型如下:
(4)经过(3)的优化模型和LINGO8编程后,可求出
的坐标。
点坐标可以利用
共线,
求出。
3、标靶上
的坐标如下表:
(程序见附录2)
1296.466
-59.1919
-55.9034
1286.514
-56.5746
-27.8372
1263.294
-50.4677
37.65049
1357.259
-37.0083
69.71338
1389.154
-37.878
-25.5456
目标优化值为:
0.4033467
3.4模型的精度分析
有了标靶的五点坐标,就可以通过分析这五点是否共面,来确定模型的计算精度。
一般的,这五点是不会共面的,因此,我们先取
三点做一个平面
,定义余下二点到平面
的距离和
用
的大小作为五点共面度,
越接近与零,它们的共面程度越高,反之,共面程度越差。
1、下面是计算共面度的过程:
取
三点,作一个平面
,法向量
法向量的单位向量
,则
到该平面的距离为
(),
的值是比较小的,所以共面程度比较高。
2、还原B点的像坐标拟合
返回去计算其像的像素坐标,
,得到
而已知第二问中的
点像素坐标为(-1577,69,32),两个坐标非常接近,模型较好。
3.5两个相机距离间隔的标定的数学模型
每个相机对标靶都有一张照片,每张照片应用上述优化方法可以确定一组标靶圆的圆心坐标。
形成两组五对坐标组,不妨记为:
这两组表示同样的对应点,只是它们相对于坐标系不同。
要标定两个相机的相对位置(间距,方向),可以设变换
,
其中:
A表示3*3坐标旋转矩阵,
表示一个相机在另一个相机的坐标系中的坐标。
将两组坐标代入变换
中,可以得到15个方程的线性方程组,其中只有12个未知变量(A中有9个,加上
)。
这个方程组是线性的,方程个数比未知个数多,由于坐标在计算上存在误差,可能导致这些方程存在不相容的情况。
为了能够计算未知变量,可以利用MATHLAB的最小二乘法求解。
可以求出
中的9个变量,以及
的值。
令,
,即表示两个相机的间距。
令:
则
=
同样用最小二乘法从矩阵
中可以求出两个相机的在三个方向上的相互交角
四、模型评价与改进
本题我们通过建立一个多目标优化模型来确定靶标上圆的中心与其像的中心的对应关系,其中利用简单的几何关系组成了优化模型的约束条件,使原本复杂的物理模型更易于理解,推广。
文中在求解一个实际问题时,将多目标优化模型改进为单目标优化模型,使程序运行时间缩短,增强了模型的可行性。
为了分析结果的精确性,我们先用三点确定一个平面,再用第四个点与平面的距离来定义其精确度。
这样模型的优劣就有了一个好的评判标准。
文中求得的结果的精确度较高,说明此模型较好。
模型为了简化,没有考虑数码相机自身参数的影响,如镜头畸变,这样结果的准确性欠佳,在物体识别应用系统中和视觉精密测量中(物体特征的相对位置必须要精确计算),此模型的结果就不十分适用。
在此模型中,我们没有得到靶标上圆的中心与其像的中心的对应关系的确定式子,如果题目给出一些数码相机的自身参数,我们可以通过建立非线性模型来求解,这样可以使数码相机的定位精度更高,增大它的适用范围。
五、参考文献
《摄像机的标定》http:
//www.china-
六、附录
附录一:
#include<
stdio.h>
stdlib.h>
math.h>
string.h>
main()
{
FILE*fp,*fp1;
chars[1],s1[1],b[1024];
intx,a[8],kk;
longinti,j,k,len,bmp_offset;
longwidth,height,llq=-1;
fp=fopen("
tu2.bmp"
"
rb"
);
fp1=fopen("
tu1.txt"
w"
fseek(fp,10L,SEEK_SET);
fread(b,4,1,fp);
bmp_offset=b[3]*256*256*256+b[2]*256*256+b[1]*256+b[0];
fseek(fp,18L,SEEK_SET);
width=b[3]*256*256*256+b[2]*256*256+b[1]*256+b[0];
height=b[3]*256*256*256+b[2]*256*256+b[1]*256+b[0];
fseek(fp,bmp_offset,SEEK_SET);
len=(width+31)/8;
len=len/4*4;
s1[0]=13;
for(i=height-1;
i>
=0;
i--)
fseek(fp,bmp_offset+i*len,SEEK_SET);
fread(b,len,1,fp);
llq=-1;
for(j=0;
j<
len;
j++){
for(k=0;
k<
8;
k++){a[7-k]=b[j]%2;
b[j]=b[j]/2;
}
for(kk=0;
kk<
kk++)
{llq++;
if(llq>
=width){fwrite(s1,1,1,fp1);
break;
s[0]=a[kk]+48;
fwrite(s,1,1,fp1);
fclose(fp);
}
附录二:
!
求A,C,D,E的坐标的LINGO程序;
model:
五个像点的坐标;
A1y=72/3.78;
A1z=68/3.78;
B1y=69/3.78;
B1z=32/3.78;
C1y=63/3.78;
C1z=-47/3.78;
D1y=-43/3.78;
D1z=81/3.78;
E1y=-43/3.78;
E1z=-29/3.78;
v=-1577/3.78;
init:
ax=1200;
cx=1000;
endinit
以四条边的长度尽量接近100为目标,含义是尽量保持标靶不边形;
min=(((ax-Cx)^2+(ay-Cy)^2+(az-Cz)^2)^0.5-100)^2+
(((cx-dx)^2+(cy-dy)^2+(cz-dz)^2)^0.5-100)^2+
(((ex-dx)^2+(ey-dy)^2+(ez-dz)^2)^0.5-100)^2+
(((ex-ax)^2+(ey-ay)^2+(ez-az)^2)^0.5-100)^2;
点A与像A的对应关系;
Ax^2*(A1y^2+A1z^2)=v^2*(Ay^2+Az^2);
Az^2*(A1y^2+v^2)=A1z^2*(Ay^2+Ax^2);
点C与像C的对应关系;
Cx^2*(C1y^2+C1z^2)=v^2*(Cy^2+Cz^2);
Cz^2*(C1y^2+v^2)=C1z^2*(Cy^2+Cx^2);
点D与像D的对应关系;
dx^2*(d1y^2+d1z^2)=v^2*(dy^2+dz^2);
dz^2*(d1y^2+v^2)=d1z^2*(dy^2+dx^2);
点E与像E的对应关系;
ex^2*(e1y^2+e1z^2)-v^2*(ey^2+ez^2)=0;
ez^2*(e1y^2+v^2)-e1z^2*(ey^2+ex^2)=0;
边互相垂直;
((Cx-ax)*(dx-cx)+(Cy-ay)*(dy-cy)+(Cz-az)*(dz-cz))=0;
((Cx-ax)*(ax-ex)+(Cy-ay)*(ay-ey)+(Cz-az)*(az-ez))=0;
((ex-dx)*(ax-ex)+(ey-dy)*(ay-ey)+(ez-dz)*(az-ez))=0;
((ex-dx)*(cx-dx)+(ey-dy)*(cy-dy)+(ez-dz)*(cz-dz))=0;
@free(Ax);
@free(Ay);
@free(Az);
@free(Bx);
@free(By);
@free(Bz);
@free(Cx);
@free(Cy);
@free(Cz);
@free(v);
@free(C1z);
@free(dy);
@free(dz);
@free(ey);
@free(ez);
@free(D1y);
@free(E1y);
@free(D1z);
@free(e1z);
end
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 论文第一页为承诺书具体内容和格式见本规范第二页 论文题目 论文 一页 承诺书 具体内容 格式 规范 第二 题目