一种虚拟漫游的方法及装置与流程

文档序号:13210092阅读:357来源:国知局
一种虚拟漫游的方法及装置与流程

本发明涉及虚拟现实技术领域,特别涉及一种虚拟漫游的方法及装置。



背景技术:

虚拟现实(virtualreality,vr)技术是一种可以创建和体验虚拟世界的计算机仿真系统,它利用计算机生成一种模拟环境,是一种多源信息融合的交互式的三维动态视景和实体行为的系统仿真,使用户沉浸到该环境中。

虚拟漫游是vr技术的重要分支,目前,虚拟漫游主要是通过在vr头显(虚拟现实头戴式显示设备)中显示虚拟场景,通过和虚拟场景的交互实现的,目前,可通过全景图片或全景视频来构建虚拟场景。所谓全景视频,是通过全景摄像机进行全方位360度拍摄的,可以在拍摄角度左右上下360的任意视角观看的动态视频。

目前,通常采用以下方法来实现将全景视频显示在vr场景中。

方法一:将全景视频中的每一全景视频帧作为贴图贴在一个三维体(如,球体)上,其中,呈现全景视频帧的三维体是静止不动的。

然而,采用方法一,在全景视频录制的过程中,全景相机可能会转向,而观看者在观看全景视频的过程中,由于呈现全景视频的三维体是静止不动的,那么,观看者会看到呈现在三维体上的场景在转动,与观看者的身体感知完全不一致,容易引起晕眩,用户体验度低。

方法二:首先,基于全景视频的视频帧,以及上述视频帧对应的方位信息和/或地理位置信息,生成相应的全景视频数据;然后,基于用户的方位信息和/或地理位置信息,将上述生成的全景视频数据中与上述用户的方位信息和/或地理位置信息相对应的全景视频帧展示给用户。

然而,采用方法二,若在全景视频录制的过程中获取不到全景视频帧对应的方位信息和/或地理位置信息,则不能生成相应的全景视频数据,进而导致上述方法无法实施,或者,在全景视频录制的过程中,获得的全景视频帧对应的方位信息和/或地理位置信息不够精确,则会导致生成的相应的全景视频数据质量较差,进而导致上述方法实施效果较差,用户体验度低。

有鉴于此,需要设计一种虚拟漫游的方法及装置,用以弥补现有技术中存在的缺陷和不足之处。



技术实现要素:

本发明实施例的目的是提供一种虚拟漫游的方法及装置,用以解决现有技术中存在的由于在全景视频录制的过程中获取不到全景视频帧对应的方位信息和/或地理位置信息,或者,获得的全景视频帧对应的方位信息和/或地理位置信息不够精确,而导致全景视频的播放方法无法实施或实施效果不佳的问题。

本发明实施例提供的具体技术方案如下:

一种虚拟漫游的方法,包括:

获取与当前播放的第一全景视频片段相连接的至少一个第二全景视频片段,相对于所述第一全景视频片段的第一相对转向角度,获得第一相对转向角度集合,其中,一个全景视频片段包含至少一个全景视频帧;

获取用于表征用户身体朝向变化的第二相对转向角度;

基于所述第一相对转向角度集合与所述第二相对转向角度,从所述至少一个第二全景视频片段中,确定待播放的全景视频片段。

较佳的,获取用于表征用户身体朝向变化的第二相对转向角度,具体包括:

若所述第一全景视频片段和所述至少一个第二全景视频片段均包含一个全景视频帧,则在播放完所述第一全景视频片段时,获取用户的第一身体朝向;

在判定获取所述用户的第一身体朝向之后的时长大于第一预设时长时,获取用户的第二身体朝向;

基于所述用户的第一身体朝向与所述用户的第二身体朝向,确定用于表征用户身体朝向变化的第二相对转向角度。

较佳的,获取用于表征用户身体朝向变化的第二相对转向角度,具体包括:

若所述第一全景视频片段和所述至少一个第二全景视频片段均包含多个全景视频帧,则在判定所述第一全景视频片段的剩余播放时长小于第一设定阈值时,获取用户的第三身体朝向;

在判定获取所述用户的第三身体朝向之后的时长大于第二预设时长时,获取用户的第四身体朝向;

基于所述用户的第三身体朝向与所述用户的第四身体朝向,确定用于表征用户身体朝向变化的第二相对转向角度。

较佳的,所述第二相对转向角度为用户头部、上肢、躯干、下肢或者脚部的转向角度;或者,

所述第二相对转向角度为全景视频播放视角变化的角度。

