一种增强现实方法、装置和系统与流程

文档序号:14679433发布日期:2018-06-12 21:59阅读:149来源:国知局
一种增强现实方法、装置和系统与流程

本发明属于增强现实技术领域,尤其涉及一种基于低精度三维模型空间计算的增强现实方法、装置和系统。



背景技术:

增强现实(Augmented Reality,简称AR),是一种实时地在现实场景上叠加相应图像、视频、3D模型的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。在增强现实技术的实际应用中,通常需要使用图像或视频识别等技术,或者采用标识的办法,以获得现实场景所处环境的格式化信息。由于图像或视频识别技术目前的技术限制,目前增强现实很难获得所处环境的准确信息。而采用标识的方法,由于要事先在现实环境中部署识别标签,也很难推广。

另一方面,随着智能手机的日益普及,常用的手机已经能够获得比较精确的感知位置信息,能够通过各类传感器获得其地理位置、方向角、俯仰角、翻转角和高度的参数。其中方向角、俯仰角和翻转角信息可以不依赖外部条件而通过传感器直接获得,地理位置和高度信息在室外一般依赖GPS或北斗信号获得,在室内则有一定局限性,目前通常可以通过WIFI技术手段等获得。

而建筑物的低精度三维模型,是以各种基本的立体几何形状来表现建筑物的基本信息,这种低精度三维模型,既可以使用低成本地通过手工建立,也可以根据卫星影像图通过算法自动生成。现在很多互联网地图都提供了类似的低精度三维地图,如百度地图、高德地图、谷歌地图等。



技术实现要素:

本发明的目的是提供一种增强现实方法、装置和系统,利用移动终端获取的参数信息和容易构造的低精度三维模型,计算得出现实场景所处环境的格式化信息,从而在现实场景中叠加信息,以实现增强现实的效果。克服了现有技术使用图像或视频识别等技术,或者采用标识的办法的局限性。

为了实现上述目的,本发明技术方案如下:

一种增强现实方法,用于在移动终端上对拍摄的实景进行增强现实,其特征在于,所述增强现实方法,包括:

打开移动终端摄像头,对准实景目标建筑物,获取移动终端当前的空间参数;

根据移动终端当前的空间参数,结合预设的低精度三维模型,通过低精度三维模型中的空间关系计算出在低精度三维模型中与实景目标建筑物对应的虚拟目标建筑物,获取虚拟目标建筑物在低精度三维模型中对应的基础信息;

将获取的基础信息在实景目标建筑物上叠加显示。

本发明所述移动终端当前的空间参数包括经纬度、高度、方向角、俯仰角、翻转角。

进一步地,所述通过低精度三维模型中的空间关系计算出在低精度三维模型中与实景目标建筑物对应的虚拟目标建筑物,包括:

步骤201、根据移动终端当前的空间参数,将移动终端的实际经纬度和高度转换为低精度三维模型投影坐标系下的虚拟坐标位置O;

步骤202、以点O为圆点在水平方向上建立设定距离的缓冲区,在低精度三维模型中检索落在该缓冲区范围内的虚拟建筑物得到虚拟建筑集合S;

步骤203、以虚拟建筑物m为单位,开始遍历虚拟建筑集合S,从m=1开始;

步骤204、判断m是否小于等于虚拟建筑集合S中虚拟建筑物的个数,若是,执行步骤205,否则执行步骤215;

步骤205、判断虚拟建筑物m是否在移动终端摄像头视域一侧,若是,执行步骤206,否则执行步骤213;

步骤206、选取移动终端摄像头视域中从O点出发的视线集合R,以视线集合R中的视线γn为单位进行遍历;

步骤207、判断视线集合R是否遍历完毕,若是,执行步骤208,否则执行步骤213;

步骤208、采用视线γn和点O确定唯一的一个平面Pn,其中视线γn与Pn的法线平行,点O为Pn上的一点;

步骤209、将虚拟建筑物m的虚拟三维坐标垂直投影到平面Pn上,得到虚拟建筑物m在平面Pn上的多边形轮廓βn;

步骤210、判断点O是否在βn内部,若是,表示虚拟建筑物m在移动终端摄像头视域内,则执行步骤211,否则执行步骤214;

