增强现实系统中注册技术特征匹配算法的改进

2012-01-04 05:06童小念范利君
关键词:摄像机投影坐标系

童小念,范利君

(中南民族大学 计算机科学学院, 武汉 430074)

增强现实AR(Augmented Reality)是一个多学科交叉的新型研究领域,它涉及到信号处理、计算机图形和图像处理、人机界面和心理学、移动计算、计算机网络、分布式计算、信息获取和信息可视化,以及新型显示器和传感器的设计等许多内容.虚拟现实系统一般将用户与真实环境隔离开,通过模拟人的视觉、听觉、力觉、触觉、嗅觉、味觉等多种感官,使其沉浸在计算机生成的虚拟世界中[1,2].而增强现实系统则是在虚拟现实技术的基础上发展的,在增强现实中,用户与真实世界不须隔离,而是将计算机生成的虚拟物体或其它信息融合到真实环境中,从而实现对现实的增强.

增强现实也被称为混合现实系统,它具有虚实结合、实时交互、三维注册的特点.其中三维注册所要完成的任务是实时检测出使用者头部的位置和视线方向,根据这些信息确定所要添加的虚拟信息在真实空间坐标中的映射位置,并将这些信息实时显示在屏幕的正确位置.为了实现虚实间的结合,三维注册运算至关重要.

1 ARtoolkit视觉原理

当前流行的增强现实系统软件包有ARtoolkit,ARSTudio和ARtag等,其中ARtoolkit应用最广泛.ARtoolkit是一套基于C/C++语言和OpenGL图形库的增强现实系统二次开发包,可以支持SGI IRIX、PC Linux、Mac OSX、PC Windows(95/98NT/2000/XP)等操作系统,同时也支持Video(普通视频)和标准see-through AR,Video see-through AR可将虚拟图像覆盖到实时视频[3-5].

1.1 摄像机标定

ARtoolkit中摄像机与标识系统的关系如图1所示.摄像机标定的目的是测定真实场景与虚拟物体的位置和姿态信息,包括位置和方向角以及摄像机参数,以确定不同坐标系间的变换关系,如世界坐标系到摄像机坐标系的转换、摄像机坐标系到图像坐标系间的转换等.由于ARtoolkit中世界坐标系与标识坐标系重合,三维注册就转化为摄像机坐标系与标识坐标系间的三维变换矩阵的求解.

图1 摄像机和标识坐标系统

1.2 ARtoolkit工作流程

在利用ARtoolkit开发AR程序前需制作标识,系统根据不同的标识返回不同的ID值来叠加不同的虚拟物体.ARtoolkit提供的标准模板是一个带黑色边框的正方形,开发人员根据需要向白色区域中添加自定义图形.ARtoolkit模板标识如图2所示.

图2 ARtoolkit模板标识

ARtoolkit开发增强现实系统[6]包含以下步骤:1)利用摄像头获取真实场景信息输入到系统中;2)根据用户设定的阈值将采集到的彩色图像转换成二值黑白图像,然后对该二值图像进行连通域分析;3)找出其中所有的四边形区域作为候选匹配区域,将每一候选区域与模板库中的模板进行匹配.4)系统首先根据相机的位置信息和真实场景中的定位标记来计算摄像机相对于已知标识的位置和姿态.5)按照仿射变换矩阵在视平面上绘制虚拟物体,最后与真实场景的视频合并显示在屏幕上.

2 注册方法

2.1 单应性矩阵

针孔摄像机成像模型下以齐次坐标表示的平面坐标系中的点Xw=[X,Y,Z]T与XI=[x,y,z]T其在像平面上的投影之间的关系可以表示为式(1):

[x,y,z]T=λCTCW[X,Y,Z,1]T,

(1)

其中:λ为比例因子;TCW=[r1,r2,r3,t]为摄像机坐标系与平面坐标系间的投影变换矩阵,包含3个旋转分量和一个平移分量;C为已知的摄像头内部参数.由于规定真实场景中的平面与其自身坐标系的Z=0平面重合[7],式(1)可转化为式(2):

[x,y,z]T=λC[r1,r2,t][X,Y,1]T=H[X,Y,1]T,

(2)

(3)

2.2 仿射重建与仿射重投影

给定空间点的集合{X1,X2,X3,…,Xn},n≥4若其中至少4点非共面[8],则可以利用这4点定义仿射坐标系,其它任意点可以利用上述4点的一个线性组合来表达.仿射重建和放射重投影是仿射变换坐标系下的2个重要性质.仿射重建的目的是为了获取空间中的点在仿射坐标系下的位置,假设一个点在2幅参考图像上的投影分别为(x,y,1)T和(x′,y′,1)T,则该点在仿射坐标系下的坐标(x″,y″,z″,1)T可以由式(4)获取:

(4)

如果已知仿射坐标系下的一点(x″,y″,z″,1)T,且定义仿射坐标系的4点在当前图像上的投影为已知,则该点在当前图像上的投影点(xk,yk,1)T可以根据仿射重投影原理计算,如式(5):

(5)

其中,(xi,yi)(i=0,1,2,3)为定义仿射坐标系的4点在当前图像上的投影;M3×4为仿射重投影矩阵.由以上分析可知,只要在参考图像上指定真实场景中非共线的4个点就可以建立世界坐标系,在实时跟踪阶段利用仿射重投影原理恢复这4个点在当前图像上的位置,根据这4点在场景平面和当前图像上的对应关系及式(3)就可以计算出三维注册变换矩阵.而标识点在场景平面和当前图像上的对应关系可由L-K算法求得.