较佳的,基于所述第一相对转向角度集合与所述第二相对转向角度,从所述至少一个第二全景视频片段中,确定待播放的全景视频片段,具体包括:

分别计算所述第一相对转向角度集合中每一个第一相对转向角度与所述第二相对转向角度之差的绝对值,获得绝对值集合;

将所述绝对值集合中包含的最小绝对值与第二设定阈值进行比较,并在判定所述最小绝对值小于所述第二设定阈值时,将所述最小绝对值对应的第二全景视频片段确定为待播放的全景视频片段。

较佳的,所述第二设定阈值的大小与所述第二全景视频片段的数量有关,所述第二全景视频片段数量越多,所述第二设定阈值越小。

较佳的,所述第一相对转向角度为拍摄全景视频时全景相机的旋转角度;或者,

所述第一相对旋转角度为对所述全景视频进行处理时人工标注的角度。

较佳的,进一步包括:

将所述第一全景视频片段添加为与所述至少一个第二全景视频片段相连接的全景视频片段。

一种虚拟漫游的装置,包括:

第一获取单元,用于获取与当前播放的第一全景视频片段相连接的至少一个第二全景视频片段,相对于所述第一全景视频片段的第一相对转向角度,获得第一相对转向角度集合,其中,一个全景视频片段包含至少一个全景视频帧;

第二获取单元,用于获取用于表征用户身体朝向变化的第二相对转向角度;

确定单元,用于基于所述第一相对转向角度集合与所述第二相对转向角度,从所述至少一个第二全景视频片段中,确定待播放的全景视频片段。

较佳的,在获取用于表征用户身体朝向变化的第二相对转向角度时,所述获取单元具体用于:

若所述第一全景视频片段和所述至少一个第二全景视频片段均包含一个全景视频帧,则在播放完所述第一全景视频片段时,获取用户的第一身体朝向;

在判定获取所述用户的第一身体朝向之后的时长大于第一预设时长时,获取用户的第二身体朝向;

基于所述用户的第一身体朝向与所述用户的第二身体朝向,确定用于表征用户身体朝向变化的第二相对转向角度。

较佳的,在获取用于表征用户身体朝向变化的第二相对转向角度时,所述获取单元具体用于:

若所述第一全景视频片段和所述至少一个第二全景视频片段均包含多个全景视频帧,则在判定所述第一全景视频片段的剩余播放时长小于第一设定阈值时,获取用户的第三身体朝向;

在判定获取所述用户的第三身体朝向之后的时长大于第二预设时长时,获取用户的第四身体朝向;

基于所述用户的第三身体朝向与所述用户的第四身体朝向,确定用于表征用户身体朝向变化的第二相对转向角度。

较佳的,所述第二相对转向角度为用户头部、上肢、躯干、下肢或者脚部的转向角度;或者,

所述第二相对转向角度为全景视频播放视角变化的角度。

较佳的,在基于所述第一相对转向角度集合与所述第二相对转向角度,从所述至少一个第二全景视频片段中,确定待播放的全景视频片段时,所述第二确定单元具体用于:

分别计算所述第一相对转向角度集合中每一个第一相对转向角度与所述第二相对转向角度之差的绝对值,获得绝对值集合;

将所述绝对值集合中包含的最小绝对值与第二设定阈值进行比较,并在判定所述最小绝对值小于所述第二设定阈值时,将所述最小绝对值对应的第二全景视频片段确定为待播放的全景视频片段。

较佳的,所述第二设定阈值的大小与所述第二全景视频片段的数量有关,所述第二全景视频片段数量越多,所述第二设定阈值越小。

较佳的,所述第一相对转向角度为拍摄全景视频时全景相机的旋转角度;或者,

所述第一相对旋转角度为对所述全景视频进行处理时人工标注的角度。

较佳的,所述第二确定单元进一步用于:

将所述第一全景视频片段添加为与所述至少一个第二全景视频片段相连接的全景视频片段。

本发明有益效果如下:

综上所述,本发明实施例中,在进行虚拟漫游的过程中,分别获取与当前播放的第一全景视频片段相连接的至少一个第二全景视频片段相对于所述第一全景视频片段的第一相对转向角度,获得第一相对转向角度集合,其中,一个全景视频片段包含至少一个全景视频帧;获取用于表征用户身体朝向变化的第二相对转向角度;基于所述第一相对转向角度集合与所述第二相对转向角度,从所述与当前播放的第一全景视频片段相连接的至少一个第二全景视频片段中,确定出待播放的全景视频片段。

