虚拟现实场景下的输入方法和装置与流程

文档序号:11620157阅读:576来源:国知局
虚拟现实场景下的输入方法和装置与流程

本申请涉及计算机应用领域,尤其涉及一种虚拟现实场景下的输入方法和装置。



背景技术:

vr(virtualreality,虚拟现实)技术,是一种综合利用计算机图形系统和各种控制接口,在计算机上生成可交互的三维交互环境,面向用户提供沉浸感的技术。

为了提升用户与虚拟现实场景之间的交互性,在虚拟现实场景中通常会面向用户提供丰富的可操作的虚拟按键。用户可以在虚拟场景中,通过选中场景中提供的这些可操作按键,来触发相应的输入,与虚拟现实场景进行交互。



技术实现要素:

有鉴于此,本申请提供一种虚拟现实场景下的输入方法和装置。

具体地,本申请是通过如下技术方案实现的:

一种虚拟现实场景下的输入方法,所述方法包括:

在接收到启动输入的指令时,在虚拟现实场景中展示输入起点和若干虚拟按键,其中,所述输入起点与所述若干虚拟按键之间具有特定的位置关系,所述位置关系为所述输入起点至每个虚拟按键之间都存在一条或多条不被其他虚拟按键干扰的可用移动轨迹;

当确定关注焦点到达所述输入起点时,开启虚拟按键的输入检测;

当检测到所述关注焦点由所述输入起点出发,移动至首个虚拟按键时,确定该虚拟按键被用户输入,并结束本次虚拟按键的输入检测。

一种虚拟现实场景下的输入装置,所述装置包括:

按键展示单元,在接收到启动输入的指令时,在虚拟现实场景中展示输入起点和若干虚拟按键,其中,所述输入起点与所述若干虚拟按键之间具有特定的位置关系,所述位置关系为所述输入起点至每个虚拟按键之间都存在一条或多条不被其他虚拟按键干扰的可用移动轨迹;

开启检测单元,当确定关注焦点到达所述输入起点时,开启虚拟按键的输入检测;

按键输入单元,当检测到所述关注焦点由所述输入起点出发,移动至首个虚拟按键时,确定该虚拟按键被用户输入,并结束本次虚拟按键的输入检测。

由以上描述可以看出,本申请可以在虚拟现实场景中展示具有特定的位置关系的输入起点和若干虚拟按键,并可以指导用户控制关注焦点从输入起点出发,当检测到所述关注焦点由所述输入起点出发移动至首个虚拟按键时,确定该虚拟按键被用户输入。整个过程用户操作简单,且识别的准确率较高,不会引起误判,提升用户在虚拟现实场景中的交互体验。

附图说明

图1是相关技术中的一种虚拟键盘示意图。

图2是本申请一实施例示出的一种虚拟现实场景下的输入方法的流程示意图。

图3是本申请一实施例示出的一种输入起点与虚拟按键的位置关系示意图。

图4是本申请一实施例示出的另一种输入起点与虚拟按键的位置关系示意图。

图5是本申请一实施例示出的另一种输入起点与虚拟按键的位置关系示意图。

图6是本申请一实施例示出的一种关注焦点的移动轨迹的示意图。

图7是本申请一实施例示出的一种用于虚拟现实场景下的输入装置的一硬件架构图。

图8是本申请一实施例示出的一种虚拟现实场景下的输入装置的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

在相关技术中,在电脑上用户可以通过鼠标控制光标移动和点击虚拟键盘上的按键,鼠标光标相当于用户在显示页面中的关注焦点,通过对该关注焦点的移动,选取用户关注的虚拟按键,并点击该虚拟按键,完成操控。在触控手机上用户可以通过触摸点击虚拟键盘上的按键,在触控方案中,用户确定关注的虚拟按键后,可以通过手指触控该虚拟按键,完成操控。

然而,在虚拟现实场景中,由于用户需要在空间内进行移动,因而无法提供稳定的鼠标操作平台,导致鼠标无法适用于vr环境。另一方面,用户由于佩戴vr眼镜,无法看到自己双手的位置,因而也无法直接通过手指进行选择和点击上述虚拟键盘上的虚拟按键。

在虚拟现实场景中,vr眼镜可以通过对用户的头部运动或视线焦点进行监测,确定出用户的关注焦点,使得用户可以通过头部运动或视线移动,控制关注焦点的位移,以实现对虚拟按键的选择。

目前,这样控制方式可以分为“移动”和“点击”两个阶段。主要原理为:当头部或视线焦点处于运动状态时,可判定为“移动”阶段,当停止运动的时长达到预设时长时,可判定为“点击”。这样的实现方式对于用户的操控熟练度具有较高要求,两个阶段之间的区分并不十分明显,容易造成对“移动”和“点击”的误判。