步骤211、计算虚拟建筑物m和虚拟建筑物m-1分别离点O的距离,并记录两者的最小值D;

步骤212、退出步骤207的遍历;

步骤213、m=m+1,m指向下一幢建筑,返回步骤204继续执行;

步骤214、n=n+1,n指向下一条视线,返回步骤207继续执行;

步骤215、遍历完毕,在虚拟建筑集合S中,使得D值最小的那幢虚拟建筑物即为虚拟目标建筑物。

本发明还提出了一种增强现实装置,应用于移动终端,用于在移动终端上对拍摄的实景进行增强现实,所述增强现实装置,包括:

参数获取模块,用于打开移动终端摄像头,对准实景目标建筑物,获取移动终端当前的空间参数;

虚拟目标计算模块,用于根据移动终端当前的空间参数,结合预设的低精度三维模型,通过低精度三维模型中的空间关系计算出在低精度三维模型中与实景目标建筑物对应的虚拟目标建筑物,获取虚拟目标建筑物在低精度三维模型中对应的基础信息;

增强现实模块,用于将获取的基础信息在实景目标建筑物上叠加显示。

本发明还提出了一种增强现实系统,用于在移动终端上对拍摄的实景进行增强现实,所述增强现实系统包括移动终端和服务器端,其中:

移动终端,用于打开移动终端摄像头,对准实景目标建筑物,获取移动终端当前的空间参数发送给服务器端,接收服务器端发回的基础信息在实景目标建筑物上叠加显示;

服务器端,用于接收移动终端当前的空间参数,结合预设的低精度三维模型,通过低精度三维模型中的空间关系计算出在低精度三维模型中与实景目标建筑物对应的虚拟目标建筑物,获取虚拟目标建筑物在低精度三维模型中对应的基础信息,发送给移动终端。

本发明提出的一种增强现实方法、装置和系统,在实际场景上实时叠加文字、图像等信息,实现增强现实效果,无需对实际场景采用图像视频、视频识别等技术,也无需在实际场景中部署标签,降低增强现实的技术难度和部署困难。采用的低精度三维模型制作成本低,且有在线地图资源;移动端利用的地理位置、方向角、俯仰角、翻转角和高度参数,普通智能手机即可获得,无需额外设备;采用的立体几何空间算法简单,要求计算资源有限,低精度三维模型所需存储空间很小,可将当前附近局部区域低精度三维模型下载到移动端计算,提高实时性。本发明可运用在室外或者室内的场景,应用范围广。

附图说明

图1为本发明实施例低精度三维模型示意图;

图2为本发明一种增强现实方法流程图;

图3为本发明实施例空间关系计算方法流程图;

图4为本发明实施例空间关系计算原理图;

图5为本发明实施例增强现实后的画面示例图。

具体实施方式

下面结合附图和实施例对本发明技术方案做进一步详细说明,以下实施例不构成对本发明的限定。

本实施例以一个园区的增强现实应用为例来进行说明,该园区及周边的低精度三维模型如图1所示,主要建筑物采用最简化的立体几何模型表示。

如图2所示,本实施例一种增强现实方法,包括:

步骤S1、移动终端打开摄像头,对准实景目标建筑物,获取移动终端当前的空间参数。

本实施例增强现实的实现可以在移动终端上独自进行处理,此时移动终端上预设有低精度三维模型。也可以采用移动终端与服务器端配合使用,服务器端设置在云端,此时在服务器端建立有低精度三维模型,移动终端通过接入互联网连接到位于云端的服务器端,例如通过WIFI接入网络或通过3G/4G等移动通信网络接入网络,这里不再赘述。低精度三维模型可以使用低成本地通过手工建立,也可以根据卫星影像图通过算法自动生成,例如通过百度地图、高德地图、谷歌地图等自动生成。

在使用时,用户打开移动终端的摄像头,将其对准实景目标建筑物,移动终端通过自带传感器和定位模块获取经纬度、高度、方向角、俯仰角、翻转角等空间参数。其中定位模块可以是GPS模块或北斗模块,还可以通过WIFI等无线网络实现定位,获取到地理经纬度、高度。而通过移动终端自带传感器,可以获得方向角、俯仰角、翻转角等参数,关于空间参数的具体获得方法,本发明不再赘述。

