立体视觉半实物仿真系统及方法

文档序号:7961767阅读:190来源:国知局
专利名称:立体视觉半实物仿真系统及方法
技术领域
本发明涉及一种立体视觉半实物仿真系统及方法。
背景技术
立体视觉是按照不同视点拍摄的两幅或多幅图像来确定场景的三维结构,其所研究的理论基础是现实世界中的单一的三维位置投影到唯一的一对影像位置。与一般的摄影系统只能将三维场景以二维的形式记录而丢掉了大量的信息不同,立体视觉能够获得场景三维数据,在机器人视觉、航空测绘、军事应用、医学诊断及工业检测中得到越来越广泛的应用,国内外广大研究人员对其研究也越来越深入。目前,立体视觉仿真主要都是纯数字仿真,数字仿真能够为立体视觉提供研究开发平台,大大降低成本。但由于复杂系统建模困难,纯数字仿真系统不得不对复杂系统进行简化,因此纯数字仿真系统存在仿真环境过于理想化、与实际拍摄环境存在一定差别的缺点,特别是在摄像机存在畸变以及噪声干扰等误差因素的情况下,通过数字仿真得到的图像效果在真实性方面存在不足。半实物仿真技术又称为硬件在回路仿真,在条件允许的情况下尽可能在仿真系统中接入实物,以取代相应部分的数学模型,这样更接近实际情况,从而得到更确切的信息。半实物仿真技术能够较好克服纯数字仿真的缺点,在立体视觉研究的初期阶段体现出优势。由于半实物仿真要将软、硬件相结合而构建系统,而如何建立软、硬件之间的系统模型,确定数字场景与实际摄像机图像之间的关系存在较大困难,是立体视觉半实物仿真系统及方法的瓶颈。现有资料中没有提到一种半实物仿真系统能很好的解决立体视觉研究过程中所遇到的复杂情况仿真难的问题。因此如何解决立体视觉半实物仿真环境的瓶颈问题,设计有效实用的半实物仿真系统是十分必要和迫切的。

发明内容
本发明的目的在于克服现有技术的缺陷,提供一种立体视觉半实物仿真系统及方法,其基于立体视觉原理,结合虚拟现实技术,通过联级投影变换建立软、硬件相结合的半实物仿真传感器结构,具有精度高、结构简单和成本低的优点。
本发明所采用的技术方案是通过虚拟视景技术,根据产生的虚拟三维场景而获得在同一时刻不同两个或多个视点的立体视觉虚拟三维视觉图像(两幅或多幅),由投影仪作为媒介分别将各虚拟三维视觉图像投影到屏幕上,通过实际摄像机分别拍摄屏幕上不同视点各虚拟三维视觉图像,而得到仿真系统在该测量时刻最终输出图像(两幅或多幅),利用仿真系统摄像机图像以及系统的参数可根据立体视觉的基本原理计算得到图像中虚拟三维场景的三维空间坐标而完成对中虚拟三维场景的三维立体测量,从而实现对立体视觉算法的验证和评估。这里,所述的虚拟视景技术是通过OpenGL等软件对虚拟环境进行构建,生成与光学仪器(摄像机)拍摄到的场景相对应的三维视觉图像。所述的立体视觉的基本原理是从两个或多个视点观察同一景物,以获取在不同视点下的感知图像,基于视差原理,恢复景物的三维几何信息。
本发明实现了软、硬件相结合的立体视觉半实物仿真平台的建立,其优点主要有(1)成功地将虚拟现实技术与摄像机传感器有效地结合在一起,同时具有数字仿真系统实现简单、操作便捷和硬件仿真系统接近真实试验环境程度高的优点,填补了当前无有效实用的立体视觉半实物仿真环境的空白,为立体视觉的研究提供了有效的仿真平台;(2)该系统结构简单、成本低,主要部件只有一台普通投影仪和摄像机以及计算机,系统易于实现,应用范围广;(3)该系统具有较高的精度,通过系统进行立体视觉三维重建仿真实验,其精度在1/1000左右。


