专利名称:单目视觉半实物仿真系统及方法
技术领域:
本发明涉及一种单目视觉半实物仿真系统及方法。
背景技术:
随着计算机视觉理论以及计算机技术的发展,计算机视觉已广泛应用于目标识别、视觉导引、工业测量、工业控制等方面。半实物仿真技术又称为硬件在回路仿真,在条件允许的情况下尽可能在仿真系统中接入实物,以取代相应部分的数学模型,这样更接近实际情况,从而得到更确切的信息。在计算机视觉研究过程中经常会遇到一些复杂情况,比如常需要大量场景图像来进行算法研究,但通常现场情况复杂,很难在研究初期就进行实物实验来获得大量场景图像。那样既浪费资金,又影响研究进度。因此,在研究工作的初期进行仿真实验是十分必要的。完全的数字仿真虽然节约资金、研究时间短,但由于复杂系统建模困难,不得不对复杂系统进行简化,并将很多状态设为理想状态。虽然也加入了噪声,但还是很难得到非常接近实际情况的仿真结果。因此,半实物仿真在计算机视觉研究的初期阶段就体现出了优势。但现有资料中还没有提到一种半实物仿真系统能很好的解决计算机视觉研究过程中所遇到的复杂情况仿真难的问题,因此设计一种单目视觉半实物仿真系统用以解决这些困难是十分必要和迫切的。
发明内容
本发明的目的在于克服现有技术的缺陷,提供一种单目视觉半实物仿真系统及方法,用以实现在复杂环境下计算机视觉研究的仿真工作,尤其适合应用于标定和视觉导航定位的仿真实现,其具有设备简单、易于实现和使用范围广的优点。
本发明的单目半实物仿真系统包括虚拟成像单元、图像投影单元和摄像实现单元,这三个单元之间顺次连接,并且其相对位置不能变化。所述的虚拟成像单元是将虚拟景象投影到计算机屏幕上;所述的图像投影单元是将计算机屏幕上的虚拟景象投影到投影平面上;所述的摄像实现单元是通过单目摄像机获取投影平面上的图像。
本发明的单目半实物仿真方法包括以下步骤首先,在虚拟成像单元中,通过OpenGL等软件对虚拟景象进行构建,设定虚拟景象的位置姿态,通过虚拟摄像机将虚拟景象投影到计算机屏幕上。然后,图像投影单元将图像投影到投影平面上,经过摄像实现单元在投影平面上获得投影图像。最后,通过计算机软件计算得出虚拟摄像机的内部参数,虚拟景象的位置姿态,通过与设定值进行比较,分析得出仿真结果的精度误差。
本发明的优点主要有(1)创造性地将计算机视觉与虚拟现实技术结合起来,很好的解决了复杂情况仿真难的问题;(2)设备简单、易于实现,使用范围广;(3)通过本仿真环境,既能得到比完全数字仿真更加接近真实情况的仿真结果,又解决了实物实验花费资金多,准备时间长等问题。
下面参照附图和具体实施方式
对本发明的单目视觉半实物仿真系统及方法作进一步详细地说明。
图1是本发明的系统结构原理图;图2是本发明的系统的结构示意图;图3是本发明的方法流程原理图;图4是本发明的虚拟摄像机视场角与尺度因子关系示意图;图5是本发明的实施例的平面靶标示意图;图6是图5的实施例的虚拟景象的投影图像示意图;图7是图6的实施例的提取的特征点的图像示意图。
具体实施例方式
图1所示的单目视觉半实物仿真系统包括虚拟成像单元、图像投影单元和摄像实现单元,这三个单元之间顺次连接,并且其相对位置不能变化。所述的虚拟成像单元是将虚拟景像投影到计算机屏幕上;所述的图象投影单元是将计算机屏幕上的虚拟景象投影到投影平面上;所述的摄像实现单元是通过单目摄像机获取投影平面上的图像。
如图2所示,本发明的虚拟成像单元包括装有虚拟视景软件的计算机1,所述的图象投影单元包括投影仪2和投影屏幕3。所述的摄像实现单元包括摄像机4、摄像机云台5和装有仿真软件的计算机6。计算机6可控制摄像机云台5,使摄像机4获得最佳的视场位置,而且,投影仪2、投影屏幕3、摄像机4和摄像机云台5均固定在室内墙壁或支架上,它们之间位置不能出现相对变化。投影仪2的参数固定不变,其与计算机1相连接,在投影屏幕3上投出由计算机1中虚拟视景软件生成的虚拟三维视觉图像,摄像机4和计算机6相接,通过图像采集卡先将由摄像机4采集的图像数据传送至计算机6,并通过计算机6中的仿真软件对该次采集的图像进行处理,计算得出虚拟摄像机的内部参数及虚拟景象的位置姿态,然后,改变虚拟场景的位置姿态,再重复进行采集计算。
如图3所示,本发明的单目半实物仿真方法包括以下步骤首先,在虚拟成像单元中,通过OpenGL等软件对虚拟景象进行构建,设定虚拟景象的位置姿态,通过虚拟摄像机将虚拟景象投影到计算机屏幕上,然后,图像投影单元将图像投影到投影平面上,经过摄像实现单元在投影平面上获得投影图像,最后,通过计算机软件计算得出虚拟摄像机的内部参数,虚拟景象的位置姿态,通过与设定值进行比较,分析得出仿真结果的精度误差。
下面结合附图具体说明该方法实现的各个步骤步骤一建立由虚拟景象到计算机屏幕的成像模型摄像机线性模型如下式1s1ab1=αx0u000αyv000010RT0T1xwywzw1=Mx1Mx2xwywzw1...(1)]]>其中虚拟景象上点的齐次坐标为[xw,yw,zw,1]T,图像上点的齐次坐标为[a,b,1]T;αx是虚拟摄像机像平面上u轴上的尺度因子,αy是虚拟摄像机像平面上v轴上的尺度因子;[u0,v0]为虚拟摄像机像平面上图像中心坐标;s1是一比例因子;R,T为旋转矩阵和平移向量; Mx1由αx,αy,u0,v0决定,被称为虚拟摄像机的内部参数;Mx2由R,T决定,被称为虚拟摄像机的外部参数。
步骤1确定虚拟摄像机内部参数设定虚拟摄像机图像分辨率为1024×768。垂直视场角取30度,具体几何关系参照图4,这里设定αx=αy=384.0/tan(15.0×π/180)=1433.1075357064;u0=512,v0=384。
步骤2确定虚拟摄像机外部参数在虚拟视景软件中为了确定虚拟摄像机的外参需要确定视点的空间位置,即视点在虚拟世界坐标系下的三维坐标值Tw=[Xw,Yw,Zw];视线方向偏航角度θ(绕X轴方向旋转)、俯仰角度(绕Y轴方向旋转)和滚转角度φ(绕Z轴方向旋转)。
这里设定虚拟摄像机坐标系的初始位置与虚拟世界坐标系位置重合。虚拟摄像机在初始状态下按照先滚转再俯仰最后偏航的顺序进行旋转,从而确定虚拟摄像机旋转后的最终位置,其旋转矩阵为R,再将虚拟摄像机视点位移到所设置的位置即完成了从虚拟世界坐标系到虚拟摄像机坐标系的变换。
坐标旋转矩阵R可以用欧拉角表示法求得,根据前面所规定的虚拟摄像机旋转顺序可知欧拉角表示法中旋转顺序为绕Z轴→绕Y轴→绕X轴,旋转角度正负按右手坐标系法则确定,绕X轴、Y轴、Z轴的角度分别为θ,,φ后,可推导求得旋转矩阵为 设虚拟摄像机视点在虚拟世界坐标系中的坐标值为TW,则平移向量为T=-(R*TW)最终得到虚拟摄像机外部参数矩阵为Mx2=RT0T1]]>步骤二建立由计算机屏幕到摄像机像平面的成像模型由于在标定过程中,很难对投影仪进行单独标定,故将后两个投影过程合并,作为一个整体来考虑。
在建立计算机屏幕到摄像机像平面的成像模型时,不但要考虑具体模型的建立,而且要对系统的参数进行标定,具体分为步骤1建立成像模型为了更准确的了解整个成像模型,先分别建立计算机屏幕到投影平面,投影平面到摄像机像平面的模型,最后再将两个模型合并形成由计算机屏幕到摄像机像平面的成像模型,具体包括1)建立由计算机屏幕到投影平面的成像模型由于计算机屏幕到投影平面的投影关系是面—面投影,故可以得到如下模型s2xtyt1=Htab1...(2)]]>其中s2为比例因子;Ht为一3×3非奇异矩阵;投影平面上点的齐次坐标为[xt,yt,1]。
2)建立由投影平面到摄像机的成像模型由于投影平面为一平面,投影平面到摄像机的成像模型可得s3uv1=αcx0uc00αcyvc0001rc1rc2Tcxtyt1...(3)]]>其中摄像机像平面上点的齐次坐标为[u,v,1]T;s3为一比例因子;αcx是摄像机像平面上u轴上的尺度因子,αcy是摄像机像平面上v轴上的尺度因子;[uc0,yc0]为摄像机像平面上图像中心处坐标;rc1,rc2分别为Rc的第1、2列。
3)建立由计算机屏幕到摄像机像平面的成像模型将式(2)和式(3)合并形成由计算机屏幕到摄像机像平面的成像模型具体公式如下s4uv1=αcx0uc00αcyvc0001rc1rc2tcHtab1=Hbab1...(4)]]>式中Hb为3×3矩阵;s4为一比例因子。
步骤2系统的标定利用式(4)的模型公式,对系统进行标定。
具体过程如下(1)根据Lenz和Tsai提出的变焦距法(参见Lenz.R.K,Tsai.R.Y,Techniques for Calibrationof the Scale Factor and Image Center for High Accuracy 3-D Machine Vision Metrology,IEEETransactions on Pattern Analysis and Machine Intelligence.Volume 10.Issue 5.September 1988.Pages713-720)求得摄像机像平面上的图像中心。
(2)利用张广军等提出的基于交比不变的摄像机畸变系数标定方法(参见张广军编著,《机器视觉》,北京科学出版社,2005.)实现对摄像机径向畸变系数的标定。
(3)在求出摄像机像平面上的图像中心和径向畸变系数的基础上,对摄像机像平面上的图像进行畸变校正后,通过靶标上多个角点可由(4)式建立线性方程,利用最小二乘法即可求出矩阵Hb,即完成参数的标定。
步骤三建立整体计算机视觉半实物仿真环境模型将前边过程的数学模型合并,即可得到半实物仿真环境的整体模型s5uv1=Hbαx0u000αyv000010RT0T1xwywzw1...(5)]]>s5为一比例因子;其中Hb可通过标定得到;R,T为人为设定。
根据上述模型可以看出,当已知摄像机像平面上点的齐次坐标[u,v,1]T和虚拟景象上点的齐次坐标[xw,yw,zw,1]T时,就可以计算出式(5)中的虚拟摄像机的内参及外参(R、T)。
下面通过一具体实施例来说明本发明的单目半实物视觉仿真的步骤无人机在陆战场上已取得显赫战绩,其出色的表现向整个世界展示了无人机应用于海战的广阔前景,因而受到各国海军的重视。而舰载无人机的关键技术问题之一就是使用后的着舰回收问题,在这里我采用本发明进行无人机着舰仿真实验。
步骤一首先由虚拟成像单元的OpenGL软件设计一个平面靶标,如图5所示。这里取靶标区域内各黑色方块的四个角点为特征点,各特征点的坐标事先设定,其中大小黑色方块的排列方式是为了识别靶标坐标系的原点和X轴方便。
步骤二由摄像实现单元在投影平面上获得经图像投影单元投影的图像。为了叙述简单起见,这里只相应的改变一次位置姿态,以俯仰角为45度,视点是在150厘米处为例,如图6所示。
步骤三通过计算机仿真软件的图像处理功能提取图像中特征点的图像坐标,如图7所示。
步骤四在已知式(5)中M1,M2,αx,αy,u0,v0情况下,根据式(5),可求解出无人机的位置姿态(R,T),具体数据如下R=0.702725-0.001678-0.714938
-0.000565-0.9999560.001809-0.711514-0.000596-0.699186T=-0.006923-0.004578150.141495OpenGL中设定值与实际测量值如下表
表中T=[Tx,Ty,Tz]T为摄像机光心在世界坐标系下的坐标。
以上所述的仅是本发明的优选实施方式。应当指出,对于本领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干变型和改进,这些也应视为属于本发明的保护范围。
权利要求
1.一种单目视觉半实物仿真系统,其特征在于包括虚拟成像单元、图像投影单元和摄像实现单元,这三个单元之间顺次连接,并且其相对位置不能变化。
2.一种如权利要求1所述的单目视觉半实物仿真系统,其特征在于所述的虚拟成像单元包括装有虚拟视景软件的计算机(1),所述的图象投影单元包括投影仪(2)和投影屏幕(3),所述的摄像实现单元包括摄像机(4)、摄像机云台(5)和装有仿真软件的计算机(6),计算机(6)可控制摄像机云台(5),使摄像机(4)获得最佳的视场位置,所述的投影仪(2)、投影屏幕(3)、摄像机(4)和摄像机云台(5)固定在室内墙壁或支架上,它们之间位置不能出现相对变化,投影仪(2)的参数固定不变,其与计算机(1)相连接,在投影屏幕(3)上投出从计算机1中虚拟视景软件生成的虚拟三维视觉图像,所述的摄像机(4)和计算机(6)相接。
3.一种利用如权利要求1所述的单目视觉半实物仿真系统进行半实物仿真的方法,其特征在于包括如下步骤第一步,在虚拟成像单元中,通过OpenGL等软件对虚拟景象进行构建,设定虚拟景象的位置姿态,通过虚拟摄像机将虚拟景象投影到计算机屏幕上;第二步,图像投影单元将图像投影到投影平面上,经过摄像实现单元在投影平面上获得投影图像;第三步,通过计算机软件计算得出虚拟摄像机的内部参数,虚拟景象的位置姿态,通过与设定值进行比较,分析得出仿真结果的精度误差。
4.一种如权利要求3所述的单目视觉半实物仿真方法,其特征在于所述的第一步包括设定虚拟摄像机的内外部参数的步骤。
5.一种如权利要求3所述的单目视觉半实物仿真方法,其特征在于所述的第二步包括建立由计算机屏幕到投影平面的成像模型;建立由投影平面到摄像机的成像模型;建立由计算机屏幕到摄像机像平面的成像模型。
6.一种如权利要求3所述的单目视觉半实物仿真方法,其特征在于所述的第三步包括建立半实物仿真的整体模型s5uv1=Hbαx0u000αyv000010RT0T1xwywzw1]]>其中Hb为3×3矩阵,αx是虚拟摄像机像平面上u轴上的尺度因子,αy是虚拟摄像机像平面上v轴上的尺度因子,[u0,v0]为虚拟摄像机像平面上图像中心坐标,s5为一比例因子,摄像机像平面上点的坐标[u,v,1]T,虚拟景象上点的齐次坐标[xw,yw,zw,1]T。
全文摘要
本发明涉及一种单目视觉半实物仿真系统及方法,所述的系统包括虚拟成像单元、图像投影单元和摄像实现单元,在进行半实物仿真时,包括如下步骤在虚拟成像单元中,通过OpenGL等软件对虚拟景象进行构建,设定虚拟景象的位置姿态,通过虚拟摄像机将虚拟景象投影到计算机屏幕上,然后,图像投影单元将图像投影到投影平面上,经过摄像实现单元在投影平面上获得投影图像,最后,通过计算机软件计算得出虚拟摄像机的内部参数,虚拟景象的位置姿态,通过与设定值进行比较,分析得出仿真结果的精度误差。本发明的优点是设备简单、易于实现,使用范围广,尤其适合应用于标定和视觉导航定位的仿真实现。
文档编号G06F3/00GK1851618SQ200610083639
公开日2006年10月25日 申请日期2006年5月31日 优先权日2006年5月31日
发明者张广军, 刘震, 孙军华 申请人:北京航空航天大学