采用上述方法,根据与当前播放的视频片段相连接的视频片段相对于当前播放视频片段的相对转向角度及用于表征用户身体朝向变化的相对转向角度,确定出待播放的视频片段,在虚拟漫游的过程中,实现了与用户的交互,避免了由于全景视频转向而用户未转向,而导致的用户晕眩,提升了用户体验。

附图说明

图1为本发明实施例中,一种虚拟漫游的方法的详细流程图;

图2为本发明实施方式一中,虚拟漫游的方法的详细流程图;

图3为本发明实施方式二中,虚拟漫游的方法的详细流程图;

图4为本发明实施方式三中,虚拟漫游的方法的详细流程图;

图5为本发明实施方式四中,虚拟漫游的方法的详细流程图;

图6为本发明实施方式五中,一种确定用于表征用户身体朝向变化的第二相对转向角度的流程图;

图7为本发明实施例中,一种虚拟漫游的装置的结构示意图。

具体实施方式

为了解决现有技术中存在的由于在全景视频录制的过程中获取不到全景视频帧对应的方位信息和/或地理位置信息,或者,获得的全景视频帧对应的方位信息和/或地理位置信息不够精确,而导致全景视频的播放方法无法实施或实施效果不佳的问题。本发明实施例中提供了一种新的虚拟漫游的方法及装置,该方法为:获取与当前播放的第一全景视频片段相连接的至少一个第二全景视频片段相对于所述第一全景视频片段的第一相对转向角度,获得第一相对转向角度集合,其中,一个全景视频片段包含至少一个全景视频帧;获取用于表征用户身体朝向变化的第二相对转向角度;基于所述第一相对转向角度集合与所述第二相对转向角度,从所述至少一个第二全景视频片段中,确定待播放的全景视频片段。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面将通过具体实施例对本发明的方案进行详细描述,当然,本发明并不限于以下实施例。

参阅图1所示,本发明实施例中,一种虚拟漫游的方法的详细流程如下:

步骤100:获取与当前播放的第一全景视频片段相连接的至少一个第二全景视频片段,相对于上述第一全景视频片段的第一相对转向角度,获得第一相对转向角度集合,其中,一个全景视频片段包含至少一个全景视频帧。

实际应用中,在虚拟漫游类全景视频中,可根据拍摄一个全景视频时全景相机的朝向,将上述一个全景视频分割为多个全景视频片段,全景相机中记录有任意两个相连接的全景视频片段之间相对转向角度。本发明实施例中,将当前播放的全景视频片段与播放完该当前播放的全景视频片段之后,可继续播放的全景视频片段之间的关系定义为相连接。

例如,假设全景视频片段2是一个与全景视频片段1相连接的全景视频片段,拍摄全景视频片段1时,全景相机的拍摄行进方向(即朝向)为正北方向,而在拍摄全景视频片段2时,全景相机的拍摄行进方向为正东北方向,那么,全景相机中就记录有全景视频片段2对应的全景相机拍摄行进方向相对于全景视频片段1对应的全景相机拍摄行进方向的相对转向角度,即可定义为全景视频片段2与全景视频片段1之间的相对转向角度为顺时针旋转45度。

当然,本发明实施例中,第二全景视频片段相对于上述第一全景视频片段的第一相对转向角度可以为拍摄全景视频时全景相机的旋转角度;也可以为对上述全景视频进行处理时,人工标注的角度,可选的,为拍摄完上述全景视频之后,播放上述全景视频之前,对上述全景视频进行处理时人工标注的角度;也可以为通过计算得到的角度,本发明实施例中,在此不做具体限定。

可选的,本发明实施例中,将顺时针旋转的相对转向角度定义为负角度,将逆时针旋转的相对转向角度定义为正角度,当然,可以根据开发需求和/或不同应用场景的需求,进行相应的定义,本发明实施例中,在此不做具体限定。

例如,假设全景视频片段1的拍摄行进方向相对于全景视频片段2的拍摄行进方向顺时针旋转了45度,那么,就可以将全景视频片段2与全景视频片段1之间的相对转向角度定义为-45度。

又例如,假设全景视频片段1的拍摄行进方向相对于全景视频片段2的拍摄行进方向逆时针旋转了45度,那么,就可以将全景视频片段2与全景视频片段1之间的相对转向角度定义为45度。