请参考图1所示的虚拟键盘,假定用户需要输入“1938”,那么关注焦点的移动路径应当为下述的路径①→路径②→路径③。然而,路径①需要途径虚拟按键1、5、9,如果用户的移动出现速度较慢、不流畅等问题时,例如在途经5时存在短暂停留,那么就可能识别为用户“确认”输入5,导致误判。类似地,路径②需要途经无关的数字6,而路径③需要途经无关的数字6、5等。

有鉴于此,本申请提出一种虚拟现实场景下的输入方案,可以在虚拟现实场景中展示具有特定的位置关系的输入起点和若干虚拟按键,并可以指导用户控制关注焦点从输入起点出发,当检测到所述关注焦点由所述输入起点出发移动至首个虚拟按键时,确定该虚拟按键被用户输入。整个过程用户操作简单,且识别的准确率较高,不会引起误判,提升用户在虚拟现实场景中的交互体验。

图2是本申请一实施例示出的一种虚拟现实场景下的输入方法的流程示意图。

请参考图2,所述虚拟现实场景下的输入方法可以应用与vr客户端,所述vr客户端,是指基于vr技术开发的可以面向用户提供三维沉浸体验的客户端软件;比如,基于vr的app;上述vr客户端,可以将开发人员开发出的虚拟现实场景模型,通过与vr客户端对接的vr终端,向用户输出,从而使得佩戴vr终端的用户,能够在虚拟现实场景中得到三维沉浸体验。所述虚拟现实场景下的输入方法可以包括以下步骤:

步骤201,在接收到启动输入的指令时,在虚拟现实场景中展示输入起点和若干虚拟按键,所述输入起点与所述若干虚拟按键之间具有特定的位置关系,所述位置关系为所述输入起点至每个虚拟按键之间都存在一条或多条不被其他虚拟按键干扰的可用移动轨迹。

在本实施例中,所述启动输入的指令通常由用户触发,比如:用户可以通过预设的物理按键、肢体动作、语音等方式输入所述启动输入的指令。在接收到启动输入的指令时,可以在当前虚拟现实场景中展示输入起点和若干虚拟按键。其中,所述虚拟按键的形状可以由开发人员进行设置,比如:圆形或者方形等。所述输入起点可以为一条直线、一个点,所述输入起点也可以为一个圆形区域,该圆形区域中的任意一点和所述若干虚拟按键之间都需要满足所述特定的位置关系。

在本实施例中,为避免用户误操作所导致的误判问题,所述特定的位置关系可为所述输入起点至每个虚拟按键之间都存在一条或多条不被其他虚拟按键干扰的可用移动轨迹。

步骤202,当确定关注焦点到达所述输入起点时,开启虚拟按键的输入检测。

步骤203,当检测到所述关注焦点由所述输入起点出发,移动至首个虚拟按键时,确定该虚拟按键被用户输入,并结束本次虚拟按键的输入检测。

在本实施例中,用户可以控制关注焦点由所述输入起点出发,移动至所要输入的虚拟按键所在的位置区域,以实现对该虚拟按键的输入。无需用户长时间的将关注焦点停留在虚拟按键上即可准确的判断用户的动作意图,操作简单,输入速度快,且识别的准确率较高,提升用户在虚拟现实场景中的交互体验。

以下通过vr场景模型创建,关注焦点的位移跟踪,虚拟按键的输入三个阶段,对本申请的技术方案进行详细描述。

一、vr场景模型创建

在本例中,开发人员可以通过特定的建模工具,完成vr场景模型的创建。所述建模工具,在本例中不进行特别的限定;例如,开发人员可以使用诸如unity、3dsmax、photoshop等较为成熟的建模工具完成vr场景模型的创建。

其中,开发人员在通过建模工具创建vr场景模型的过程中,该vr场景模型,以及该vr场景的纹理贴图,都可来源于现实生活中的真实场景;例如,可以事先通过摄像,采集材质纹理贴图,和真实场景的平面模型,然后通过photoshop或3dmax等建模工具,来处理纹理和构建真实场景的三维模型,然后导入到unity3d平台(简称u3d),在u3d平台中通过音效、图形界面、插件、灯光等多个维度进行画面渲染,然后编写交互代码,最后完成vr场景模型的建模。