在采用移动终端与服务器端配合的模式时,移动终端将空间参数上传到服务器端,由服务器端进行后续的计算,或移动终端从服务器端获取设定范围内的低精度三维模型,在移动终端进行后续的计算。当采用移动终端上预设有低精度三维模型模式时,可以单独由移动终端进行后续的计算。以下以移动终端与服务器端配合的模式进行说明,关于具体的实现方法同样适用于在移动终端上独自实现。

步骤S2、根据移动终端当前的空间参数,结合预设的低精度三维模型,通过低精度三维模型中的空间关系计算出在低精度三维模型中与实景目标建筑物对应的虚拟目标建筑物,获取虚拟目标建筑物在低精度三维模型中对应的基础信息。

本步骤,服务器端在接收到移动终端上传的空间参数后,会根据空间参数从预设的低精度三维模型中查找与实景目标建筑物对应的虚拟目标建筑物,具体的查找方法是将移动终端的实际地理位置信息对应到低精度三维模型中,通过低精度三维模型中的空间关系计算出在低精度三维模型中与实景目标建筑物对应的虚拟目标建筑物。

在传统的方法中,需要使用图像或视频识别等技术,来得到现实场景所处环境的特征信息,然后与三维模型中的特征信息进行比对,来找到对应的虚拟建筑物。由于图像或视频识别技术计算量比较大,同时由于环境亮度等原因,实现起来比较复杂,效果也不好。本申请采用了更为有效的方法,具体阐述如下:

实现方法一、在查找时,首先确定移动终端当前朝向的一条视线,通过空间计算得出在低精度三维模型与该视线直接相交的实景目标建筑物对应的虚拟建筑物。

实现方法二、优选地,本实施例通过首先确定移动终端的视域,然后查找低精度三维模型中哪些虚拟建筑物落入到视域中,并找出距离最短的虚拟建筑物,从而确定实景目标建筑物对应的虚拟建筑物,如图3所示,包括如下步骤:

步骤201、根据移动终端当前的空间参数,将移动终端的实际经纬度位置和高度转换为低精度三维模型投影坐标系下的虚拟坐标位置O。

本实施例移动终端当前的空间参数包括移动终端实际的经纬度和高度,可以通过定位模块获得,通过实际地理位置与低精度三维模型中坐标的对应关系,可以确定移动终端在低精度三维模型中的坐标,从而能得到移动终端在低精度三维模型投影坐标系下的虚拟坐标位置O。

步骤202、以点O为圆点在水平面上建立设定距离的缓冲区,在低精度三维模型中检索落在该缓冲区范围内的虚拟建筑物得到虚拟建筑集合S。

本实施例以O点为圆点,将距离O点L米范围内的区域设置为缓冲区,即可能摄像头拍摄到的区域,从该区域中检索出虚拟建筑物得到虚拟建筑集合S,例如包括虚拟建筑物1、虚拟建筑物2、…、虚拟建筑物M,M为缓冲区内虚拟建筑物的个数。

步骤203、以虚拟建筑物m为单位,开始遍历虚拟建筑集合S,从m=1开始。

步骤204、判断m是否小于等于虚拟建筑集合S中虚拟建筑物的个数,若是,执行步骤205,否则执行步骤215。

本实施例需要遍历缓冲区内的所有虚拟建筑物,依次从第1个虚拟建筑物开始,一直到虚拟建筑物M。

步骤205、判断虚拟建筑物m是否在移动终端摄像头视域一侧,若是,执行步骤206,否则执行步骤213。

移动终端摄像头的视域是指它的视力范围,即视角所夹的范围,在三维空间中可以理解为一个顶点是摄像头的虚拟圆锥,从摄像头向外发出的所有的视线组成了这个虚拟圆锥。虚拟圆锥的轴是一条视线,并垂直于移动终端平面。虚拟圆锥面与轴线的夹角根据经验值,可以取5°到10°的范围,若虚拟圆锥的轴为γ0,则γ0与虚拟建筑m上的任意一点可以确定一个平面,即建筑m上的这一点在该平面上,并且该平面的法线与γ0平行。若γ0和该平面有一个交点,那么即可判断虚拟建筑m在移动终端摄像头视域的一侧。γ0的起点为虚拟坐标O,方向由步骤208所述的方法计算得到,这里不再复述。

