真实物理模型的增强现实展示方法与流程

文档序号:15390103发布日期:2018-09-08 01:02阅读:350来源:国知局

本申请涉及一种真实物理模型的增强现实展示方法及设备。



背景技术:

虚拟现实和增强现实(vr/ar)

虚拟现实(virtualreality,简称vr),是一种借助计算机及最新传感器技术创造的人机交互手段。vr技术在多维信息空间上创建一个虚拟信息环境,从而使用户具有身临其境的沉浸感,以及与环境完善的交互作用能力。

增强现实(augmentedreality,简称ar),是一种实时计算摄影机影像的位置及角度并加上相应图像、视频等的技术,从而在屏幕上把虚拟世界套在现实世界并进行互动。这种技术最早于1990年提出。随着随身电子产品运算能力的提升,增强现实的用途越来越广。

例如,常用的增强现实系统有如下三种组成形式:基于显示器式(monitor-based)、光学透视式、视频透视式。例如,在基于计算机显示器的ar实现方案中,摄像机摄取的真实世界图像输入到计算机中,与计算机图形系统产生的虚拟景象合成,并输出到屏幕显示器。用户从屏幕上看到最终的增强场景图片。此外,头盔式显示器(head-mounteddisplays,简称hmd)被广泛应用于虚拟现实系统中,用以增强用户的视觉沉浸感。增强现实技术的研究者们也采用了类似的显示技术,将穿透式hmd广泛应用于ar技术中。根据具体实现原理穿透式hmd又划分为两大类,分别是基于光学原理的穿透式hmd(opticalsee-throughhmd)和基于视频合成技术的穿透式hmd(videosee-throughhmd)。

slam技术

为了允许用户在虚拟或增强场景中漫游,需要考虑用户佩戴ar设备而移动的情况。这时可以把ar设备视为一种智能机器人,这会涉及机器人视觉识别问题。slam(simultaneouslocalizationandmapping,同时定位与建图)技术帮助解决了这一问题。slam帮助机器人在移动过程中根据位置估计和地图进行自身定位,同时在自身定位的基础上建造增量式地图,实现机器人的自主定位和导航。在虚拟现实和增强现实技术中,需要slam向应用层提供空间定位的信息,并利用slam的地图完成地图的构建或场景的生成。

随着vr和ar技术的发展,有人提出把vr和/或ar技术应用于真实物理模型的展示。例如,可以考虑把vr和/或ar技术应用于沙盘模型展示。

沙盘模型展示在诸如军事、房地产、教育等行业中有广泛需求,是一种很重要的信息传递方式。然而,现有的沙盘模型演示也存在一些突出问题。

首先,现有沙盘模型的制作成本较高,而沙盘制作定型之后的可编辑性较低,因此沙盘展示的实时性不强,信息传递不够丰富。其次,现有的沙盘推演要求观看者处于同一个物理空间中,无法较好地支持远程演示。最后,现有的沙盘展示方案与用户(或操作者)的互动方式十分有限,不适合用作沙盘推演。

基于vr或ar的虚拟沙盘展示通常是在整个平面叠加一个完全虚拟的沙盘,在场观众必须使用相关设备(例如,定制头盔、定制眼镜等)才可以看到对应的vr/ar效果。这种展示方法对设备要求较高,也不支持多人观看。

因此,本申请旨在利用ar技术将虚拟信息融合到真实物理模型(例如,沙盘模型),实现虚实模型的结合,从而使真实物理模型的展示更加生动。



技术实现要素:

根据本申请的一个方面,提出一种真实物理模型的增强现实展示方法。该方法包括:初始化步骤,其包括提供真实物理模型、通过三维重建技术获得所述真实物理模型的虚拟物理模型、对所述真实物理模型和所述虚拟物理模型进行融合;和增强现实展示步骤,用于在至少一个终端设备上显示基于所述真实物理模型的增强现实场景。

根据本申请的另一个方面,提出一种基于真实物理模型的增强现实展示系统。该系统包括:虚拟物理模型构建设备,用于通过三维重建技术获得所述真实物理模型的虚拟物理模型;融合设备,用于对所述真实物理模型和所述虚拟物理模型进行融合;和增强现实显示设备,用于显示基于所述真实物理模型的增强现实场景。

