一种用于光学透视增强现实显示器的标定方法与设备与流程

文档序号:17377716发布日期:2019-04-12 23:29阅读:221来源:国知局
一种用于光学透视增强现实显示器的标定方法与设备与流程

本申请涉及通信领域,尤其涉及一种用于光学透视增强现实显示器的标定的技术。



背景技术:

摄像机标定,是建立摄像机的几何成像模型,描述图像像素位置与空间坐标系中场景点位置之间的相互关系,最终确定摄像机内外参数等信息的过程。摄像机标定技术是计算机视觉领域里从二维图像信息中提取出三维空间信息必不可少的步骤,早已被广泛应用于目标跟踪识别、导航、视觉监控和三维重建等领域中。摄像机标定的精度直接影响导航、视觉监控和三维重建的效果,同时也是系统误差的主要来源。常见的摄像机标定方法有传统标记法和自标定法等,传统标定法进行摄像机标定时需要使用标定参照物,自标定方法的标定精度不高,鲁棒性不足,并且利用自标定方法进行摄像机标定时一般无法获取摄像。基于上述摄像机标定的光学透视标定方法,由于自身存在的缺陷,在进行光学透视标定时,标定的精度受到影响,无法的得到可靠的保障。



技术实现要素:

本申请的一个目的是提供一种用于光学透视增强现实显示器的标定方法。

根据本申请的一个方面,提供了一种用于光学透视增强现实显示器的标定方法,该方法包括:

通过所述光学透视增强现实显示器中的显示装置在所述显示装置不同位置呈现对应的一组标记信息,其中,所述一组标记信息包括至少六个标记信息;

获取所述一组标记信息中每个标记信息与对应的预设标记信息对准时的一组点对坐标信息,其中,所述一组点对坐标信息包括至少六个点对坐标信息;

根据所述一组点对坐标信息,确定虚拟摄像坐标系对应的内参和外参,其中,所述虚拟摄像机包括由待标定单目和所述显示装置组成的针孔模型对应的摄像机。

根据本申请的另一个方面,提供了一种用于光学透视增强现实显示器的标定设备,其中,所述设备包括:

第一模块,用于通过所述光学透视增强现实显示器中的显示装置在所述显示装置不同位置呈现对应的一组标记信息,其中,所述一组标记信息包括至少六个标记信息;

第二模块,用于获取所述一组标记信息中每个标记信息与对应的预设标记信息对准时的一组点对坐标信息,其中,所述一组点对坐标信息包括至少六个点对坐标信息;

第三模块,用于根据所述一组点对坐标信息,确定虚拟摄像坐标系对应的内参和外参,其中,所述虚拟摄像机包括由待标定单目和所述显示装置组成的针孔模型对应的摄像机。

根据本申请的一个方面,提供了一种用于光学透视增强现实显示器的标定设备,该设备包括:

处理器;以及

被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行上述方法。

根据本申请的一个方面,提供了一种存储指令的计算机可读介质,所述指令在被执行时使得系统进行如上所述的方法。

与现有技术相比,本申请提出了一种光学透视精度较高的标定方法:通过显示装置呈现不同的标记信息,基于用户对准屏幕上标记信息与预设标记时的点对坐标信息,求解虚拟摄像机投影矩阵,包括内参和外参。本方法求解摄像机的内参和外参精度较高,效果较好。而且,本方法进一步将投影矩阵作为初始值代入非线性优化算法(如,莱文贝格-马夸特(lm)算法、高斯牛顿算法和梯度下降算法等),并且利用该非线性优化算法进一步提高标定的精度;利用随机抽样一致(ransac,randomsampleconsensus)算法将上述过程迭代进行固定次数,得到最优投影矩阵,考虑了畸变,取得的光学透视标定精度较高,效果更好,提升了用户使用体验。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1示出根据本申请一个实施例的一种用于光学透视增强现实显示器的标定方法的系统拓扑图;

图2示出可应用于本申请各实施例的摄像机基本成像模型;

图3示出可应用于本申请各实施例的世界坐标系与实体摄像坐标系的转换关系;

图4示出根据本申请一个实施例的一种用于光学透视增强现实显示器的标定方法的方法流程图;

图5示出根据本申请一个实施例的一种预设标记信息的示例图;

图6示出根据本申请一个实施例的一种通过显示装置呈现的多个标记信息的示例图;

图7示出根据本申请一个实施例的一种光学验证程序渲染验证方块的示例图;

图8示出根据本申请一个实施例的一种通过滑动增强现实眼镜触摸装置调整标定参数的示例图;

图9示出根据本申请一个实施例的一种用于光学透视增强现实显示器的标定设备的设备示意图;

图10示出可被用于实施本申请中所述的各个实施例的示例性系统。

附图中相同或相似的附图标记代表相同或相似的部件。

具体实施方式

下面结合附图对本申请作进一步详细描述。