显然,本发明实施例中,若仅存在一个与当前播放的全景视频片段相连接的全景视频片段,则只需获取拍摄与上述当前播放的全景视频片段相连接的全景视频片段时的拍摄行进方向,与拍摄上述当前播放的全景视频片段时的拍摄行进方向之间的相对转向角度。

例如,假设当前播放的全景视频片段为全景视频片段1,与全景视频1相连接的全景视频片段为全景视频2,那么,只需获取拍摄全景视频片段2时的拍摄行进方向与拍摄全景视频片段1时的拍摄行进方向之间的相对转向角度1。

而若存在多个与当前播放的全景视频片段相连接的全景视频片段,则需要分别获取每一个与上述当前播放的全景视频片段相连接的全景视频片段拍摄时拍摄行进方向与拍摄上述当前播放的全景视频片段时的拍摄行进方向之间的相对转向角度,获得相应的相对转向角度集合。

例如,假设当前播放的全景视频片段为全景视频片段1,而与全景视频片段1相连接的全景视频片段为全景视频片段2和全景视频片段3,那么,就需要获取拍摄全景视频片段2时的拍摄行进方向与拍摄全景视频片段1时的拍摄行进方向之间的相对转向角度1,获取拍摄全景视频片段3时的拍摄行进方向与拍摄全景视频片段1时的拍摄行进方向之间的相对转向角度2,获得相对转向角度集合(如,(相对转向角度1,相对转向角度2))。

本发明实施例中,一个全景视频片段包括至少一个全景视频帧。

步骤110:获取用于表征用户身体朝向变化的第二相对转向角度。

实际应用中,特定的身体朝向跟踪设备可实时跟踪用户身体的朝向信息,当用户身体朝向发生变化时,可以检测到用户身体朝向变化的实际角度。

例如,可以在用户的膝盖部位固定htcvivetrack来跟踪用户身体朝向变化的信息。

当然,本发明实施例中,表征用户身体朝向变化的第二相对转向角度可以为用户的头部、上肢、躯干、下肢或者脚部的转向角度;或者,表征用户身体朝向变化的第二相对转向角度也可以为全景视频播放视角变化的角度。本发明实施例中,在此不做具体限定。

本发明实施例中,所谓表征用户身体朝向变化的第二相对转向角度,是指用户在一个时间段的终点时刻的用户朝向相对于用户在上述一个时间段的起点时刻的用户朝向的变化角度(如,表征用户身体朝向变化的第二相对转向角度为顺时针旋转了30度,即-30度;或者,表征用户身体朝向变化的第二相对转向角度为逆时针旋转了45度,及45度)。

本发明实施例中,获取表征用户身体朝向变化的第二相对转向角度的方式,根据实际情况的不同而不同,至少包括以下三种方式中的任意一种:

第一种方式为:上述第一全景视频片段和上述与当前播放的第一全景视频片段相连接的至少一个第二全景视频片段均包含一个全景视频帧,则在播放上述第一全景视频片段包含的一个全景视频帧时,获取用户的第一身体朝向;在判定获取上述用户的第一身体朝向之后的时长大于第一预设时长时,获取用户的第二身体朝向;基于上述用户的第一身体朝向与上述用户的第二身体朝向,确定表征用户身体朝向变化的第二相对转向角度。

第二种方式为:上述第一全景视频片段和上述与当前播放的第一全景视频片段相连接的至少一个第二全景视频片段均包含多个全景视频帧,则在判定上述第一全景视频片段的剩余播放时长小于第一设定阈值时,获取用户的第三身体朝向;在判定获取上述用户的第三身体朝向之后的时长大于第二预设时长时,获取用户的第四身体朝向;基于上述用户的第三身体朝向与上述用户的第四身体朝向,确定表征用户身体朝向变化的第二相对转向角度。

第三种方式为:本发明实施例中,用户也可以在非vr模式下,通过播放全景视频的视频帧的方式进行虚拟漫游,具体的,在播放该全景视频的过程中,在播放该全景视频的第一视频帧或第一视频片段之后,用户可以通过触摸操作、按键操作或其它相关操作来改变全景视频的播放视角,此时,可以检测该全景视频的播放视角变化角度,确定表征用户身体朝向变化的第二相对转向角度。

步骤120:基于上述第一相对转向角度集合与上述第二相对转向角度,从上述至少一个第二全景视频片段中,确定待播放的全景视频片段。

具体的,在执行步骤120时,分别计算上述第一相对转向角度集合中每一个第一相对转向角度与上述第二相对转向角度之差的绝对值,获得绝对值集合;将上述绝对值集合中包含的最小绝对值与第二设定阈值进行比较,并在判定上述最小绝对值小于上述第二设定阈值时,将上述最小绝对值对应的第二全景视频片段确定为待播放的全景视频片段。

