一种校准方法及相关设备与流程

文档序号:19873256发布日期:2020-02-08 06:06阅读:400来源:国知局
一种校准方法及相关设备与流程

本发明涉及增强现实技术领域,尤其涉及一种校准方法及相关设备。



背景技术:

增强现实(augmentedreality,ar)技术,也被称之为混合现实技术,其通过图像处理将虚拟的信息应用到真实环境中,可将真实环境的实物和虚拟的信息融合到同一个画面或者是空间中,增加用户观察到物体的维度,具有立体显示效果。与传统虚拟现实(virtualreality,vr)技术所要达到的完全沉浸于虚拟世界的效果不同,ar技术致力于将计算机生成的虚拟对象(virtualobject,vo)、场景或系统提示信息等无缝叠加到真实场景中,从而创造一个虚实结合的世界,以此实现对现实世界的“增强”。

ar技术不仅在与vr技术相类似的应用领域,诸如尖端武器、飞行器的研制与开发、数据模型的可视化、虚拟训练、娱乐与艺术等领域具有广泛的应用,而且由于其具有能够对真实环境进行增强显示输出的特性,在医疗研究与解剖训练、精密仪器制造和维修、军用飞机导航、工程设计和远程机器人控制等领域,具有比vr技术更加明显的优势。

目前,ar显示设备主要有ar头盔显示器(head-mounteddisplay,hmd)、ar眼镜(如googleglass)、ar平视显示器(head-updisplay,hud)和ar手持设备(handheld)等。其中,ar手持设备例如ar手机,则是将整个ar系统整合到一部手机上,在人和手机的交互实现过程中,摄像头负责采集现实世界的图像,处理单元对其进行分析和重构,实现坐标系的对齐并进行虚拟场景的融合计算,处理后的图像就会显示在手机屏幕上,从而实现现实增强效果,即用户不需要单独购买ar设备,通过智能手机就能体验到ar所带来的优质体验。然而,在上述方案中,因为手机的摄像头需要不断的生成现实世界画面对应的高分辨率帧,以供后续与虚拟对象进行迭加,因此导致手机的功耗较高,并且,手机摄像头在抓取现实世界的画面时存在一定的失真和时延,导致增强现实的效果和用户体验不佳。

因此,如何提供一种低功耗、用户体验佳的ar手持设备是亟待解决的问题。



技术实现要素:

本发明实施例提供一种校准方法及相关设备,以提升增强现实的用户体验和效果。

第一方面,本发明实施例提供了一种校准方法,应用于终端,所述终端包括:透视显示器、摄像模块和眼睛跟踪模块;所述方法包括:确定所述终端在第一位姿下,所述终端上的固定点在世界坐标系中的空间坐标a;其中,所述第一位姿为观察者通过所述透视显示器上的对准标识,瞄准现实世界中的第一对象的第一特征点时所述终端的第一位置和第一姿态;根据所述空间坐标a和所述终端的机构参数确定所述终端在所述第一位姿下,所述摄像模块、所述对准标识以及所述眼睛跟踪模块的空间坐标b、c和d;根据所述空间坐标b和第一测量信息确定所述第一特征点的的空间坐标e,以及根据所述空间坐标d和第二测量信息确定所述观察者的眼睛空间坐标f;其中,所述第一测量信息包括所述终端在第一位姿下所述摄像模块捕捉的第一图像,所述第一图像记录有所述第一对象的第一特征点;所述第二测量信息包括所述终端在第一位姿下所述眼睛跟踪模块测量的相对位置信息,所述相对位置信息为所述观察者的眼睛在透过所述对准标识瞄准所述第一特征点时与所述眼睛跟踪模块的相对位置信息;在夹角∠ecf满足预设条件的情况下,校准空间坐标b、c和d中的至少一个,所述预设条件至少包括∠ecf≠180°。可选的,基于校准后的空间坐标b、c和d确定的夹角∠e’c’f’大于所述夹角∠ecf,其中,所述e’为根据校准后的空间坐标b与所述第一测量信息确定得到的,所述c’为校准后的空间坐标c,所述f’为根据校准后的空间坐标d与所述第二测量信息确定得到的;所述校准后的空间坐标b、c和d为所述在夹角∠ecf满足预设条件的情况下,校准空间坐标b、c和d中的至少一个所得到的空间坐标b、c和d。

本发明实施例,首先,将观察者透过终端上的透视显示器上的对准标识瞄准现实世界中的第一对象的第一特征点时,终端处于现实世界坐标系中的第一位置,以及终端的各个机械部件当前的相对位置对应的第一姿态,记为第一位姿。此时,计算终端在第一位姿下该终端上的固定点(如图5a和5b中终端的重心a)在世界坐标系中的空间坐标a,以建立终端与世界坐标系之间的关系。然后,基于a以及根据终端的机构参数(终端上各个机械部件相对于该固定点a的空间相对位置信息),确定终端上的透视显示器上的对准标识、摄像模块以及眼睛跟踪模块在世界坐标系中的空间坐标点,以确定对准标识、摄像模块以及眼睛跟踪模块之间初始的相对位置参数。与此同时,摄像模块在终端处于上述第一位姿下捕捉包含有用户瞄准的第一对象(包括第一特征点)的第一图像,并基于该第一图像,如通过slam功能模块,计算现实世界中的第一对象的第一特征点相对于该摄像模块的相对位置信息;同理,在观察者的眼睛透过透视显示器上的对准标识对准现实世界的第一对象的第一特征点时,眼睛跟踪模块获取此时的观察者的眼睛与其之间的相对位置信息,最终,基于上述,可以确定观察者的眼睛、透视显示器上的对准标识和第一特征点在现实世界坐标系中的空间坐标,并可利用光的直线传播的客观特点,校准终端的机构参数,以期在后续增强现实的过程当中,计算更精准的虚拟对象的投影坐标,以提升用户体验,提升增强现实的沉浸感。

在一种可能的实现方式中,所述方法还包括:根据所述校准后的空间坐标b、c和d,确定所述终端在所述第一姿态下,所述对准标识与所述摄像模块之间的第一空间向量、和所述对准标识与所述眼睛跟踪模块之间的第二空间向量。

本发明实施例,在获得了校准后的空间坐标后,根据终端上的固定点的空间坐标位置,分别计算得到对准标识与摄像模块以及眼睛跟踪模块之间的空间向量,从而在后续进行增强现实的虚拟对象添加时,可以依据对准标识和摄像模块之间的空间向量,获知第二对象相对于对准标识的相对位置,以及对准标识与眼睛跟踪模块之间的空间向量,获知观察者的眼睛相对于透视显示器的相对位置。

在一种可能的实现方式中,所述方法还包括:在所述终端处于第二位置和所述第一姿态下,通过所述摄像模块,捕捉现实世界的第二图像,所述第二图像记录有观察者通过所述透视显示器可见的现实世界中的第二对象;基于所述第一空间向量和所述第二空间向量,计算叠加于所述第二对象上的虚拟对象的投影坐标;根据所述投影坐标,将所述虚拟对象投影到所述透视显示器上进行增强现实。

本发明实施例,当终端发生刚性移动,即终端上的各个机构之间的相对位置不变,只是整体移动时,则可以利用上述校准后得到的第一空间向量和第二空间向量,进行后续的虚拟对象的计算和叠加,从而实现精准的增强现实。

在一种可能的实现方式中,所述确定所述终端在第一位姿下,所述终端上的固定点在世界坐标系中的空间坐标a之前,所述方法还包括:通过所述摄像模块捕捉现实世界的第三图像,所述第三图像记录有观察者通过所述透视显示器可见的现实世界中的第一对象;根据预设规则标记所述第三图像中的所述第一对象的特征点以生成第四图像,所述特征点包括所述第一特征点;将所述第四图像投影到所述透视显示器的指定区域上,以指示所述观察者通过所述透视显示器上的对准标识,瞄准所述第一对象的特征点。

本发明实施例,通过终端上的摄像模块,捕捉现实世界中的第三图像,并对第三图像中的第一对象进行特征点标记,以提示观察者根据标记点,进行特征点瞄准,以最终获取校准数据。