为了更清楚地阐述本申请的上述目的、特征和优点,在后文中将结合附图,对一些实施例进行详细说明。

附图说明

为了更清楚地阐述本申请实施例的技术方案,下面将对实施例中涉及的附图进行简单的说明。应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定。附图中:

图1示出了初始化步骤的具体子步骤;

图2示出了一个示例性实体沙盘模型;

图3示出了图2所示的实体沙盘模型通过三维重建获得的虚拟沙盘模型;

图4示出了虚实沙盘模型融合的具体子步骤;

图5示出了放置有识别图的实体沙盘模型;

图6示出了以图5的实体沙盘模型为参照计算得到的三维点云;

图7示出了融合后实体沙盘模型和虚拟沙盘模型;

图8示出了增强现实展示步骤的具体子步骤;

图9a和图9b示出了经过虚实沙盘模型融合后的沙盘场景设计示例;

图10示出了基于沙盘海洋场景的一个交互控制示例;

图11示出了基于沙盘大气场景的一个交互控制示例;

图12示出了基于沙盘化学物质场景的一个交互控制示例;

图13示出了应用于本申请所提出的系统的ar眼镜设备。

具体实施方式

下面,将结合附图,以沙盘模型作为非限定性示例,对根据本申请的基于ar的真实物理模型展示方法进行详细说明。

根据本申请的一个实施例的基于ar的沙盘模型展示方法总体包括初始化步骤和增强现实展示步骤。下面对每个步骤进行具体说明。

初始化阶段

在该阶段中,对实体沙盘模型进行三维重建,然后使实体沙盘模型与三维重建得到的虚拟沙盘模型相互重合,从而完成沙盘增强现实展示的初始化。

图1示出了初始化步骤的具体子步骤。

首先,在步骤1100中,提供实体沙盘模型。

然后,在步骤1200中,通过三维重建技术获得虚拟沙盘模型。

最后,在步骤1300中,对步骤1100中提供的实体沙盘模型和步骤1200中重建的虚拟沙盘模型进行融合。

下面,对图1的各子步骤进行详细说明。

步骤1100,提供实体沙盘模型

在该步骤中,用户可以根据需求自由设计实体沙盘模型式样。

图2示出了一个示例性实体沙盘模型。在该示例中,以地理信息演示系统为例,设计了基于华北平原的地理实体沙盘模型。

以图2的沙盘为例,制作该沙盘可以使用如下材料:沙盘框、托凳、细沙、泥土、地模型、表示道路,江河的各色纸(布)条、渲染地貌色调的锯末等工具。

制作沙盘的步骤例如可以包括:1)设置沙盘。放置沙盘框放置,铺上3-5厘米厚、湿度适当的沙土并用木板刮平压紧,作为最低等高线的平面,然后打上和地形图相应的方格,在沙盘框周围注记相应的编号。2)堆积地貌。例如,在沙盘面上绘制山顶、鞍部、山脚、江河等位置,并依据相应位置的计算好的高度堆积相应厚度的底层沙土。3)设置地物。在相应位置上插上地名,江河名,山名等标记物。

步骤1200,三维重建虚拟沙盘模型

在该步骤中,用摄像头对步骤1100中提供的实体沙盘模型进行扫描,使用三维重建技术获得虚拟沙盘模型。

根据一个示例,基于tof(timeofflight)深度摄像机对三维模型进行重建。tof技术是指首先由发光器发射出一束调制好的光线,经过场景中物体返回到探测装置后,根据发射光与反射光的时间间隔来测量深度信息。在本示例中,用深度摄像机扫描实体沙盘模型,在整个场景的三维数据都被相机捕获之后,可以将全部的三维数据在统一的坐标系统中重建出完整的三维模型。

根据另一个示例,基于图像对三维模型进行重建。基于图像的三维重建通常包括如下步骤:

-图像获取:通过摄像机获取三维物体的二维图像;

-摄像机标定:通过摄像机标定,建立有效的成像模型、确定摄像机位置和属性参数,从而确定三维物体的空间坐标与其像素之间的对应关系;