较佳的,本发明实施例中,第二设定阈值的大小与第二全景视频的片段的数量有关,具体的,第二全景视频片段的数量越多,第二设定阈值越小。

例如,假设当前播放的第一全景视频片段为:全景视频片段1,与全景视频片段1相连接的第二全景视频片段为:全景视频片段2(共一个第二全景视频片段),那么,第二设定阈值可设定为20度。

又例如,假设当前播放的第一全景视频片段为:全景视频片段1,与全景视频片段1相连接的第二全景视频片段为:全景视频片段2和全景视频片段3(共两个第二全景视频片段),那么,第二设定阈值可设定为15度。

又例如,假设当前播放的全景视频片段为:全景视频片段1,与全景视频片段1相连接的第二全景片段为:全景视频片段2,全景视频片段3,……,全景视频片段6(共5个第二全景视频片段),那么,第二设定阈值可设定为10度。

进一步的,本发明实施例中,将上述第一全景视频片段添加为与上述至少一个第二全景视频片段相连接的全景视频片段。

可选的,在确定出待播放的第二全景视频片段之后,基于上述已确定出的待播放的第二全景视频片段相对于第一全景视频片段的第一相对转向角度θ,其中,-180度<θ≤180度,并计算上述第一相对转向角度与180度之差。

接着,基于上述第一相对转向角度与180度之差,确定上述第一全景视频片段相对于上述待播放的全景视频片段的第三相对转向角度,并将上述第一全景视频片段添加为与上述待播放的全景视频片段相连接的全景视频片段。

具体的,若判定上述第一相对转向角度与180度之差大于-180度,且小于等于0度,则将180度与θ之差作为上述第一全景视频片段相对于上述待播放的全景视频片段的相对转向角度,并将上述第一全景视频片段添加为与上述待播放的全景视频片段相连接的全景视频片段。

而若判定上述第一相对转向角度与180度之差小于等于-180度,则将θ与180度之和作为上述第一全景视频片段相对于上述待播放的第二全景视频片段的相对转向角度,并将上述第一全景视频片段添加为与上述待播放的第二全景视频片段相连接的全景视频片段。

当然,本发明实施例中,根据不同应用场景的不同需求,可以将第一全景视频片段添加为与一个第二全景视频片段相连接的全景视频片段,也可以分别将第一全景视频片段添加为与多个第二全景视频片段相连接的全景视频片段,本发明实施例中,在此不做具体限定。

本发明实施例中,在全景视频的播放过程中,与用户实现了交互,考虑到了用户身体的朝向变化,使得用户能够更好的浸入全景视频中,减少晕眩,以提高用户的体验度。

下面采用具体的实施方式对上述实施例作进一步详细说明。

实施方式一:

参阅图2所示,本发明实施方式一中,虚拟漫游的方法的详细流程如下:

步骤200:播放全景视频的第一视频帧。

步骤210:获取与第一视频帧相连接的第二视频帧相对于第一视频帧的第一相对转向角度。

步骤220:获取用户的第一身体朝向。

步骤230:判断从获取用户的第一身体朝向之后的时长是否大于预设间隔,若是,则执行步骤240;否则,继续判断。

步骤240:获取用户的第二身体朝向。

步骤250:基于用户的第一身体朝向和用户的第二身体朝向,计算表征用户身体朝向变化的第二相对转向角度。

步骤260:计算上述第一相对转向角度与第二相对转向角度之差的绝对值。

步骤270:判断上述绝对值是否小于预设阈值,若是,则执行步骤280;否则,返回步骤240。

步骤280:播放全景视频的第二视频帧。

第一种情况为:相连接的两个全景视频帧之间的第一相对转向角度是0度,即在拍摄上述相连接的两个视频帧时,拍摄行进方向未发生变化。

例如,假设frame1和frame2为拍摄的全景视频中相连接的两个全景视频帧,且frame2与frame1之间的第一相对转向角度为0度,预设阈值为10度,那么,在播放完frame1之后,通过特定的身体姿态跟踪设备检测到用户身体朝向的变化为顺时针旋转了2度(即表征用户身体朝向变化的第二相对转向角度为-2度),由此可知,第一相对转向角度与第二相对转向角度之差的绝对值为2度,即可判定出第一相对转向角度与第二相对转向角度之差的绝对值小于预设阈值(2度<10度),继续播放frame2。