步骤206、选取移动终端摄像头视域中从O点出发的视线集合R,以视线集合R中的视线γn为单位进行遍历。

本实施例视线集合R为上述虚拟圆锥的轴和圆锥面上部分母线的合集。从n=0到N开始遍历,N根据经验值和精度要求可以选择,视线集合R中有N+1条视线。

步骤207、判断集合R是否遍历完毕,若是,执行步骤208,否则执行步骤213。

本实施例判断集合R是否遍历完毕,即判断当前的n是否小于等于R中最后一条视线的编号N。

步骤208、采用视线γn和点O确定唯一的一个平面Pn,其中视线γn与Pn的法线平行,点O为Pn上的一点。

本实施例视线γn由点O及移动终端的方向角、俯仰角和翻转角来确定,视线γn的起点为点O,其方向与移动终端平面的相对位置是固定的,在低精度三维模型投影坐标系下γn的方向可以看成该视线的初始方向向量旋转一定角度后得到,的方向是当移动终端方向角、俯仰角和翻转角均为0时γn的方向。旋转的角度由移动终端的方向角、俯仰角和翻转角确定。可以使用四元数运算计算具体运算步骤如下:

当移动终端的方向角、俯仰角和翻转角均为0时,此时可以根据γn和移动终端平面的相对位置关系直接计算得到在该坐标系下的坐标表示:(x,y,z)。然后将扩展为四元数p=0+xi+yj+zk;

移动终端旋转后,它的姿态信息发生了变化,将此时移动终端的方位角(Azimuth)、俯仰角(Pitch)和翻转角(Roll)转换为一个表示旋转的四元数q=qr+qii+qjj+qkk。q的计算公式如下:

h=azimuth

a=roll

b=pitch

执行四元数运算:p′=qpq-1,其中q-1为四元数q的逆;

最终视线γn的方向向量对应的四元数为p′=r+x′i+y′j+z′k,即向量旋转后为γn=(x′,y′,z′)。

步骤209、将虚拟建筑物m的虚拟三维坐标垂直投影到平面Pn上,得到虚拟建筑物m在平面Pn上的多边形轮廓βn。

如图4所示,沿着Pn的法线的方向把建筑m垂直地投影到平面Pn上,得到一个投影面,这个投影面由一个闭合的轮廓βn表示。空间上βn由一组连续的点组成。

步骤210、判断点O是否在βn内部,若是,表示虚拟建筑物m在移动终端摄像头视域内,则执行步骤211,否则执行步骤214。

使用射线法判断虚拟坐标位置O是否在βn内部。从O点出发引一条射线,如果这条射线和βn的边有奇数个交点,则说明O在βn内部,如果有偶数个交点,则说明在外部。

步骤211、计算虚拟建筑物m和虚拟建筑物m-1分别离点O的距离,并记录两者的最小值D。

本实施例计算虚拟建筑物m和虚拟建筑物m-1分别离点O的距离,并以两者中较小的距离为最小值D(distance)。

步骤212、退出步骤207的遍历。

步骤213、m=m+1,m指向下一幢建筑,返回步骤204继续执行。

步骤214、n=n+1,n指向下一条视线,返回步骤207继续执行。

步骤215、遍历完毕,在虚拟建筑集合S中,使得D值最小的那幢虚拟建筑物即为虚拟目标建筑物。

在经历过上述步骤后,此时虚拟建筑集合S遍历完毕。在虚拟建筑集合S中,使得D值最小的那幢虚拟建筑物即为虚拟目标建筑物。若无这样的虚拟建筑则表明移动终端摄像头视域内没有建筑物。

在低精度三维模型中,记载有虚拟建筑物的基础信息,例如楼栋号、建筑物概况、建筑物的人数、车库的车位情况等等。在确定虚拟目标建筑物即可获取对应的基础信息。