在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(例如中央处理器(centralprocessingunit,cpu))、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(randomaccessmemory,ram)和/或非易失性内存等形式,如只读存储器(readonlymemory,rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(programmablerandomaccessmemory,pram)、静态随机存取存储器(staticrandom-accessmemory,sram)、动态随机存取存储器(dynamicrandomaccessmemory,dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(electrically-erasableprogrammableread-onlymemory,eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(compactdiscread-onlymemory,cd-rom)、数字多功能光盘(digitalversatiledisc,dvd)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。

本申请所指设备包括但不限于用户设备、网络设备、或用户设备与网络设备通过网络相集成所构成的设备。所述用户设备包括但不限于任何一种可与用户进行人机交互(例如通过触摸板进行人机交互)的移动电子产品,例如智能手机、平板电脑等,所述移动电子产品可以采用任意操作系统,如android操作系统、ios操作系统等。其中,所述网络设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程逻辑器件(programmablelogicdevice,pld)、现场可编程门阵列(fieldprogrammablegatearray,fpga)、数字信号处理器(digitalsignalprocessor,dsp)、嵌入式设备等。所述网络设备包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云;在此,云由基于云计算(cloudcomputing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟超级计算机。所述网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(virtualprivatenetwork,vpn)、无线自组织网络(adhoc网络)等。优选地,所述设备还可以是运行于所述用户设备、网络设备、或用户设备与网络设备、网络设备、触摸终端或网络设备与触摸终端通过网络相集成所构成的设备上的程序。

当然,本领域技术人员应能理解上述设备仅为举例,其他现有的或今后可能出现的设备如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

在本申请的描述中,“多个”的含义是两个或者更多,除非另有明确具体的限定。

图1示出了本申请一个典型的增强现实系统100,该增强现实系统100包括摄像装置101、处理器102、显示装置103、以及输入装置104,其中,该系统可应用于包含上述装置的增强现实显示器或者增强现实设备,在此,本申请所指的增强现实设备包括但不限于增强现实头盔、增强现实眼镜等含有光学透视功能的计算设备。其中,所述摄像装置101,用于采集当前用户前方相关的图像信息等,包括但不限于摄像头、rgb跟踪摄像机、深度摄像头等;所述处理器102,用于对采集到的数据(如图像信息、输入操作信息等)的采集、存储、检索、加工、变换和传输等;所述显示装置103,用于呈现图像信息或者在对应位置叠加增强现实内容等,包括但不限于显示屏幕等;所述输入装置104,用于采集用户输入的操作信息等,包括但不限于触摸板等。在此,我们以增强现实设备为例阐述以下实施例,当然,本领域技术人员应能理解,该等实施例同样适用于可应用于图1所示系统的其他设备。

在此,对于增强现实设备(如增强现实眼镜等)而言,我们可以假设,目标物本身有个三维坐标系(假设为世界坐标系),摄像装置(如眼镜实体摄像头)有个三维的实体摄像坐标系,人眼和显示装置(如眼镜光学显示屏幕)组成虚拟摄像坐标系(如果是双目增强现实眼镜,人眼与显示装置组成左目虚拟摄像坐标系与右目虚拟摄像坐标系,眼睛是虚拟摄像机中心,光学显示屏幕是虚拟摄像机的像平面),显示装置有个二维的图像坐标系。目标物本身在世界坐标系中的坐标是已知的,首先将其转换到实体摄像坐标系下,转换矩阵通过识别跟踪算法得出。再根据标定参数的外参转换到人眼和眼镜显示屏幕组成的虚拟摄像坐标系上,最后根据虚拟相机内参得到眼镜显示屏幕对应图像坐标系的坐标。因此可以计算出目标物最终在眼镜显示屏幕中的位置。其中,从世界坐标转换到实体摄像机二维图像坐标的具体摄像机模型如下:

1、理想模型

图2示出了摄像机的基本成像模型,通常称为基本针孔模型,由三维空间到平面的中心投影变换所给出。

如图2(a),oc是摄像机中心,它到摄像机像平面π的距离为f,f称为摄像机的焦距。空间点xc在平面π上的投影(或像)m是以点oc为端点并经过点xc的射线与平面π的交点,以点oc为端点且垂直于像平面的射线称为光轴或主轴,主轴与像平面的交点p称为摄像机的主点。为了从代数上描述这种投影关系,需要建立摄像机坐标系和图像坐标系。在图像平面上,以主点p为像平面坐标系的坐标原点,以水平线与铅直线分别为x轴和y轴,建立图像坐标系o-xy。在空间中,以摄像机中心oc为摄像机坐标系的坐标原点,建立摄像机坐标系o-xcyczc,如图2(b)所示。空间点xc在摄像机坐标系中的齐次坐标记为xc=(xc,yc,zc,1)t,它的像点m在图像坐标系中的齐次坐标记m=(x,y,1)t,称(xc,m)为一组对。根据三角形相似原理,可推知空间点xc与它的像点m满足下述关系:

转换成矩阵形式:

其中,xc=(xc,yc,zc,1)t,m=(x,y,1)t分别是空间点和图像点的齐次坐标,是从空间到像平面的一个齐次线性变换。记p=diag(f,f,1)(i,0),则上式可以表示为更简单形式:

m=pxc(3)

注意:(3)是一个齐次等式,表示在相差一个非零常数因子的意义下相等。通常称矩阵p为摄像机矩阵。这就是基本成像模型的代数表示。

2、实际模型

上面讨论的是理论情况(主点就是图像坐标系的原点),但实际情况中,

一、图像平面的坐标原点可能不在主点上;

二、用于计算机处理的图像通常都是用ccd摄像机所获取的数字图像,将图像平面的点进行数字离散化。

在以上推导的理想模型中,假设的图像坐标在两个轴上的尺度不相等,这样ccd摄像机数字离散化后的像素不是一个正方形,因此有必要引入非等量尺度因子;第三,一般摄像有扭曲参数的存在。

在以上三种条件的限制下,理想的中心投影模型可以对应改写为五个参数的模型:

同样,则摄像机的投影关系可以写成:

m=k(i,0)xc=pxc(5)

其中:是摄像机内参数矩阵,fx,fy称为ccd摄像机在u轴和v轴方向上的尺度因子,(u0,v0)t称为ccd摄像机的主点。s称为ccd摄像机的畸变因子或倾斜因子。摄像机的内部参数共有五个。

3、一般模型

我们一般描述一个三维点,由于相机可能一直在运动,所以我们并不是基于摄像机坐标系下对其描述,而是在世界坐标系下进行描述。世界坐标系与相机坐标系之间的关系可以用旋转矩阵和平移向量来描述,如图3所示。

令空间点在世界坐标系与摄像机坐标系的坐标分别为x=x,y,z,1t,xc=(xc,yc,zc,1)t,则二者之间的关系:

将(6)带入(5),得到:

其中,表示摄像机中心在世界坐标系中的坐标,摄像机矩阵为摄像机的外参数矩阵。其中,r=(α,β,γ)是旋转矩阵,α,β,γ分别是绕摄像机坐标系x,y,z轴的旋转角度。

是平移矩阵,tx,ty,tz分别是绕摄像机坐标系x,y,z轴的平移量,所以摄像机外参由6个参数组成(α,β,γ,tx,ty,tz)。

基于上述摄像机基本成像模型,为了实现光学屏幕上呈现的增强现实内容能够准确叠加在实景中,我们必须先进行虚拟摄像机(人眼与光学显示屏幕组成一个针孔模型的虚拟摄像机)标定,确定对应的虚拟摄像机的内参和外参。其中,虚拟摄像机的外参包括从实体摄像坐标系到虚拟摄像坐标系的变换矩阵;虚拟摄像机的内参包括从虚拟摄像坐标系到图像坐标系的图像投影矩阵。

光学透射显示器包括光学透视眼镜和光学透视头盔等,是增强现实系统的显示方式之一,如:谷歌眼镜(googleglass)、微软hololens和hiarglasses等。它有一个半透半反的光学系统,佩戴者透过它,既可以直接看到外面的真实场景,又可以看到上面显示的虚拟叠加信息。之所以要应用光学透射式显示器,是因为它可以将虚拟信息直接叠加到真实环境中,给人更加自然的交互体验。

光学透视显示器标定,是增强现实的一个核心技术,显示器标定是指显示在显示器中的虚拟图形和真实世界的对准,主要是测量出虚拟物体显示在显示器上的投影变换,从而使虚拟物体能准确显示在显示器的正确位置上,这就要求对佩戴的光学透视显示器进行标定。而戴上光学透视显示器,由于来自真实场景的图像直接成像于用户视网膜之上,因此光学透视显示器的标定不仅需要对显示器上的摄像头进行标定,还需要对佩戴者双目进行标定,使得光学透视标定更为复杂。显示器的光学显示屏幕是一个2d的平面,人眼与显示器的光学显示屏幕组成一个针孔模型的虚拟摄像机,与摄像机标定原理类似,这里光学透视标定也是用来确定眼睛和显示器的光学显示屏幕组成的虚拟摄像机的内外参数。

参考图1所示的系统拓扑,以下我们将从增强现实设备的角度,结合图4,对本申请的具体实施方式进行介绍。

图4示出根据本申请一个方面的一种用于光学透视增强现实显示器的标定方法,该方法可被应用于图1所示的系统,其中,所述方法包括步骤s1、步骤s2以及步骤s3。在步骤s1中,增强现实设备通过所述光学透视增强现实显示器中的显示装置在所述显示装置不同位置呈现对应的一组标记信息,其中,所述一组标记信息包括至少六个标记信息;在步骤s2中,增强现实设备获取所述一组标记信息中每个标记信息与对应的预设标记信息对准时的一组点对坐标信息,其中,所述一组点对坐标信息包括至少六个点对坐标信息;在步骤s3中,增强现实设备根据所述一组点对坐标信息,确定虚拟摄像机对应的内参和外参,其中,所述虚拟摄像机包括由待标定单目和所述显示装置组成的针孔模型对应的摄像机。基于本方法,不仅可以实现单目的标定,还可以通过重复执行上述步骤,实现双目甚至是多目(如多人联机等)的标定。

具体而言,在步骤s1中,增强现实设备通过所述光学透视增强现实显示器中的显示装置在所述显示装置不同位置呈现对应的一组标记信息,其中,所述一组标记信息包括至少六个标记信息。例如,标记信息包括不限形状、呈现于所述增强现实设备的显示屏幕上的用于进行对准预设标记信息的特定信息,其中,这些标记信息在图像坐标系中的位置为已知的,所述预设标记信息为用户预先准备的标记,可以是基于二维平面的,也可以基于三维结构的,可以预设在固定位置上(如预设标记固定在桌面上,用户移动眼镜进行对准),也可以进行移动等(如眼镜位置不动,用户手持预设标记移动进行对准),用于标定时供用户通过增强现实设备对准该标记信息。如图5所示,该预设标记信息为正方形方框内正中心的红点,该预设标记信息被放置于桌面上;如图6所示,图中显示的为一组标记信息,该组标记信息包含九个标记信息,标记信息中心点的图像坐标为已知的,九个标记信息可以是同时呈现,也可以是按照一定顺序(如从左往右、从上往下等)依次呈现或分批(如若干个(例如三个)作为一批)依次呈现。用户通过增强现实设备屏幕上显示的标记信息,调整增强现实设备的角度,将标记信息的中心点依次对准预设标记信息的中心点。在一些实施方式中,增强现实设备的实体摄像装置(如rgb跟踪摄像机等)可以识别跟踪预设标记信息,辅助用户更好的完成校准过程。

在步骤s2中,增强现实设备获取所述一组标记信息中每个标记信息与对应的预设标记信息对准时的一组点对坐标信息,其中,所述一组点对坐标信息包括至少六个点对坐标信息。其中,一个点对坐标信息包括该点对准预设标记在实体摄像坐标系中的实体摄像坐标信息和对应的标记信息在图像坐标系中的图像坐标信息,其中,所述实体摄像坐标信息由所述预设标记的世界坐标(已知)与所述实体摄像坐标系的外参转换得到,其中,所述实体摄像坐标系包括摄像装置光心为原点建立的三维摄像坐标系,外参包括从世界坐标系至实体摄像坐标系的变换矩阵,增强现实设备利用摄像机标定算法可以计算出摄像装置对应的实体摄像坐标系与世界坐标系的变换矩阵。在一些实施方式中,为了简化计算,所述世界坐标系以所述摄像装置的光心为原点建立。

例如,增强现实设备根据标定时的一组标记信息校准对应的预设标记信息,从而获取对应的点对坐标信息。如图5和图6所示,增强现实设备基于用户的操作,将标记信息的中心与预设标记信息的中心对准,随后,可以基于用户的操作指令(如语音指令、手势指令、点击触摸装置、键入信息或者静候一定时间等),记录该标记信息与预设标记信息对应的一个点对坐标信息,其中,该标记信息在图像坐标系中的位置是已知的,预设标记信息在世界坐标系中的位置是已知,通过摄像装置的姿态可以计算得到预设标记信息在实体摄像坐标系中的位置信息,其中所述姿态可以根据识别跟踪算法计算得到。增强现实设备进行双目或多目显示器的标定时,每次对准其中某一个单目对应的标记信息,在对应的屏幕中呈现对应标记信息,此时,在其他屏幕中可以选择性的呈现遮挡画面,以集中注意力在被标定的这个单目。

在步骤s3中,增强现实设备根据所述一组点对坐标信息,确定虚拟摄像机对应的内参和外参,其中,所述虚拟摄像机包括由待标定单目和所述显示装置组成的针孔模型对应的摄像机。其中,虚拟摄像机对应的外参包括实体摄像坐标系与所述虚拟摄像坐标系的变换矩阵[r|t];虚拟摄像机对应的内参包括图像坐标系与所述虚拟摄像坐标系的图像投影矩阵k。增强现实设备将点对坐标信息代入标定算法,可以计算出虚拟摄像机的内参和外参,其中,点对坐标信息包括至少6个点对坐标信息,在此,如图6所示,我们以9个点对坐标信息为例阐述以下实施例。

在一些实施方式中,该步骤s3包括子步骤s31(未示出)和子步骤s32(未示出)。在步骤s31中,增强现实设备从所述一组点对坐标信息中选择至少六个点对坐标信息,并根据所述选择的至少六个点对坐标信息确定所述虚拟摄像机的投影矩阵信息,其中,所述虚拟摄像机包括由待标定单目和所述显示装置组成的针孔模型对应的摄像机;在步骤s32中,增强现实设备根据所述投影矩阵信息确定所述虚拟摄像机对应的内参和外参。其中,投影矩阵信息m=k*[r|t],该投影矩阵信息是一个3*4的矩阵,共有11个未知数,那么至少需要六个点对坐标信息求解出该投影矩阵信息。增强现实设备从点对坐标信息的9个点对坐标信息中随机选择或者按照一定规则选择六个点对坐标信息,通过该六个点对坐标信息进行直接线性变换求解虚拟摄像机的投影矩阵信息,并根据投影矩阵信息进一步确定对应的虚拟摄像机的内参和外参。求解投影矩阵信息具体过程包括:从9个点对坐标信息中选出n(n≥6)个点对坐标信息,此时,n个点对构成了超定方程组,然后用线性最小二乘求解该超定方程组,该求解过程可采用奇异值分解(singularvaluedecomposition,svd)方法,从而确定对应的投影矩阵信息。

在一些实施方式中,所述虚拟摄像机的外参包括该外参的旋转矩阵信息及平移矩阵信息,其中,所述步骤s32包括子步骤s321(未示出)和子步骤s322(子步骤),在步骤s321中,增强现实设备根据所述投影矩阵信息确定对应的虚拟摄像机的内参及外参中的旋转矩阵信息;在步骤s322中,增强现实设备根据所述投影矩阵信息及所述虚拟摄像机的外参的旋转矩阵信息确定所述虚拟摄像机的外参的平移矩阵信息。其中,增强现实设备根据获取的投影矩阵信息,进一步获得对应的虚拟摄像机的内参和外参。例如,增强现实设备根据投影矩阵信息m,对该投影矩阵信息m的前三行和前三列进行rq分解,可以求解出虚拟摄像机的内参k和外参中的旋转矩阵r,其中,rq分解是指将矩阵信息分解成一个半正交矩阵与一个上三角矩阵的积。增强现实设备还可以通过该投影矩阵信息m继续求解得到外参中的平移矩阵t,结合平移矩阵和旋转矩阵得到对应的虚拟摄像机的外参。在一些实施方式中,在步骤s322中,增强现实设备根据所述投影矩阵信息确定所述虚拟摄像机对应的虚拟摄像坐标系的原点在所述实体摄像坐标系中的实体摄像坐标信息,基于所述实体摄像坐标信息及所述虚拟摄像机的外参的旋转矩阵信息确定该外参的平移矩阵信息。例如,增强现实设备利用投影矩阵信息m解出眼睛(如眼球中心等)在rgb跟踪摄像机对应的实体摄像机坐标系中的位置该过程可以通过对m进行奇异值分解(singularvaluedecomposition,svd)来求解,其中,奇异值分解是线性代数中一种重要的矩阵分解,是矩阵分析中正规矩阵酉对角化的推广。随后,利用根据公式(8),利用旋转矩阵r和可以求解平移矩阵从而确定对应的外参。

在一些实施方式中,在步骤s31中,增强现实设备从所述一组点对坐标信息中选择至少六个点对坐标信息,根据所述选择的至少六个点对坐标信息确定所述虚拟摄像机的初始投影矩阵信息,并将所述初始矩阵信息作为初始值,利用非线性优化算法,确定所述虚拟摄像机的投影矩阵信息,其中,所述虚拟摄像机包括由待标定单目和所述显示装置组成的针孔模型对应的摄像机。例如,为了考虑畸变取得更高的精度,增强现实设备通过直接线性变换确定对应的投影矩阵信息,将该投影矩阵信息作为初始投影矩阵信息,当作初始值,利用非线性优化算法,确定对应的投影矩阵信息。在一些实施方式中,所述根据所述选择的至少六个点对坐标信息确定所述虚拟摄像机对应的初始投影矩阵信息,包括:增强现实设备根据所述选择的至少六个点对坐标信息,利用直接线性变换,构建超定方程组,根据所述超定方程组,求解确定所述虚拟摄像机对应的初始投影矩阵信息。

例如,初始投影矩阵信息的求解过程包括:从9个点对坐标信息中随机选出n(n≥6)个点对坐标信息,此时,n个点对构成了超定方程组,然后用线性最小二乘求解该超定方程组,该求解过程可采用奇异值分解(singularvaluedecomposition,svd)方法,从而确定初始投影矩阵信息。随后,将初始投影矩阵m作为初始值传入非线性优化算法(如拟牛顿法、共轭梯度法、莱文贝格-马夸特优化算法等),此处以莱文贝格-马夸特(levenberg–marquardt,lm)优化算法为例,求解出虚拟摄像机的投影矩阵信息m1。具体过程如下:

1)将重投影误差作为lm算法优化的目标函数,其中y为图像平面中的十字坐标,f为投影函数,即将摄像机坐标系中三维点投影到光学显示图像平面。m1是需要求解的投影矩阵信息。

2)给定一个初始投影矩阵信息m,lm算法通过信赖域法求解迭代步长。信赖域法,就是从初始点(如投影矩阵信息m对应的点等)开始,先假设一个可以信赖的最大位移σ,然后在以当前点为中心,以σ为半径的区域内,通过寻找目标函数的一个近似函数(二次的)的最优点,来求解得到真正的位移。在得到了位移之后,再计算目标函数值,如果其使目标函数值的下降满足了一定条件,那么就说明这个位移是可靠的,则继续按此规则迭代计算下去;如果其不能使目标函数值的下降满足一定的条件,则应减小信赖域的范围,再重新求解。

3)满足迭代条件后,停止迭代,得到使目标函数最小的参数向量,即得到对应的投影矩阵信息m1。

当然,本领域技术人员应能理解上述非线性优化算法仅为举例,其他现有的或今后可能出现的非线性优化算法如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

在一些实施方式中,在步骤s31,增强现实设备从所述一组点对坐标信息中选择至少六个点对坐标信息,根据所述选择的至少六个点对坐标信息确定所述虚拟摄像机的初始投影矩阵信息,其中,所述虚拟摄像机包括由待标定单目和所述显示装置组成的针孔模型对应的摄像机;将所述初始投影矩阵信息作为初始值,利用非线性优化算法,确定所述虚拟摄像机的候选投影矩阵信息,基于所述一组点对坐标信息重新估计所述候选投影矩阵信息的内点坐标信息,其中,所述内点坐标信息符合所述候选投影矩阵信息对应的坐标变换模型,重复执行上述步骤获取多个候选投影矩阵信息,根据每个候选投影矩阵信息对应的内点坐标信息的数量,从中优选出内点坐标信息的数量最多的候选投影矩阵信息,将该候选投影矩阵信息作为所述虚拟摄像机的投影矩阵信息。其中,初始投影矩阵信息的计算可以是利用上述直接线性变换算法得到,与上述方法类似,在此不再赘述;增强现实设备获取得到对应的初始投影矩阵后,利用非线性优化算法,进一步确定对应的候选投影矩阵,随后,通过将一组点对坐标信息中,每一对点对坐标信息代入所述候选投影矩阵对应的模型,如根据每一个点对坐标信息中的实体摄像坐标信息换算对应的图像坐标信息,若换算得到的图像坐标信息与所述点对坐标信息中的图像坐标信息间的差值处于一定误差范围内(如误差范围可以是目标函数的最小二乘误差阈值等)或者两者坐标相同。其中,获取候选投影矩阵的方法与上述通过非线性优化算法获得投影矩阵信息的步骤一致,例如,

1)增强现实设备从点对坐标信息的9个点对坐标信息中随机选择至少六个点对坐标信息,通过该随机选择的点对坐标信息进行直接线性变换求解虚拟摄像机的投影矩阵信息,并根据投影矩阵信息进一步确定对应的虚拟摄像机的内参和外参。求解投影矩阵信息具体过程包括:从9个点对坐标信息中选出n(n≥6)个点对坐标信息,此时,n个点对构成了超定方程组,然后用线性最小二乘求解该超定方程组,该求解过程可采用奇异值分解(singularvaluedecomposition,svd)方法,从而确定对应的投影矩阵信息;