在一种可能的实现方式中,所述透视显示器和所述摄像模块之间为联动结构,且所述透视显示器所在的平面与所述摄像模块所在的平面平行。

本发明实施例,通过将透视显示器和摄像模块之间设置为联动结构,即当透视显示器和摄像模块中的任意一个相对于终端移动时,另一个都会随着一起联动(例如一起旋转、一起拉伸等)。如此一来,可以保证透视显示器和摄像模块中任意一个移动时,摄像模块所捕捉的画面都可以即时覆盖到观察者透过透视显示器所见的画面,从而最终保证现实世界中的第一对象一直出现在第一图像中。可选的,透视显示器所在的平面与摄像模块所在的平面平行。如此一来,在计算第一空间向量时,可以尽量减少一个空间维度的相对位置的计算误差,提升增强现实的精度。

第二方面,本发明实施例提供了一种终端,可包括:处理器,以及耦合于所述处理器的透视显示器、摄像模块和眼睛跟踪模块,其中

所述处理器,用于确定所述终端在第一位姿下,所述终端上的固定点在世界坐标系中的空间坐标a;其中,所述第一位姿为观察者通过所述透视显示器上的对准标识,瞄准现实世界中的第一对象的第一特征点时所述终端的第一位置和第一姿态;根据所述空间坐标a和所述终端的机构参数确定所述终端在所述第一位姿下,所述摄像模块、所述对准标识以及所述眼睛跟踪模块的空间坐标b、c和d;

所述摄像模块,用于在所述终端在第一位姿下,捕捉第一图像,所述第一图像记录有所述第一对象的第一特征点;

所述眼睛跟踪模块,用于在所述终端在第一位姿下,跟踪并测量观察者的眼睛在透过所述对准标识瞄准所述第一特征点时与所述眼睛跟踪模块的相对位置信息;

所述处理器,还用于根据所述空间坐标b和第一测量信息确定所述第一特征点的的空间坐标e,以及根据所述空间坐标d和第二测量信息确定所述观察者的眼睛空间坐标f,所述第一测量信息包括所述第一图像;所述第二测量信息包括所述相对位置信息;在夹角∠ecf满足预设条件的情况下,校准空间坐标b、c和d中的至少一个,所述预设条件至少包括∠ecf≠180°。可选的,基于校准后的空间坐标b、c和d确定的夹角∠e’c’f’大于所述夹角∠ecf,其中,所述e’为根据校准后的空间坐标b与所述第一测量信息确定得到的,所述c’为校准后的空间坐标c,所述f’为根据校准后的空间坐标d与所述第二测量信息确定得到的;所述校准后的空间坐标b、c和d为所述在夹角∠ecf满足预设条件的情况下,校准空间坐标b、c和d中的至少一个所得到的空间坐标b、c和d。

在一种可能的实现方式中,所述处理器,还用于:

根据所述校准后的空间坐标b、c和d,确定所述终端在所述第一姿态下,所述对准标识与所述摄像模块之间的第一空间向量、和所述对准标识与所述眼睛跟踪模块之间的第二空间向量。

在一种可能的实现方式中,所述摄像模块,还用于在所述终端处于第二位置和所述第一姿态下,捕捉现实世界的第二图像,所述第二图像记录有观察者通过所述透视显示器可见的现实世界中的第二对象;

所述处理器,还用于基于所述第一空间向量和所述第二空间向量,计算叠加于所述第二对象上的虚拟对象的投影坐标;根据所述投影坐标,将所述虚拟对象投影到所述透视显示器上进行增强现实。

在一种可能的实现方式中,所述摄像模块,还用于在确定所述终端在第一位姿下,所述终端上的固定点在世界坐标系中的空间坐标a之前,捕捉现实世界的第三图像,所述第三图像记录有观察者通过所述透视显示器可见的现实世界中的第一对象;

所述处理器,还用于根据预设规则标记所述第三图像中的所述第一对象的特征点以生成第四图像,所述特征点包括所述第一特征点;将所述第四图像投影到所述透视显示器的指定区域上,以指示所述观察者通过所述透视显示器上的对准标识,瞄准所述第一对象的特征点。

第三方面,本发明实施例提供了一种校准装置,应用于终端,所述终端包括:处理器,以及耦合于所述处理器的透视显示器、摄像模块和眼睛跟踪模块;所述装置包括:

第一定位单元,用于确定所述终端在第一位姿下,所述终端上的固定点在世界坐标系中的空间坐标a;其中,所述第一位姿为观察者通过所述透视显示器上的对准标识,瞄准现实世界中的第一对象的第一特征点时所述终端的第一位置和第一姿态;

第二定位单元,用于根据所述空间坐标a和所述终端的机构参数确定所述终端在所述第一位姿下,所述摄像模块、所述对准标识以及所述眼睛跟踪模块的空间坐标b、c和d;

第三定位单元,用于根据所述空间坐标b和第一测量信息确定所述第一特征点的的空间坐标e,以及根据所述空间坐标d和第二测量信息确定所述观察者的眼睛空间坐标f;其中,所述第一测量信息包括所述终端在第一位姿下所述摄像模块捕捉的第一图像,所述第一图像记录有现实世界中的所述第一对象的第一特征点;所述第二测量信息包括所述终端在第一位姿下所述眼睛跟踪模块测量的相对位置信息,所述相对位置信息为所述观察者的眼睛在瞄准所述第一特征点时与所述眼睛跟踪模块的相对位置信息;

校准单元,用于在夹角∠ecf满足预设条件的情况下,校准空间坐标b、c和d中的至少一个,所述预设条件至少包括∠ecf≠180°。

可选的,基于校准后的空间坐标b、c和d确定的夹角∠e’c’f’大于所述夹角∠ecf,其中,所述e’为根据校准后的空间坐标b与所述第一测量信息确定得到的,所述c’为校准后的空间坐标c,所述f’为根据校准后的空间坐标d与所述第二测量信息确定得到的;所述校准后的空间坐标b、c和d为所述在夹角∠ecf满足预设条件的情况下,校准空间坐标b、c和d中的至少一个所得到的空间坐标b、c和d。

在一种可能的实现方式中,所述方法还包括:

标定单元,用于根据所述校准后的空间坐标b、c和d,确定所述终端在所述第一姿态下,所述对准标识与所述摄像模块之间的第一空间向量、和所述对准标识与所述眼睛跟踪模块之间的第二空间向量。

在一种可能的实现方式中,所述方法还包括:

第一驱动单元,用于在所述终端处于第二位置和所述第一姿态下,通过所述摄像模块,捕捉现实世界的第二图像,所述第二图像记录有观察者通过所述透视显示器可见的现实世界中的第二对象;

计算单元,用于基于所述第一空间向量和所述第二空间向量,计算叠加于所述第二对象上的虚拟对象的投影坐标;

第一显示单元,用于根据所述投影坐标,将所述虚拟对象投影到所述透视显示器上进行增强现实。

在一种可能的实现方式中,所述方法还包括:

第二驱动单元,用于在确定所述终端在第一位姿下,所述终端上的固定点在世界坐标系中的空间坐标a之前,通过所述摄像模块捕捉现实世界的第三图像,所述第三图像记录有观察者通过所述透视显示器可见的现实世界中的第一对象;

图像处理单元,用于根据预设规则标记所述第三图像中的所述第一对象的特征点以生成第四图像,所述特征点包括所述第一特征点;

第二显示单元,用于将所述第四图像投影到所述透视显示器的指定区域上,以指示所述观察者通过所述透视显示器上的对准标识,瞄准所述第一对象的特征点。

第四方面,本申请提供一种终端,该终端具有实现上述任意一种校准方法实施例中方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。

第五方面,本申请提供一种终端,该终端中包括处理器,处理器被配置为支持该终端执行第三方面提供的一种校准方法中相应的功能。该终端还可以包括存储器,存储器用于与处理器耦合,其保存该终端必要的程序指令和数据。该终端还可以包括通信接口,用于该终端与其他设备或通信网络通信。

第六方面,本申请提供一种芯片系统,所述芯片系统包括至少一个处理器,存储器和接口电路,所述存储器、所述接口电路和所述至少一个处理器通过线路互联,所述至少一个存储器中存储有指令;所述指令被所述处理器执行时,使得上述第一方面以及结合上述第一方面的任意一种实现方式的流程得以实现。