步骤S3、将接收的基础信息在实景目标建筑物上叠加显示。

在获得虚拟目标建筑物的基础信息后,将其叠加到实景目标建筑物上进行显示,如图5所示。用户可在实景目标建筑物上点击,要求获取更多信息。

以下通过一个实例来说明上述基于低精度三维模型空间计算的增强现实过程的实际应用过程:

用户在图1海创园室外的任一位置,打开移动终端(例如智能手机)增强现实应用,竖直手握智能手机。

以现实场景为背景,当手机摄像头正对某一栋大楼的时候,在屏幕正中间会会自动出现大楼的基本信息,同时手机右下角会显示正对楼栋的楼栋号(例如图5若正对海创园3号楼,屏幕中央显示3号楼的基本信息,同时右下角会显示海创园3号楼),用户可以通过转动摄像头获取周围任意建筑的基本信息。

若用户想对目标建筑深入了解,点击基本信息的楼栋号或者右下角的楼栋号,在屏幕的中央即会展示目标建筑的动、静态信息,包括目标大楼的公司概况,大楼的人数,车库的车位情况等等。用户还可以点击相应公司查看公司概况等等,实现增强现实应用。

与上述方法对应地,本申请还给出了一种增强现实装置和一种增强现实系统的实施例。

本申请的一种实施例,一种增强现实装置,应用于移动终端,适用于在移动终端上预设有低精度三维模型,并在移动终端上完成通过低精度三维模型中的空间关系计算出在低精度三维模型中与实景目标建筑物对应的虚拟目标建筑物,获取虚拟目标建筑物在低精度三维模型中对应的基础信息的过程。该装置包括:

参数获取模块,用于打开移动终端摄像头,对准实景目标建筑物,获取移动终端当前的空间参数;

虚拟目标计算模块,用于根据移动终端当前的空间参数,结合预设的低精度三维模型,通过低精度三维模型中的空间关系计算出在低精度三维模型中与实景目标建筑物对应的虚拟目标建筑物,获取虚拟目标建筑物在低精度三维模型中对应的基础信息;

增强现实模块,用于将获取的基础信息在实景目标建筑物上叠加显示。

容易理解的是,其中虚拟目标计算模块,通过低精度三维模型中的空间关系计算出在低精度三维模型中与实景目标建筑物对应的虚拟目标建筑物,获取虚拟目标建筑物在低精度三维模型中对应的基础信息的过程,已经在前文的方法中进行了详细的描述,这里不再赘述。

本申请的一种实施例,一种增强现实系统,用于在移动终端上对拍摄的实景进行增强现实,所述增强现实系统包括移动终端和服务器端,即在服务器端预设低精度三维模型,并完成通过低精度三维模型中的空间关系计算出在低精度三维模型中与实景目标建筑物对应的虚拟目标建筑物,获取虚拟目标建筑物在低精度三维模型中对应的基础信息的过程。该系统包括:

移动终端,用于打开移动终端摄像头,对准实景目标建筑物,获取移动终端当前的空间参数发送给服务器端,接收服务器端发回的基础信息在实景目标建筑物上叠加显示;

服务器端,用于接收移动终端当前的空间参数,结合预设的低精度三维模型,通过低精度三维模型中的空间关系计算出在低精度三维模型中与实景目标建筑物对应的虚拟目标建筑物,获取虚拟目标建筑物在低精度三维模型中对应的基础信息,发送给移动终端。

容易理解的是,服务器端通过低精度三维模型中的空间关系计算出在低精度三维模型中与实景目标建筑物对应的虚拟目标建筑物,获取虚拟目标建筑物在低精度三维模型中对应的基础信息的过程,已经在前文的方法中进行了详细的描述,这里不再赘述。

为减少移动终端和服务器端的交互并增强实时性,本实施例还可以预先将当前移动终端地点附近的低精度三维模型和相关建筑物基本信息下载到移动终端,由移动终端或服务器端进行空间关系的计算找到对应的虚拟目标建筑物,移动终端直接采用本地的基础信息进行显示,不需要传送基础信息。

以上实施例仅用以说明本发明的技术方案而非对其进行限制,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

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