在本例中,开发人员除了需要创建vr场景模型以外,为了使用户能够在vr场景中更好的完成交互,还可以通过所述建模工具,创建输入起点与若干虚拟按键,所述虚拟按键可以包括:用于输入数字的数字按键,用于输入字母的键盘类按键等。所述虚拟按键的具体形态,在本例中不进行特别限定,在实际应用中,可以基于用户体验进行个性化定制。可选的,所述若干虚拟按键之间可以具有适当的空隙,以避免误判。

在本例中,当开发人员完成vr场景模型以及所述虚拟按键和输入起点的建模后,所述vr客户端可以将所述vr场景模型通过与所述vr客户端对接的vr终端(比如vr头盔),向用户输出。在接收到来自用户的启动输入的指令时,可以在所述vr场景中展示输入起点和所述虚拟按键。

二、关注焦点的位移跟踪

在本例中,在vr客户端输出的vr场景中,可以默认在用户视野中显示一个关注焦点(也称之为视觉焦点)。用户在佩戴vr终端在vr场景中进行沉浸体验的过程中,可以通过头部或者手部的姿态来控制vr场景中的关注焦点的位移,与vr场景进行交互。

vr客户端可以通过vr终端搭载的传感硬件,来跟踪用户的头部或者手部的位移,由传感硬件来实时的采集用户在佩戴vr终端时头部或者手部的位移数据。

其中,所述传感硬件,在实际应用中可以包括角速度传感器,加速度传感器,重力传感器等。

所述传感硬件在采集到用户的头部或者手部的位移数据后,可以实时的将采集到的位移数据回传给vr客户端,vr客户端在接收到传感硬件回传的位移数据后,可以根据该位移数据,来控制vr场景中输出的关注焦点同步的进行位移。

例如,在实现时,vr终端可以基于接收到的位移数据,计算用户的头部和手部相对于vr场景中的x轴和y轴的偏移量,然后基于计算出的偏移量来实时的控制关注焦点的位移。

在本例中,除了可以通过vr终端搭载的传感硬件,跟踪用户的头部或者手部的位移,控制关注焦点同步的进行位移以外,vr客户端还可以在控制关注焦点与用户的头部和手部同步的进行位移的过程中,实时的跟踪该关注焦点的位移,并实时的记录关注焦点在vr场景中的坐标位置,然后根据实时记录的该关注焦点的坐标位置,来生成关注焦点在vr场景中的位移轨迹。

三、虚拟按键的输入

在本例中,用户可以通过控制关注焦点的移动轨迹从vr场景中的输入起点出发,经由一条可用移动轨迹,移动至该可用移动轨迹对应的虚拟按键所在的区域,来触发该虚拟按键的输入。

在本例中,vr客户端展示输入起点和若干虚拟按键后,可以实时进行关注焦点的位移跟踪,并在确定关注焦点到达所述输入起点时,开启虚拟按键的输入检测,并在检测到所述关注焦点由所述输入起点移动至首个虚拟按键所在的位置区域时,可确定该虚拟按键被用户选中,并结束本次虚拟按键的输入检测。在未开启虚拟按键的输入检测时,即便用户控制关注焦点移动至某个虚拟按键,也不会触发该虚拟按键的输入。换言之,本例可关注焦点的位移跟踪是实时进行的,而虚拟按键的输入检测是有触发机制的,不是实时进行检测。举例来说,假设用户控制关注焦点经由输入起点移动至虚拟按键0时,则确定0被输入。如果用户继续控制关注焦点由0移动至1,而由于在0被选中后,虚拟按键的输入检测已经结束,所以不会触发1的输入。只有当用户控制关注焦点重新移动至输入起点之后,才会开启虚拟按键的输入检测,如果所述关注焦点经所述输入起点后又继续移动到1,才会确认1被用户输入。

在实际应用中,用户可控制关注焦点从输入起点出发,经由曲线移动至某一虚拟按键,以实现该虚拟按键的输入。用户也可以控制关注焦点从输入起点出发,经由直线移动至该虚拟按键,以实现该虚拟按键的输入,即所述输入起点到所述虚拟按键之间的不被其他按键干扰的可用移动轨迹可以是直线,也可以是曲线,本申请对此不作特殊限制。

在本例中,为了提示用户虚拟按键的输入方法,在接收到启动输入的指令时,还可用在虚拟现实场景中展示与所述输入方法相关的动画或辅助线,以提示用户如何进行虚拟按键的输入。可选的,由于两点之间线段距离最短,所述动画或辅助线可以提示用户控制关注焦点从输入起点出发,沿直线将关注焦点移动至某一虚拟按键。具体地,虚拟现实场景中所述输入原点与所述若干虚拟按键之间的距离通常不会太远,用户可以通过轻微的肢体动作即可控制关注焦点从所述输入起点出发,以直线或近乎直线的方式移动到某一虚拟按键所在的位置区域,以实现对该虚拟按键的输入。其中,所述动画和辅助线的创建方式也可以参照前述vr场景模型创建,本申请在此不在一一赘述。