第七方面,本申请提供一种校准装置,包括处理器和存储器,其中,所述存储器用于存储程序,所述处理器用于调用所述存储器存储的程序,来执行上述第一方面以及结合上述第一方面的任意一种实现方式对应的流程。

第八方面,本申请提供一种计算机存储介质,用于储存为上述第二方面、第四方面或第五方面提供的终端所用的计算机软件指令,其包含用于执行上述方面所设计的程序。

第九方面,本发明实施例提供了一种计算机程序,该计算机程序包括指令,当该计算机程序被计算机执行时,使得计算机可以执行上述任意二方面所提供的终端中的处理器或者第三方面所提供的校准装置中的相关功能模块所执行的流程,或者使得计算机可以执行上述第一方面以及结合上述第一方面的任意一种实现方式所提供的校准方法的流程。

附图说明

为了更清楚地说明本发明实施例或背景技术中的技术方案,下面将对本发明实施例或背景技术中所需要使用的附图进行说明。

图1是本发明实施例提供的一种视频透视式头盔显示器的原理示意图;

图2是本发明实施例提供的一种光学透视式头盔显示器的原理示意图;

图3是本发明实施例提供的一种视频透视式增强现实手机的原理示意图;

图4是本发明实施例提供的一种终端的结构示意图;

图5a是本发明实施例提供的一种人眼校准终端标定参数的示意图;

图5b是本发明实施例提供的另一种人眼校准终端标定参数的示意图;

图6是本发明实施例提供的另一种终端的结构示意图;

图7是本发明实施例提供的一种智能手机的功能原理示意图;

图8是本发明实施例提供的一种针对第三图像进行特征点标记的示意图;

图9是本发明实施例提供的一种第四图像指示示意图;

图10a-10c是发明实施例提供的一种终端的外部结构示意图;

图11是本发明实施例提供的一种校准方法的流程示意图

图12是本发明实施例提供的一种校准装置的结构示意图;

图13是本发明实施例提供的另一种终端的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例进行描述。

本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

在本说明书中使用的术语“部件”、“模块”、“系统”等用于表示计算机相关的实体、硬件、固件、硬件和软件的组合、软件、或执行中的软件。例如,部件可以是但不限于,在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序和/或计算机。通过图示,在计算设备上运行的应用和计算设备都可以是部件。一个或多个部件可驻留在进程和/或执行线程中,部件可位于一个计算机上和/或分布在2个或更多个计算机之间。此外,这些部件可从在上面存储有各种数据结构的各种计算机可读介质执行。部件可例如根据具有一个或多个数据分组(例如来自与本地系统、分布式系统和/或网络间的另一部件交互的二个部件的数据,例如通过信号与其它系统交互的互联网)的信号通过本地和/或远程进程来通信。

首先,对本申请中的部分用语进行解释说明,以便于本领域技术人员理解。

(1)惯性测量单元(inertialmeasurementunit,imu)是测量物体三轴姿态角(或角速率)以及加速度的装置,一般包含了三个单轴的加速度计和三个单轴的陀螺,其中,加速度计用于检测物体在载体坐标系统独立三轴的加速度信号,陀螺则用于检测载体相对于导航坐标系的角速度信号,并测量物体在三维空间中的角速度和加速度,并以此解算出物体的姿态。imu大多用在需要进行运动控制的设备,如汽车和机器人上,且一般要安装在被测物体的重心上。

(2)即时定位与地图构建(simultaneouslocalizationandmapping,slam)指的是机器人在自身位置不确定的条件下,在完全未知环境中创建地图,同时利用地图进行自主定位和导航。slam问题可以描述为机器人在未知环境中从一个未知位置开始移动,在移动过程中根据位置估计和传感器数据进行自身定位,同时建造增量式地图。定位(localization)是指机器人必须知道自己在环境中位置;建图(mapping)是指机器人必须记录环境中特征的位置(如果知道自己的位置);slam是指机器人在定位的同时建立环境地图。其基本原理是通过概率统计的方法,通过多特征匹配来达到定位和减少定位误差的。

(3)图形处理器(graphicsprocessingunit,gpu),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上图像运算工作的微处理器。用途是将设备的中央处理器所需要的显示信息进行转换驱动,并向显示器提供行扫描信号,控制显示器的正确显示,是连接显示器和中央处理器的重要元件,也是“人机对话”的重要设备之一。

(4)显示子系统(displaysubsystem,dss)硬件模块负责读从存储器取像素数据,发送到液晶显示器(liquidcrystaldisplay,lcd)或者高清晰度多媒体接口(highdefinitionmultimediainterface,hdmi)显示器。它分为两大部分:1)dispc,获取像素数据,颜色转换,组成和其他像素操作;2)编码器,将原始像素数据转化成标准的显示信息,hdmi,或者mipidpi。对于一个芯片来说dss还应该包括其他一些有用的解码器,比如dpidvi等等,还有显示面板。dispc又包括overlays和overlaymanagers,简单的理解,前者负责接收数据,后者负责数据处理。overlays又分为gfx和video,各自支持一些格式,值得注意的是后者支持yuv,而前者不支持。dss也有一些不支持的属性,不支持hdcp。dss2是dss的升级版本,支持hdcp。

(5)相机校准(cameracalibration),也可称之为相机标定,在增强实境体验过程以及机器视觉应用中,为确定空间物体表面某点的三维几何位置与其在虚拟物体图像中对应点之间的相互关系,必须建立相机校准的几何模型,这些几何模型参数就是相机校准参数。在大多数条件下这些参数必须通过实验与计算才能得到,这个求解参数的过程就称之为相机校准(或摄像机校准)。无论是在图像测量或者机器视觉应用中,相机参数的校准都是非常关键的环节,其校准结果的精度及算法的稳定性直接影响增强实境体验里相机工作产生结果的准确性。因此,做好相机校准是做好后续工作的前提,提高标定精度是科研工作的重点所在。

其次,提出本申请需要解决的技术问题及应用场景。在ar中,从迭加策略的不同,将ar呈现方式分为两类:视频透视式(videosee-through,vst)和光学透视式(opticalsee-through,ost)。其中

第一类:视频透视式

例如,以基于电荷耦合器件(chargecoupleddevice,ccd)摄像的视频透视式头盔显示器(headmounteddisplay,hmd)为例。如图1所示,图1为本发明实施例提供的一种视频透视式头盔显示器的原理示意图,在图1中,视频透视式头盔显示器通过一对安装在用户头部的微型ccd摄像机摄取外部真实环境,得到真实环境的视频,根据头部跟踪系统得到的当前位置信息将需要加载到此真实环境上的信息或图像叠加在ccd的视频信号(视频信号融合器)上,完整计算即生成虚拟信息与真实场景融合,最后通过类似于vr系统中的沉浸式头盔显示器的显示结构呈现给观察者。

第二类:光学透视式

例如,以基于光学原理的光学透视式(opticalseethrough,ost)头盔显示器(headmounteddisplay,hmd)为例。如图2所示,图2为本发明实施例提供的一种光学透视式头盔显示器的原理示意图,光学透视式头盔显示器通过一对安装在用户头部的半透半反镜(光学合成器),将外部的真实环境的光直接投射到观察者眼睛,并根据头部跟踪系统将需添加的虚拟对象传输到显示器上,显示器出射光经过光学系统放大后经光学合成镜反射进入观察者眼睛,即通过安装在眼前的光学合成器实现外界真实环境与虚拟信息的融合。光学透视型头盔显示器不同于全部遮住用户视野,只显示通过摄像机拍摄到的影像的视频透视式头盔显示器,其特点是小型轻量。

由上述分析可知,视频透视式头盔显示器中真实环境通过ccd摄像获得,虚实融合通过视频合成器叠加虚拟图像和真实环境的视频来完成;光学透视式头盔显示器中真实环境直接通过光学镜片观察,虚拟融合通过光学合成器实现。对比视频透视式,光学透视式对真实环境是一种“无损”显示,观察者对真实环境的观察只受到半透半反镜的过滤,真实场景几乎完整地呈现给观察者,所获得的信息比较全面可靠。而视频透视式头盔显示器对真实环境的复现受到很多因素的限制。