2)将重投影误差作为lm算法优化的目标函数,其中y为图像平面中的十字坐标,f为投影函数,即将摄像机坐标系中三维点投影到光学显示图像平面。m1是需要求解的候选投影矩阵信息。

3)给定一个初始投影矩阵信息m,lm算法通过信赖域法求解迭代步长。信赖域法,就是从初始点(如投影矩阵信息m对应的内参和外参等)开始,先假设一个可以信赖的最大位移σ,然后在以当前点为中心,以σ为半径的区域内,通过寻找目标函数的一个近似函数(二次的)的最优点,来求解得到真正的位移。在得到了位移之后,再计算目标函数值,如果其使目标函数值的下降满足了一定条件,那么就说明这个位移是可靠的,则继续按此规则迭代计算下去;如果其不能使目标函数值的下降满足一定的条件,则应减小信赖域的范围,再重新求解。

4)满足迭代条件后,停止迭代,得到使目标函数最小的参数向量,即得到对应的候选投影矩阵信息m1。

5)用所有的9个点对去重新估计lm优化算法通过迭代得到的候选投影矩阵信息m1,通过设置一定的误差范围,来得到模型对应的内点坐标信息,其中,该内点坐标信息包括包含于该模型的点对坐标信息的数量,还可以包括对应的点对坐标信息。