下面参照附图和具体实施方式
对本发明的立体视觉半实物仿真系统及方法作进一步详细地说明。
图1是本发明的立体视觉测量原理图;图2是本发明的系统结构示意图;图3是本发明的系统模型示意图;图4是本发明的方法流程图;图5是本发明的透视投影视场角与尺度因子关系示意图;图6是本发明的虚拟摄像机初始状态示意图。
具体实施例方式
图1所示的是最基本的是双目立体视觉测量原理,对于空间物体表面上任意一点P,其在摄像机C1对应的像平面I1上所成的图像点用P1表示,P点位于摄像机光心和P1的连线上无法通过像点P1恢复P点的三维位置,而P点同时亦位于摄像机C2对应的像平面I2上图像点P2和其光心的连线上,因此通过两个摄像机就可以唯一确定空间点P的三维位置。
图2所示的立体视觉半实物仿真系统包括投影仪1、摄像机2、摄像机云台3、投影屏幕4、计算机5和6构成,各部分均固定在室内墙壁或稳定支架上,所述的投影仪1选用Sony公司生产的VPL-CX71便携型投影机,与计算机5相连接,在投影屏幕4上投出计算机5中虚拟视景软件生成的虚拟三维视觉图像,系统在使用过程中投影仪1的参数必须固定不变。摄像机2选用普通CCD摄像机,摄像机2的镜头为12mm,分辨率为768×576,其固定在摄像机云台3上,通过图像采集卡将采集的图像数据传送至计算机6,并通过计算机6对摄像机云台3的控制实现摄像机2的视场选取,当确定摄像机2的理想位置后,开始进行系统参数的标定,在系统使用的过程中摄像机云台3不能转动,摄像机2的镜头的选取以摄像机2的视场尽量包含投影仪1的图像而又不超出为原则,为达到高精度,系统中投影仪1、摄像机2、摄像机云台3及投影屏幕4必须固定在室内墙壁或支架上,它们之间位置不能出现相对变化。
如图3所示,本发明的立体视觉半实物仿真系统建立了三个投影变换的模型虚拟摄像机模型7、投影仪成像模型8和摄像机成像模型9,这三个模型之间具有输入输出的关系,其中,虚拟摄像机模型7通过计算机虚拟视景软件实现,由人为设置的参数得到不同条件下的虚拟摄像机成像结果,其摄像机模型是线性的,虚拟摄像机参数可以通过虚拟视景软件所设置的参数计算求出;而投影仪成像模型8和摄像机成像模型9是实际的硬件环境,它们之间是“面—面”的投影变换,摄像机模型是非线性的,其参数需要标定。
如图4所示,本发明在进行立体视觉半实物仿真时,主要包括以下步骤第一步,由计算机的虚拟视景软件生成虚拟三维场景图像,并获得在同一时刻不同两个或多个视点的立体视觉虚拟三维视觉图像,在该步中须在虚拟视景软件中输入如下参数首先在虚拟视觉软件中输入如下参数透视投影变换的垂直视场角θ、视场的长宽比Aspect、视点到近裁剪平面的距离NearPlane、视点到远裁剪平面的距离FarPlane;视点的空间位置,即世界坐标系下的三维坐标值XPos、YPos、ZPos;视线方向偏航角度θYaw、俯仰角度θPitch和滚转角度θRoll;第二步,由投影仪分别将各虚拟三维视觉图像投影到屏幕上;第三步,通过实际摄像机分别拍摄屏幕上不同视点各虚拟三维视觉图像,而得到仿真系统在该测量时刻的最终输出图像;第四步,计算虚拟摄像机参数、标定实际摄像机成像模型参数和投影仪成像模型参数;第五步,根据立体视觉的基本原理计算得到图像中虚拟三维场景的三维空间坐标。
下面,建立虚拟摄像机模型svuvvv1=αvx0uv000αvyvv000010RvTv0T1XvwYvwZvw1=M1vM2vXvwYvwZvw1=MvXvwYvwZvw1]]>其中[μv,vv,1]T为虚拟三维视觉图像的齐次坐标,[Xvw,Yvw,Zvw,1]T为虚拟场景的三维空间齐次坐标,sv为比例因子,αvx和αvy分别为虚拟摄像机x轴和y轴方向尺度因子,μv0和vv0为虚拟摄像机图像中心,Rv和Tv为旋转矩阵和平移向量,即虚拟摄像机外部参数。M1v和M2v分别为虚拟摄像机的内部参数矩阵和外部参数矩阵,Mv为虚拟摄像机的投影矩阵。虚拟摄像机参数Mv各元素可以通过虚拟视景软件所设置的参数计算求出。
建立投影仪成像模型spupvp1=αpx0up000αpyvp000010RpTp0T1XpwYpwZpw1=MpXpwYpwZpw1]]>以上公式中参数定义与前面一样,由于投影仪成像是“面—面”的投影变换,因此可设Zpw=0,则由上式可得
spmp=αpx0up00αpyvp0001r1pr2pTpXpwYpw1=HpX~pw]]>其中mp=[upvp1]T,r1p,r2p分别为Rp的第1、2列,X~pw=XpwYpw1T]]>建立实际摄像机成像模型scucvc1=αcx0uc000αcyvc000010RcTc0T1XcwYcwZcw1=McXcwYcwZcw1]]>公式中参数定义与前面一样,这里摄像机成像也是“面—面”的投影变换,因此也可设Zcw=0,则由上式可得scm=αcx0uc00αcyvc0001r1cr2cTcXcwYcw1=HcX~cw]]>其中m=[ucvc1]T,r1c,r2c分别为Rc的第1、2列,X~cw=XcwYcw1T.]]>实际情况下,摄像机并不是理想的透视成像,而是带有不同程度的畸变,这里只考虑一阶径向畸变k,下面是对该模型中的参数进行标定以及转换计算。
下面计算虚拟摄像机的参数,这里设定虚拟摄像机图像分辨率为1024×768。
(1)内部参数通过视场角和图像的分辨率可求得虚拟摄像机的内部参数矩阵。如图5所示,O为视点,平面P为成像面,成像面的分别率为w×h,像素物理尺寸为dx,dy,u轴和v轴方向的尺度因子为αx,αy,虚拟摄像机的焦距为f,垂直视场角为θ则由图5中的几何关系可得tan(θ2)=h2*dyf]]>由上式可得αy=fdy=h/2tan(θ/2)]]>虚拟摄像机是理想的针孔成像模型,其μ轴和v轴方向的尺度因子相等,设为αx=αy=α,摄像机光轴与像平面交点为像平面中心,即图像中心。由此即确定虚拟摄像机内部参数矩阵。
(2)外部参数外部参数即为R,T的求解通过坐标变换实现。由视点在世界坐标系中的位置,以及视线方向的偏航角度、俯仰角度和滚转角度可实现R,T的求解虚拟摄像机在虚拟世界坐标系中的初始状态(视点在虚拟世界坐标系原点,偏航角度、俯仰角度和滚转角度都为0),如图6所示虚拟世界坐标系为X,Y,Z,为黑色坐标系所示。虚拟摄像机坐标系初始状态为Xc0,Yc0,Zc0,即视线方向指向虚拟世界坐标系的X轴方向,则虚拟摄像机坐标系从与虚拟世界坐标系重合位置变换到图6中初始位置的旋转矩阵Rv1为Rv1=0010-10100]]>虚拟摄像机在初始状态下按照先滚转再偏航最后俯仰的顺序进行旋转,而确定虚拟摄像机旋转后的最终位置,其旋转矩阵为Rv2,再将虚拟摄像机视点位移到所设置的位置即完成了从虚拟世界坐标系到虚拟摄像机坐标系的变换。
坐标旋转矩阵Rv2可以用欧拉角表示法求得,根据前面所规定的虚拟摄像机旋转顺序可知欧拉角表示法中旋转顺序为绕Z轴→绕Y轴→绕X轴,旋转角度正负按右手坐标系法则确定,绕X轴、Y轴、Z轴的角度分别为α,β,γ后,可推导求得旋转矩阵为Rv2=cosβcosγcosβsinγ-sinβsinαsinβcosγ-cosαsinγsinαsinβsinγ+cosαcosγsinαcosβcosαsinβcosγ+sinαsinγcosαsinβsinγ-sinαcosγcosαcosβ]]>其中α=θPitch,β=θYaw,γ=θRoll。
由此虚拟世界坐标系和虚拟摄像机坐标系之间的旋转矩阵Rv=Rv2*Rv1设虚拟摄像机视点在虚拟世界坐标系中的坐标值为TvW,则平移向量为Tv=-(Rv*TvW)
最终得到虚拟摄像机外部参数矩阵为M2v=RvTv0T1]]>下面介绍投影仪成像模型和摄像机成像模型参数的标定在实际应用中,我们不需要分别确定图3中投影仪成像模型和摄像机成像模型的参数,即无需分别求解投影仪图像到投影屏幕、投影屏幕到摄像机之间的变换关系,而只需确定摄像机和投影仪图像之间的变换关系即可,因此可将摄像机和投影仪作为一个整体进行标定,由于摄像机镜头焦距小(12mm),摄像机存在较大的径向畸变,所以系统需采用非线性系统标定方法进行标定,其参数的标定步骤如下首先,根据Lenz和Tsai提出的变焦距法(参见Lenz.R.K,Tsai.R.Y,Techniques forCalibration of the Scale Factor and Image Center for High Accuracy 3-D Machine Vision Metrology,IEEE Transactions on Pattern Analysis and Machine Intelligence.Volume 10.Issue 5.September1988.Pages713-720)可求得摄像机的图像中心。
然后,将投影仪模型简单作为线性模型,则投影仪计算机图像、投影仪屏幕图像和摄像机坐标系像平面中空间共线四点之间具有交比不变性质,利用张广军等提出的基于交比不变的摄像机畸变系数标定方法(参见张广军编著,《机器视觉》,北京科学出版社,2005.)可实现对摄像机径向畸变系数的标定。
最后,在求出摄像机的图像中心和径向畸变系数的基础上,可由靶标的像素图像坐标(uc,vc)计算得到其在摄像机坐标系下图像坐标(X,Y)。而摄像机图像(X,Y)到投影仪计算机图像(up,vp)是一个线性变换关系,可通过下式表示upvp1=H*XY1---(1)]]>其中H为3×3矩阵,由靶标上多个角点可由(1)式建立线性方程,利用最小二乘法即可求出矩阵H,即完成对摄像机成像模型和投影仪成像模型的标定。
下面通过一具体实施例来说明本发明的立体半实物视觉仿真的优点首先,由与投影仪连接的计算机生成的平面靶标图像和摄像机获取的靶标图像其图像分辨率为1024×768,摄像机拍摄的靶标图像分辨率为768×576,由以上图像进行标定的结果如下表1所示
表1系统标定结果