目前,手机ar设计均为上述vst设计,以googlearcore为例,如图3所示,图3为本发明实施例提供的一种视频透视式增强现实手机的原理示意图。手机摄像头为了提供用户在屏幕上看到的逼真画面,必须不断的生成现实世界对应的高分辨率帧(frame),以供后续与虚拟对象进行迭加;同时,摄像头还需要提供较低分辨率帧用以slam模块进行即时定位与地图构建,以确定虚拟对象在dss上的叠加位置,最终完成现实世界对应的高画质帧与虚拟对象在显示子系统dss上迭合,生成用户所看到的非透明vr画面。在上述过程中,由于摄像头需要不断的捕捉现实世界的高分辨率帧,因此需要较高功耗。其中,摄像头还需要对捕捉的画面进行相关处理,因此导致画面存在一定的时延和失真,例如,帧延迟可能达到90ms。然而,若通过提高帧率来降低时延,则又存在帧率越高,功耗越高的问题,最终导致增强现实的效果和体验不佳。

综上,在现有基于vst的手机ar设计中,存在功耗较大、画面延时和画面失真等问题。本申请为了解决上述问题,提出一种基于ost原理的手机,可以避免因不断的捕捉现实世界的高分辨率帧而产生的功耗。但是,与vst相比,ost的标定相对比较困难。主要原因包括以下两点:

1、在ost的标定和使用过程中,ost头盔显示器与跟踪系统中的摄像头的位置相对固定,因此对应的相对位置参数是固定的,也一般会在出厂前进行测量或者标定。而本申请提供的ost手机除了兼顾增强现实的功能,还要保障现有手机的基本功能,因此产品形态则远不同于ost头盔显示器。例如,手机上用于增强现实的透视显示器为了不被手机的内部元器件遮挡,设计为可以翻转或可移动的形式;用于跟踪的摄像头为了不遮挡透视显示器,则可能不设置在透视显示器上,因此,导致透视显示器和摄像头之间的相对位置不固定,无法进行精确标定。

2、在ost的标定和使用过程中,观察者在佩戴上ost头盔显示器之后,眼睛与ost头盔显示器之间的位置基本相对固定,因此对应的相对位置参数是固定的,也一般也会在出厂前进行测量或者标定。而使用ost手机的观察者由于无法将ost佩戴在固定位置,也无法保证眼睛的位置和视角始终保持不变,因此,导致眼睛和透视显示器之间的相对位置不固定,无法进行精确标定。

因此,本申请所要解决的技术问题在于,如何提供一种基于ost的手机ar,在满足了低功耗以及画面低时延的要求下,还要保证虚拟对象能够根据标定参数精准的投影到显示器的正确位置,以保证增强现实的沉浸感,从而提升用户的ar体验。

基于上述,下面结合本发明实施例提供的终端进行描述。请参见图4,图4是本发明实施例提供的一种终端的结构示意图,该终端10中可包括处理器101,以及耦合于处理器101的透视显示器102、摄像模块103和眼睛跟踪模块104,其中,

透视显示器102,可由半反半透的光学元件构成,融合透射式和反射式显示屏的特点,透射特性不会对观察者(如人眼)的视线(有效视角)造成遮挡,用于透视现实世界;反射特性可反射显示增强现实的虚拟对象。即观察者既可以看到现实世界透过透视显示器102在人眼中的成像,又可以看到处理器101生成的虚拟对象(图像或信息)通过透视显示器102的反射进入人眼所成的像,最终完成虚拟对象与人眼看到的现实世界的叠加融合,实现增强现实。由于透视显示器102本身具有屏幕的特性,因此也可以作为终端与用户的交互屏幕使用。可选地,终端10还可以包括其它显示器,将透视显示器102作为专用ar屏幕,将其它显示器作为交互屏幕使用,本发明实施例对此不作具体限定。可以理解的是,随着显示材料技术的发展,透视显示器102还可以是未来的悬空屏幕、3d全息投影屏幕等,本申请对透视显示器102的具体材料、形态或者呈现形式不作具体限定。

摄像模块103,可以为ar终端的后置摄像头,侧置摄像头,旋转摄像头或可翻转摄像头等。摄像模块103的主要作用是可以在实现ar的过程中实时跟踪、捕捉观察者透过透视显示器101可见的现实世界的信息,以计算观察者的主视角在现实世界中的位置、观察角度以及运动方向,最终确定虚拟对象在透视显示器102上的叠加位置。进一步可选的,摄像模块103还可以在进行校准之前,捕捉包含有第一对象的第一特征点的第三图像,以生成标记有特征点的第四图像,供观察者根据第四图像进行特征点的瞄准。

眼睛跟踪模块104,用于跟踪观察者在瞄准过程中,眼睛相对于眼睛跟踪模块的位置,可以为终端10上的红外设备或图像采集设备等。其中,红外设备还可以辅以眨眼识别、注视识别等技术以增加眼睛跟踪的精度。图像采集设备,例如为终端(如手机或者平板电脑)上的前置摄像头、可旋转摄像头等,用以进行图像采集以识别并计算眼睛到眼睛跟踪模块的相对位置;或双摄镜头利用影像视角差掌握观察者的眼睛位置及相对位置;或利用结构光(structuredlight)技术、飞行时间(timeofflight,tof)技术实现脸部3d建模的设备,在软件的支持下也可以实现眼睛跟踪。

处理器101,用于运行通用操作系统软件,并在通用操作系统软件的作用下控制透视显示器102、摄像模块103和眼睛跟踪模块104中的一个或多个进行增强现实。进一步地,处理器101还用于完成虚拟现实相关的计算处理,例如生成虚拟对象、图像处理、计算透视显示器102与摄像模块103之间的相对位置等。

可选的,终端还可以包括定位与地图构建模块,用于测量终端在世界坐标系中的空间位置。例如,定位与地图构建模块具体可以通过本申请中的上述摄像模块103和惯性测量单元imu,来建立世界坐标系,并确定坐标原点和终端自身在该世界坐标系中的空间坐标。其中,imu是一种通过传感器组合(加速度计、陀螺仪和磁力计)来测量和报告速度、方向和重力的电子设备。可实现3dof(degreesoffreedom)或6dof的数据测量。可以理解的是,上述定位与地图构建模块可以作为处理器101中的一部分,也可以为耦合于上述处理器101功能芯片,本发明实施例对此不作具体限定。

结合上述图4中提供的终端10中的各个功能模块的功能,提供本申请中的终端10是如何实现增强现实之前,对终端10中需要参与到后续的增强现实的各个机构模块之间的标定参数进行校准的。

在一种可能的实现方式中,在进行标定参数校准之前,首先通过摄像模块103捕捉现实世界的第三图像,该第三图像用于提供给处理器101进行特征点的识别与标记,且该第三图像记录有观察者通过透视显示器102可见的现实世界中的第一对象,该第一对象可以是一个场景,也可以是某一个具体的物体,或者是某一个画面中对应的所有物体;处理器101根据预设规则标记上述摄像模块103捕捉到的第三图像中的所述第一对象的特征点,以生成标记后的第四图像。例如,处理器101利用计算机视觉方法识别第三图像中用于标定的第一对象上的特征点,并对第一对象的特征点进行标记,生成经过若干个标记点标记过的第四图像,以便于观察者根据该第四图像将透视显示器102上的固定的对准标识(例如为交叉十字、十字叉丝、圆形标靶等)对准现实世界中的第一对象的相对应的特征点。此时,终端上的各个机械部件(例如包括终端本体、透视显示器102、摄像模块103,眼睛跟踪模块104等)当前所处于的姿态即为第一姿态,终端上的固定点(如终端的重心点)在现实世界中所处于的位置即为第一位置。可选的,观察者每次瞄准第一对象的特征点后都(例如通过透视显示器上102的交互确认按钮)指示终端10测量当前终端在当前的位姿(即第一位姿)下,终端上的固定点在世界坐标系中的空间坐标。例如,通过终端中的定位与地图构建(slam)模块以及结合相关传感器(如摄像模块103和imu等),测量终端上的固定点在世界坐标系中的空间坐标。