-特征提取:基于特征点提取算法,提取三维物体的点状特征、线状特征或区域特征。特征点提取算法例如包括基于方向导数的方法、基于图像亮度对比关系的方法、基于数学形态学的方法;

-立体匹配:根据所提取的特征,建立图像对之间的对应关系,即,将同一物理空间点在两幅(或更多)不同二维图像中的成像点一一对应;

-三维重建:在较为精准的匹配结果基础上,结合摄像机标定的内外参数,恢复三维场景信息。例如,可以通过sfm(structurefrommotion,从运动中恢复结构)算法计算特征点的三维坐标并重建三维模型。

应理解,可以基于其他方法对实体沙盘模型进行三维重建,这些三维重建方法也包含在本申请的范围中。

图3示出了图2所示的地理实体沙盘模型通过三维重建获得的虚拟的三维沙盘模型。

步骤1300:虚实沙盘模型融合

在该步骤中,基于识别图建立世界坐标系,确定虚拟沙盘的世界坐标,从而实现实体沙盘模型和虚拟沙盘模型的融合。此外,可选地,还可以构建特征点的三维点云。

图4示出了虚实沙盘模型融合的具体子步骤。

首先,在步骤1310中,建立以二维识别图的中心为原点的世界坐标系;

然后,在步骤1320中,构建实体沙盘模型的特征点的三维点云;

最后,在步骤1330中,计算虚拟沙盘模型在世界坐标系中的坐标。

下面,对图4的各子步骤进行详细说明。

步骤1310,建立世界坐标系

在该步骤中,将二维识别图放置于实体沙盘模型上。例如,将识别图放置成与实体沙盘模型主平面位于同一平面,并且保持二者的相对位置固定。然后,以识别图为基准建立世界坐标系。例如,世界坐标系的原点位于识别图的中心,xy平面位于识别图所在的平面。

图5示出了放置有识别图的实体沙盘模型,其中右下角灰色图像为识别图。

步骤1320,构建特征点的三维点云

在该步骤中,用摄像机扫描实体沙盘模型,基于步骤1310中得到的世界坐标系,计算实体沙盘模型上特征点的三维坐标,并储存计算得到的三维点云。

这里,特征点指的是图像中较为显著的点。例如,对于实体沙盘模型而言,其特征点可以是实体沙盘模型中山峰、山谷等地形变化最为剧烈的点。或者,特征点是在演示中需要展示详细信息的城市、景观等所在位置的点。

在本示例中,利用orb算法提取特征点。orb算法是由ethanrublee,vincentrabaud,kurtkonolige以及garyr.bradski在2011年一篇名为“orb:anefficientalternativetosiftorsurf”的文章中提出。

利用orb算法提取特征点可以包括三个步骤:1)以用具有方向的fast检测子在连续两幅图像上检测特征点,2)通过具有旋转不变的brief描述子计算特征点的描述向量;3)采用汉明距离比值准则得到最终的特征点匹配对。下面对每一个步骤进行详细说明。

orientedfast特征点检测

orb算法利用fast(featuresfromacceleratedsegmenttest)算法来检测特征点,并针对fast算法特征不具备方向的问题,加入了fast特征的方向信息。

fast算法基于特征点周围的图像灰度值,检测候选特征点周围一圈的像素值,如果候选点周围领域内有足够多的像素点与该候选点的灰度值差别够大,则认为该候选点为一个特征点。

其中i(x)为圆周上任意一点的灰度,i(p)为圆心的灰度,εd为灰度值差的阈值,如果n大于给定阈值(通常为周围圆圈点的3/4),则认为p是一个特征点。

为了使特征点具有方向不变性,orb算法使用灰度质心法为特征点提供一个主方向,即找到特征点局部区域内的灰度形心,用特征点到形心的矢量方向来确定特征点的主方向,从而得到具有方向的fast(orientedfast)特征点。

rotatedbrief特征点描述

在检测到特征点后,orb算法利用brief算法对检测到的特征点进行描述,并且改进了brief描述子对图像噪声不敏感和不具备旋转不变性的缺点。

brief描述子是二进制描述子,其核心思想是在关键点p的周围以一定模式选取n个点对(n可以是128、256、512),每个点对对应一个二进制位,其定义如下:

其中,p(x)和p(y)是点对的灰度,随机选择n对点(xi,yi)可以生成一个二进制字符串,则生成的特征描述子可以表示为:

orb特征点匹配

为了建立连续两幅图像上特征点的对应关系,需要计算第二帧图像上每个特征点与第一帧图像上全部特征点描述向量的汉明距离,用d(vp,vq)表示,其中vp是第二帧中某一特征点p的特征向量,vq是第一帧中最邻近特征点p的特征向量,d(vp,vq)越小说明两个特征点越相似,汉明距离最小的即为匹配对。

当然,也可以基于其他算法提取特征点,这些算法也包含在本申请的范围中。

在完成特征点匹配后,估计相机的运动。然后,基于估计得到的运动信息,计算各个特征点的空间位置,即计算得到各个特征点在世界坐标系下的三维坐标,从而构建出特征点的三维点云。

图6示出了以图5的实体沙盘模型为参照计算得到的三维点云。

步骤1330,计算虚拟沙盘模型的世界坐标

在该步骤中,基于识别图相对于实体沙盘模型的相对位置,计算虚拟沙盘模型在步骤1310中获得的世界坐标系下的坐标。

具体地,首先计算真实物理尺寸与算法内像素尺寸的转换系数;然后,测量识别图中心相对于实体沙盘模型中心的相对位置;最后,将相对位置转换为对应的像素尺寸,从而计算得到虚拟沙盘模型的世界坐标。

随后,将虚拟沙盘模型放置到对应的世界坐标系中,使得虚拟沙盘模型与真实沙盘模型原点重合、方向一致、尺寸相同,从而实现虚拟沙盘模型与实体沙盘模型的对准与融合。图7示出了融合后实体沙盘模型和虚拟沙盘模型。

应注意,尽管在本示例中,在进行三维点云构建之后计算虚拟沙盘模型的世界坐标,在其他示例中,也可以在进行三维点云构建之前计算虚拟沙盘模型的世界坐标。例如,上述步骤1320和步骤1330可以依次执行,也可以颠倒顺序执行或单独执行。

增强现实展示阶段

在该阶段中,在至少一个终端设备的显示器上显示与真实沙盘模型融合后的虚拟沙盘模型,并实现相关信息展示。

图8示出了增强现实展示步骤的具体子步骤。如图8所示,增强现实展示步骤至少包括三维点云共享、定位追踪及三维渲染两个步骤。下面,对这两个步骤进行详细说明。

步骤8100,三维点云共享

在该步骤中,将步骤1320中计算得到的三维点云发送给至少一个终端设备。这里,终端设备可以是pc、手机、vr眼镜等。

步骤8200,定位追踪及三维渲染

根据一个示例,在该步骤中,各终端设备利用slam算法进行定位追踪,并相应地进行三维渲染。

slam(simultaneouslocalizationandmapping,即时定位与地图构建)技术是指使机器人在未知环境中从一个未知位置开始移动,在移动过程中根据位置估计和传感器数据进行自身定位,同时建造增量式地图。在本示例中,终端设备的摄像头可以看作为slam算法中的机器人,各个设备基于步骤1320中确定的三维点云进行跟踪,从而实现自身定位及地图构建。

具体地,根据本示例的slam算法系统包括四个模块:视觉里程计(vo)模块、后端模块、建图模块和回环检测模块。

visualodometry,即视觉里程计,用于估计两个时刻机器人的相对运动(ego-motion)。例如,本申请实施例中,视觉里程计模块用于基于相邻图像中的特征点估计摄像头的相对运动,从而得到摄像头的运动轨迹。例如,给定一组特征点以及它们之间的配对关系,求解相机的姿态,该问题被称为pnp问题(perspective-n-point)。pnp可以用非线性优化来求解,得到两个帧之间的位置关系。

应当指出,本申请的实施例所使用的slam技术可以基于各个类型的传感器。slam的实现方传感器的形式和安装方式密切相关。传感器分为激光和视觉两大类,视觉传感器又分单目(monoslam)、双目(或多目)、rgbd。此外,还有鱼眼、全景等特殊相机。结合惯性测量器件(inertialmeasurementunit,imu)的视觉slam也是现在研究热点之一。