其中标定误差是利用标定结果,由靶标摄像机图像中未参与标定计算的角点坐标反算得到的投影仪计算机图像对应角点坐标值与真实的投影仪计算机图像角点坐标值之间差值的均方值。
然后,通过虚拟视景软件设计一组已知空间坐标的四棱锥体,设置两个视点的对应参数,得到两幅不同视点的虚拟三维视觉图像,两个视点的参数设置分别如表2中所示表2虚拟视景软件两个视点的参数设置

由以上参数可以求出左右虚拟摄像机参数,如表3所示表3虚拟左右摄像机参数


然后,将虚拟视景不同视点的两幅图像分别投影到屏幕上,经过摄像机拍摄得到的左右摄像机图像。
选取图中四棱锥顶点及部分底面角点作为立体视觉三维坐标计算对象,由以上标定结果和左右虚拟摄像机参数应用立体视觉方法计算得到各点的三维坐标如表4所示表4测试点三维坐标结果

最后,进行精度分析,由上表数据可计算得到三维坐标的均方误差为x值3.189168y值7.296316z值3.576814当在虚拟场景中把视点设在四棱锥体的上方海拔为3000米左右位置,进行相同实验测试时,可得到测试点三维坐标的均方误差为x值1.747925y值4.028061z值1.940519由于立体视觉测量精度会随着测量范围变大而降低,因此我们通过场景的三维坐标误差值与测量距离的比值来衡量立体视觉系统测量的精度,由以上实验数据可知,该系统通过系统进行立体视觉三维重建精度在1/1000左右。
以上所述的仅是本发明的优选实施方式。应当指出,对于本领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干变型和改进,这些也应视为属于本发明的保护范围。
权利要求
1.一种立体视觉半实物仿真系统,其特征在于包括投影仪,摄像机,摄像机云台,投影屏幕和计算机,以上各部分均固定在室内墙壁或稳定支架上,它们之间位置不能出现相对变化,所述的投影仪与计算机相连接,在投影屏幕上投出有计算机中虚拟视景软件生成的虚拟三维视觉图像,所述的摄像机固定在摄像机云台上,通过图像采集卡将采集的图像数据传送至计算机,并通过计算机对摄像机云台的控制实现摄像机的视场选取,摄像机的镜头的选取以摄像机的视场尽量包含投影仪的图像而又不超出为原则。
2.一种利用权利要求1所述的立体视觉半实物仿真系统实现半实物仿真的方法,其特征在于包括如下步骤第一步,由计算机的虚拟视景软件生成虚拟三维场景图像,并获得在同一时刻不同两个或多个视点的立体视觉虚拟三维视觉图像;第二步,由投影仪分别将各虚拟三维视觉图像投影到屏幕上;第三步,通过实际摄像机分别拍摄屏幕上不同视点各虚拟三维视觉图像,而得到仿真系统在该测量时刻的输出图像;第四步,计算虚拟摄像机参数、标定实际摄像机成像模型参数和投影仪成像模型参数;第五步,根据立体视觉的基本原理计算得到图像中虚拟三维场景的三维空间坐标。
3.一种如权利要求2所述的立体视觉半实物仿真方法,其特征在于所述的第一步包括在计算机的虚拟视觉软件中需要输入如下参数透视投影变换的垂直视场角θ、视场的长宽比Aspect、视点到近裁剪平面的距离NearPlane、视点到远裁剪平面的距离FarPlane;视点的空间位置,即世界坐标系下的三维坐标值XPos、YPos、ZPos;视线方向偏航角度θYaw、俯仰角度θPitch和滚转角度θRoll。
4.一种如权利要求2所述的立体视觉半实物仿真方法,其特征在于所述的第四步是通过计算机的虚拟视景软件所设置的参数来计算虚拟摄像机参数的,其成像模型为svuvvv1=αvx0uv000αvyvv000010RvTv0T1XvwyvwZvw1=M1vM2vXvwYvwZvw1=MvXvwYvwZvw1]]>其中[uv,vv,1]T为虚拟三维视觉图像的齐次坐标,[Xvw,Yvw,Zvw,1]T为虚拟场景的三维空间齐次坐标,sv为比例因子,αvx和αvy分别为虚拟摄像机x轴和y轴方向尺度因子,uv0和vv0为虚拟摄像机图像中心,Rv和Tv为旋转矩阵和平移向量,即虚拟摄像机外部参数。M1v和M2v分别为虚拟摄像机的内部参数矩阵和外部参数矩阵,Mv为虚拟摄像机的投影矩阵,虚拟摄像机参数Mv各元素可以通过虚拟视景软件所设置的参数计算求出。
5.一种如权利要求2所述的立体视觉半实物仿真方法,其特征在于所述的第四步中的标定实际的摄像机成像模型参数和投影仪成像模型参数是作为一个整体进行的,具体分为如下步骤首先,根据变焦距法求得摄像机的图像中心;然后,将投影仪模型简单作为线性模型,利用交比不变的摄像机畸变系数标定方法实现对摄像机径向畸变系数的标定;然后,在求出摄像机的图像中心和径向畸变系数的基础上,由靶标的像素图像坐标计算得到其在摄像机坐标系下图像坐标;最后,根据所述的摄像机图像到投影仪计算机图像的线性变换关系,实现对摄像机成像模型和投影仪成像模型的标定。
全文摘要
本发明涉及一种立体视觉半实物仿真系统及方法,其系统包括投影仪、摄像机、摄像机云台、投影屏幕和计算机,在利用该仿真系统进行仿真时,首先,由计算机的虚拟视景软件生成虚拟三维场景图像,并获得在同一时刻不同两个或多个视点的立体视觉虚拟三维视觉图像;再由投影仪分别将各虚拟三维视觉图像投影到屏幕上,并通过实际摄像机分别拍摄屏幕上不同视点各虚拟三维视觉图像,而得到仿真系统在该测量时刻的输出图像,然后,计算虚拟摄像机参数、标定实际摄像机成像模型参数和投影仪成像模型参数,最后,根据立体视觉的基本原理计算得到图像中虚拟三维场景的三维空间坐标,本发明具有精度高、结构简单和成本低的优点。
文档编号H04N15/00GK1897715SQ20061008363
公开日2007年1月17日 申请日期2006年5月31日 优先权日2006年5月31日
发明者张广军, 李苏祺, 魏振忠 申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1