具体地,请参见图5a,图5a为本发明实施例提供的一种人眼校准终端标定参数的示意图。处理器101确定终端10在第一位姿下,终端10上的固定点(例如为终端的重心点,可以理解的是也可以为终端上其它可以作为参考的点)在世界坐标系中的空间坐标a;其中,第一位姿即为上述所描述的观察者通过透视显示器102上的对准标识,瞄准现实世界中的第一对象的第一特征点时,终端10所处于的第一位置和第一姿态;根据空间坐标a和终端10的机构参数,确定终端10在上述第一位姿下,摄像模块103、对准标识以及眼睛跟踪模104块的空间坐标b、c和d;摄像模块103在终端10在第一位姿下(即为观察者眼睛透过十字叉丝瞄准第一特征点的时刻)捕捉第一图像,该第一图像记录有上述第一对象的第一特征点;在终端10在第一位姿下,眼睛跟踪模块104跟踪并测量观察者的眼睛在透过透视显示器102上的对准标识瞄准现实世界中的第一物体的第一特征点时与所述眼睛跟踪模块104的相对位置信息;处理器101还根据空间坐标b和第一测量信息确定第一特征点的的空间坐标e,以及根据空间坐标d和第二测量信息确定观察者的眼睛空间坐标f,其中第一测量信息包括摄像模块103捕捉的第一图像;第二测量信息包括眼睛跟踪模块104测量的上述相对位置信息。实际上,如果终端所获知的机构参数是精准无误的,那么根据光线直线传播的理论,上述三个空间坐标点f、c和e应当是在同一条直线上,但是由于机构参数不精准(例如终端出厂之后,由于各个机械部件的转动、滑动或者移动等会造成一定的磨损),或者由于终端自身在测量时会有一定的误差,导致经过上述计算得到的三个空间坐标点f、c和e不在一条直线上。因此,本发明实施例对上述三个空间坐标也即是向量v1、v2和v3中的至少一个进行校准,从而使得基于校准后的v1、v2和v3计算得到的f’、c’和e’尽量趋向于一条直线上,如此一来,便可以逆向推导得到更精准的标定参数,便于后续计算增强现实的相关参数。具体地,在夹角∠ecf满足预设条件(例如预设条件为夹角不等于180度)的情况下,校准空间坐标b、c和d中的至少一个。可选的,基于校准后的空间坐标b、c和d确定的夹角∠e’c’f’大于所述夹角∠ecf,其中,所述e’为根据校准后的空间坐标b与所述第一测量信息确定得到的,所述c’为校准后的空间坐标c,所述f’为根据校准后的空间坐标d与所述第二测量信息确定得到的;而实际上,上述校准后的空间坐标b、c和d并不是指上述三个空间坐标点一定都会经过校准,而是指,在所述校准空间坐标b、c和d中的至少一个之后的空间坐标b、c和d。即校准后的空间坐标b、c和d,是指,若某个空间坐标校准了,则校准后的该空间坐标为新的空间坐标,若某个空间坐标没有被校准,则校准后的该空间坐标还是原来的空间坐标。可以理解的是,上述预设条件除了至少要包括∠ecf≠180°,还可以包括“夹角∠ecf不在指定的夹角范围内”,例如预设条件为“∠ecf不在(175°~180°)范围内”,则当∠ecf为174°,即不在(175°~180°)范围内,因此满足预设条件,需要校准空间坐标b、c和d中的至少一个则需要进行校准;当∠ecf为178°,即在(175°~180°)范围内,因此不满足预设条件,因此不需要校准空间坐标b、c和d中的至少一个。可选的,预设条件还可以是包括“∠ecf不在(178°~180°)范围内”,或“∠ecf不在(170°~180°)范围内”等,本申请对上述夹角范围不作具体限定。

请参见图5b,图5b为本发明实施例提供的另一种人眼校准终端标定参数的示意图。图5b中,例如,世界坐标系的原点为o(0,0,0);终端的重心点为a(x0,y0,z0);摄像模块的空间坐标点为b(x1,y1,z1);透视显示器上的对准标识的空间坐标点为c(x2,y2,z2);眼睛跟踪模块的空间坐标点为d(x3,y3,z3);第一对象的第一特征点的空间坐标点为e(x4,y4,z4);观察者的眼睛的空间坐标点为f(x5,y5,z5)。则

图5b中,因为终端中的slam功能模块,因此可以测量得到v0,即可以获知终端的重心点a的空间坐标。同理,根据终端出厂后机械结构相对固定(其中可以包含如下情况,b、c、d三个点相对于出厂生产有变动,但是终端内部机构可以通过测量装置测量出初始的移动或者转动位置,因此可以得到初始的空间坐标)也因此可以计算得到前置摄像头、后置摄像头以及透视显示器上的对准标识相对于上述重心a的相对位置,因此可以计算得到v1/v2/v3(本申请中认为v1/v2/v3不够精准),可以理解的是也可以是计算而v4是位于d点的前置摄像头测量得到的,v4本身认为是精确的,但是因为f点是基于d点叠加的v4,因此f实际上也可能是不精准的;同理,v5是由终端中的slam功能模块联合后置摄像头以及imu测量确定的,即v5本身也认为是精准的,但是因为e点是基于b点叠加的v5确定的,因此e点实际上也可能是不精准的。因此,如图5b中所示,实际上,由于真实情况下,机械计算得到的f、c和e很有可能并不在一条直线上,即∠ecf的角度不等于180°。因此,假设经过本申请中所提供的校准方法进行多次校准之后,如,经过第一对象上的多个特征点,或者多个对象上的不同特征点进行的多次校准之后,f’c’e’始终在同一条直线上,或者始终趋向于一条直线,则可以逆向确定当前校准得到的v1/v2/v3是精准的,最后投影虚拟对象时才会得到相对精准的投影。

在上述校准过程中,对空间向量v1、v2和v3中的至少一个进行校准时,可以只校准其中任意一个,也可以校准其中任意两个,也可以是对三个同时进行校准,例如,假设当眼睛跟踪模块为前置摄像头且不可转动或移动时,则其相对于终端的固定点的坐标相对来说是固定的,因此在实际校准时,可以不对眼睛跟踪模块的空间坐标进行校准,而只校准另外两个;又假设,当眼睛跟踪模块和摄像模块相对于终端上的固定点均为不可动,则可以只校准能翻转的透视显示器上的对准标识的空间坐标。即校准的原则可以是着重校准与终端上的固定点相对位置变化较大的机械部件得空间坐标。

需要说明的是,关于本申请中所涉及的终端的机构参数,即终端各个机械模块之间的相对位置参数,可以包括终端出厂时所提供的机械尺寸以及机械之间的相对位置参数,也可以是进一步结合用户在使用过程中,对透视显示器、摄像模块以及眼睛跟踪模块中的任意一个或多个进行转动、移动或者其它操作之后,终端内部的相关功能模块根据机械的转动或移动等计算得到的初始机构参数,例如图5a和图5b中的v1、v2和v3则可以认为是终端初始获得的机构参数。

还需要说明的是,本申请中的第一图像和第三图像可以是相同的图像也可以是不同的图像。相同之处在于,第一图像和第三图像中都包括第一对象,且包含第一对象的第一特征点;不同之处在于,第三图像是摄像模块103捕捉的用于对第一对象进行特征点识别的图像,而第一图像则是摄像模块103在观察者瞄准第一对象的第一特征点时捕捉的用于确定第一特征点相对于摄像模块的相对位置的图像。