6)将步骤1)至步骤5)重复执行一定的次数(如执行预设的固定次数、遍历所有、或者模型符合一定条件(如内点数达到预定条件等)等),每次产生的模型与上次得到的模型进行比较,要么因为内点坐标信息太少而被舍弃,要么因为比现有的模型更好而被选用;随机抽样一致(ransac)算法迭代结束,得到对应最大内点数的投影矩阵mopt,将其称为最优解,将该最优解作为虚拟摄像机的投影矩阵信息。

在一些实施方式中,图4所示的方法还包括步骤s14(未示出)和步骤s15(未示出)。在步骤s14中,增强现实设备验证所述虚拟摄像机对应的内参和外参;在步骤s16中,若通过验证,增强现实设备将所述虚拟摄像机的内参和外参作为最终标定参数信息。例如,增强现实设备通过特定的方式(如通过内参和外参在特定位置叠加或渲染特定图形,并校准的方式等)对获取的内外参数进行验证,若通过验证,将该虚拟摄像机的内参和外参作为最终标定参数信息。例如,增强现实设备通过跟踪识别对应的验证区域(如实景中的用于验证的某区域等),在显示装置中对应位置呈现叠加信息(如叠加于验证区域的一些画面、文字或者其他信息等);若用户通过该增强现实设备观察到叠加信息按照预先设定的规则完美呈现于验证区域,用户在增强现实设备上操作(如语音输入、手势输入、触摸板输入、键盘输入、等待预设时间等),增强现实设备基于用户的操作,确定验证通过,并将所述虚拟摄像机对应的内参和外参作为最终标定参数信息。

