第五章三维注册与虚实融合5.1虚实融合原理5.2相机标定技术5.3图像的标识识别5.4虚实融合增强显示案例:中联重科增强现实.mp4(1’28’’)5.1虚实融合原理增强现实系统必须能够实时地检测出观测者(或摄像机)相对于真实场景的位置和方向角,以及成像系统(摄像机)的内部参数(焦距和成像屏幕大小等)。根据这些信息实时确定所要添加的虚拟信息在投影系统中的大小、方向和映射位置。在用户看来,无论从任何角度观察,都应该使虚拟物体与真实场景保持三维欧氏空间的几何一致性。这就是AR中的三维注册(Registration)所要完成的任务。5.1虚实融合原理实现虚实融合的关键技术,是相机标定与三维注册技术,通过精准的相机标定与三维注册,使虚拟物体可以与真实世界进行无缝融合。在真实世界中人为地设定世界坐标系的原点、X坐标、y坐标、Z坐标,并测量出多个标志点的三维坐标值。对摄像机摄取的图像进行视觉识别,找到各标志点在图像显示坐标系中的二维坐标值。通过各个标志点在世界坐标系中的三维坐标值和在显示坐标系中的二维坐标值,实时计算出摄像机的焦距、成像屏幕大小等内部参数、在世界坐标系中的位置和方向角等外部参数。识别出通过提取给定的一幅或多幅图像的特征点来计算摄像机在真实世界的相对位置和方向,根据这些信息实时确定系统中要添加的虚拟物体在真实环境中的正确位置。使用基于计算机视觉的相机标定技术对标识进行识别,实现系统中的三维注册。三维注册子模块以图像检测模块的输出结果为数据的输入,通过相机标定内部参数和外部参数的算法,将程序中所用到标记的三维位置和姿态计算出来。相机的外部参数作为输出结果输入到虚实融合子模块,用DirectX或openGL中的虚拟相机模拟真实世界中的相机,产生良好的虚实环境无缝融合的场景。将三维的虚拟动画模型渲染到特定的标识物上,实现增强现实的效果。5.1虚实融合原理根据实时计算出摄像机的焦距、成像屏幕大小等内部参数、在世界坐标系中的位置和方向角等外部参数设定虚拟相机。通过虚拟相机对三维虚拟场景进行变换。(1)将变换后的虚拟场景的影像叠加到实际场景的影像中,实现虚实融合。将虚实融合后的图像通过头盔或投影机显示出来,观察者看到的是虚实融合后的场景。(2)将三维的虚拟动画贴图渲染到真实世界的标识物上,实现增强现实的效果。如:“别克汽车十城市巡展潘多拉项目.MOV”5.1虚实融合原理第五章三维注册与虚实融合5.1虚实融合原理5.2相机标定技术5.3图像的标识识别5.4虚实融合5.2相机标定技术通过相机标定技术实时计算出摄像机的焦距、成像屏幕大小等内部参数、在世界坐标系中的位置和方向角等外部参数。相机标定技术与四个坐标系统有关,分别是世界坐标系,成像平面坐标系,相机坐标系和图像显示坐标系。四个坐标系的关系世界坐标系:选择一个基准坐标系来描述摄像机安放在现实世界的位置,并用它描述世界环境中任何物体的位置,由基准观测原点和X轴、Y轴、Z轴组成。成像平面坐标系:相机的焦点为坐标系的原点o1,成像平面的中轴为x1、y1轴。相机坐标系:o点是摄像机(camera)的光心,x轴和y轴与成像坐标系x1、y1轴平行,z轴为摄像机的光轴,与成像平面垂直。由o点、x、y、z轴组成的直角坐标系称为摄像机坐标系。图像显示坐标系:显示在计算机屏幕上的图像坐标u、v,左上角为坐标原点。u、v分别与x1、y1轴平行。四个坐标系的关系世界坐标系与摄像机坐标系的关系R为旋转矩阵,表示两个坐标系各坐标轴之间旋转向量,t是平移向量,也是世界坐标系原点在相机坐标系中的坐标值x=r11X+r12Y+r13Z+t1y=r21X+r22Y+r23Z+t2z=r31X+r32Y+r33Z+t1R=t=成像平面坐标系与摄像机坐标系的关系上式用齐次方程表示:三角形OO1P1和OO2P相似:f/z=O1P1/O2P2=x1/x=y1/y成像平面坐标系与图像显示坐标系的关系上式用齐次方程表示:O1为成像平面坐标原点,是摄像机光轴与图像平面的交点dx和dy表示一个像素在x1轴与y1轴方向上的大小。u=v=综合以上三个关系式,得sx=1/dxsx为水平方向上的图像尺度因子sy=1/dysy为垂直方向上的图像尺度因子P称为投影矩阵,含有五个未知数,反映相机的内部参数:f,即相机的焦距,单位是毫米,Sx即水平方向上的图像尺度因子,单位是像素/毫米Sy即垂直方向上的图像尺度因子,单位是像素/毫米(u。,v。)表示图像屏幕中心点像素所处的行数和列数。D称为旋转平移矩阵,六个未知数,反映相机的外部参数:R含有的三个旋转角t含有的世界坐标系原点在相机坐标系中的坐标值四个坐标系的关系当相机选定后,内部参数不变。当相机的位置和角度固定后,外部参数不变。根据若干已知二维点与其对应三维点的坐标值,求解P矩阵和D矩阵中含有的11个未知数,从而确定摄像机的内部参数和外部参数。相机参数的求取上述含有P、D的矩阵关系可以改写为:相机参数的求取写成方程式:将第3式代入1、2式:相机参数的求取由一个已知的二维点的坐标与其对应的三维点的坐标,我们可以获得两个方程,由于方程中有12个未知数,我们至少要知道6组这样的点。当选择多于6个特征点时,就会有多组解。这些解有一定误差,但应该误差不大对每个求得的系数算均值,再用各系数误差的平方和最小的一组解作为最佳的一组解。相机参数的求取第五章三维注册与虚实融合5.1虚实融合原理5.2相机标定技术5.3图像的标识识别5.4虚实融合在增强现实系统中,经过图像分割、边缘检测和轮廓提取之后,我们就可以把以上步骤的结果用于标识识别子模块根据模式匹配算法,使系统从摄像机的视频图像中正确的识别出预先设计好的标识,同时给出标识的ID号码,作为系统中图形显示子模块输入参数的一部分,以使得图形显示子模块将预先设计好的三维模型正确的显示在特定的标记上,实现对真实环境的增强。标识分为两类,一类是人工设定好的标识,一类是场景中自然具备的。人工设定好的标识一般由具有一定宽度的黑色封闭的矩形框和内部的各种图形或文字两部分构成。5.3图像的标识识别对于人工设定好的标识通过对视频中的每一帧图像运用图像分割、边缘提取、连通区域检测、轮廓提取等过程判断视频图像中是否含有封闭的黑色矩形框。匹配连通区域中的四边形结构,记录视频图像中所有标识所在区域和坐标。分别提取各个标识四边形的边缘像素坐标,找出四边形标识四个顶点坐标,计算出标识边缘的直线方程(屏幕坐标)。由于系统中使用的标识记是事先设计的有规则的标识,所以能够快速获得检测结果。5.3图像的标识识别对于人工设定好的标识标识所代表的具体信息用标识内部的图形或文字表示,如表示何种目标或在此应显示何种虚拟物体。具体的标识内部图像可以根据需要手动选择任意的图像作为标识物,可以通过几种图元的组合自动生成工程中所需要标识。进行模板匹配,来实现标识识别。在做标识匹配前,需要进行图像正规化。5.3图像的标识识别图像正规化系统中采集图像的摄像头在采集图像的时候处于随机的位置,即从任何角度任何位置拍摄都可以,那么,摄像头镜面不一定与标识物的平面是平行的,摄像头的光轴也并不一定是垂直于标识物。所以采集到的图像也是不规则的,标识物的外轮廓发生了一定的变形,这些变形包括平移、旋转、缩放仿射变形等。为了用预先制作的模版和图像进行匹配,从而识别标识物的ID号码,需要对图像进行几何变换,使图像正规化5.3图像的标识识别图像正规化将从摄像头获取的标识图像转变为摄像头和图像是正对着的,摄像头的光心垂直于标识物时拍摄的视频图像。一般情况下,由于由摄像机引起的这种图像变换是仿射变换。通常情况下,这种变换是线性的,即能够保持线段的直线性、距离化、平行性不变。在图像线性变形的假设条件下,变形图像点的坐标(X,Y)与原图像上点的坐标(x,y)之间的关系是:5.3图像的标识识别其中,C为3*3的矩阵,这个矩阵的第三列对平面图像没有影响,所以只要确定了变形图像上的3个点以及在没有变形图像上与它们对应的3个点的坐标,就可以代入方程组,求出方程中的六个未知数。也就是求得了变形图像和未变形图像之间的对应关系。5.3图像的标识识别模板匹配图像匹配技术是数字图像处理领域的一项重要研究。根据已知模式(模板图),到另一幅图中搜索相匹配的子图像的过程,称为模板匹配。模板就是一幅已知的小图像,具体地说模板匹配的过程是在一幅大图像中搜寻目标,己知该图中有要找的目标,通过一定的算法可以在图中找到目标,确定其坐标位置。图像的模板匹配技术可以分成直接基于灰度值的方法以及基于特征提取的方法两大类。5.3图像的标识识别一幅图像与另一幅图像接近的程度需要一个尺度来描述,在数学上常用向量的范数做为一个尺度。假设输入图像为M,已知图像为T,它们之间的相似度可以用下式衡量:其中,d是一个距离标量,表示两个向量之间的距离。通过在图像中寻找使d值最小的区域,确定被寻找的图像T在输入图像中的位置等信息。为了防止出现匹配错误的情况,一般会在应用中设置一个阀值,当d小于某个阀值时,认为两幅图像有一定可比的相似度,当d大于某个阀值时,认为两幅图像不具有可比的相似度,不参与d值的比较。5.3图像的标识识别由于在拍摄图像的时候,会因为光照强度不同,获取的图像在灰度级的分布上会不同,这种情况使得两张原本形状相似的图像被检测为不相似。为了避免这种情况,实际应用中使用两个向量的夹角这个标准来衡量两个图像的相似度,公式如下:系统中采用标准相似度来进行模版匹配。所采用的特征是图像的标识物区域的面积比几何特征。面积比计算比较简单,实时性好;同时在图像进行线性变换的过程中面积比特征不会改变。在对系统的标识物事先设定好的情况下会有较高的精度。5.3图像的标识识别第五章三维注册与虚实融合5.1虚实融合原理5.2相机标定技术5.3图像的标识识别5.4虚实融合5.4虚实融合对虚拟的三维物体进行投影变换等三维注册操作后,其大小、朝向、位置等都与实际场景匹配。直接将变换后的虚拟场景的影像叠加到实际场景的影像中,实现虚实融合,或者将三维的虚拟动画贴图渲染到真实世界的标识物上,实现增强现实的效果,都没有大的问题。为了取得更好的效果,虚实融合模块除完成前景和虚景融合外,还要进行遮挡处理、边缘融合等工作。虚实融合模块还要将光照、阴影、前景色彩增强等视觉效果根据环境的需要和真实世界的场景加入到系统中,使得增强现实系统中的场景更加逼真。5.4虚实融合在系统中,为了达到逼真的虚实融合的效果,正确显示虚拟物体和真实物体的遮挡关系,需要将深度检测模块的输出结果传入虚实结合子模快,虚实结合子模块根据真实场景中的物体与虚拟物体的遮挡关系进行虚拟场景与真实场景的无缝融合。虚实融合模块处理虚拟物体与真实物体之间的遮挡关系的具体步骤如下:5.4虚实融合如果物体在监控区域,将物体的深度信息和监控区域中虚拟物体的深度信息进行比较。如果真实场景中物体的深度大于虚拟投影三维模型的深度信息,从固定摄像机的视角看,真实场景中的物体与虚拟物体的空间位置关系是真实场景的物体在后,虚拟物体在前,那么就直接将三维虚拟的模型投影在标记物上。如果真实场景中物体的深度小于虚拟投影的三维模型的深度信息,真实场景的物体在前,虚拟物体在后,那么就将三维虚拟的模型投影在标记物上之后,将高斯抠图得到的真实物体的图像渲染到虚拟三维模型之上,显示真实物体与虚拟物体的遮挡关系。5.4虚实融合由计算机视觉的相机标定技术可以知道,一幅图像中的一个点确定空间中一条直线与这个点相对应,为了在系统中求取图像上一点的深度信息,需要两幅图像或多幅图像。计算一个点在多幅图像上深度信息的直线方程,然后联方程,用最小二乘法计算出图像点的深度信息。5.4虚实融合深度检测模块的流程图5.4虚实融合根据深度信息进行虚实融合的案例周大福.mp45.4虚实融合抠像技术Alpha通道的设置与视频效果