后端模块用于利用滤波思路进行图优化,因为通过视觉里程计模块理论上可以获得摄像头的运动轨迹,但是视觉里程计存在累计误差(drift)的问题,因此需要利用后端模块对帧之间的相对运动进行加工,以使噪声项最小化。例如,slam最早的提出者r.smith等人就把slam建构成了ekf(extendedkalmanfilter,扩展卡尔曼滤波)问题。他们按照ekf的形式,把slam写成了一个运动方程和观测方式,以最小化这两个方程中的噪声项为目的,使用典型的滤波器思路来解决slam问题。也可以使用其他思路进行图优化。例如,借鉴sfm(structurefrommotion)问题中的方法,把捆集优化(bundleadjustment)引入到slam中来。

建图模块用于基于对位置的估计和定位,建造增量式地图。

回环检测模块(loopclosuredetection)用于在机器人到达曾经到达过的场景时进行识别,从而减小累计误差。实际上,回环检测是检测观测数据相似性的算法。可以采用目前较为成熟的词袋模型(bag-of-words,bow)。词袋模型把图像中的视觉特征(sift,surf等)聚类,然后建立词典,进而寻找每个图中含有哪些“单词”(word)。也有研究者使用传统模式识别的方法,把回环检测建构成一个分类问题,训练分类器进行分类。

接下来,基于slam算法计算得到的结果,完成虚拟沙盘的三维渲染。

通过这一步骤,可以确保实时对准虚拟沙盘模型与实体沙盘模型,从而保证独立运行slam算法的每个设备在不同位置看到相同的虚拟场景。

在一个示例中,还可以将两个以上的终端设备(例如,pc、手机和ar/vr眼镜)连接网络并同步显示或控制。

此外,根据本申请,还可以根据需要进行交互演示,例如设计视觉互动/场景推演和语音/手势交互。

此外,还可以从两个以上的终端设备中选择一个终端设备作为主机。主机能够对增强现实场景进行交互控制。从属设备则同步显示被交互控制的增强现实场景。例如,通过将主机端的操作转化为预设好的消息格式并传送给其他终端设备,可以实现多端共享操作的目的。

此外,所述至少一个终端设备可以是被布置在所述真实物理模型所在位置的终端设备,也可以是未被布置在所述真实物理模型所在位置的终端设备(远程)。

下面,以上文实施例的地理沙盘模型演示系统为例,对基于地理沙盘模型的演示流程设计进行详细说明。

图9a和图9b示出了经过虚实沙盘模型融合后的沙盘场景设计示例。

如图9a所示,经过虚实沙盘模型融合后,在终端设备显示的沙盘中,海洋变为流动的海水,海面上有轮船在开动,天空中有飞机飞行。

此外,如图9b所示,在地标性城市和景点上方存在蓝色的提示符,可以通过在手机端用手点击提示符、或者在pc端用鼠标点击提示符、或者在眼镜端通过语音说出该城市或景点的名称来进行选择,系统接到指令后将弹出展示该城市或景点的图文介绍信息的窗口。

对于地理沙盘模型,沙盘的地理信息主要包含海洋、大气层和化学物质三个场景,眼镜端使用者可以通过语音发出“海洋”、“大气层”、“化学物质”等指令或通过手势左右横移选择场景进行切换。

图10示出了基于沙盘海洋场景的一个交互控制示例。

已知数据显示,全球平均气温每上升1℃,会导致海平面上升4-5米,该场景展示了全球变暖对海平面的影响。演示人员手势每升高一次,或发出一次“上升”口令,代表全球平均气温上升1℃,虚拟沙盘中的海平面将上升,导致部分陆地被海水淹没。同理,演示人员手势每降低一次,或发出“下降”口令,代表全球平均气温下降1℃,虚拟沙盘中的海平面将下降,导致部分陆地露出。演示人员通过多次连续升高或降低收拾对沙盘模型进行控制,使用者可以通过终端设备显示的虚拟沙盘查看温度变化后的地形变化。

图11示出了基于沙盘大气场景的一个交互控制示例。