如在一些实施方式中,在步骤s14中,增强现实设备基于所述虚拟摄像机对应的内参和外参在对应的验证区域渲染并呈现对应的验证信息,并获取用户的确定操作,确定通过验证。例如,如图7所示,增强现实设备对双目进行标定时,启动对应验证程序,将双目的外参[r|t]转化为openglmodelviewmatrix(如将外参的数值用opengl中的矩阵表示),将内参k和像平面宽高构造openglprojectionmatrixp,其中,

其中,cx、cy是内参k中的两个参数,f是远截面,n是近截面,是opengl中设置的展示范围,在近截面和远截面之间直接进行区域渲染。最后利用双目的openglprojectionmatrix和modelviewmatrix渲染并呈现验证方块,根据双目视差,形成立体的验证方块。若所述验证方块完美叠加于预先设定的被叠加物体之上(图7中预先设定的被叠加物是平面上的白框),基于用户的确定操作,增强现实确定通过验证,将所述双目对应的内参和外参作为最终标定参数信息。

在一些实施方式中,该方法还包括步骤s16(未示出)。在步骤s16中,增强现实设备若未通过验证,基于用户的调整操作调节所述验证信息渲染的位置,并获取调节后的虚拟摄像机的内参和外参;其中,在步骤s15中,若通过验证,增强现实设备将所述调节后的虚拟摄像机对应的内参和外参作为最终标定参数信息。例如,如图8所示,增强现实设备未采集到用户的确定操作或者采集到用户的调节输入指令,进入调整模式(可以是间隔一定时间自动进入(此时,该指令与上述等待一定时间的确定操作指令不同时存在)或者基于用户的操作进入),并基于用户调整操作(如图8中用户对触摸板的触摸操作或者语音指令、手势指令、键入指令等方式),上下左右滑动调节验证方块位置,使其与预先设定的被叠加物白框完全重叠,并获取此时验证方法呈现位置对应的内参和外参。同时,增强现实设备将微调好的参数作为最终标定参数。

上文主要从设备的角度对本申请实施例提供的方法进行了介绍,相对应的,本申请还提供了能够执行上述各方法的系统,下面结合图9进行介绍。

图9示出根据本申请一个方面的一种用于光学透视增强现实显示器的标定设备,该设备可被应用于图1所示的系统,其中,所述设备包括第一模块1、第二模块2以及第三模块3。第一模块1,用于通过所述光学透视增强现实显示器中的显示装置在所述显示装置不同位置呈现对应的一组标记信息,其中,所述一组标记信息包括至少六个标记信息;第二模块2,用于获取所述一组标记信息中每个标记信息与对应的预设标记信息对准时的一组点对坐标信息,其中,所述一组点对坐标信息包括至少六个点对坐标信息;第三模块3,用于根据所述一组点对坐标信息,确定虚拟摄像机对应的内参和外参,其中,所述虚拟摄像机包括由待标定单目和所述显示装置组成的针孔模型对应的摄像机。基于本设备,不仅可以实现单目的标定,还可以通过重复执行上述步骤,实现双目甚至是多目(如多人联机等)的标定。

具体而言,第一模块1,用于通过所述光学透视增强现实显示器中的显示装置在所述显示装置不同位置呈现对应的一组标记信息,其中,所述一组标记信息包括至少六个标记信息。例如,标记信息包括不限形状、呈现于所述增强现实设备的屏幕上的用于进行对准预设标记信息的特定信息,其中,这些标记信息在图像坐标系中的位置为已知的,所述预设标记信息为用户预先准备的标记,可以是基于二维平面的,也可以基于三维结构的,可以预设在固定位置上(如预设标记固定在桌面上,用户移动眼镜进行对准),也可以进行移动等(如眼镜位置不动,用户手持预设标记移动进行对准),用于标定时供用户通过增强现实设备对准该标记信息。如图5所示,该预设标记信息为正方形方框内正中心的红点,该预设标记信息被放置于桌面上;如图6所示,图中显示的为一组标记信息,该组标记信息包含九个标记信息,标记信息中心点的图像坐标为已知的,九个标记信息可以是同时呈现,也可以是按照一定顺序(如从左往右、从上往下等)依次呈现或分批(如若干个(例如三个)作为一批,分批呈现)依次呈现。用户通过增强现实设备屏幕上显示的标记信息,调整增强现实设备的角度,将标记信息的中心点依次对准预设标记信息的中心点。在一些实施方式中,增强现实设备的摄像装置(如rgb跟踪摄像机等)可以识别跟踪预设标记信息,辅助用户更好的完成校准过程。

