控制应用运行的方法、装置及头戴式显示设备与流程

文档序号:13281514阅读:271来源:国知局
控制应用运行的方法、装置及头戴式显示设备与流程

本发明涉及控制视频播放的技术领域,更具体地,本发明涉及一种在虚拟现实场景、增强显示场景、混合现实场景或者影像现实场景中控制应用运行的方法和控制应用运行的装置,本发明还涉及一种头戴式显示设备。



背景技术:

目前,围绕虚拟现实(virtualreality,简称为vr)的各种技术得到了快速发展,这些技术除了vr之外,还包括增强现实(augmentedreality,简称为ar)、混合现实(mixreality,简称为mr)、影像现实(cinematicreality,简称为cr)等等。

头戴式显示设备作为这些技术应用的载体,配合软件应用可以进行视觉体验,例如配合视频播放器可以用于观看视频,这些视频播放器包括播放2d视频片源的2d视频播放器和播放3d视频片源的3d播放器。以vr技术和视频播放为例,一些视频播放器提供有场景建模,进而能够通过搭配不同场景形成虚拟现实播放器或虚拟现实应用,该场景可以包括电影院场景、室内场景、室外沙滩场景、宇宙场景、太空船场景等等。因此,用户在视频播放时很可能去看周围的场景,或者与场景中的物体互动,从而出现视频虽然一直在播放,但用户的视线根本没有在观看视频的情况。另外,在一位用户摘下头戴式显示设备给他人用户继续观看视频的情况下,也会出现用户的视线根本没有在观看视频的时段。在该些情况下,如果用户希望观看被错过的视频内容,则需要通过快退等操作使视频播放器从选择的回退位置开始继续播放视频,该种操作对于头戴式显示设备的用户而言比较繁琐,降低了用户通过头戴式显示设备观看视频的体验。



技术实现要素:

本发明实施例的一个目的是提供一种例如在虚拟现实场景里控制软件应用运行的新的技术方案。

根据本发明的第一方面,提供了一种在场景中控制应用运行的方法,所述场景包括虚拟现实场景、增强现实场景、混合现实场景或者影像现实场景,所述方法包括:

获取被启动的软件应用的画面所在的位置区域;

确定视觉焦点的当前位置坐标;

根据所述视觉焦点的当前位置坐标,判断所述视觉焦点是否超出所述位置区域;

在所述视觉焦点超出所述位置区域的情况下,通知所述软件应用暂停当前运行进程。

可选的是,所述方法还包括:

在通知所述软件应用暂停当前运行进程之后,根据所述视觉焦点的当前位置坐标,判断所述视觉焦点是否回到所述位置区域内;

在所述视觉焦点回到所述位置区域内的情况下,通知所述软件应用继续运行被暂停的进程。

可选的是,所述方法还包括:

控制显示所述软件应用的显示装置在所述当前位置坐标处显示代表所述视觉焦点的光标。

可选的是,所述确定用户的视觉焦点的当前位置坐标包括:

获取传感器装置采集到的表示头戴式显示设备的运动姿态的运动数据;

根据所述运动数据确定所述视觉焦点的当前位置坐标。

可选的是,所述获取视觉焦点的当前位置坐标包括:

获取用户眼球的运动数据;

根据所述运动数据确定所述视觉焦点的当前位置坐标。

根据本发明的第二方面,提供了一种在场景中控制应用运行的装置,所述场景包括虚拟现实场景、增强现实场景、混合现实场景或者影像现实场景,所述装置包括:

画面位置获取模块,用于获取被启动的软件应用的画面所在的位置区域;

焦点定位模块,用于确定视觉焦点的当前位置坐标;

暂停判断模块,用于根据所述视觉焦点的当前位置坐标,判断所述视觉焦点是否超出所述位置区域;以及,

暂停通知模块,用于根据所述视觉焦点超出所述位置区域的判断结果,通知所述软件应用暂停当前运行进程。

可选的是,所述装置还包括:

运行判断模块,用于在所述暂停通知模块通知所述软件应用暂停当前运行进程之后,根据所述视觉焦点的当前位置坐标,判断所述视觉焦点是否回到所述位置区域内;以及,

运行通知模块,用于根据所述视觉焦点回到所述位置区域的判断结果,通知所述软件应用继续运行被暂停的进程。

可选的是,所述焦点定位模块包括:

运动数据获取单元,用于获取传感器装置采集到的表示头戴式显示设备的运动姿态的运动数据,或者用于获取用户眼球的运动数据;以及,

定位单元,用于根据所述运动数据确定所述视觉焦点的当前位置坐标。