本发明实施例,首先,将观察者透过终端上的透视显示器上的对准标识瞄准现实世界中的第一对象的第一特征点时,终端处于现实世界坐标系中的第一位置,以及终端的各个机械部件当前的相对位置对应的第一姿态,记为第一位姿。此时,计算终端在第一位姿下该终端上的固定点在世界坐标系中的空间坐标a,以建立终端与世界坐标系之间的关系。然后,基于a以及根据终端的机构参数(终端上各个机械部件相对于该固定点的空间相对位置信息),确定终端上的透视显示器上的对准标识、摄像模块以及眼睛跟踪模块在世界坐标系中的空间坐标点,以确定对准标识、摄像模块以及眼睛跟踪模块之间初始的相对位置参数。与此同时,摄像模块在终端处于上述第一位姿下捕捉包含有用户瞄准的第一对象(包括第一特征点)的第一图像,并基于该第一图像,如通过slam功能模块,计算现实世界中的第一对象的第一特征点相对于该摄像模块的相对位置信息;同理,在观察者的眼睛透过透视显示器上的对准标识对准现实世界的第一对象的第一特征点时,眼睛跟踪模块获取此时的观察者的眼睛与其之间的相对位置信息,最终,基于上述,可以确定观察者的眼睛、透视显示器上的对准标识和第一特征点在现实世界坐标系中的空间坐标,并可利用光的直线传播的客观特点,校准终端的机构参数,以期在后续增强现实的过程当中,计算更精准的虚拟对象的投影坐标,以提升用户体验,提升增强现实的沉浸感。

本申请中,在进行了上述校准终端的相关的标定参数之后,则可以利用上述校准后的参数,作为后续增强现实的基础,进行精准的投影,以提升用户增强现实的体验和沉浸感。

在一种可能的实现方式中,在上述发明实施例中,确定了校准之后的坐标b、c和d之后,进一步确定终端在所述第一姿态下,透视显示器102上的对准标识与所摄像模块103之间的第一空间向量、和透视显示器102上的对准标识与眼睛跟踪模块104之间的第二空间向量。因为,在后续增强现实的过程中,计算虚拟对象投影到透视显示器102上,以正确叠加到现实世界中的第二对象时,首先需要确定第二对象与透视显示器102之间的相对位置关系(即空间向量),而第二对象相对于摄像模块103之间的空间向量,又可以通过终端利用摄像模块103捕捉的第二图像计算得到的,因此,若获知了对准标识与摄像模块103之间的第一空间向量,则可以计算出对准标识与第二对象之间的空间相对位置;并且,由于透视显示器102上最终的透视以及投影的画面,会根据观察者的眼睛的位置变化而不同,因此,需要计算出眼睛相对于透视显示器102的相对位置关系,而由于眼睛跟踪模块104可以计算得到眼睛相对于眼睛跟踪模块104之间的空间向量,所以,只需要确定了对准标识与眼睛跟踪模块104之间的第二空间向量即可。

在一种可能的实现方式中,在终端处于第二位置和第一姿态下,通过摄像模块103捕捉现实世界的第二图像,该第二图像记录有观察者通过透视显示器102可见的现实世界中的第二对象;即终端的空间位置可以变化,但是终端上各个机械部件(例如包括透视显示器102、摄像模块103和眼睛跟踪模块104)之间的相对位置关系没有发生变化,此时,可以基于上述计算得到的第一空间向量和所述第二空间向量,计算叠加于所述第二对象上的虚拟对象的投影坐标;根据所述投影坐标,将所述虚拟对象投影到所述透视显示器上进行增强现实。需要说明的是,终端在第一姿态下计算得到的校准后的第一空间向量和第二空间向量只适用于终端在该姿态下,当终端的姿态改变了,则需要重新执行本申请中的上述发明实施例进行重新校准。

在实际场景中,例如,第二图像为观察者当前看到的家居室中的客厅,第二对象为该客厅中的沙发,虚拟对象为客厅里坐在沙发上的解说房屋装修风格的宠物精灵,当用户在通过本申请中的终端10上的透视显示器102透视观察到该客厅沙发上的宠物精灵,并且当用户移动终端时,该宠物精灵会根据用户相对于沙发的移动而显示在透视显示器102上的不同位置且呈现不同的角度,以提升增强现实的沉浸感。

在一种可能的实现方式中,由于透视显示器102和摄像模块103之间的相对位置不是绝对固定,例如,透视显示器102和/或摄像模块103相对于终端10均可相对旋转,因而用户在每次使用终端10时,都可能会由于透视显示器102和/或摄像模块103的旋转初始位置的不同,导致透视显示器102和摄像模块103之间相对位置信息不同。因此,本发明实施例,通过将透视显示器102和摄像模块103之间设置为联动结构,即当透视显示器102和摄像模块103中的任意一个相对于终端10移动时,另一个都会随着一起联动(例如一起旋转、一起拉伸等),如此一来,可以保证透视显示器102和摄像模块103中任意一个移动时,摄像模块103所捕捉的画面都可以即时覆盖到观察者透过透视显示器102所见的画面,从而最终保证现实世界中的第一对象一直出现在第一图像中。可选的,透视显示器102所在的平面与摄像模块103所在的平面平行。如此一来,在计算第一相对位置信息时,可以尽量减少一个空间维度的相对位置信息的计算误差,提升增强现实的精度。

需要说明的是,由于本申请中的透视显示器102、摄像模块103和眼睛跟踪模块之间的相对位置可变,且其相对位置在每次用户使用时,都有可能不同,因此,上述第一空间向量和第二空间向量需要在用户选择使用增强现实功能之前确定。

还需要说明的是,本申请中,可以是先进行多次特征点的瞄准,再统一进行校准,也可以是瞄准一个特征点即进行一次校准,多次循环校准,本申请对此不作具体限定。

参见6的终端结构,图6是本发明实施例提供的另一种终端的结构示意图,其是在图4的基础上对部分部件的进一步细化,其中,处理器101可包括至少一个中央处理单元1011(图6中以一个为例)、slam功能模块1012、图像处理器1013和显示子系统1014,上述功能模块可以分别是独立的芯片,也可以是任意两个或多个芯片之间根据产品需求进行集成,还可以是集成度更高的一个处理器,即为图4中的处理器101。本发明实施例以上述每个功能模块作为独立芯片来说明。

slam功能模块1012,可称为即时定位与地图构建模块,该slam功能模块可以利用相关的传感器以及算法在完全未知环境中创建地图,同时利用地图进行自主定位和导航。例如,slam功能模块可以在定位的同时建立环境地图。当终端在未知环境中从一个未知位置开始移动,在移动过程中slam功能模块根据位置估计和传感器数据进行自身定位,同时建造增量式地图。其中,定位(localization)是指slam功能模块必须知道终端在环境中的位置;建图(mapping)是指slam功能模块必须记录环境中特征的位置(如果知道自己的位置)。例如,本发明实施例中的slam功能模块,可以用于对摄像模块103捕捉的第三图像进行特征点抽取;还可以通过摄像模块103捕捉的第一图像和imu所采集的空间位移数据,确定第一对象的第一特征点在世界坐标系中的空间坐标点。

图像处理器(graphicsprocessingunit,gpu)1013,也可以称为显示核心、视觉处理器、显示芯片,可以为终端10(如平板电脑、智能手机等)上的图像运算工作的微处理器。可用于将终端10的中央处理处理单元1011所需要的显示信息进行转换驱动,并向显示子系统1014提供行扫描信号,控制显示子系统1014的正确显示。例如,在发明实施例中,gpu可用于生成叠加于第二图像中的第二对象上的虚拟对象;根据眼睛跟踪模块104(例如为终端的前置摄像头)捕捉的图像计算眼睛的空间坐标;将slam功能模块抽取的特征点绘制在摄像模块103捕捉的低分辨率帧(第三图像)上;将标记后得到的第四图像投影到透视显示器上,以用于用户根据显示在透视显示器上的第四图像进行特征点对准。

显示子系统(displaysubsystem,dss)1014,用于从存储器读取像素数据,发送到液晶显示器(liquidcrystaldisplay,lcd)或者高清晰度多媒体接口(highdefinitionmultimediainterface,hdmi)显示器。例如,将第四图像显示在透视显示器102的角落,引导用户进行特征点的对准。又例如将虚拟对象投影到透视显示器102的对应位置,以从观察者的视角将拟对象与现实世界的透视画面进行叠加显示。

至少一个中央处理单元1011,用于运行通用操作系统软件,如安卓操作系统、windows操作系统或ios操作系统等通用的操作系统,并在通用操作系统软件的作用下控制上述slam功能模块1012、图像处理器1013、显示子系统1014、透视显示器102、摄像模块103、眼睛跟踪模块104和惯性测量单元(imu)105中的一个或多个,以实现增强现实。中央处理单元205可以基于arm架构或英特尔x86架构或单字长定点指令平均执行速度(millioninstructionspersecond,mips)架构等来实现,中央处理单元1011的数量越多,能够处理数据的能力越强。本发明实施例对此不作限制。可选的,中央处理单元1011还可以分离出数据校准计算模块,以计算出最终的第一相对位置信息。