又例如,假设frame1和frame2为拍摄的全景视频中相连接的两个全景视频帧,且frame2与frame1之间的第一相对转向角度为0度,预设阈值为10度,在播放完frame1之后,通过特定的身体姿态跟踪设备检测到用户身体朝向的变化为顺时针旋转了20度(即表征用户身体朝向变化的第二相对转向角度为-20度),由此可知,第一相对转向角度与第二相对转向角度之差的绝对值为20度,即可判定出第一相对转向角度与第二相对转向角度之差的绝对值大于预设阈值(20度>10度),不播放frame2。

第二种情况为:相连接的两个全景视频帧之间的第一相对转向角度不是0度,即在拍摄上述相连接的两个视频帧时,拍摄行进方向发生变化。

例如,假设frame1和frame2为拍摄的全景视频中相连接的两个全景视频帧,且frame2与frame1之间的第一相对转向角度为-30度(即拍摄frame2时的拍摄行进方向相对于拍摄frame1时的拍摄行进方向顺时针旋转了30度),预设阈值为10度,那么,在播放完frame1之后,通过特定的身体姿态跟踪设备检测到用户身体朝向的变化为顺时针旋转了5度(即表征用户身体朝向变化的第二相对转向角度为-5度),由此可知,第一相对转向角度与第二相对转向角度之差的绝对值为25度,即可判定出第一相对转向角度与第二相对转向角度之差的绝对值大于预设阈值(25度>10度),不播放frame2。

又例如,假设frame1和frame2为拍摄的全景视频中相连接的两个全景视频帧,且frame2与frame1之间的第一相对转向角度为-30度(即拍摄frame2时的拍摄行进方向相对于拍摄frame1时的拍摄行进方向顺时针旋转了30度),预设阈值为10度,那么,在播放完frame1之后,通过特定的身体姿态跟踪设备检测到用户身体朝向的变化为顺时针旋转了32度(即表征用户身体朝向变化的第二相对转向角度为-32度),由此可知,第一相对转向角度与第二相对转向角度之差的绝对值为2度,即可判定出第一相对转向角度与第二相对转向角度之差的绝对值小于预设阈值(2度<10度),继续播放frame2。

实施方式二:存在一个与当前播放的第一视频片段相连接的第二视频片段,其中,该当前播放的第一视频片段与第二视频片段均包含有多个视频帧。

具体的,参阅图3所示,本发明实施方式二中,虚拟漫游的方法的详细流程如下:

步骤300:播放全景视频的第一视频片段。

步骤310:判断第一视频片段的剩余播放时长是否小于预设时长,若是,则执行步骤320;否则,继续判断。

步骤320:获取与第一视频片段相连接的第二视频片段相对于第一视频片段的第一相对转向角。

步骤330:获取用户的第一身体转向。

步骤340:判断从获取用户的第一身体朝向之后的时长是否大于预设间隔,若是,则执行步骤350;否则,继续判断。

步骤350:获取用户的第二身体朝向。

步骤360:基于用户的第一身体朝向和用户的第二身体朝向,计算表征用户身体朝向变化的第二相对转向角度。

步骤370:计算上述第一相对转向角度与第二相对转向角度之差的绝对值。

步骤380:判断上述绝对值是否小于预设阈值,若是,则执行步骤390;否则,返回步骤350。

步骤390:播放全景视频的第二视频片段。

例如,假设全景视频片段1与全景视频片段2为相连接的两个全景视频片段,全景视频片段1包括第75-113全景视频帧,全景视频片段2包括第130-160全景视频帧,在拍摄全景视频片段1时的拍摄行进方向为沿某一直线进行,而在拍摄全景视频片段2时的拍摄行进方向为沿另一条直线进行,且全景视频片段2与全景视频片段1之间的第一相对转向角度为-58度(即拍摄全景视频片段2时的拍摄行进方向相对于拍摄全景视频片段1时的拍摄行进方向顺时针旋转了58度),预设阈值为10度,那么,在检测到全景视频片段1的剩余播放时长小于预设时长时,通过特定的身体姿态跟踪设备检测到用户朝向的变化为顺时针旋转了15度(即表征用户身体朝向变化的第二相对转向角度为-15度),由此可知,第一相对转向角度与第二相对转向角度之差的绝对值大于预设阈值(43度>10度),在播放完全景视频片段1后,不播放全景视频片段2。