第二模块2,用于获取所述一组标记信息中每个标记信息与对应的预设标记信息对准时的一组点对坐标信息,其中,所述一组点对坐标信息包括至少六个点对坐标信息。其中,一个点对坐标信息包括该点对中预设标记在实体摄像坐标系中的实体摄像坐标信息和对应的标记信息在图像坐标系中的图像坐标信息,其中,所述实体摄像坐标信息由所述预设标记的世界坐标(已知)与所述实体摄像坐标系的外参转换得到,其中,所述实体摄像坐标系包括摄像装置光心为原点建立的三维摄像坐标系,外参包括从世界坐标系至实体摄像坐标系的变换矩阵,增强现实设备利用摄像机标定算法可以计算出摄像装置对应的实体摄像坐标系与世界坐标系的变换矩阵。在一些实施方式中,为了简化计算,所述世界坐标系以所述摄像装置的光心为原点建立。

例如,增强现实设备根据标定时的一组标记信息校准对应的预设标记信息,从而获取对应的点对坐标信息。如图5和图6所示,增强现实设备基于用户的操作,将标记信息的中心与预设标记信息的中心对准,随后,可以基于用户的操作指令(如语音指令、手势指令、点击触摸装置、键入信息或者静候一定时间等),记录该标记信息与预设标记信息对应的一个点对坐标信息,其中,该标记信息在图像坐标系中的位置是已知的,预设标记信息在世界坐标系中的位置是已知,通过摄像装置的姿态可以计算得到预设标记信息在实体摄像坐标系中的位置信息,其中所述姿态可以根据识别跟踪算法计算得到。增强现实设备进行双目或多目显示器的标定时,每次对准其中某一个单目对应的标记信息,在对应的屏幕中呈现对应标记信息,此时,在其他屏幕中可以选择性的呈现遮挡画面,以集中注意力在被标定的这个单目。

第三模块3,用于根据所述一组点对坐标信息,确定虚拟摄像机对应的内参和外参,其中,所述虚拟摄像机包括由待标定单目和所述显示装置组成的针孔模型对应的摄像机。其中,虚拟摄像机对应的外参包括实体摄像坐标系与所述虚拟摄像坐标系的变换矩阵[r|t];虚拟摄像机对应的内参包括图像坐标系与所述虚拟摄像坐标系的图像投影矩阵k。增强现实设备将点对坐标信息代入标定算法,可以计算出虚拟摄像机的内参和外参,其中,点对坐标信息包括至少6个点对坐标信息,在此,如图6所示,我们以9个点对坐标信息为例阐述以下实施例。

在一些实施方式中,第三模块3包括第三一模块31(未示出)和第三二模块32(未示出)。第三一模块31,用于从所述一组点对坐标信息中选择至少六个点对坐标信息,并根据所述选择的至少六个点对坐标信息确定所述虚拟摄像机的投影矩阵信息,其中,所述虚拟摄像机包括由待标定单目和所述显示装置组成的针孔模型对应的摄像机;第三二模块32,用于根据所述投影矩阵信息确定所述虚拟摄像机对应的内参和外参。其中,投影矩阵信息m=k*[r|t],该投影矩阵信息是一个3*4的矩阵,共有11个未知数,那么至少需要六个点对坐标信息求解出该投影矩阵信息。增强现实设备从点对坐标信息的9个点对坐标信息中随机选择或者按照一定规则选择六个点对坐标信息,通过该六个点对坐标信息进行直接线性变换求解虚拟摄像机的投影矩阵信息,并根据投影矩阵信息进一步确定对应的虚拟摄像机的内参和外参。求解投影矩阵信息具体过程包括:从9个点对坐标信息中选出n(n≥6)个点对坐标信息,此时,n个点对构成了超定方程组,然后用线性最小二乘求解该超定方程组,该求解过程可采用奇异值分解(singularvaluedecomposition,svd)设备,从而确定对应的投影矩阵信息。

在一些实施方式中,所述虚拟摄像机的外参包括该外参的旋转矩阵信息及平移矩阵信息,其中,所述第三二模块32包括第三二一模块321(未示出)和第三二二模块322(子步骤),第三二模块321,用于根据所述投影矩阵信息确定对应的虚拟摄像机的内参及外参中的旋转矩阵信息;第三二二模块322,用于根据所述投影矩阵信息及所述虚拟摄像机的外参的旋转矩阵信息确定所述虚拟摄像机的外参的平移矩阵信息。其中,增强现实设备根据获取的投影矩阵信息,进一步获得对应的虚拟摄像机的内参和外参。例如,增强现实设备根据投影矩阵信息m,对该投影矩阵信息m的前三行和前三列进行rq分解,可以求解出虚拟摄像机的内参k和外参中的旋转矩阵r,其中,rq分解是指将矩阵信息分解成一个半正交矩阵与一个上三角矩阵的积。增强现实设备还可以通过该投影矩阵信息m继续求解得到外参中的平移矩阵t,结合平移矩阵和旋转矩阵得到对应的虚拟摄像机的外参。在一些实施方式中,第三二二模块322,用于根据所述投影矩阵信息确定所述虚拟摄像机对应的虚拟摄像坐标系的原点在所述实体摄像坐标系中的实体摄像坐标信息,基于所述实体摄像坐标信息及所述虚拟摄像机的外参的旋转矩阵信息确定该外参的平移矩阵信息。例如,增强现实设备利用投影矩阵信息m解出眼睛(如眼球中心等)在rgb跟踪摄像机对应的实体摄像机坐标系中的位置该过程可以通过对m进行奇异值分解(singularvaluedecomposition,svd)来求解,其中,奇异值分解是线性代数中一种重要的矩阵分解,是矩阵分析中正规矩阵酉对角化的推广。随后,利用根据公式(8),利用旋转矩阵r和可以求解平移矩阵从而确定对应的外参。

在一些实施方式中,第三一模块31,用于从所述一组点对坐标信息中选择至少六个点对坐标信息,根据所述选择的至少六个点对坐标信息确定所述虚拟摄像机的初始投影矩阵信息,并将所述初始矩阵信息作为初始值,利用非线性优化算法,确定所述虚拟摄像机的投影矩阵信息,其中,所述虚拟摄像机包括由待标定单目和所述显示装置组成的针孔模型对应的摄像机。例如,为了考虑畸变取得更高的精度,增强现实设备通过直接线性变换确定对应的投影矩阵信息,将该投影矩阵信息作为初始投影矩阵信息,当做初始值,利用非线性优化算法,确定对应的投影矩阵信息。在一些实施方式中,所述根据所述选择的至少六个点对坐标信息确定所述虚拟摄像机对应的初始投影矩阵信息,包括:增强现实设备根据所述随机选择的至少六个点对坐标信息,利用直接线性变换,构建超定方程组,根据所述超定方程组,求解确定所述虚拟摄像机对应的初始投影矩阵信息。

例如,初始投影矩阵信息的求解过程包括:从9个点对坐标信息中选出n(n≥6)个点对坐标信息,此时,n个点对构成了超定方程组,然后用线性最小二乘求解该超定方程组,该求解过程可采用奇异值分解(singularvaluedecomposition,svd)设备,从而确定初始投影矩阵信息。随后,将初始投影矩阵m作为初始值传入非线性优化算法(如拟牛顿法、共轭梯度法、莱文贝格-马夸特优化算法等),此处以莱文贝格-马夸特(levenberg–marquardt,lm)优化算法为例,求解出虚拟摄像机的投影矩阵信息m1。具体过程如下:

1)将重投影误差作为lm算法优化的目标函数,其中y为图像平面中的十字坐标,f为投影函数,即将摄像机坐标系中三维点投影到光学显示图像平面。m1是需要求解的投影矩阵信息。

2)给定一个初始投影矩阵信息m,lm算法通过信赖域法求解迭代步长。信赖域法,就是从初始点(如投影矩阵信息m对应的点等)开始,先假设一个可以信赖的最大位移σ,然后在以当前点为中心,以σ为半径的区域内,通过寻找目标函数的一个近似函数(二次的)的最优点,来求解得到真正的位移。在得到了位移之后,再计算目标函数值,如果其使目标函数值的下降满足了一定条件,那么就说明这个位移是可靠的,则继续按此规则迭代计算下去;如果其不能使目标函数值的下降满足一定的条件,则应减小信赖域的范围,再重新求解。

3)满足迭代条件后,停止迭代,得到使目标函数最小的参数向量,即得到对应的投影矩阵信息m1。

当然,本领域技术人员应能理解上述非线性优化算法仅为举例,其他现有的或今后可能出现的非线性优化算法如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

在一些实施方式中,第三一模块31,用于从所述一组点对坐标信息中选择至少六个点对坐标信息,根据所述选择的至少六个点对坐标信息确定所述虚拟摄像机的初始投影矩阵信息,其中,所述虚拟摄像机包括由待标定单目和所述显示装置组成的针孔模型对应的摄像机;将所述初始投影矩阵信息作为初始值,利用非线性优化算法,确定所述虚拟摄像机的候选投影矩阵信息,基于所述一组点对坐标信息重新估计所述候选投影矩阵信息的内点坐标信息,其中,所述内点坐标信息符合所述候选投影矩阵信息对应的坐标变换模型,重复执行上述步骤获取多个候选投影矩阵信息,根据每个候选投影矩阵信息对应的内点坐标信息的数量,从中优选出内点坐标信息的数量最多的候选投影矩阵信息,将该候选投影矩阵信息作为所述虚拟摄像机的投影矩阵信息。其中,初始投影矩阵信息的计算可以是利用上述直接线性变换算法得到,与上述设备类似,在此不再赘述;增强现实设备获取得到对应的初始投影矩阵后,利用非线性优化算法,进一步确定对应的候选投影矩阵,随后,通过将一组点对坐标信息中,每一对点对坐标信息代入所述候选投影矩阵对应的模型,如根据每一个点对坐标信息中的实体摄像坐标信息换算对应的图像坐标信息,若换算得到的图像坐标信息与所述点对坐标信息中的图像坐标信息间的差值处于一定误差范围内(如误差范围可以是目标函数的最小二乘误差阈值等)或者两者坐标相同。其中,获取候选投影矩阵的设备与上述通过非线性优化算法获得投影矩阵信息的步骤一致,例如,

1)增强现实设备从点对坐标信息的9个点对坐标信息中随机选择至少六个点对坐标信息,通过该随机选择的点对坐标信息进行直接线性变换求解虚拟摄像机的投影矩阵信息,并根据投影矩阵信息进一步确定对应的虚拟摄像机的内参和外参。求解投影矩阵信息具体过程包括:从9个点对坐标信息中选出n(n≥6)个点对坐标信息,此时,n个点对构成了超定方程组,然后用线性最小二乘求解该超定方程组,该求解过程可采用奇异值分解(singularvaluedecomposition,svd)设备,从而确定对应的投影矩阵信息;

2)将重投影误差作为lm算法优化的目标函数,其中y为图像平面中的十字坐标,f为投影函数,即将摄像机坐标系中三维点投影到光学显示图像平面。m1是需要求解的候选投影矩阵信息。

3)给定一个初始投影矩阵信息m,lm算法通过信赖域法求解迭代步长。信赖域法,就是从初始点(如投影矩阵信息m对应点等)开始,先假设一个可以信赖的最大位移σ,然后在以当前点为中心,以σ为半径的区域内,通过寻找目标函数的一个近似函数(二次的)的最优点,来求解得到真正的位移。在得到了位移之后,再计算目标函数值,如果其使目标函数值的下降满足了一定条件,那么就说明这个位移是可靠的,则继续按此规则迭代计算下去;如果其不能使目标函数值的下降满足一定的条件,则应减小信赖域的范围,再重新求解。

4)满足迭代条件后,停止迭代,得到使目标函数最小的参数向量,即得到对应的候选投影矩阵信息m1。

5)用所有的9个点对去重新估计lm优化算法通过迭代得到的候选投影矩阵信息m1,通过设置一定的误差范围,来得到模型对应的内点坐标信息,其中,该内点坐标信息包括包含于该模型的点对坐标信息的数量,还可以包括对应的点对坐标信息。

6)将步骤1)至步骤5)重复执行一定的次数(如执行预设的固定次数、遍历所有、或者模型符合一定条件(如内点数达到预定条件等)等),每次产生的模型与上次得到的模型进行比较,要么因为内点坐标信息太少而被舍弃,要么因为比现有的模型更好而被选用;随机抽样一致(ransac)算法迭代结束,得到对应最大内点数的投影矩阵mopt,将其称为最优解,将该最优解作为虚拟摄像机的投影矩阵信息。

在一些实施方式中,图9所示的设备还包括第四模块4(未示出)和步骤s15(未示出)。第四模块4,用于验证所述虚拟摄像机对应的内参和外参;第五模块5,若通过验证,用于将所述虚拟摄像机的内参和外参作为最终标定参数信息。例如,增强现实设备通过特定的方式(如通过内参和外参在特定位置叠加或渲染特定图形,并校准的方式等)对获取的内外参数进行验证,若通过验证,将该虚拟摄像机的内参和外参作为最终标定参数信息。例如,增强现实设备通过跟踪识别对应的验证区域(如实景中的用于验证的某区域等),在显示装置中对应位置呈现叠加信息(如叠加于验证区域的一些画面、文字或者其他信息等);若用户通过该增强现实设备观察到叠加信息按照预先设定的规则完美呈现于验证区域,用户在增强现实设备上操作(如语音输入、手势输入、触摸板输入、键盘输入、等待预设时间等),增强现实设备基于用户的操作,确定验证通过,并将所述虚拟摄像机对应的内参和外参作为最终标定参数信息。

如在一些实施方式中,第四模块4,用于基于所述虚拟摄像机对应的内参和外参在对应的验证区域渲染并呈现对应的验证信息,并获取用户的确定操作,确定通过验证。例如,如图7所示,增强现实设备对双目进行标定时,启动对应验证程序,将双目的外参[r|t]转化为openglmodelviewmatrix(如将外参的数值用opengl中的矩阵表示),将内参k和像平面宽高构造openglprojectionmatrixp,其中,