在本例中,为了让用户获知关注焦点是否已到达输入起点,可以在关注焦点到达输入起点时,更改关注焦点的展示效果。比如:可以默认关注焦点为黑色,当关注焦点到达输入起点时,可以将关注焦点调为绿色,以提示用户可以进行虚拟按键的输入,还可以在虚拟按键成功输入后,再将关注焦点的颜色调回黑色等。当然,在实际应用中,所述展示效果还可以为关注焦点的形状等其他展示特性,本申请对此不作特殊限制。

下面结合输入起点与虚拟按键的不同位置关系来描述虚拟按键的输入。

1)若干虚拟按键沿直线排列

请参考图3所示的输入起点与虚拟按键的位置关系。所述若干虚拟按键可沿直线排列成一行。为使输入起点与所述若干虚拟按键之间具有所述特定的位置关系,所述输入起点可以位于所述若干虚拟按键所组成的位置区域的两侧,确保所述输入起点与每个虚拟按键之间都存在一条或者多个不被其他虚拟按键干扰的可用移动轨迹。比如,如3所示出的路径①是输入起点至虚拟按键1的可用移动轨迹,路径②是输入起点至虚拟按键9的可用移动轨迹等。当用户想要输入1时,可以控制关注焦点从所述输入起点出发,沿路径1移动至虚拟按键1。

2)若干虚拟按键沿弧线排列

请参考图4所示的输入起点与虚拟按键的位置关系。所述若干虚拟按键可沿弧线排列。为使输入起点与所述若干虚拟按键之间具有所述特定的位置关系,所述输入起点可以位于所述若干虚拟按键所组成的弧形区域的内侧,确保所述输入起点与每个虚拟按键之间都存在一条或者多个不被其他虚拟按键干扰的可用移动轨迹。比如,如4所示出的路径①是输入起点至虚拟按键1的可用移动轨迹,路径②是输入起点至虚拟按键9的可用移动轨迹等。当用户想要输入1时,可以控制关注焦点从所述输入起点出发,沿路径1移动至虚拟按键1。

3)若干虚拟按键呈圆环形排列

请参考图5所示的输入起点与虚拟按键的位置关系。所述若干虚拟按键可呈圆环形排列。为使输入起点与所述若干虚拟按键之间具有所述特定的位置关系,所述输入起点可以位于所述若干虚拟按键所组成的圆环形内圈的内侧,确保所述输入起点与每个虚拟按键之间都存在一条或者多个不被其他虚拟按键干扰的可用移动轨迹。比如,如4所示出的路径①是输入起点至虚拟按键1的可用移动轨迹,路径②是输入起点至虚拟按键9的可用移动轨迹等。当用户想要输入1时,可以控制关注焦点从所述输入起点出发,沿路径1移动至虚拟按键1。

可选的,在另一个例子中,由于用户在实际操作中可能会出现误差,在没有将关注焦点移动至目标虚拟按键所在的位置区域时,就误认为已经完成目标虚拟按键的输入。在这种情况下,为了不影响用户的使用体验,可允许用户有一定的操作误差。

具体地,当检测到关注焦点由所述输入起点出发,但未移动至任一虚拟按键所在的位置区域就停止移动或改变方向移动时,采集本次虚拟按键的输入检测过程中关注焦点的移动轨迹,并可以在所述关注焦点的移动轨迹满足预设条件时,可以确定一个目标虚拟按键被用户输入,并结束本次虚拟按键的输入检测。在实际实现中,针对每个虚拟按键,可以预先在所述虚拟按键所在的位置区域中选定一个参考点,为便于描述可以记为点a,点a可以为所述虚拟按键所在位置区域的中心点等。此外,可以将输入起点记为点o,将采集到所述关注焦点的移动轨迹上的任意一点记为点p,将关注焦点停止移动或反向移动时所述关注焦点所在的点记为点b。

请参考图6所示的关注焦点的移动轨迹的示意图。其中,点o为输入起点,方形区域示出的是虚拟按键9,点a为预先在虚拟按键9中选中的参考点,ob为关注焦点的实际移动轨迹,点b为关注焦点从输入起点出发后停止移动时的点,点p为关注焦点的移动轨迹上任意一点。

上述预设条件可以包括:

(1)p到预设线段oa所在直线的距离在预设的第一阈值区间内。

