一种基于虚拟现实视频的多画面同时观看方法与流程

文档序号:11881351阅读:523来源:国知局

本发明涉及一种基于虚拟现实视频的多画面同时观看方法。



背景技术:

用户在使用虚拟现实眼镜观看全景视频的时候,由于虚拟现实视频的效果是360度环绕式覆盖,只能关注其中一小部分的视角,因此用户经常会转动视角以观看不同角度的画面。

然而,随着用户的视角转动,用户可能对不同角度的画面都感兴趣。在现有的方案中,当用户在观看一个感兴趣的画面时,由于在另一个角度呈现的感兴趣的画面也是会随着时间轴往前走的,这样用户往往在同一个时刻智能观看到一个感兴趣角度的画面。



技术实现要素:

本发明的目的在于克服现有技术中的不足而提供一种基于虚拟现实视频的多画面同时观看方法。

为实现上述目的,一方面,本发明提供的一种基于虚拟现实视频的多画面同时观看方法,包括如下步骤:

预设初始主视角;

当用户视角离开预设初始主视角、且用户视角与初始主视角之间大于第一预设角度差值时,视为偏离视角状态;

当用户视角处于偏离视角状态时,用户视角的界面显示一块悬浮区域,悬浮区域为初始主视角画面。

优选地,当用户视角处于偏离视角状态、且用户视角静止时间超过预设时间值时,则将当前视角视为新主视角。

优选地,当用户视角处于偏离视角状态、且用户视角回转至与初始主视角之间的角度差值小于第二预设角度差值时,用户视角视为回到预设初始主 视角。

优选地,当用户视角处于偏离视角状态、且用户视角回转至与新主视角之间的角度差值小于第二预设角度差值时,用户视角视为回到新主视角。

根据本发明提供的一种基于虚拟现实视频的多画面同时观看方法,用户在使用虚拟现实眼镜观看全景视频的时候,改变现有的在同一时刻只能关注一小部分视角的模式,用户可以灵活地以其感兴趣的视角作为主视角时,当用户偏离主视角并观看其他感兴趣的视角画面时,主视角将通过悬浮区域呈现在用户视角中,这样用户就可以同时观看到主视角和当前视角两个感兴趣的画面。

具体实施方式

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是 直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

本发明一实施例提供了一种基于虚拟现实视频的多画面同时观看方法,包括如下步骤:

预设初始主视角;

当用户视角离开预设初始主视角、且用户视角与初始主视角之间大于第一预设角度差值时,视为偏离视角状态;

当用户视角处于偏离视角状态时,用户视角的界面显示一块悬浮区域,悬浮区域为初始主视角画面。

具体地,首先制定主视角的选择方式:

影片开始的时候默认开始播放的视角为预设初始主视角;

当用户视角转动、且用户视角与初始主视角之间大于第一预设角度差值之后(在本实施例中为45°),则认为该用户视角已经偏离了预设初始主视角;

当用户视角处于偏离视角状态、且用户视角偏离预设初始主视角之后再往回转,或者一直往一个方向转直到接近转动一圈,如果用户视角与预设初始主视角之间的角度差绝对值小于第二预设角度差值时(在本实施例中为45°),则认为用户视角回到了预设初始主视角;

当用户视角处于偏离视角状态、且用户视角在一个新的视角位置的静止时间超过预设时间值之后(在本实施例中为5分钟),则将当前的用户视角定为新主视角。可以理解,预设时间值是针对用户体验的调整参数之一,在实际应用中可灵活变换。

具体地,视角的旋转角度通过陀螺仪给出的数据计算得到:首先获取陀螺仪以及加速计的具体数值,然后使用EKF算法(Extended Kalman Filter的简写,即扩展卡尔曼滤波器)对陀螺仪及加速计的数据进行修正,根据算法所得结果,即可计算出视角的旋转角度、旋转方向以及相对主视角的角度差。

一般地,第一预设角度差值和第二预设角度差值的取值区间在30°~180°之间。

具体地,当用户视角处于偏离视角状态时,用户视角的界面显示在一块独立的悬浮区域上(在本实施例中悬浮区域处于当前视角的右上角),悬浮区域中显示的内容为预设初始主视角或新主视角的画面。

具体地,当用户视角处于偏离视角状态后,可通过OpenGL将预设初始主视角或新主视角的对应的画面从原始数据帧中单独截取出来,然后将这个画面作为一块新的数据帧渲染到一块新的Texture上,这块Texture将渲染到一块特定的区域上形成前述的悬浮区域,这块悬浮区域将悬浮在球体区域之上。

具体地,OpenGL可对整体画面进行球面渲染,使用OpenGL在整体画面中截取一部分画面进行渲染,然后根据前述的陀螺仪获取到的角度差,计算出截取部分画面在整体画面中的具体位置,将此获取的画面内容、最为新的一帧数据渲染到一个新的Texture上,然后Texture渲染到指定的悬浮区域。

可以理解,悬浮区域可以设定在用户视角的任何一个位置,如右上角、左上角等,只要不会过于影响和遮挡用户观看的体验即可。

具体地,当用户视角处于偏离视角状态、且用户视角在偏离预设初始主视角或新主视角的其他视角上转动时,预设初始主视角或新主视角对应的画面将始终保持在这个特定的悬浮区域上,即悬浮区域相对于用户视角是静止的,这就意味着悬浮区域需要随着用户视角的转动而转动,所以,在渲染新的悬浮区域时,需要将当前用户视角对应的视角矩阵计算到悬浮区域的显示上。

具体地,当用户视角回到预设初始主视角或新主视角、且用户视角在主视角位置停下的时候,悬浮的区域将自动消失。

具体地,当用户视角在转了一周回到预设初始主视角或新主视角之后并没有停止转动,而是保持转动并再次离开预设初始主视角或新主视角的时候,则认为用户不希望再将原来的预设初始主视角或新主视角作为“主视角”,那么需要清除原来的预设初始主视角或新主视角,此时,右上角的悬浮区域将自动消失(此进程中判定回到预设初始主视角或新主视角的方式与前述相同)。之后,当预设初始主视角或新主视角被清除之后,则需要重新选择主视角:将用户视角停止转动时的那个视角选为新的“主视角”(即下一个新 主视角);

综上,通过以上的方法步骤,就可以使用户能够同时观看两个视角的画面,并且还可以基于该原理思想,扩展到同时观看多个视角的画面(设置多个悬浮区域)。

这种基于虚拟现实视频的多画面同时观看方法,用户在使用虚拟现实眼镜观看全景视频的时候,改变现有的在同一时刻只能关注一小部分视角的模式,用户可以灵活地以其感兴趣的视角作为主视角时,当用户偏离主视角并观看其他感兴趣的视角画面时,主视角将通过悬浮区域呈现在用户视角中,这样用户就可以同时观看到主视角和当前视角两个感兴趣的画面。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

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