又例如,假设全景视频片段1与全景视频片段2为相连接的两个全景视频片段,全景视频片段1包括第75-113全景视频帧,全景视频片段2包括第130-160全景视频帧,在拍摄全景视频片段1时的拍摄行进方向为沿某一直线进行,而在拍摄全景视频片段2时的拍摄行进方向为沿另一条直线进行,且全景视频片段2与全景视频片段1之间的第一相对转向角度为-58度(即拍摄全景视频片段2时的拍摄行进方向相对于拍摄全景视频片段1时的拍摄行进方向顺时针旋转了58度),预设阈值为10度,那么,在检测到全景视频片段1的剩余播放时长小于预设时长时,通过特定的身体姿态跟踪设备检测到用户朝向的变化为顺时针旋转了65度(即表征用户身体朝向变化的第二相对转向角度为-65度),由此可知,第一相对转向角度与第二相对转向角度之差的绝对值小于预设阈值(7度<10度),在播放完全景视频片段1后,继续播放全景视频片段2。

实施方式三:至少存在两个与当前播放的第一视频片段相连接的第二视频片段,其中,该当前播放的第一视频片段与存在两个第二视频片段中均包含至少一个视频帧。

具体的,参阅图4所示,本发明实施方式三中,虚拟漫游的方法的详细流程如下:

步骤400:播放全景视频的第一视频片段。

步骤401:判断第一视频片段的剩余播放时长是否小于预设时长,若是,则执行步骤402;否则,继续判断。

步骤402:获取用户的第一身体转向。

步骤403:判断从获取用户的第一身体朝向之后的时长是否大于预设间隔,若是,则执行步骤404;否则,继续判断。

步骤404:获取用户的第二身体朝向。

步骤405:基于用户的第一身体朝向和用户的第二身体朝向,计算表征用户身体朝向变化的第二相对转向角度。

步骤406:获取一个与第一视频片段相连接的第二视频片段相对于第一视频片段的第一相对转向角。

步骤407:计算上述第一相对转向角度与第二相对转向角度之差的绝对值,并添加至绝对值集合中。

步骤408:判断是否存在未处理的第二视频片段,若是,则返回步骤406;否则,执行步骤409。

步骤409:判断绝对值集合中最小绝对值是否小于设定阈值,若是,则执行步骤410;否则,返回步骤404。

步骤410:播放上述最小绝对值对应的全景视频的第二视频片段。

例如,假设与全景视频片段1相连接的全景视频片段为:全景视频片段2,全景视频片段3和全景视频片段4,全景视频片段2与全景视频片段1之间的第一相对转向角度1为90度(即拍摄全景视频片段2时的拍摄行进方向相对于拍摄全景视频片段1时的拍摄行进方向逆时针旋转了90度),全景视频片段3与全景视频片段1之间的第一相对转向角度2为0度(即拍摄全景视频片段2时的拍摄行进方向与拍摄全景视频片段1时的拍摄行进方向相同),全景视频片段4与全景视频片段1之间的第一相对转向角度3为90度(即拍摄全景视频片段2时的拍摄行进方向相对于拍摄全景视频片段1时的拍摄行进方向顺时针旋转了90度),设定阈值为10度,那么,在检测到全景视频1的剩余播放时长小于预设时长时,若通过特定的身体姿态跟踪设备检测到用户朝向的变化为顺时针旋转了8度(即表征用户身体朝向变化的第二相对转向角度为-8度),那么,则分别计算第一相对转向角度1,第一相对转向角度2,第一相对转向角度3与第二相对转向角度之差的绝对值,获得绝对值集合(如,82度,8度,98度),其中,8度为最小绝对值,是全景视频片段3与全景视频片段1之间的第一相对转向角度2与表征用户身体朝向变化的第二相对转向角度之差的绝对值,且8度<10度,那么,在播放完全景视频片段1之后,继续播放全景视频3。

实施方式四:

参阅图5所示,本发明实施方式四中,虚拟漫游的方法流程如下:

步骤500:在播放第二全景视频之后,获取与第一全景视频片段相连接的第二全景视频片段相对于第一全景视频片段的第一相对转向角θ,其中,-180度<θ≤180度。

步骤510:-180度<θ-180度≤0度?若是,则执行步骤520;否则,执行步骤530。

步骤520:将180度与θ之差作为第一全景视频片段相对于第二全景视频片段的相对转向角,并执行步骤540。

步骤530:将180度与θ之和作为第一全景视频片段相对于第二全景视频片段的相对转向角,并执行步骤540。

步骤540:将第一全景视频片段添加为与第二全景视频片段相连接的一个全景视频片段。