根据本发明的第三方面,提供了一种在场景中控制应用运行的装置,所述场景包括虚拟现实场景、增强现实场景、混合现实场景或者影像现实场景,所述装置包括存储器和处理器,所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行根据本发明的第一方面所述的方法。

根据本发明的第四方面,提供了一种头戴式显示设备,包括显示装置、及根据本发明的第二方面或者根据本发明的第三方面所述的装置,所述显示装置用于显示被启动的软件应用的画面。

本发明的一个有益效果在于,本发明的方法、装置及头戴式显示设备设置了代表用户视线方向的视觉焦点,并通过判断该视觉焦点是否位于软件应用的画面所在的位置区域内,确定用户的视线是否聚焦在该软件应用的画面上,进而根据该判断结果通知软件应用自动暂停处理当前运行进程,以保证用户不会因为观看周围的场景、或者与场景中的物体互动、或者摘下头戴式显示设备给他人继续观看而导致错过软件应用的运行内容,提升了用户体验。

通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。

附图说明

被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。

图1为根据本发明的头戴式显示设备的坐标轴及运动姿态的定义。

图2为根据本发明实施例的控制应用运行的方法的流程示意图;

图3为根据本发明另一实施例的控制应用运行的方法的流程示意图;

图4为图3所示实施例的一种具体例子的流程示意图;

图5为根据本发明实施例的控制应用运行的装置的原理框图;

图6为根据本发明另一实施例的控制应用运行的装置的原理框图;

图7为根据本发明实施例的控制应用运行的装置的一种硬件结构的原理框图。

图8为根据本发明实施例的头戴式显示设备的原理框图。

具体实施方式

现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。

在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

图2为根据本发明实施例的在场景中控制应用运行的方法的流程示意图。

该场景可以是虚拟现实场景、增强现实场景、混合现实场景或者影像现实场景。

下面以虚拟现实应用提供的虚拟现实场景为例详细说明本发明的方法。

根据图2所示,本发明的方法包括如下步骤:

步骤s210,获取被启动的软件应用的画面所在的位置区域。

该软件应用例如是视频播放器、图片播放器等。

该视频播放器可以被设置为用于播放3d视频源的视频文件和/或2d视频源的视频文件。该视频源可以是本地视频源,也可以是在线视频源。

该视频播放器可以但不局限于通过unity3d、opengl、java、c++开发。

该视频播放器可以集成在虚拟现实应用中,也可以作为第三方应用程序供虚拟现实应用调用。

该虚拟现实应用可以但不局限于是通过unity3d、opengl开发的应用。

该虚拟现实场景可以但不局限于通过天空盒子、天空球、模型渲染等场景设计方式实现。

在软件应用被启动后,虚拟现实应用将记录软件应用的画面所在的位置区域。

因此,步骤s210可以具体为:获取虚拟现实应用在启动软件应用视时记录的该软件应用的画面所在的位置区域。

以虚拟现实应用中的电影院场景为例,视频播放器的画面所在的位置区域即为影院屏幕所在的位置区域。

在位置区域可以简单地通过画面的两个对角点的位置坐标限定。

步骤s220,确定视觉焦点的当前位置坐标。

视觉焦点为代表视线方向的位置变量。

该步骤s220中确定视觉焦点的当前位置坐标可以进一步包括:

步骤s221a,获取传感器装置采集到的表示头戴式显示设备的运动姿态的运动数据。

为了表示头戴式显示设备的运动姿态,该运动数据例如可以包括前后倾斜(pitch)运动数据、左右倾斜(roll)运动数据和左右摇摆(yaw)运动数据。

该传感器装置可以为头戴式显示设备的组成部分,其可以包括方向传感器和陀螺仪传感器中的至少一种。

该方向传感器也被称之为o-sensor,用于采集头戴式显示设备角度数据,分别为azimuth、pitch和roll。azimuth代表方位,返回水平时磁北极和y轴的夹角,pitch代表x轴和水平面的夹角,roll代表y轴和水平面的夹角,其中,头戴式显示设备的x轴、y轴、z轴、pitch、roll、yaw的定义请见图1。

陀螺仪传感器可以是三轴陀螺仪传感器、六轴陀螺仪传感器或者九轴陀螺仪传感器。

三轴陀螺仪传感器用于感应roll、pitch、yaw的全方位动态信息。

六轴陀螺仪传感器是指将三轴加速度计和三轴陀螺仪合在一起的结构。其中,三轴加速度计用于感应沿x轴、y轴和z轴方向的加速度信息。

九轴陀螺仪传感器也被称之为九轴惯性传感器,是由三轴陀螺仪、三轴加速度计和三轴磁力计组成。磁力计可用于测试磁场强度和方向,定位设备的方位,可以测量出当前设备与东南西北四个方向上的夹角。

