全景视频图像的播放方法、装置、存储介质及电子装置转让专利

申请号 : CN201710997898.8

文献号 : CN109698952B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 曾新海涂远东管坤

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本发明公开了一种全景视频图像的播放方法、装置、存储介质及电子装置。其中,该方法包括:从待播放的视频流数据中的全景视频图像帧中获取与第一视角相匹配的第一图像画面,并从全景视频图像帧中获取与第二视角相匹配的第二图像画面;确定第一图像画面中所包含的第一感兴趣区域,并确定第二图像画面中所包含的第二感兴趣区域;根据第一感兴趣区域和第二感兴趣区域确定第一图像画面中所包含的视角切换缓冲区域;以第一区域对应的分辨率播放第一区域上的图像,以第二区域对应的分辨率播放第二区域上的图像。本发明解决了现有技术中视频流切换时视频画面会产生跳动的技术问题。

权利要求 :

1.一种全景视频图像的播放方法,其特征在于,包括:

从待播放的视频流数据中的全景视频图像帧中获取与第一视角相匹配的第一图像画面,并从所述全景视频图像帧中获取与第二视角相匹配的第二图像画面,其中,所述第一视角为当前播放视角,所述第二视角为与所述第一视角相邻的视角;

确定所述第一图像画面中所包含的第一感兴趣区域,并确定所述第二图像画面中所包含的第二感兴趣区域;

确定所述第二感兴趣区域对应的画面在所述第一图像画面上对应的区域;确定所述对应的区域中与所述第一感兴趣区域相邻的像素宽度为目标像素宽度的区域为视角切换缓冲区域,其中,所述视角切换缓冲区域为所述第二感兴趣区域对应的画面在所述第一图像画面上对应的区域中与所述第一感兴趣区域相邻的部分区域,所述第一感兴趣区域和所述视角切换缓冲区域组成所述第一图像画面中的第一区域,所述第一图像画面中除所述第一区域之外的区域为第二区域;

以所述第一区域对应的分辨率播放所述第一区域上的图像,以所述第二区域对应的分辨率播放所述第二区域上的图像,其中,所述第一区域对应的分辨率高于所述第二区域对应的分辨率。

2.根据权利要求1所述的方法,其特征在于,在确定所述对应的区域中与所述第一感兴趣区域相邻的像素宽度为目标像素宽度的区域为所述视角切换缓冲区域之前,所述方法还包括:获取跳转角度对应的像素宽度,其中,所述跳转角度为从播放所述第一视角对应的视频数据转换至播放所述第二视角对应的视频数据时转动的角度;

根据所述跳转角度对应的像素宽度确定所述目标像素宽度。

3.根据权利要求2所述的方法,其特征在于,根据所述跳转角度对应的像素宽度确定所述目标像素宽度包括:将所述跳转角度对应的像素宽度确定为所述目标像素宽度;或者,从大于所述跳转角度对应的像素宽度且小于所述第二感兴趣区域对应的像素宽度的像素宽度中选取一个像素宽度,并将所述一个像素宽度确定为所述目标像素宽度。

4.根据权利要求1至3中任一项所述的方法,其特征在于,以所述第一区域对应的分辨率播放所述第一区域对应的图像包括:以第一分辨率播放所述第一感兴趣区域上的图像,并以第二分辨率播放所述视角切换缓冲区域上的图像,其中,所述第一分辨率高于或者等于所述第二分辨率,所述第二分辨率高于所述第二区域对应的分辨率。

5.一种全景视频图像的播放装置,其特征在于,包括:

获取模块,用于在播放虚拟实境场景下的视频数据时,从待播放的视频流数据中的全景视频图像帧中获取与第一视角相匹配的第一图像画面,并从所述全景视频图像帧中获取与第二视角相匹配的第二图像画面,其中,所述第一视角为当前播放视角,所述第二视角为与所述第一视角相邻的视角;

第一确定模块,用于确定所述第一图像画面中所包含的第一感兴趣区域,并确定所述第二图像画面中所包含的第二感兴趣区域;

第二确定模块,用于根据所述第一感兴趣区域和所述第二感兴趣区域确定所述第一图像画面中所包含的视角切换缓冲区域,其中,所述视角切换缓冲区域为所述第二感兴趣区域对应的画面在所述第一图像画面上对应的区域中与所述第一感兴趣区域相邻的部分区域,所述第一感兴趣区域和所述视角切换缓冲区域组成所述第一图像画面中的第一区域,所述第一图像画面中除所述第一区域之外的区域为第二区域,包括:第一确定单元,用于确定所述第二感兴趣区域对应的画面在所述第一图像画面上对应的区域;第二确定单元,用于确定所述对应的区域中与所述第一感兴趣区域相邻的像素宽度为目标像素宽度的区域为所述视角切换缓冲区域;