存储器106,可以用于存储上述中央处理单元1011计算得到的第一相对位置信息。可以理解的是,存储器106还用于存储上述中央处理单元1011所执行的应用程序或代码,以用于央处理单元1011调用所述程序代码,实现本申请中的上述终端的相应功能。

可以理解的是,关于透视显示器102和摄像模块103及眼睛追踪模块104的具体功能可以参照上述图4中对应的发明实施例中相对应的功能模块的描述,在此不再赘述。

可以理解的是,终端10还包括耦合于中央处理单元1011的存储器106和通信模块107,其中,存储器106用于存储相关的应用程序以及相关数据,通信模块107用于终端10与其它网络设备或者终端设备进行通信。可以理解的是,终端还可以包括其它功能模块。

在本发明的各个实施例中,半导体芯片也简称为芯片,其可以是利用集成电路工艺制作在集成电路衬底(通常是例如硅一类的半导体材料)上的集成电路的集合,其外层通常被半导体封装材料封装。所述集成电路可以包括金属氧化物半导体(metal-oxide-semiconductor,mos)晶体管、双极晶体管或二极管等。半导体芯片可以独立工作或者在必要的驱动软件的作用下工作,实现通信、计算、或存储等各类功能。

下面以终端为智能手机为例,结合上述图6所提供的终端结构,基于实际应用场景描述智能手机是如何实现申请中的增强现实。其中,以摄像模块103为手机的后置摄像头,以眼睛跟踪模块104为手机的前置摄像头为例,参见图7,图7是本发明实施例提供的一种智能手机的功能原理示意图,根据智能手机中的功能模块在时序上所执行的功能,可以包括以下步骤:

步骤1:摄像机采集图像阶段(cameracapturing)

后置摄像头(rearcamera)采集并输出低分辨率帧(lowresolutionframe)即第三图像。原因在于第三图像是用于提示用户对画面中的特征点进行标记,因此无需提供更高分辨率帧以免浪费功耗和资源。

步骤2:slam功能模块进行特征点抽取

slam功能模块利用后置摄像头所采集的低分辨率帧,并对第三图像中的第一对象进行特征点抽取。

步骤3:gpu或者数字信号处理器dsp进行特征点标定

gpu或dsp将上述步骤3中抽取的特征点的部分或者是全部,绘制在上述步骤1中后置摄像头采集并输出的低分辨率帧(第三图像)上,得到第四图像。如图8所示,图8为本发明实施例提供的一种针对第三图像进行特征点标记的示意图,针对第一步中获取的低分辨率帧中的本子的特征点(即本子的棱角上)处进行标记。

步骤4:显示子系统dss将经过特征点标记的低分辨率帧合成显示在透视显示器上

dss将步骤3中产生的经过特征点标记的第四图像以小框形式投影显示在透视显示器上。如图9所示,图9为本发明实施例提供的一种第四图像指示示意图,第四图像显示在图9的右上角部分,而除了该投影显示的小框部分,其它部分则为透视。即用户可以通过透视区域透视现实世界,而通过非透视区查看后置摄像机所投射的输出低分辨率帧(第四图像),以便于引导用户在透视区根据非透视区上标记的特征点,通过移动智能手机来将透视显示器上的十字叉丝移动并瞄准至现实世界中的第一对象的对应特征点位置。

步骤5:slam模块收集空间位置信息

用户通过移动智能手机将十字标对准书的左上角后,触发透视显示器ui上的触发键(例如pointmatch按钮)以通知slam模块进行终端上的固定点当前所在的空间位置坐标的计算,以及通过第一图像确定第一对象的第一特征点的空间坐标;以此类推,用户依序完成其他标记特征点,如右上角、右下角、左下角。slam模块则在后台进行空间位置的计算。

步骤6:slam模块同时收集imu数据

slam同时收集imu数据,以掌握智能手机在上述用户瞄准移动的过程中的6dof变化即获得空间位移数据,以用于辅助和精准计算终端的固定点的空间坐标点以及第一特征点的空间坐标点。

进一步地,在上述步骤5执行的同时,前置摄像头需要同步跟踪测量人眼相对于眼睛跟踪模块的相对位置信息,可以包括以下步骤7-步骤10:

步骤7:前置摄像头(frontcamera)跟踪人眼

前置摄像头(frontcamera)输出较高分辨率帧(highresolutionframe)或输出深度图(depthcamera),以用于后续进行用户眼睛的三维空间的相对位置的计算,而利用较高分辨率帧的原因在于,眼睛的识别相较于普通物体的识别精度要求更高。

步骤8:gpu计算用户眼睛相对于前置摄像头之间的相对位置信息

gpu利用前置摄像头采集的较高分辨率帧或者深度图,计算用户的相对于前置摄像头的视角向量,以最终计算得到双眼空间坐标。

步骤9:中央处理单元计算校准数据。

中央处理单元,或中央处理单元分离出去的数据校准计算模块收集slam采集的相关空间位置信息,并结合gpu计算得到的双眼空间坐标等信息后,最终计算确定出透视显示器、前置摄像头及后置摄像头三者之间的相对位置关系,生成最终的校准数据,也即是第一空间向量和第二空间向量。

步骤10:存储器存储上述校准数据

利用智能手机中的存储模块储存上述校准数据即第一空间向量和第二空间向量,以供智能手机中的ar引擎或app等使用。需要说明的是,该第一空间向量和第二空间向量只适用于终端处于第一姿态下使用,如果透视显示器、摄像模块以及眼睛跟踪模块中的任意两个机构之间的相对位置发生变化,则需要重新执行上述流程,计算确定新的第一空间向量和第二空间向量。

下面结合图10a-10c实例性的描述本申请中涉及的以一种终端的外部结构示意图。以终端为智能手机为例。

如图10a所示,图10a为本发明实施例提供的一种智能手机的结构示意图,该智能手机上设置有可旋转的透视显示器102,并且摄像模块103(如后置摄像头)可以跟随透视显示器102的旋转而转动,例如,当透视显示器102旋转打开后,背面是后置摄像头103,前面是眼睛跟踪模块104(如前置摄像头),以便于最大范围的覆盖观察者透过透视显示器所见的现实世界。

如图10b所示,图10b为本发明实施例提供的另一种智能手机的结构示意图,图10b和图10a的不同,在于图10b对应的智能手机的透视显示器在侧边,且可以为拉伸式也可以为旋转式,同理,摄像模块103也对应的为旋转式或者拉伸式,而眼睛跟踪模块则设置于智能手机正面的前置摄像头。如图10c所示,图10c为本发明实施例提供的图10b中的智能手机的透视显示器以及摄像模块的旋转效果图。

请参见图11,是本发明实施例提供的一种校准方法的流程示意图,可应用于上述图4和图6对应的终端中,下面将结合附图11从终端侧进行描述,该方法可以包括以下步骤s101-步骤s108。可选的,还可以包括步骤s101-步骤s103,和步骤s108-步骤s111。

步骤s101:通过所述摄像模块捕捉现实世界的第三图像,所述第三图像记录有观察者通过所述透视显示器可见的现实世界中的第一对象;

步骤s102:根据预设规则标记所述第三图像中的所述第一对象的特征点以生成第四图像,所述特征点包括所述第一特征点;

步骤s103:将所述第四图像投影到所述透视显示器的指定区域上,以指示所述观察者通过所述透视显示器上的对准标识,瞄准所述第一对象的特征点。

步骤s104:确定所述终端在第一位姿下,所述终端上的固定点在世界坐标系中的空间坐标a;其中,所述第一位姿为观察者通过所述透视显示器上的对准标识,瞄准现实世界中的第一对象的第一特征点时所述终端的第一位置和第一姿态;

步骤s105:根据所述空间坐标a和所述终端的机构参数确定所述终端在所述第一位姿下,所述摄像模块、所述对准标识以及所述眼睛跟踪模块的空间坐标b、c和d;