该传感器装置也可以包括相对头戴式显示设备外置的传感器,例如红外摄像头、激光摄像头或者超声波装置等,对应地,头戴式显示设备上安装有与该外置的传感器对应的发送装置,以通过发送装置发送信号至对应的外置传感器来获取头戴式显示设备的姿态信息。

步骤s222a,根据步骤s221a获取到的运动数据确定视觉焦点的当前位置坐标。

由于在使用头戴式显示设备时,头戴式显示设备跟随用户头部动作,因此,头戴显示设备的运动姿态将代表用户头部的运动姿态,而用户头部的运动姿态决定了用户的视线方向,这说明上述运动数据与视觉焦点的当前位置坐标具有映射关系。

具体地,可预先存储反映运动数据与视觉焦点的当前位置坐标之间的映射关系的对照表,并通过查找对照表确定视觉焦点的当前位置坐标。

该步骤s220中确定视觉焦点的当前位置坐标也可以进一步包括:

步骤s221b,获取用户眼球的运动数据。

该步骤s221b中,可以利用现有的眼球追踪技术获取用户眼球的运动数据。

由于用户眼球位置决定了用户的视线方向,这说明眼球的运动数据与视觉焦点的当前位置坐标具有映射关系。

步骤s222b,根据步骤s221b获取到的运动数据确定视觉焦点的当前位置坐标。

以上步骤s220可以按照设定的采样周期进行,也可以根据读取运动数据的中断请求等进行,以实时更新视觉焦点的当前位置坐标。

步骤s230,根据在步骤s220中确定的视觉焦点的当前位置坐标,判断视觉焦点是否超出画面所在的位置区域,如是,则执行步骤s240,如否则可以回到步骤s220确定视觉焦点的更新后的当前位置坐标。

步骤s240,通知软件应用暂停当前运行进程。

在软件应用是视频播放器的实施例中,例如是暂停视频播放器播放当前视频文件。

这样,在用户观看虚拟现实场景、或者与虚拟现实场景中的物体互动、或者摘下头戴式显示设备给其他用户继续观看时,虚拟现实应用能够根据视觉焦点的当前位置坐标判断出用户的视线是否在软件应用的画面上,并根据否定的判断结果通知软件应用暂停当前运行进程,进而实现了软件应用的自动暂停控制,保证用户不会错过例如是视频内容的运行内容。

图3是根据本发明另一实施例的在场景中控制应用运行的方法的流程示意图。

根据图3所示,该实施例在上述步骤s240的通知所述软件应用暂停当前运行进程之后,还执行以下步骤s310。

步骤s310,根据视觉焦点的当前位置坐标,判断视觉焦点是否回到位置区域内,如是,则执行步骤s320,如否,则继续执行步骤s310。

步骤s320,通知软件应用继续被暂停的进程。之后,继续执行上述步骤s230。

根据该实施例,本发明方法可以在用户的视线回到软件应用的画面上时,自动控制软件应用从步骤s240对应的暂停位置开始继续被暂停的进程,例如继续播放视频文件,进一步提升了用户体验。

在本发明的另外的实施例中,在上述步骤s240之后,也可以设置为根据输入的开始指令继续被暂停的进程,这例如是通过手柄或者头戴式显示设备的按键输入开始指令。

对应图3所示的实施例,图4非限制性地给出了一个例子的流程示意图。

在该例子中,本发明方法可以通过以下步骤实施:

步骤s410,获取被启动的视频播放器的画面所在的位置区域。

步骤s420,获取传感器装置采集到的表示头戴式显示设备的运动姿态的运动数据。

步骤s430,根据获取到的运动数据确定视觉焦点的当前位置坐标。

步骤s440,判断视频播放器是否处于播放状态,如是,则执行步骤s450,如否,则执行步骤s470。

这可以根据虚拟现实应用向视频播放器发出的暂停播放视频文件和继续播放视频文件的通知确定。

例如,设置标志位表示视频播放器的播放状态,并设定标志位等于1代表视频播放器处于播放状态,及标志位等于0代表视频播放器处于暂停状态。在启动视频播放器后,直接设置该标志位等于1,并在通知视频播放器暂停播放视频文件后,将该标志位从1修改为0,及在通知视频播放器继续播放视频文件后,将该标志位从0修改为1。

这样,在该步骤s440,便可以根据标志位的值判定视频播放器是否处于播放状态。

步骤s450,根据视觉焦点的当前位置坐标,判断所述视觉焦点是否超出所述位置区域,如是,则执行步骤s460,如否,则回到步骤s420,以等待对运动数据进行下一次采样。