实施方式五:

参阅图6所示,本发明实施方式五中,一种确定用于表征用户身体朝向变化的第二相对转向角度的详细流程如下:

步骤600:播放全景视频的第一视频片段。

步骤610:判断是否存在用于改变全景视频播放视角的用户操作,如触摸操作,按键操作或其它相关操作。若是,执行步骤620;否则,执行步骤630。

步骤620:根据全景视频播放视角变化角度,确定表征用户身体朝向变化的第二相对转向角度。

步骤630:表征用户身体朝向变化的第二相对转向角度为0度。

基于上述实施例,参阅图7所示,本发明实施例中,一种虚拟漫游的装置,至少包括第一获取单元70,第二获取单元71和确定单元72,其中,

第一获取单元70,用于获取与当前播放的第一全景视频片段相连接的至少一个第二全景视频片段,相对于所述第一全景视频片段的第一相对转向角度,获得第一相对转向角度集合,其中,一个全景视频片段包含至少一个全景视频帧;

第二获取单元71,用于获取用于表征用户身体朝向变化的第二相对转向角度;

确定单元72,用于基于所述第一相对转向角度集合与所述第二相对转向角度,从所述至少一个第二全景视频片段中,确定待播放的全景视频片段。

较佳的,在获取用于表征用户身体朝向变化的第二相对转向角度时,所述第二获取单元71具体用于:

若所述第一全景视频片段和所述至少一个第二全景视频片段均包含一个全景视频帧,则在播放完所述第一全景视频片段时,获取用户的第一身体朝向;

在判定获取所述用户的第一身体朝向之后的时长大于第一预设时长时,获取用户的第二身体朝向;

基于所述用户的第一身体朝向与所述用户的第二身体朝向,确定用于表征用户身体朝向变化的第二相对转向角度。

较佳的,在获取用于表征用户身体朝向变化的第二相对转向角度时,所述第二获取单元71具体用于:

若所述第一全景视频片段和所述至少一个第二全景视频片段均包含多个全景视频帧,则在判定所述第一全景视频片段的剩余播放时长小于第一设定阈值时,获取用户的第三身体朝向;

在判定获取所述用户的第三身体朝向之后的时长大于第二预设时长时,获取用户的第四身体朝向;

基于所述用户的第三身体朝向与所述用户的第四身体朝向,确定用于表征用户身体朝向变化的第二相对转向角度。

较佳的,所述第二相对转向角度为用户头部、上肢、躯干、下肢或者脚部的转向角度;或者,

所述第二相对转向角度为全景视频播放视角变化的角度。

较佳的,在基于所述第一相对转向角度集合与所述第二相对转向角度,从所述至少一个第二全景视频片段中,确定待播放的全景视频片段时,所述确定单元72具体用于:

分别计算所述第一相对转向角度集合中每一个第一相对转向角度与所述第二相对转向角度之差的绝对值,获得绝对值集合;

将所述绝对值集合中包含的最小绝对值与第二设定阈值进行比较,并在判定所述最小绝对值小于所述第二设定阈值时,将所述最小绝对值对应的第二全景视频片段确定为待播放的全景视频片段。

较佳的,所述第二设定阈值的大小与所述第二全景视频片段的数量有关,所述第二全景视频片段数量越多,所述第二设定阈值越小。

较佳的,所述第一相对转向角度为拍摄全景视频时全景相机的旋转角度;或者,

所述第一相对旋转角度为对所述全景视频进行处理时人工标注的角度。

较佳的,所述确定单元72进一步用于:

将所述第一全景视频片段添加为与所述至少一个全景视频片段相连接的全景视频片段。

综上所述,本发明实施例中,在进行虚拟漫游的过程中,获取与当前播放的第一全景视频片段相连接的至少一个第二全景视频片段,相对于所述第一全景视频片段的第一相对转向角度,获得第一相对转向角度集合,其中,一个全景视频片段包含至少一个全景视频帧;获取用于表征用户身体朝向变化的第二相对转向角度;基于所述第一相对转向角度集合与所述第二相对转向角度,从所述至少一个第二全景视频片段中,确定待播放的全景视频片段。

采用上述方法,根据与当前播放的视频片段相连接的视频片段与当前播放视频片段之间的相对转向角度及用于表征用户身体朝向变化的相对转向角度,确定待播放的视频片段,在虚拟漫游的过程中,实现了与用户的交互,避免了由于全景视频转向而用户未转向,而导致的用户晕眩,提升了用户体验。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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