播放模块,用于以所述第一区域对应的分辨率播放所述第一区域上的图像,以所述第二区域对应的分辨率播放所述第二区域上的图像,其中,所述第一区域对应的分辨率高于所述第二区域对应的分辨率。

6.根据权利要求5所述的装置,其特征在于,所述装置还包括:

获取模块,用于获取跳转角度对应的像素宽度,其中,所述跳转角度为从播放所述第一视角对应的视频数据转换至播放所述第二视角对应的视频数据时转动的角度;

第三确定模块,用于根据所述跳转角度对应的像素宽度确定所述目标像素宽度。

7.根据权利要求6所述的装置,其特征在于,所述第三确定模块包括:

第三确定单元,用于将所述跳转角度对应的像素宽度确定为所述目标像素宽度;或者,第四确定单元,用于从大于所述跳转角度对应的像素宽度且小于所述第二感兴趣区域对应的像素宽度的像素宽度中选取一个像素宽度,并将所述一个像素宽度确定为所述目标像素宽度。

8.根据权利要求5至7中任一项所述的装置,其特征在于,所述播放模块包括:

播放单元,用于以第一分辨率播放所述第一感兴趣区域上的图像,并以第二分辨率播放所述视角切换缓冲区域上的图像,其中,所述第一分辨率高于或者等于所述第二分辨率,所述第二分辨率高于所述第二区域对应的分辨率。

9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至4任一项中所述的方法。

10.一种电子装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器通过所述计算机程序执行上述权利要求1至4任一项中所述的方法。

说明书 :

全景视频图像的播放方法、装置、存储介质及电子装置

技术领域

[0001] 本发明涉及计算机领域,具体而言,涉及一种全景视频图像的播放方法、装置、存储介质及电子装置。

背景技术

[0002] 目前播放全景视频的方式是将视频数据流转换成FOV视频流,FOV(Field of View)图像是显示设备边缘与观察点(眼睛)连线的夹角之间的图像,简单来说就是用户能清晰看见画面和余光扫到的内容,代表着用户所看到的角度图像。目前将视频数据流转换成FOV视频流的方式转换模型底部最大程度保留了画面质量,转换模型四个边通过投影方式来生成,会有一定的图像变形。该方案在头部(即观察点)运动,FOV视频切换的时候,由于当前的视频流i切换到下一个视频流j会存在一定时间的延时,在呈现视频j画面之前,画面呈现的依然是视频i侧边的图像,由于视频i侧面图像和视频j底部正视角图像在投影上的视角角度差别,会导致用户观看视频时感受到视频画面的跳动,另外由于转换模型底部像素密度和金字塔侧面的像素空间密度差值过大,清晰度也有很大的变动。
[0003] 针对上述的问题,目前尚未提出有效的解决方案。

发明内容