步骤s106:根据所述空间坐标b和第一测量信息确定所述第一特征点的的空间坐标e,以及根据所述空间坐标d和第二测量信息确定所述观察者的眼睛空间坐标f;

其中,所述第一测量信息包括所述终端在第一位姿下所述摄像模块捕捉的第一图像,所述第一图像记录有所述第一对象的第一特征点;所述第二测量信息包括所述终端在第一位姿下所述眼睛跟踪模块测量的相对位置信息,所述相对位置信息为所述观察者的眼睛在透过所述对准标识瞄准所述第一特征点时与所述眼睛跟踪模块的相对位置信息;

步骤s107:在夹角∠ecf满足预设条件的情况下,校准空间坐标b、c和d中的至少一个,所述预设条件至少包括夹角∠ecf不等于180°。

步骤s108:根据所述校准后的空间坐标b、c和d,确定所述终端在所述第一姿态下,所述对准标识与所述摄像模块之间的第一空间向量、和所述对准标识与所述眼睛跟踪模块之间的第二空间向量。

步骤s109:在所述终端处于第二位置和所述第一姿态下,通过所述摄像模块,捕捉现实世界的第二图像,所述第二图像记录有观察者通过所述透视显示器可见的现实世界中的第二对象;

步骤s110:基于所述第一空间向量和所述第二空间向量,计算叠加于所述第二对象上的虚拟对象的投影坐标;

步骤s111:根据所述投影坐标,将所述虚拟对象投影到所述透视显示器上进行增强现实。

需要说明的是,本发明实施例中所描述的校准方法中的具体流程以及执行主体终端中的相关模块的功能,可参见上述图4-图11中所述的发明实施例中的相关描述,此处不再赘述。

上述详细阐述了本发明实施例的方法,下面提供了本发明实施例的相关装置。

请参见图12,图12是本发明实施例提供的一种校准装置的结构示意图,该校准装置20应用于终端,所述终端包括:处理器,以及耦合于所述处理器的透视显示器、摄像模块和眼睛跟踪模块;装置20可以包括第一定位单元201、第二定位单元202、第三定位单元203和校准单元204,其中,各个单元的详细描述如下。

第一定位单元201,用于确定所述终端在第一位姿下,所述终端上的固定点在世界坐标系中的空间坐标a;其中,所述第一位姿为观察者通过所述透视显示器上的对准标识,瞄准现实世界中的第一对象的第一特征点时所述终端的第一位置和第一姿态;

第二定位单元202,用于根据所述空间坐标a和所述终端的机构参数确定所述终端在所述第一位姿下,所述摄像模块、所述对准标识以及所述眼睛跟踪模块的空间坐标b、c和d;

第三定位单元203,用于根据所述空间坐标b和第一测量信息确定所述第一特征点的的空间坐标e,以及根据所述空间坐标d和第二测量信息确定所述观察者的眼睛空间坐标f;其中,所述第一测量信息包括所述终端在第一位姿下所述摄像模块捕捉的第一图像,所述第一图像记录有现实世界中的所述第一对象的第一特征点;所述第二测量信息包括所述终端在第一位姿下所述眼睛跟踪模块测量的相对位置信息,所述相对位置信息为所述观察者的眼睛在瞄准所述第一特征点时与所述眼睛跟踪模块的相对位置信息;

校准单元204,用于在夹角∠ecf满足预设条件的情况下,校准空间坐标b、c和d中的至少一个,所述预设条件至少包括夹角∠ecf不等于180°。

在一种可能的实现方式中,基于校准后的空间坐标b、c和d确定的夹角∠e’c’f’大于所述夹角∠ecf,其中,所述e’为根据校准后的空间坐标b与所述第一测量信息确定得到的,所述c’为校准后的空间坐标c,所述f’为根据校准后的空间坐标d与所述第二测量信息确定得到的;所述校准后的空间坐标b、c和d为所述在夹角∠ecf满足预设条件的情况下,校准空间坐标b、c和d中的至少一个所得到的空间坐标b、c和d。

在一种可能的实现方式中,装置20还包括:

标定单元205,用于根据所述校准后的空间坐标b、c和d,确定所述终端在所述第一姿态下,所述对准标识与所述摄像模块之间的第一空间向量、和所述对准标识与所述眼睛跟踪模块之间的第二空间向量。

在一种可能的实现方式中,装置20还包括:

第一驱动单元206,用于在所述终端处于第二位置和所述第一姿态下,通过所述摄像模块,捕捉现实世界的第二图像,所述第二图像记录有观察者通过所述透视显示器可见的现实世界中的第二对象;

计算单元207,用于基于所述第一空间向量和所述第二空间向量,计算叠加于所述第二对象上的虚拟对象的投影坐标;

第一显示单元208,用于根据所述投影坐标,将所述虚拟对象投影到所述透视显示器上进行增强现实。

在一种可能的实现方式中,装置20还包括:

第二驱动单元209,用于在确定所述终端在第一位姿下,所述终端上的固定点在世界坐标系中的空间坐标a之前,通过所述摄像模块捕捉现实世界的第三图像,所述第三图像记录有观察者通过所述透视显示器可见的现实世界中的第一对象;

图像处理单元210,用于根据预设规则标记所述第三图像中的所述第一对象的特征点以生成第四图像,所述特征点包括所述第一特征点;

第二显示单元211,用于将所述第四图像投影到所述透视显示器的指定区域上,以指示所述观察者通过所述透视显示器上的对准标识,瞄准所述第一对象的特征点。

需要说明的是,本发明实施例中所描述的校准装置20中各功能单元的功能可参见上述图4或图6中所述的终端中的各个功能模块的相关描述,此处不再赘述。

如图13所示,图13是本发明实施例提供的另一种终端的结构示意图,该终端30包括至少一个处理器301,至少一个存储器302、至少一个通信接口303。此外,该终端还可以包括天线等通用部件,在此不再详述。

处理器301可以是通用中央处理器(cpu),微处理器,特定应用集成电路(application-specificintegratedcircuit,asic),或一个或多个用于控制以上方案程序执行的集成电路。

通信接口303,用于与其他设备或通信网络通信,如以太网,无线接入网(ran),核心网,无线局域网(wirelesslocalareanetworks,wlan)等。

存储器302可以是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。

其中,所述存储器302用于存储执行以上方案的应用程序代码,并由处理器301来控制执行。所述处理器301用于执行所述存储器302中存储的应用程序代码。

存储器302存储的代码可执行以上图11提供的校准方法,比如确定所述终端在第一位姿下,所述终端上的固定点在世界坐标系中的空间坐标a;其中,所述第一位姿为观察者通过所述透视显示器上的对准标识,瞄准现实世界中的第一对象的第一特征点时所述终端的第一位置和第一姿态;根据所述空间坐标a和所述终端的机构参数确定所述终端在所述第一位姿下,所述摄像模块、所述对准标识以及所述眼睛跟踪模块的空间坐标b、c和d;根据所述空间坐标b和第一测量信息确定所述第一特征点的的空间坐标e,以及根据所述空间坐标d和第二测量信息确定所述观察者的眼睛空间坐标f;其中,所述第一测量信息包括所述终端在第一位姿下所述摄像模块捕捉的第一图像,所述第一图像记录有所述第一对象的第一特征点;所述第二测量信息包括所述终端在第一位姿下所述眼睛跟踪模块测量的相对位置信息,所述相对位置信息为所述观察者的眼睛在透过所述对准标识瞄准所述第一特征点时与所述眼睛跟踪模块的相对位置信息;在夹角∠ecf满足预设条件的情况下,校准空间坐标b、c和d中的至少一个,所述预设条件至少包括夹角∠ecf不等于180°。

需要说明的是,本发明实施例中所描述的终端30中各功能单元的功能可参见上述图4或图6中所述的终端中的各个功能模块的相关描述,此处不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可能可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本申请各个实施例上述方法的全部或部分步骤。其中,而前述的存储介质可包括:u盘、移动硬盘、磁碟、光盘、只读存储器(read-onlymemory,缩写:rom)或者随机存取存储器(randomaccessmemory,缩写:ram)等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

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