2.3 L-K特征匹配算法的改进

L-K光流算法由Lucas和Kanada在1981年提出来[9-10],它计算两帧图像在时间间隔ΔT内每个像素点位置的移动.设I(x)和T(x)分别表示在两幅图像中的点x处像素灰度值,W(x;p)表示该点在两幅图像间的转换关系,P为给定的初始变换参数.

L-K迭代算法的时间复杂度为O(n2N+n3),而计算Hessian矩阵的时间复杂度为O(n2N),因为N远大于n,则计算Hessian矩阵占用了大量计算资源.为了提高Hessian矩阵的计算效率,本文改进了L-K特征匹配算法,旨在提高注册效率.改进算法的流程如下:

Fork=1:k

利用Sobel算子计算图像的灰度值,取一点I;

计算I(W,(x;p))-T(x);

[I(W(x;p))-T(x)] ;

End

所用关键公式有:

某点在相邻两幅图像间的转换式:

W(x;p)=W(x;p)·W(x;Δp)-1,

(6)

变换参数的迭代求解:

(7)

解得Hessian矩阵(自变量为向量的实值函数的二阶偏导数组成的方块矩阵)为:

(8)

3 实验结果及分析

本文改进算法在VS2008环境下开发,采用普通免驱动USB接口的摄像头摄取场景图像,使用了OpenGL图形函数库和ARtoolkit应用软件包.其实验效果如图3所示.图4为传统算法和改进算法所需时间开销和获取的视频帧率对比.

图3 虚拟物体注册效果图

图4 仿真结果对比图

由实验结果可见,图3(a)中标识物角点(黑色边角)并没有完全显现,依然较精确完成了注册效果,显示了三维立体图形;图3(b)中有其他标识物A对D的干扰(非多标示识别),但是依然准确注册,并能根据视角的变化和旋转角度进行姿态调整(花朵朝向蜜蜂开放).图4数据显示本文改进算法获取的视频帧率为29.826pfs,而传统Artoolkit算法的视频帧率为27.181pfs,且在frame5到frame10之间以及frame15到frame20之间传统算法抖动剧烈,稳定性较弱.本文的改进算法完成注册矩阵计算的时间为0.0017s, 而未采用改进算法的注册方法完成矩阵计算的时间为0.0019s, 运算效率提高了11%.实验结果表明,本文改进的注册算法具有更高的运算效率和稳定性,能够更好地满足增强现实系统的要求.

4 结语

在研究ARtoolkit视觉原理的基础上,结合仿射变换恢复图像变化量和摄像机相对位置姿态变化量之间的关系矩阵,采用改进的L-K算法提高了注册的精度和效率.该算法在增强现实注册技术方面具有一定的实用价值.

[1]Kato H,Billinghurst M.Marker tracking and HMDCalibration for a video-based augmented reality conferencing system[C]//IEEE and ACM.International Workshop on Augmented Reality (IWAR’99).San Francisco: CA,1999:59-65.

[2]Ren P.The technology of vision-based tracking and registration in augmented reality [C]// ICBECS.Biomedical Engineering and Computer Science.Chengdu: University of Electronic Science and Technology of China,2008:20-32.

[3]Wloka Matthias,Anderson Brian.Resolving occlusion in augmented reality [C]//ACM.Symposium on Interactive 3D Graphics,1995.USA:ACM Press,1995: 5-12.

[4]Berger Marie-O.Resolving occlusion in augmented reality: a contour based approach without 3D reconstruction [C]//IEEE.International Conference on Computer Vision and Pattern Recognition,1997.USA: IEEE,1997: 91-96.

[5]Stricker Didier,Klinker Gudrun,Reiners Dirk.A fast and robust line-based optical tracker for augmented reality applications [C]//Behringer U.First International Workshop on Augmented Reality,1998.USA: A K Peters Ltd,1998: 129-145.

[6]Fischer Jan,Regenbrecht Holger,Baratoff Gregory.Detecting dynamic occlusion in front of static backgrounds for AR scenes[C]//ACM.Eurographics Workshop on Virtual Environments(EGVE’03).USA: ACM Press,2003: 153-161.

[7]朱杰杰,潘志庚.用视觉计算实现视频增强现实遮挡处理[J].计算机辅助设计与图形学学报,2007,19(12):1624-1629.

[8]明德烈,柳 健,田金文.增强现实中的虚实注册技术研究[J].中国图象图形学报:A版,2003,8(5):524-559.

[9]Barfield W,Baird K.Applications of wearable computers and augmented reality to manufacturing[C]// Barfield W.Fundamentals of Wearable Computers and Augmented Reality.Mahwah: NJ,2001: 691- 723.

[10]Zhang Z Y,Deriche R,Faugeras O,et al .A robust technique for matching two uncalibrated images through the recovery of the unknown epipolar geometry [J].Artificial Intelligence,1995,78(1/2): 87-119.

猜你喜欢
摄像机投影坐标系
全息? 全息投影? 傻傻分不清楚
独立坐标系椭球变换与坐标换算
基于最大相关熵的簇稀疏仿射投影算法
找投影
找投影
坐标系背后的故事
三角函数的坐标系模型
求坐标系内三角形的面积
新安讯士Q6155-E PTZ摄像机
安讯士新AXIS M31网络摄像机