[0004] 本发明实施例提供了一种全景视频图像的播放方法、装置、存储介质及电子装置,以至少解决现有技术中视频流切换时视频画面会产生跳动的技术问题。
[0005] 根据本发明实施例的一个方面,提供了一种全景视频图像的播放方法,包括:从待播放的视频流数据中的全景视频图像帧中获取与第一视角相匹配的第一图像画面,并从所述全景视频图像帧中获取与第二视角相匹配的第二图像画面,其中,所述第一视角为当前播放视角,所述第二视角为与所述第一视角相邻的视角;确定所述第一图像画面中所包含的第一感兴趣区域,并确定所述第二图像画面中所包含的第二感兴趣区域;根据所述第一感兴趣区域和所述第二感兴趣区域确定所述第一图像画面中所包含的视角切换缓冲区域,其中,所述视角切换缓冲区域为所述第二感兴趣区域对应的画面在所述第一图像画面上对应的区域中与所述第一感兴趣区域相邻的部分区域,所述第一感兴趣区域和视角切换缓冲区域组成所述第一图像画面中的第一区域,所述第一图像画面中除所述第一区域之外的区域为第二区域;以所述第一区域对应的分辨率播放所述第一区域上的图像,以所述第二区域对应的分辨率播放所述第二区域上的图像,其中,所述第一区域对应的分辨率高于所述第二区域对应的分辨率。
[0006] 根据本发明实施例的另一方面,还提供了一种全景视频图像的播放装置,包括:获取模块,用于在播放虚拟实境场景下的视频数据时,从待播放的视频流数据中的全景视频图像帧中获取与第一视角相匹配的第一图像画面,并从所述全景视频图像帧中获取与第二视角相匹配的第二图像画面,其中,所述第一视角为当前播放视角,所述第二视角为与所述第一视角相邻的视角;第一确定模块,用于确定所述第一图像画面中所包含的第一感兴趣区域,并确定所述第二图像画面中所包含的第二感兴趣区域;第二确定模块,用于根据所述第一感兴趣区域和所述第二感兴趣区域确定所述第一图像画面中所包含的视角切换缓冲区域,其中,所述视角切换缓冲区域为所述第二感兴趣区域对应的画面在所述第一图像画面上对应的区域中与所述第一感兴趣区域相邻的部分区域,所述第一感兴趣区域和视角切换缓冲区域组成所述第一图像画面中的第一区域,所述第一图像画面中除所述第一区域之外的区域为第二区域;播放模块,用于以所述第一区域对应的分辨率播放所述第一区域上的图像,以所述第二区域对应的分辨率播放所述第二区域上的图像,其中,所述第一区域对应的分辨率高于所述第二区域对应的分辨率。
[0007] 根据本发明实施例的另一方面,还提供了一种存储介质,所述存储介质包括存储的程序,其中,所述程序运行时执行上述任一项中所述的方法。
[0008] 根据本发明实施例的另一方面,还提供了一种电子装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器通过所述计算机程序执行上述任一项中所述的方法。
[0009] 在本发明实施例中,从待播放的视频流数据中的全景视频图像帧中获取与第一视角相匹配的第一图像画面,并从全景视频图像帧中获取与第二视角相匹配的第二图像画面,其中,第一视角为当前播放视角,第二视角为与第一视角相邻的视角;确定第一图像画面中所包含的第一感兴趣区域,并确定第二图像画面中所包含的第二感兴趣区域;根据第一感兴趣区域和第二感兴趣区域确定第一图像画面中所包含的视角切换缓冲区域,其中,视角切换缓冲区域为第二感兴趣区域对应的画面在第一图像画面上对应的区域中与第一感兴趣区域相邻的部分区域,第一感兴趣区域和视角切换缓冲区域组成第一图像画面中的第一区域,第一图像画面中除第一区域之外的区域为第二区域;以第一区域对应的分辨率播放第一区域上的图像,以第二区域对应的分辨率播放第二区域上的图像,其中,第一区域对应的分辨率高于第二区域对应的分辨率。也就是说,全景视频图像帧中第一视角匹配的第一图像画面包括第一区域和第二区域,其中的第一区域包括第一感兴趣区域和视角切换缓冲区域,该视角切换缓冲区域是第二感兴趣区域对应的画面在第一图像画面上对应的区域中与第一感兴趣区域相邻的部分区域,分别以不同的分辨率播放第一区域和第二区域上的图像,其中第一区域对应的分辨率高于第二区域对应的分辨率,这样在全景视频图像的播放过程中,视频画面从第一视角切换到第二视角的过程中,用户的视线将扫过第一区域中视角切换缓冲区域上分辨率较高的画面,从而在视角切换时,可避免画面的跳动,使得相邻视角的图像的衔接更为平滑,进而克服现有技术中视频流切换时视频画面会产生跳动的问题。

附图说明

[0010] 此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0011] 图1是根据本发明实施例的一种可选的全景视频图像的播放方法的应用环境示意图;
[0012] 图2是根据本发明实施例的一种可选的全景视频图像的播放方法的流程图;
[0013] 图3是根据本发明实施例的一种可选的全景视频图像的播放方法的示意图;
[0014] 图4是根据本发明实施例的另一种可选的全景视频图像的播放方法的示意图;
[0015] 图5是根据本发明实施例的又一种可选的全景视频图像的播放方法的示意图;
[0016] 图6是根据本发明实施例的一种可选的全景视频图像的播放装置的示意图;
[0017] 图7是根据本发明实施例的一种可选的全景视频图像的播放方法的应用场景示意图;
[0018] 图8是根据本发明实施例的另一种可选的全景视频图像的播放方法的应用场景示意图;以及
[0019] 图9是根据本发明实施例的一种可选的电子装置的示意图。

具体实施方式