步骤s460,通知所述视频播放器暂停播放视频文件,并回到步骤s420,以等待对运动数据进行下一次采样。

步骤s470,根据视觉焦点的当前位置坐标,判断所述视觉焦点是否回到所述位置区域,如是,则执行步骤s480,如否,则回到步骤s420,以等待对运动数据进行下一次采样。

步骤s480,通知所述视频播放器继续播放视频文件,并回到步骤s420,以等待对运动数据进行下一次采样。

本发明方法还可以进一步包括:控制用于显示软件应用的显示装置在视觉焦点的当前位置坐标处显示代表所述视觉焦点的光标。这样,可以通过显示的光标指导用户通过头部动作进行设定的操作控制,例如,通过头部运动将光标移动至视频播放器的播放按钮上,并使得光标在播放按钮上停留设定时间的方式输入上述播放指令等。

该光标可以被显示为十字光标、点光标等。

图5是根据本发明实施例的在场景中控制应用运行的装置的原理框图。

该场景同样可以是虚拟现实场景、增强现实场景、混合现实场景或者影像现实场景。

根据图5所示,该装置包括画面位置获取模块510、焦点定位模块520、暂停判断模块530和暂停通知模块540。

该画面位置获取模块510用于获取被启动的软件应用的画面所在的位置区域。

该焦点定位模块520用于确定视觉焦点的当前位置坐标。

该暂停判断模块530用于根据所述视觉焦点的当前位置坐标,判断所述视觉焦点是否超出所述位置区域。

该暂停通知模块540用于根据所述视觉焦点超出所述位置区域的判断结果,通知所述软件应用暂停当前运行进程。

该焦点定位模块520可以进一步包括运动数据获取单元和定位单元(图中未示出)。该运动数据获取单元用于获取传感器装置采集到的表示头戴式显示设备的运动姿态的运动数据,或者用于获取用户眼球的运动数据。该定位单元用于根据运动数据获取单元获取到的运动数据确定所述视觉焦点的当前位置坐标。

图6是根据本发明另一实施例的在场景中控制应用运行的装置的原理框图。

根据图6所示,本发明的装置还可以进一步包括运行判断模块610和运行通知模块620。

该运行判断模块610用于在暂停通知模块550通知软件应用暂停当前运行进程之后,根据所述视觉焦点的当前位置坐标,判断所述视觉焦点是否回到所述位置区域内。

该运行通知模块620用于根据所述视觉焦点回到所述位置区域的判断结果,通知所述软件应用继续被暂停的进程。

在本发明装置的一个具体实施例中,该装置还可以包括光标移动模块(图中未示出)。该光标移动模块用于控制显示软件应用的显示装置在视觉焦点的当前位置坐标处显示代表所述视觉焦点的光标。

图7是根据本发明实施例的在场景中控制应用运行的装置的一种硬件结构的示意图。

根据图7所示,在该实施例中,该装置可以包括存储器720和处理器710,该存储器720用于存储指令,该指令用于控制处理器710进行操作以执行根据本发明的控制应用运行的方法。

该存储器720可以包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。

图8是根据本发实施例的头戴式显示设备的一种结构的方框原理图。

根据图8所示,该头戴式显示设备可以包括上述任一种控制应用运行的装置,在图8中被标记为810。

除此之外,该头戴式显示设备还可以包括输入装置820、传感器装置830、接口装置840、通信装置850、音频输入输出装置860、显示装置870、摄像装置880等等。

上述输入装置820例如可以包括触摸屏、按键等。

上述传感器装置830例如包括加速度传感器、陀螺仪、gps追踪器、压力传感器、磁力计等等。

上述接口装置840例如包括usb接口、网口等。

上述通信装置850例如能够进行有有线或无线通信(wifi和蓝牙)。

上述音频输入输出装置860包括扬声器、麦克风。

上述显示装置870包括屏幕及相关组件。

上述摄像装置880包括至少一个摄像模组,可以用于采集外部实景,也可以用于进行定位追踪。

本发明的头戴式显示设备根据具体的场景可以为虚拟现实设备、增强显示设备、混合现实设备或者影像现实设备。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分相互参见即可,每个实施例重点说明的都是与其他实施例的不同之处,但本领域技术人员应当清楚的是,上述各实施例可以根据需要单独使用或者相互结合使用。另外,对于装置实施例而言,由于其是与方法实施例相对应,所以描述得比较简单,相关之处参见方法实施例的对应部分的说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的。

本发明可以是装置、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。

这里参照根据本发明实施例的方法、装置和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。

以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。

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