在本例中,在计算p到预设线段oa所在直线的距离时,可以基于点p做一条到线段oa所在直线的垂线,假设交点为m(未图示),则pm的长度就是p到预设线段oa所在直线的距离。其中,所述第一阈值区间可以由开发人员进行设置,确保p点与线段oa所在的直线偏离不远即可。

(2)上的投影长度在预设的第二阈值区间内。

在本例中,所述投影长度为线段om的长度,所述第二阈值区间也可以由开发人员进行设置,比如:[0,(1+d)×|oa|],其中,|oa|表示线段oa的长度,d的取值可以为0.1。

(3)上的投影长度在预设第三阈值区间内。

在本例中,请继续参考图6,上的投影长度为线段on的长度,所述第三阈值区间也可以由开发人员进行设置,比如:[k×|oa|,(1+d)×|oa|],其中,k的取值可以为0.8,d的取值可以为0.1。

在本例中,当所述关注焦点的移动轨迹满足上述三个条件时,可以确定虚拟按键9被用户输入,并结束本次虚拟按键的输入检测。在实际实现中,可以分别计算所述关注焦点的移动轨迹与每个虚拟按键的参考点是否判断上述条件,并将满足上述条件的虚拟按键作为目标虚拟按键输入。此外,上述判断方式对圆形排布的虚拟键盘尤为重要,可以有效避免误判。

当然,在实际应用中,也可以采用上述预设条件来检测用户的关注焦点是否由输入起点出发移动至某个虚拟按键,即可以在开启虚拟按键的输入检测后,采集关注焦点的移动轨迹,并可实时判断该移动轨迹与各虚拟按键是否满足上述预设条件,当该移动轨迹与某个虚拟按键满足上述预设条件时,可以确认该虚拟按键被用户输入。

与前述虚拟现实场景下的输入方法的实施例相对应,本申请还提供了虚拟现实场景下的输入装置的实施例。

本申请虚拟现实场景下的输入装置的实施例可以应用在装载有虚拟现实客户端的终端设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在终端设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图7所示,为本申请虚拟现实场景下的输入装置所在终端设备的一种硬件结构图,除了图7所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的终端设备通常根据该终端设备的实际功能,还可以包括其他硬件,对此不再赘述。

图8是本申请一实施例示出的一种虚拟现实场景下的输入装置的框图。

请参考图8,所述虚拟现实场景下的输入装置700可以应用在图7所示的终端设备中装载的虚拟现实客户端中,包括有:按键展示单元701、开启检测单元702、按键输入单元703、轨迹采集单元704、辅助展示单元705以及效果更改单元706。

其中,按键展示单元701,在接收到启动输入的指令时,在虚拟现实场景中展示输入起点和若干虚拟按键,其中,所述输入起点与所述若干虚拟按键之间具有特定的位置关系,所述位置关系为所述输入起点至每个虚拟按键之间都存在一条或多条不被其他虚拟按键干扰的可用移动轨迹;

开启检测单元702,当确定关注焦点到达所述输入起点时,开启虚拟按键的输入检测;

按键输入单元703,当检测到所述关注焦点由所述输入起点出发,移动至首个虚拟按键时,确定该虚拟按键被用户输入,并结束本次虚拟按键的输入检测。

轨迹采集单元704,当检测到关注焦点由所述输入起点出发,但未移动至任一虚拟按键所在的位置区域就停止移动或改变方向移动时,采集本次虚拟按键的输入检测过程中关注焦点的移动轨迹;

所述按键输入单元703,进一步当所述关注焦点的移动轨迹满足如下条件时,确定目标虚拟按键被用户输入,并结束本次虚拟按键的输入检测:

所述关注焦点的移动轨迹中任意一点p到预设线段oa所在直线的距离在预设的第一阈值区间内,且上的投影长度在预设的第二阈值区间内,且上的投影长度在预设第三阈值区间内;

其中,o为输入起点,a为从所述目标虚拟按键所在位置区域中预先选取的点,b为确定关注焦点停止移动或反向移动时所述关注焦点所在的点。

可选的,当所述若干虚拟按键沿直线排列时,所述输入起点位于所述若干虚拟按键所组成的长条形区域的两侧。

可选的,当所述若干虚拟按键沿弧线排列时,所述输入起点位于所述若干虚拟按键所组成的弧形区域的内侧。

可选的,当所述若干虚拟按键呈圆环形排列时,所述输入起点位于所述若干虚拟按键所组成的圆环形内圈的内侧。

辅助展示单元705,在接收到启动输入的指令时,在虚拟现实场景中展示动画或辅助线,以提示用户何如输入虚拟按键。

效果更改单元706,当开启虚拟按键的输入检测时,更改关注焦点的展示效果。

可选的,所述若干虚拟按键之间具有空隙。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

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