[0020] 为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0021] 需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0022] 在本发明实施例中,提供了一种上述全景视频图像的播放方法的实施例。作为一种可选的实施方式,该全景视频图像的播放方法可以但不限于应用于如图1所示的应用环境中,终端102在现场录制所要直播的视频流数据中的全景视频内容,通过网络104将上述视频流数据中的全景视频图像帧传输给播放设备106(如VR眼镜),播放设备106从待播放的视频流数据中的全景视频图像帧中获取与第一视角相匹配的第一图像画面,并从全景视频图像帧中获取与第二视角相匹配的第二图像画面,其中,第一视角为当前播放视角,第二视角为与第一视角相邻的视角;确定第一图像画面中所包含的第一感兴趣区域,并确定第二图像画面中所包含的第二感兴趣区域;根据第一感兴趣区域和第二感兴趣区域确定第一图像画面中所包含的视角切换缓冲区域,其中,视角切换缓冲区域为第二感兴趣区域对应的画面在第一图像画面上对应的区域中与第一感兴趣区域相邻的部分区域,第一感兴趣区域和视角切换缓冲区域组成第一图像画面中的第一区域,第一图像画面中除第一区域之外的区域为第二区域;以第一区域对应的分辨率播放第一区域对应的图像,以第二区域对应的分辨率播放第二区域对应的图像,其中,第一区域对应的分辨率高于第二区域对应的分辨率。
[0023] 在本实施例中,全景视频图像帧中第一视角匹配的第一图像画面包括第一区域和第二区域,其中的第一区域包括第一感兴趣区域和视角切换缓冲区域,该视角切换缓冲区域是第二感兴趣区域对应的画面在第一图像画面上对应的区域中与第一感兴趣区域相邻的部分区域,分别以不同的分辨率播放第一区域和第二区域上的图像,其中第一区域对应的分辨率高于第二区域对应的分辨率,这样在全景视频图像的播放过程中,视频画面从第一视角切换到第二视角的过程中,用户的视线将扫过第一区域中视角切换缓冲区域上分辨率较高的画面,从而在视角切换时,可避免画面的跳动,使得相邻视角的图像的衔接更为平滑,进而克服现有技术中视频流切换时视频画面会产生跳动的问题。
[0024] 可选地,在本实施例中,上述播放设备可以包括但不限于以下至少之一:手机、平板电脑、笔记本电脑、台式PC机、数字电视、VR眼镜及其他用于显示直播视频流数据中的全景视频图像的硬件设备。上述网络可以包括但不限于以下至少之一:广域网、城域网、局域网。上述只是一种示例,本实施例对此不做任何限定。
[0025] 根据本发明实施例,提供了一种全景视频图像的播放方法,如图2所示,该方法包括:
[0026] S202,从待播放的视频流数据中的全景视频图像帧中获取与第一视角相匹配的第一图像画面,并从全景视频图像帧中获取与第二视角相匹配的第二图像画面,其中,第一视角为当前播放视角,第二视角为与第一视角相邻的视角;
[0027] S204,确定第一图像画面中所包含的第一感兴趣区域,并确定第二图像画面中所包含的第二感兴趣区域;
[0028] S206,根据第一感兴趣区域和第二感兴趣区域确定第一图像画面中所包含的视角切换缓冲区域,其中,视角切换缓冲区域为第二感兴趣区域对应的画面在第一图像画面上对应的区域中与第一感兴趣区域相邻的部分区域,第一感兴趣区域和视角切换缓冲区域组成第一图像画面中的第一区域,第一图像画面中除第一区域之外的区域为第二区域;
[0029] S208,以第一区域对应的分辨率播放第一区域对应的图像,以第二区域对应的分辨率播放第二区域对应的图像,其中,第一区域对应的分辨率高于第二区域对应的分辨率。
[0030] 可选地,在本实施例中,上述图像编码方法可以但不限于应用于播放全景视频图像的场景中,如虚拟实境(Virtual Reality,简称VR)视频播放过程中、全景视频播放过程中,上述播放可以包括但不限于:视频点播、视频直播。其中,上述视频可以但不限于应用于:视频播放应用、游戏应用、购物应用等等终端应用中。上述仅是一种示例,本实施例中对此不做任何限定。
[0031] 可选地,在本实施例中,全景视频图像帧可以但不限于为360度球形全景图像,其中,该360度球形全景图像可以但不限于划分为多个视角(Field of View,简称FOV),每个视角对应的图像画面将生成一路视角视频流数据供播放设备进行播放。
[0032] 可选地,在本实施例中,上述全景视频图像的播放方法提供的视频图像的投影模型从形状上来看类似钻石,可以称为钻石模型。
[0033] 例如,如图3所示,播放设备以VR眼镜为例进行说明,图3左侧示出使用VR眼镜可以观看视频中的360度球形全景图像,图3右侧示出在360度球形全景图像中,内置钻石模型(各个顶点均位于球面)进行映射投影。进一步,每个视角将得到对应的图像画面(包含钻石模型在各个面上的投影),如图4所示,图4左侧示出钻石模型在各个面上的投影展开后的视角图像,经过拉伸等图像处理,将得到图4右侧所示与该视角相匹配的图像画面,其中,阴影部分表示模型底部对应画面。可以看出,使用上述钻石投影模型对全景视频图像进行投影,模型底部的画面相对于金字塔模型面积更大,因此该模型相比金字塔模型具有更大范围的高清图像。钻石投影模型底部区域使用的像素点数量也比金字塔模型更多,图像质量更优。
[0034] 可选地,在本实施例中,上述第一感兴趣区域为第一图像画面中的感兴趣区域(Region of Interest,简称ROI),例如,如图3右侧所示,第一区域可以为当前播放视角所对应的钻石模型的底部区域,该底部区域包括第一感兴趣区域以及第一感兴趣区域周围的视角切换缓冲区域,而钻石模型的其他区域(如侧面区域)则对应为第二区域。
[0035] 可选地,在本实施例中,上述每个视角中的感兴趣区域可以但不限于为矩形区域、菱形区域、正六边形区域或者其他任意形状的多边形区域。在本实施例中,以感兴趣区域为矩形区域为例,其他情况与此类似,在此不再赘述。
[0036] 可选地,在本实施例中,上述第二视角可以但不限于为与第一视角相邻的多个视角,以感兴趣区域为矩形区域为例,第二视角可以但不限于为与第一视角相邻的上、下、左、右四个视角。例如:如图5所示,与第一视角相邻的第二视角有四个,分别为第二视角A、第二视角B、第二视角C、第二视角D,这四个第二视角中的第二感兴趣区域对应的画面在第一图像画面上对应的区域(图中阴影部分的区域)分别为区域A、区域B、区域C、区域D,将每个上述每个区域中的部分区域作为视角切换缓冲区域,那么,第一图像画面中的第一区域就包括视角切换缓冲区域A、视角切换缓冲区域B、视角切换缓冲区域C、视角切换缓冲区域D和第一感兴趣区域。第一图像画面中除上述区域外的其它区域为第二区域。
[0037] 可见,通过上述步骤,全景视频图像帧中第一视角匹配的第一图像画面包括第一区域和第二区域,其中的第一区域包括第一感兴趣区域和视角切换缓冲区域,该视角切换缓冲区域是第二感兴趣区域对应的画面在第一图像画面上对应的区域中与第一感兴趣区域相邻的部分区域,分别以不同的分辨率播放第一区域和第二区域上的图像,其中第一区域对应的分辨率高于第二区域对应的分辨率,这样在全景视频图像的播放过程中,视频画面从第一视角切换到第二视角的过程中,用户的视线将扫过第一区域中视角切换缓冲区域上分辨率较高的画面,从而在视角切换时,可避免画面的跳动,使得相邻视角的图像的衔接更为平滑,进而克服现有技术中视频流切换时视频画面会产生跳动的问题。
[0038] 作为一种可选的方案,根据第一感兴趣区域和第二感兴趣区域确定第一图像画面中所包含的视角切换缓冲区域包括:
[0039] S1,确定第二感兴趣区域对应的画面在第一图像画面上对应的区域;
[0040] S2,确定对应的区域中与第一感兴趣区域相邻的像素宽度为目标像素宽度的区域为视角切换缓冲区域。
[0041] 可选地,在本实施例中,两个相邻视角的感兴趣区域可以是相邻的,因此,可以但不限于将与第一感兴趣区域相邻的像素宽度为目标像素宽度的区域确定为视角切换缓冲区域。
[0042] 可选地,在本实施例中,上述目标像素宽度可以但不限于是根据该全景视频图像的播放方法的实际应用场景设置的。
[0043] 作为一种可选的方案,在确定第一感兴趣区域相邻的目标像素宽度的区域为视角切换缓冲区域之前,还包括:
[0044] S1,获取跳转角度对应的像素宽度,其中,跳转角度为从播放第一视角对应的视频数据转换至播放第二视角对应的视频数据时转动的角度;
[0045] S2,根据跳转角度对应的像素宽度确定目标像素宽度。
[0046] 可选地,在本实施例中,用户当前观看的视频序列为第一视角对应的视频序列,在FOV视频切换的时候,可以在头部姿态越过底部一定角度位置时,开始加载第二视角对应的视频序列,因此可以根据视角转换时转过的角度配置目标像素宽度,可以获取从播放第一视角对应的视频数据转换至播放第二视角对应的视频数据时转动的角度,并根据该角度对应的像素宽度确定目标像素宽度。
[0047] 可选地,在本实施例中,可以但不限于通过以下方式之一确定目标像素宽度:
[0048] 方式一,将跳转角度对应的像素宽度确定为目标像素宽度。在该方式中可以将跳转角度对应的像素宽度作为目标像素宽度,以确保在视角的观察点从第一视角转动到第二视角时,在视线扫过视角切换缓冲区域的同时加载第二视角对应的视频数据,从而使得用户不会感觉到画面的跳动。
[0049] 方式二,从大于跳转角度对应的像素宽度且小于第二感兴趣区域对应的像素宽度的像素宽度中选取一个像素宽度,并将一个像素宽度确定为目标像素宽度。在该方式中可以在大于跳转角度对应的像素宽度中选取一个像素宽度作为目标像素宽度,并且该目标像素宽度的选取使得视角切换缓冲区域不超过第二感兴趣区域的范围。
[0050] 作为一种可选的方案,以第一区域对应的分辨率播放第一区域对应的图像包括:
[0051] S1,以第一分辨率播放第一感兴趣区域上的图像,并以第二分辨率播放视角切换缓冲区域上的图像,其中,第一分辨率高于或者等于第二分辨率,第二分辨率高于第二区域对应的分辨率。
[0052] 可选地,在本实施例中,在用户观看全景视频时,感兴趣区域相当于是用户正对面的区域,视角切换缓冲区域和第二区域相当于是用户的余光覆盖到的区域以及用户不会看到的区域,用户往往对余光中扫到的图像不会很敏感,因此,对于视角切换缓冲区域的图像可以使用比第一感兴趣区域对应的分辨率稍低的分辨率进行播放,由此,可以但不限于使用不同的分辨率播放不同区域上的图像。例如:第一感兴趣区域对应的分辨率可以但不限于高于视角切换缓冲区域对应的分辨率,视角切换缓冲区域对应的分辨率可以但不限于高于第二区域对应的分辨率。以使得在确保用户视角进行转动时不会明显感觉到画面跳动的同时,降低系统的占用率,从而也提高了视频的播放效率。
[0053] 需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
[0054] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
[0055] 根据本发明实施例,还提供了一种用于实施上述全景视频图像的播放方法的全景视频图像的播放装置,如图6所示,该装置包括:
[0056] 1)获取模块62,用于从待播放的视频流数据中的全景视频图像帧中获取与第一视角相匹配的第一图像画面,并从全景视频图像帧中获取与第二视角相匹配的第二图像画面,其中,第一视角为当前播放视角,第二视角为与第一视角相邻的视角;
[0057] 2)第一确定模块64,用于确定第一图像画面中所包含的第一感兴趣区域,并确定第二图像画面中所包含的第二感兴趣区域;
[0058] 3)第二确定模块66,用于根据第一感兴趣区域和第二感兴趣区域确定第一图像画面中所包含的视角切换缓冲区域,其中,视角切换缓冲区域为第二感兴趣区域对应的画面在第一图像画面上对应的区域中与第一感兴趣区域相邻的部分区域,第一感兴趣区域和视角切换缓冲区域组成第一图像画面中的第一区域,第一图像画面中除第一区域之外的区域为第二区域;
[0059] 4)播放模块68,用于以第一区域对应的分辨率播放第一区域对应的图像,以第二区域对应的分辨率播放第二区域对应的图像,其中,第一区域对应的分辨率高于第二区域对应的分辨率。
[0060] 可选地,在本实施例中,上述图像编码装置可以但不限于应用于播放全景视频图像的场景中,如虚拟实境(Virtual Reality,简称VR)视频播放过程中、全景视频播放过程中,上述播放可以包括但不限于:视频点播、视频直播。其中,上述视频可以但不限于应用于:视频播放应用、游戏应用、购物应用等等终端应用中。上述仅是一种示例,本实施例中对此不做任何限定。
[0061] 可选地,在本实施例中,全景视频图像帧可以但不限于为360度球形全景图像,其中,该360度球形全景图像可以但不限于划分为多个视角(Field of View,简称FOV),每个视角对应的图像画面将生成一路视角视频流数据供播放设备进行播放。
[0062] 可选地,在本实施例中,上述全景视频图像的播放装置提供的视频图像的投影模型从形状上来看类似钻石,可以称为钻石模型。
[0063] 例如,如图3所示,播放设备以VR眼镜为例进行说明,图3左侧示出使用VR眼镜可以观看视频中的360度球形全景图像,图3右侧示出在360度球形全景图像中,内置钻石模型(各个顶点均位于球面)进行映射投影。进一步,每个视角将得到对应的图像画面(包含钻石模型在各个面上的投影),如图4所示,图4左侧示出钻石模型在各个面上的投影展开后的视角图像,经过拉伸等图像处理,将得到图4右侧所示与该视角相匹配的图像画面,其中,阴影部分表示模型底部对应画面。可以看出,使用上述钻石投影模型对全景视频图像进行投影,模型底部的画面相对于金字塔模型面积更大,因此该模型相比金字塔模型具有更大范围的高清图像。钻石投影模型底部区域使用的像素点数量也比金字塔模型更多,图像质量更优。
[0064] 可选地,在本实施例中,上述第一感兴趣区域为第一图像画面中的感兴趣区域(Region of Interest,简称ROI),例如,如图3右侧所示,第一区域可以为当前播放视角所对应的钻石模型的底部区域,该底部区域包括第一感兴趣区域以及第一感兴趣区域周围的视角切换缓冲区域,而钻石模型的其他区域(如侧面区域)则对应为第二区域。
[0065] 可选地,在本实施例中,上述每个视角中的感兴趣区域可以但不限于为矩形区域、菱形区域、正六边形区域或者其他任意形状的多边形区域。在本实施例中,以感兴趣区域为矩形区域为例,其他情况与此类似,在此不再赘述。
[0066] 可选地,在本实施例中,上述第二视角可以但不限于为与第一视角相邻的多个视角,以感兴趣区域为矩形区域为例,第二视角可以但不限于为与第一视角相邻的上、下、左、右四个视角。例如:如图5所示,与第一视角相邻的第二视角有四个,分别为第二视角A、第二视角B、第二视角C、第二视角D,这四个第二视角中的第二感兴趣区域对应的画面在第一图像画面上对应的区域(图中阴影部分的区域)分别为区域A、区域B、区域C、区域D,将上述每个区域中的部分区域作为视角切换缓冲区域,那么,第一图像画面中的第一区域就包括视角切换缓冲区域A、视角切换缓冲区域B、视角切换缓冲区域C、视角切换缓冲区域D和第一感兴趣区域。第一图像画面中除上述区域外的其它区域为第二区域。
[0067] 可见,通过上述装置,全景视频图像帧中第一视角匹配的第一图像画面包括第一区域和第二区域,其中的第一区域包括第一感兴趣区域和视角切换缓冲区域,该视角切换缓冲区域是第二感兴趣区域对应的画面在第一图像画面上对应的区域中与第一感兴趣区域相邻的部分区域,分别以不同的分辨率播放第一区域和第二区域上的图像,其中第一区域对应的分辨率高于第二区域对应的分辨率,这样在全景视频图像的播放过程中,视频画面从第一视角切换到第二视角的过程中,用户的视线将扫过第一区域中视角切换缓冲区域上分辨率较高的画面,从而在视角切换时,可避免画面的跳动,使得相邻视角的图像的衔接更为平滑,进而克服现有技术中视频流切换时视频画面会产生跳动的问题。
[0068] 作为一种可选的方案,第二确定模块包括:
[0069] 1)第一确定单元,用于确定第二感兴趣区域对应的画面在第一图像画面上对应的区域;
[0070] 2)第二确定单元,用于确定对应的区域中与第一感兴趣区域相邻的像素宽度为目标像素宽度的区域为视角切换缓冲区域。
[0071] 可选地,在本实施例中,两个相邻视角的感兴趣区域可以是相邻的,因此,可以但不限于将与第一感兴趣区域相邻的像素宽度为目标像素宽度的区域确定为视角切换缓冲区域。
[0072] 可选地,在本实施例中,上述目标像素宽度可以但不限于是根据该全景视频图像的播放方法的实际应用场景设置的。
[0073] 作为一种可选的方案,上述装置还包括:
[0074] 1)获取模块,用于获取跳转角度对应的像素宽度,其中,跳转角度为从播放第一视角对应的视频数据转换至播放第二视角对应的视频数据时转动的角度;
[0075] 2)第三确定模块,用于根据跳转角度对应的像素宽度确定目标像素宽度。
[0076] 可选地,在本实施例中,用户当前观看的视频序列为第一视角对应的视频序列,在FOV视频切换的时候,可以在头部姿态越过底部一定角度位置时,开始加载第二视角对应的视频序列,因此可以根据视角转换时转过的角度配置目标像素宽度,可以获取从播放第一视角对应的视频数据转换至播放第二视角对应的视频数据时转动的角度,并根据该角度对应的像素宽度确定目标像素宽度。
[0077] 作为一种可选的方案,第二确定模块包括:
[0078] 1)第三确定单元,用于将跳转角度对应的像素宽度确定为目标像素宽度;或者,[0079] 2)第四确定单元,用于从大于跳转角度对应的像素宽度且小于第二感兴趣区域对应的像素宽度的像素宽度中选取一个像素宽度,并将一个像素宽度确定为目标像素宽度。
[0080] 可选地,在本实施例中,可以但不限于通过以下方式之一确定目标像素宽度:
[0081] 方式一,可以将跳转角度对应的像素宽度作为目标像素宽度,以确保在视角的观察点从第一视角转动到第二视角时,在视线扫过视角切换缓冲区域的同时加载第二视角对应的视频数据,从而使得用户不会感觉到画面的跳动。
[0082] 方式二,可以在大于跳转角度对应的像素宽度中选取一个像素宽度作为目标像素宽度,并且该目标像素宽度的选取使得视角切换缓冲区域不超过第二感兴趣区域的范围。
[0083] 作为一种可选的方案,播放模块包括:
[0084] 1)播放单元,用于以第一分辨率播放第一感兴趣区域上的图像,并以第二分辨率播放视角切换缓冲区域上的图像,其中,第一分辨率高于或者等于第二分辨率,第二分辨率高于第二区域对应的分辨率。
[0085] 可选地,在本实施例中,在用户观看全景视频时,感兴趣区域相当于是用户正对面的区域,视角切换缓冲区域和第二区域相当于是用户的余光覆盖到的区域以及用户不会看到的区域,用户往往对余光中扫到的图像不会很敏感,因此,对于视角切换缓冲区域的图像可以使用比第一感兴趣区域对应的分辨率稍低的分辨率进行播放,由此,可以但不限于使用不同的分辨率播放不同区域上的图像。例如:第一感兴趣区域对应的分辨率可以但不限于高于视角切换缓冲区域对应的分辨率,视角切换缓冲区域对应的分辨率可以但不限于高于第二区域对应的分辨率。以使得在确保用户视角进行转动时不会明显感觉到画面跳动的同时,降低系统的占用率,从而也提高了视频的播放效率。
[0086] 本发明实施例的应用环境可以但不限于参照上述实施例中的应用环境,本实施例中对此不再赘述。本发明实施例提供了用于实施上述全景视频图像的播放方法的一种可选的具体应用示例。
[0087] 作为一种可选的实施例,上述全景视频图像的播放方法可以但不限于应用于如图7所示的对视频图像进行播放的流程中。该流程可以包括如下步骤:
[0088] 步骤S702,监听手机设备的陀螺仪传感器,依据当前的位置信息计算当前的姿态位置,如果姿态位置发送变化,则通知FovPlayer。
[0089] 步骤S704,FOV播放器(FovPlayer模块)将用于指示FOV视角切换的信息传输给Fov推送服务端(FovPush)的Fov Recv模块。FOV播放器(FovPlayer模块)与Fov推送服务端(FovPush)有且仅有一个网络连接,即FovPlayer模块与Fov Recv模块连接,用于传输FOV视频流信息和切换FOV姿态视角位置的控制信息。
[0090] 步骤S706,FovPlayer模块接收Fov Recv模块传输的FOV视频流信息,并解码视频帧,判断当前的视频帧FOV Index是否发生变化。
[0091] 步骤S708,新视频帧的姿态位置信息发生变化,更新VR视频渲染模块(VR Render)的逻辑,使得视频渲染位置与帧的姿态位置保持一致。
[0092] 在一个可选的实施方式中,FOV视频从FOV A视频切换到FOV B视频,如图8所示,图8左侧示出使用金字塔模型的FOV视频切换过程,在金字塔模型中进行FOV视频切换的时候,一般在头部姿态越过底部一定角度位置时,开始加FOV B视频序列(即经过FOV缓冲区域的过程),此时观看A序列的图像依然为金字塔侧面区域位置图像,画质相对底部存在更大的变形,视频画质质量也一般。另外由于钻石侧面的图像畸变原因,也可能导致用户观看VR视频产生跳动感。
[0093] 图8右侧示出使用钻石模型的FOV视频切换过程,在钻石投影模型之中,模型底部包括两块区域,正视角区域,视角切换缓冲区域,在VR头盔姿态移动到FOV缓冲区域的角度时,这时用户观看的画质相对底部区域依然为比较清楚的区域。此时加载FOV B视频序列,开始观看B视频序列时,视角观看区域为FOV B底部区域;所以在视频加载速度足够的情况下,采用钻石模型的FOV视频序列,可以给用户一直提供稳定的高质量清晰画面。
[0094] 根据本发明实施例的又一个方面,还提供了一种用于实施上述全景视频图像的播放方法的电子装置,如图9所示,该电子装置可以包括:一个或多个(图中仅示出一个)处理器902、存储器904、传感器906、显示器908、编码器910以及传输装置912。
[0095] 其中,存储器904可用于存储软件程序以及模块,如本发明实施例中的全景视频图像的播放方法及装置。
[0096] 对应的程序指令/模块,处理器902通过运行存储在存储器904内的软件程序以及模块,从而执行各种功能应用以及数据处理,即图像编码方法。存储器904可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器904可进一步包括相对于处理器902远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0097] 上述的传输装置912用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置912包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置912为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
[0098] 其中,具体地,存储器904用于存储预设动作条件和预设权限用户的信息、以及应用程序。
[0099] 可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
[0100] 本领域普通技术人员可以理解,图9所示的结构仅为示意,电子装置也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图9其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图9中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图9所示不同的配置。
[0101] 本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
[0102] 本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以位于网络中的多个网络设备中的至少一个网络设备。
[0103] 可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
[0104] S1,从待播放的视频流数据中的全景视频图像帧中获取与第一视角相匹配的第一图像画面,并从全景视频图像帧中获取与第二视角相匹配的第二图像画面,其中,第一视角为当前播放视角,第二视角为与第一视角相邻的视角;
[0105] S2,确定第一图像画面中所包含的第一感兴趣区域,并确定第二图像画面中所包含的第二感兴趣区域;
[0106] S3,根据第一感兴趣区域和第二感兴趣区域确定第一图像画面中所包含的视角切换缓冲区域,其中,视角切换缓冲区域为第二感兴趣区域对应的画面在第一图像画面上对应的区域中与第一感兴趣区域相邻的部分区域,第一感兴趣区域和视角切换缓冲区域组成第一图像画面中的第一区域,第一图像画面中除第一区域之外的区域为第二区域;
[0107] S4,以第一区域对应的分辨率播放第一区域对应的图像,以第二区域对应的分辨率播放第二区域对应的图像,其中,第一区域对应的分辨率高于第二区域对应的分辨率。
[0108] 可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0109] 可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
[0110] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0111] 上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
[0112] 在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0113] 在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0114] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0115] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0116] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。