其中,cx、cy是内参k中的两个参数,f是远截面,n是近截面,是opengl中设置的展示范围,在近截面和远截面之间直接进行区域渲染。最后利用双目的openglprojectionmatrix和modelviewmatrix渲染并呈现验证方块,根据双目视差,形成立体的验证方块。若所述验证方块完美叠加于预先设定的被叠加物体之上(图7中预先设定的被叠加物是平面上的白框),基于用户的确定操作,增强现实确定通过验证,将所述双目对应的内参和外参作为最终标定参数信息。

在一些实施方式中,该设备还包括第六模块6(未示出)。第六模块6,若未通过验证,用于基于用户的调整操作调节所述验证信息渲染的位置,并获取调节后的虚拟摄像机的内参和外参;其中,第五模块5,若通过验证,用于将所述调节后的虚拟摄像机对应的内参和外参作为最终标定参数信息。例如,如图8所示,增强现实设备未采集到用户的确定操作或采集到用户的调节输入指令,进入调整模式(可以是间隔一定时间自动进入(此时,该指令与上述等待一定时间的确定操作指令不同时存在)或者基于用户的操作进入),并基于用户调整操作(如图8中用户对触摸板的触摸操作或者语音指令、手势指令、键入指令等方式),上下左右滑动调节验证方块位置,使其与预先设定的被叠加物白框完全重叠,并获取此时验证设备呈现位置对应的内参和外参。同时,增强现实设备将微调好的参数作为最终标定参数。

除上述介绍的方法设备外,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机代码,当所述计算机代码被执行时,如前任一项所述的方法被执行。

本申请还提供了一种计算机程序产品,当所述计算机程序产品被计算机设备执行时,如前任一项所述的方法被执行。

本申请还提供了一种计算机设备,所述计算机设备包括:

一个或多个处理器;

存储器,用于存储一个或多个计算机程序;

当所述一个或多个计算机程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如前任一项所述的方法。

图10示出了可被用于实施本申请中所述的各个实施例的示例性系统;

如图10所示在一些实施例中,系统200能够作为各所述实施例中的任意一个上述车辆设备。在一些实施例中,系统200可包括具有指令的一个或多个计算机可读介质(例如,系统存储器或固定存储器(non-volatilememory,nvm)/存储设备220)以及与该一个或多个计算机可读介质耦合并被配置为执行指令以实现模块从而执行本申请中所述的动作的一个或多个处理器(例如,(一个或多个)处理器205)。

对于一个实施例,系统控制模块210可包括任意适当的接口控制器,以向(一个或多个)处理器205中的至少一个和/或与系统控制模块210通信的任意适当的设备或组件提供任意适当的接口。

系统控制模块210可包括存储器控制器模块230,以向系统存储器215提供接口。存储器控制器模块230可以是硬件模块、软件模块和/或固件模块。

系统存储器215可被用于例如为系统200加载和存储数据和/或指令。对于一个实施例,系统存储器215可包括任意适当的易失性存储器,例如,适当的dram。在一些实施例中,系统存储器215可包括双倍数据速率类型四同步动态随机存取存储器((double-data-ratefourthgenerationsynchronousdynamicrandomaccessmemory,ddr4sdram)。

对于一个实施例,系统控制模块210可包括一个或多个输入/输出(i/o)控制器,以向nvm/存储设备220及(一个或多个)通信接口225提供接口。

例如,nvm/存储设备220可被用于存储数据和/或指令。nvm/存储设备220可包括任意适当的非易失性存储器(例如,闪存)和/或可包括任意适当的(一个或多个)非易失性存储设备(例如,一个或多个硬盘驱动器(harddiskdrive,hdd)、一个或多个光盘(cd)驱动器和/或一个或多个数字通用光盘(dvd)驱动器)。

nvm/存储设备220可包括在物理上作为系统200被安装在其上的设备的一部分的存储资源,或者其可被该设备访问而不必作为该设备的一部分。例如,nvm/存储设备220可通过网络经由(一个或多个)通信接口225进行访问。

(一个或多个)通信接口225可为系统200提供接口以通过一个或多个网络和/或与任意其他适当的设备通信。系统200可根据一个或多个无线网络标准和/或协议中的任意标准和/或协议来与无线网络的一个或多个组件进行无线通信。

对于一个实施例,(一个或多个)处理器205中的至少一个可与系统控制模块210的一个或多个控制器(例如,存储器控制器模块230)的逻辑封装在一起。对于一个实施例,(一个或多个)处理器205中的至少一个可与系统控制模块210的一个或多个控制器的逻辑封装在一起以形成系统级封装(sip)。对于一个实施例,(一个或多个)处理器205中的至少一个可与系统控制模块210的一个或多个控制器的逻辑集成在同一模具上。对于一个实施例,(一个或多个)处理器205中的至少一个可与系统控制模块210的一个或多个控制器的逻辑集成在同一模具上以形成片上系统(soc)。

在各个实施例中,系统200可以但不限于是:服务器、工作站、台式计算设备或移动计算设备(例如,膝上型计算设备、手持计算设备、平板电脑、上网本等)。在各个实施例中,系统200可具有更多或更少的组件和/或不同的架构。例如,在一些实施例中,系统200包括一个或多个摄像机、键盘、液晶显示器(liquidcrystaldisplay,lcd)屏幕(包括触屏显示器)、非易失性存储器端口、多个天线、图形芯片、专用集成电路(asic)和扬声器。

需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(asic)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,ram存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。

另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。本领域技术人员应能理解,计算机程序指令在计算机可读介质中的存在形式包括但不限于源文件、可执行文件、安装包文件等,相应地,计算机程序指令被计算机执行的方式包括但不限于:该计算机直接执行该指令,或者该计算机编译该指令后再执行对应的编译后程序,或者该计算机读取并执行该指令,或者该计算机读取并安装该指令后再执行对应的安装后程序。在此,计算机可读介质可以是可供计算机访问的任意可用的计算机可读存储介质或通信介质。

通信介质包括藉此包含例如计算机可读指令、数据结构、程序模块或其他数据的通信信号被从一个系统传送到另一系统的介质。通信介质可包括有导的传输介质(诸如电缆和线(例如,光纤、同轴等))和能传播能量波的无线(未有导的传输)介质,诸如声音、电磁、rf、微波和红外。计算机可读指令、数据结构、程序模块或其他数据可被体现为例如无线介质(诸如载波或诸如被体现为扩展频谱技术的一部分的类似机制)中的已调制数据信号。术语“已调制数据信号”指的是其一个或多个特征以在信号中编码信息的方式被更改或设定的信号。调制可以是模拟的、数字的或混合调制技术。

作为示例而非限制,计算机可读存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动的介质。例如,计算机可读存储介质包括,但不限于,易失性存储器,诸如随机存储器(ram,dram,sram);以及非易失性存储器,诸如闪存、各种只读存储器(rom,prom,eprom,eeprom)、磁性和铁磁/铁电存储器(mram,feram);以及磁性和光学存储设备(硬盘、磁带、cd、dvd);或其它现在已知的介质或今后开发的能够存储供计算机系统使用的计算机可读信息/数据。

在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。

对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1