大气层场景包含从地表到高速气流层之间不同高度下(例如,1000hpa、750hpa、500hpa、250hpa)的动态大气环流状态,以及多种覆盖模式(气流,温度,湿度,可降水气),演示人员可以通过语音指令选择气流层及覆盖模式,使用者可以通过终端设备显示的虚拟沙盘查看该条件下的动态大气环流状态。

图12示出了基于沙盘化学物质场景的一个交互控制示例。

化学物质场景包含从地表到高速气流层之间不同高度下(例如,1000hpa、50hpa、500hpa、250hpa)的动态化学物质分布状态,在该场景下可以查看一氧化碳、二氧化碳、二氧化硫等多种化学物质的分布。演示人员可以通过语音指令选择气流层及化学物质,使用者可以通过终端设备显示的虚拟沙盘查看该条件下的动态化学物质分布状态。

以上提到了本申请的终端设备可以是ar眼镜。

图13示出了可以应用到本申请实施例的增强现实(ar)设备的示意图。该ar设备可以用于观看和控制基于真实物理模型的增强现实场景。

如图13所示,该ar设备包括眼镜架1、眼镜腿2、弹性夹片3以及软性支撑层4。借助于这些机械构件,ar设备能够被稳定地佩戴于用户的头部。其中,眼镜腿2安装在眼镜架1的两侧,眼镜腿2的末端朝内侧弯曲形成第一圆弧部,夹持机构包括弹性夹片3,弹性夹片3反向延伸的设置在眼镜腿2内侧,弹性夹片3的末端朝内侧弯曲形成第二圆弧部,其中,弹性夹片3由不锈钢弹片制成,其能够加大眼镜腿2的夹持力度,从而提高夹持稳定性。软性支撑层4可以被设置于眼镜腿的圆弧部内侧,其可以为橡胶层或/和泡沫层,优选为橡胶层。通过设置软性支撑层4,使贴合与头部位置的压迫感降低,摩擦力增加,使得佩戴更稳固、更舒适,提高了用户的体验度。眼镜腿4和眼镜架2可以通过弹性连接件a相互连接。

除了上述机械构件之外,ar设备还包括设置于眼镜架1上的遮光镜片11、设置于眼镜架1中间部的深度摄像头模组12、设置于眼镜架1两侧下端的光机13。深度摄像头模组12、光机13与控制电路板耦接,并且光机13与成像镜片(位于遮光镜片11的后侧)光学连接,从而光机13输出的光学信号能够在成像镜片(图中未示出)中成像。可以理解,对于ar设备的用户来说,该成像镜片构成了显示屏,其上可以观察到ar设备的显示内容,例如图形化用户界面等。成像镜片可以是例如一个半透半反射镜/膜,或者是全息衍射波导光栅,或者其他适合的成像元件。

可以理解,本申请不限制ar设备的成像原理。虽然图13中ar设备被表示为ar眼镜,但是在实际应用中,其他类型的ar设备,例如ar头盔也属于本申请的保护范围。

对于图13所示的ar设备,由于其是增强现实技术眼镜,因此用户既可以观察到成像镜片(显示屏)上的内容,也同时可以透过成像镜片和遮光镜片11观察到现实环境中的实体物体(例如沙盘)等。换言之,ar设备能够在真实现实场景上叠加显示虚拟现实场景。此外,ar设备可以通过深度摄像头模组12和/或其他摄像模组检测背景中的实体图形或颜色,并且检测表示用户选择的手势操作或类似操作。

可以理解,在一些其他实施例中,ar设备还可以具有其他类型用于检测用户选择操作的模块,例如麦克风、惯性传感器、按钮等。这些不同类型的检测模块可以分别检测例如手势信号、语音信号、头部移动信号或按键信号,从而确定用户选择对应的操作。

技术效果

基于上述技术方案可知,本申请提出的真实物理模型的增强现实展示方法具有以下有益效果:

通过本申请的方法,可以将虚拟物理模型与真实物理模型进行融合,基于增强现实技术使得物理模型展示更加生动、可编辑性更强、并且允许用户在不同位置看到相同的虚拟场景并通过自然交互方式(例如语音、手势)对场景进行操作。

此外,根据本申请的方法支持多人、多端、多方式演示,并且允许不同终端之间三维场景的实时共享,从而极大丰富和扩展了物理模型展示的应用。

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