vr全景视频的预处理方法、设备及存储介质
技术领域
1.本发明涉及视频处理领域,尤其涉及一种vr全景视频的预处理方法、设备及计算机可读存储介质。
背景技术:
2.现有vr(virtual reality,虚拟现实)全景视频流式播放预处理方案有两类。第一类技术方案是将全景摄像头采集到原始全景视频素材进行拼接、投影变换后存储到一个高分辨率的普通封装格式(如mp4、mkv等)的平面视频文件中,然后将该视频文件转换为可流式播放的视频格式(如hls、rtmp等)。客户端再通过网络获取整个vr全景视频的完整流式传输画面。
3.第二类技术方案相比第一类技术,在视频传输效率上进行了优化。将原始的视频素材进行拼接、投影变换后,使用磁贴分片(tiling)技术将视频切割成高低两种规格(分辨率及码率)的多个磁贴(tile),然后将所有的磁贴按一定序列整合进支持动态切换的流式传输媒体文件(如dash等)中。客户端根据当前fov(field of view,视场角)范围,通过网络获取用户视野内的高精度规格视频分片磁贴和视野外的低精度规格视频分片磁贴并将所有分辨磁贴拼合成完整的全景视频画面。
4.第一类技术方案在用户在观看全景视频时,尽管只能看到视野内的画面,却需要下载整个vr全景视频的数据。但整个vr全景视频在视野外的数据用户无感知,浪费了大多数的带宽资源和设备解码能力。
5.第二类技术方案在预处理时只生成了高低两种精度规格的分片。用户在观看vr全景视频时,由于网络存在延迟,当用户的视野范围发生改变,高精度规格的视频分片在数秒之后才能被显示出来。在观看一些需要快速切换观看角度的全景视频(例如体育赛事等)时,会导致用户一直观看低精度规格视频分片,使用体验大幅下降。
技术实现要素:
6.本发明的主要目的在于提供一种vr全景视频的预处理方法,旨在解决现有技术中如何在尽量节约用户带宽及设备性能资源的同时,保证用户的观看体验的技术问题。
7.为实现上述目的,本发明提供一种vr全景视频的预处理方法,所述vr全景视频的预处理方法包括:
8.将原始vr全景视频进行分区,对每个分区进行高、中或低三种精度规格的分片;
9.将用户当前视场角范围与每个分区的视场角范围进行比较,若存在交集,则按照交集区间覆盖范围将所述高、中或低精度规格的分片下发至用户vr设备;
10.根据当前的马尔可夫状态矩阵和相邻时间的状态转移矩阵,计算得到下一时间点的马尔可夫状态矩阵,将所述下一时间点的马尔可夫状态矩阵对应分区的高精度分片提前下发至用户vr设备。
11.可选地,所述将原始vr全景视频进行分区,对每个分区进行高、中或低三种精度规
格的分片的步骤包括:
12.综合所述原始vr全景视频的分区精度和解码效率,设定预设数量的大小;
13.将原始vr全景视频进行预设数量的分区,得到每个分区的水平视场角和垂直视场角范围区间,对每个分区进行高、中或低三种精度规格的分片,并为每个分区设置一个与时间点相关联的初始权重;
14.在开始设置权重时,将每个分区均设置为相同的初始权重。
15.可选地,所述vr全景视频的预处理方法,还包括:
16.在所述原始vr全景视频的已下发播放的事件中,以对应存在交集的时刻为开始时间,以不存在交集的时刻为结束时间,将对应存在交集的分区的初始权重自增累加,得到分区权重随时间变化的权重变化记录;
17.在所述开始时间和所述结束时间的时间区间内,每增加预设时长,对应存在交集的分区的权重累加预设步进值。
18.可选地,在所述将对应存在交集的分区的初始权重自增累加之后的步骤,还包括:
19.若不存在交集,则将对应不存在交集的分区的权重重置为初始权重。
20.可选地,在所述得到分区权重随时间变化的权重变化记录之后的步骤,还包括:
21.使用所述权重变化记录构建每一时间点的马尔可夫状态矩阵,结合前后相邻两个时间点的马尔可夫状态矩阵,计算得到每一时间点的状态转移矩阵。
22.可选地,所述若存在交集之后的步骤,还包括:
23.以交集区间覆盖范围内的高精度分片对应的用户可视角度,计算得到第一用户可视角度和第二用户可视角度,将第一用户可视角度对应的中精度分片和第二用户可视角度对应的低精度分片下发至所述用户vr设备。
24.可选地,所述以交集区间覆盖范围内的高精度分片对应的用户可视角度,计算得到第一用户可视角度和第二用户可视角度的步骤包括:
25.以交集区间覆盖范围内的高精度分片对应的用户可视角度的补角作为第一用户可视角度,以交集区间覆盖范围内的高精度分片对应的用户可视角度以及第一用户可视角度两者之和的组角作为第二用户可视角度。
26.可选地,所述将第一用户可视角度对应的中精度分片和第二用户可视角度对应的低精度分片下发至所述用户vr设备的步骤包括:
27.将视野中心点180度范围内的中精度分片以及视野中心点180度范围外的低精度分片下发至所述用户vr设备,所述中精度分片平均位于高精度分片两侧。
28.此外,为实现上述目的,本发明还提供一种vr全景视频的预处理设备,所述vr全景视频的预处理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的vr全景视频的预处理程序,所述vr全景视频的预处理程序被所述处理器执行时实现如上述的vr全景视频的预处理方法的步骤。
29.此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有vr全景视频的预处理程序,所述vr全景视频的预处理程序被处理器执行时实现如上所述的vr全景视频的预处理方法的步骤。
30.本发明实施例提出的一种vr全景视频的预处理方法、设备及计算机可读存储介质,通过将原始vr全景视频进行预设数量的分区,从而得到每个分区的水平视场角和垂直
视场角范围区间,而且对每个分区进行高、中或低三种精度规格的分片,并为每个分区设置一个与时间点相关联的权重。把接收到用户vr设备实时上传的用户当前的水平视场角和垂直视场角范围区间,与原始vr全景视频的所有分区的水平视场角和垂直视场角范围区间进行比较,判断是否对应存在交集。如果对应存在交集,则将交集区间覆盖范围内的高精度分片、中精度分片和低精度分片下发至用户vr设备。
31.在原始vr全景视频的已下发播放的事件中,以对应存在交集的时刻为开始时间,以不存在交集的时刻为结束时间,将对应存在交集的分区的权重进行自增累加,得到分区权重随时间变化的权重变化记录。使用权重变化记录构建每一时间点的马尔可夫状态矩阵,结合前后相邻两个时间点的马尔可夫状态矩阵,计算得到每一时间点的状态转移矩阵。在原始vr全景视频的当前下发播放的事件中,根据当前时间点的马尔可夫状态矩阵和状态转移矩阵,计算得到下一时间点的马尔可夫状态矩阵,根据下一时间点的马尔可夫状态矩阵将对应分区的高精度分片提前下发至用户vr设备。
32.首先,引入基于兴趣区统计的调度策略,即使用统计方法预测用户观看兴趣区,进行高质量视频子块的提前预传输,可有效提升用户的观看体验。
33.而且,对于视频进行了多分区、多质量层级及分片权重的预处理方法,可以在不降低视频质量的前提下,有效的降低传输数据量。
34.另外,兴趣区检测及预测是基于用户实际数据进行权重统计和校正的,具有更好的数据可信度。
35.从而,在尽量节约用户带宽及设备性能资源的同时,保证用户的观看体验。
附图说明
36.图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图;
37.图2为本发明vr全景视频的预处理方法一实施例的流程示意图;
38.图3为本发明vr全景视频的预处理方法一实施例的发送策略示意图;
39.图4为本发明vr全景视频的预处理方法一实施例的第一分片权重示意图;
40.图5为本发明vr全景视频的预处理方法一实施例的第二分片权重示意图;
41.图6为本发明vr全景视频的预处理方法一实施例的第三分片权重示意图。
42.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
43.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
44.为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
45.如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
46.本发明实施例运行设备可以是pc,也可以是智能手机、平板电脑、电子书阅读器、便携计算机等终端设备。
47.如图1所示,该运行设备可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口
1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
48.可选地,运行设备还可以包括摄像头、rf(radio frequency,射频)电路,传感器、音频电路、wifi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动运行设备姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,移动运行设备还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
49.本领域技术人员可以理解,图1中示出的运行设备结构并不构成对运行设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
50.如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及vr全景视频的预处理程序。
51.在图1所示的运行设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的vr全景视频的预处理程序,并执行以下操作:
52.将原始vr全景视频进行分区,对每个分区进行高、中或低三种精度规格的分片;
53.将用户当前视场角范围与每个分区的视场角范围进行比较,若存在交集,则按照交集区间覆盖范围将所述高、中或低精度规格的分片下发至用户vr设备;
54.根据当前的马尔可夫状态矩阵和相邻时间的状态转移矩阵,计算得到下一时间点的马尔可夫状态矩阵,将所述下一时间点的马尔可夫状态矩阵对应分区的高精度分片提前下发至用户vr设备。
55.进一步地,处理器1001可以调用存储器1005中存储的vr全景视频的预处理程序,还执行以下操作:
56.所述将原始vr全景视频进行分区,对每个分区进行高、中或低三种精度规格的分片的步骤包括:
57.综合所述原始vr全景视频的分区精度和解码效率,设定预设数量的大小;
58.将原始vr全景视频进行预设数量的分区,得到每个分区的水平视场角和垂直视场角范围区间,对每个分区进行高、中或低三种精度规格的分片,并为每个分区设置一个与时间点相关联的初始权重;
59.在开始设置权重时,将每个分区均设置为相同的初始权重。
60.进一步地,处理器1001可以调用存储器1005中存储的vr全景视频的预处理程序,还执行以下操作:
61.所述vr全景视频的预处理方法,还包括:
62.在所述原始vr全景视频的已下发播放的事件中,以对应存在交集的时刻为开始时间,以不存在交集的时刻为结束时间,将对应存在交集的分区的初始权重自增累加,得到分区权重随时间变化的权重变化记录;
63.在所述开始时间和所述结束时间的时间区间内,每增加预设时长,对应存在交集的分区的权重累加预设步进值。
64.进一步地,处理器1001可以调用存储器1005中存储的vr全景视频的预处理程序,还执行以下操作:
65.在所述将对应存在交集的分区的初始权重自增累加之后的步骤,还包括:
66.若不存在交集,则将对应不存在交集的分区的权重重置为初始权重。
67.进一步地,处理器1001可以调用存储器1005中存储的vr全景视频的预处理程序,还执行以下操作:
68.在所述得到分区权重随时间变化的权重变化记录之后的步骤,还包括:
69.使用所述权重变化记录构建每一时间点的马尔可夫状态矩阵,结合前后相邻两个时间点的马尔可夫状态矩阵,计算得到每一时间点的状态转移矩阵。
70.进一步地,处理器1001可以调用存储器1005中存储的vr全景视频的预处理程序,还执行以下操作:
71.所述若存在交集之后的步骤,还包括:
72.以交集区间覆盖范围内的高精度分片对应的用户可视角度,计算得到第一用户可视角度和第二用户可视角度,将第一用户可视角度对应的中精度分片和第二用户可视角度对应的低精度分片下发至所述用户vr设备。
73.进一步地,处理器1001可以调用存储器1005中存储的vr全景视频的预处理程序,还执行以下操作:
74.所述以交集区间覆盖范围内的高精度分片对应的用户可视角度,计算得到第一用户可视角度和第二用户可视角度的步骤包括:
75.以交集区间覆盖范围内的高精度分片对应的用户可视角度的补角作为第一用户可视角度,以交集区间覆盖范围内的高精度分片对应的用户可视角度以及第一用户可视角度两者之和的组角作为第二用户可视角度。
76.进一步地,处理器1001可以调用存储器1005中存储的vr全景视频的预处理程序,还执行以下操作:
77.所述将第一用户可视角度对应的中精度分片和第二用户可视角度对应的低精度分片下发至所述用户vr设备的步骤包括:
78.将视野中心点180度范围内的中精度分片以及视野中心点180度范围外的低精度分片下发至所述用户vr设备,所述中精度分片平均位于高精度分片两侧。
79.参照图2,本发明提供一种vr全景视频的预处理方法,在本发明的vr全景视频的预处理方法的流程中,所述流程包括:
80.步骤s10,将原始vr全景视频进行分区,对每个分区进行高、中或低三种精度规格的分片。
81.在本发明实施例中,在原始vr全景视频的预处理阶段,综合vr全景视频的传输和解码效率,代表对原始vr全景视频进行6*3的分区。用v代表原始vr全景视频,t1,t2,...,t
18
代表各个分区,即v={t1,t2,...,t
18
}。其中原始vr全景视频的水平视场角最大值是360度,垂直视场角最大值是180度。由全景视频的投影过程可计算(该计算过程不在本篇讨论范围)每个分区所覆盖的水平视场角范围表示为ftui,水平视场角最小值表示为水平
视场角最大值表示为垂直视场角范围表示为ftvi,垂直视场角最小值表示为垂直视场角最大值表示为所以得到每个分区的水平视场角和垂直视场角范围区间为:
[0082][0083]
为了使每个分区的水平视场角和垂直视场角极值(极大值或极小值)被唯一区间覆盖、不重合、不包含在两个视场角范围区间内,设置每个分区的视场角范围区间为左闭右开区间。以6*3的分区、原始vr全景视频的水平视场角最大值360度为例,其中每个分区的水平视场角范围为60度。
[0084]
步骤s20,将用户当前视场角范围与每个分区的视场角范围进行比较,若存在交集,则按照交集区间覆盖范围将所述高、中或低精度规格的分片下发至用户vr设备。
[0085]
在用户观看全景视频进行流式传输时,随着时间线的推进,用户vr设备向后台实时上报采集到的用户的当前的fov可视范围。令用户fov包含的水平可视范围表示为fu,水平最小可视角度表示为fu
min
,水平最大可视角度表示为fu
max
;垂直可视范围表示为fv,垂直最小可视角度表示为fv
min
,垂直最大可视角度表示为fv
max
,则有:
[0086]
fu=[fu
min
,fu
max
],fv=[fv
min
,fv
max
]。
[0087]
此处为左闭右闭区间,是出于用户观看体验考虑,需要使用户能够在用户vr设备上同时观看到当前的fov可视范围的极值视场角。
[0088]
结合步骤s10中的每个分区的水平视场角和垂直视场角范围区间,对每个视频分片进行遍历,分别将原始vr全景视频分片的视场角范围与用户当前的可视范围进行求交集。如果两个集合存在交集,则表示该视频分区处于用户视野范围内,将交集区间覆盖范围内的目标分区的高精度分片下发至用户vr设备。其中,在用户戴上vr设备的时刻,用户当前的可视范围不一定就会与高精度分片对应的视场角范围存在交集,可能是与中精度分片对应的视场角范围存在交集,或者是与低精度分片对应的视场角范围存在交集。在本发明实施例中,设置用户当前的可视范围始终略小于高精度分片对应的视场角范围,可以理解为确保用户当前的观看内容始终为高精度分片的全景视频,并且可以想到的是,用户当前的可视范围不会超过全景视频的视场角范围。另外,若只存在部分交集,同样认为与用户当前的可视范围存在部分交集的原始vr全景视频分区也是用户感兴趣区域,同样下发高精度分片至用户vr设备,统一交集区间的覆盖范围的一致性。
[0089]
步骤s30,根据当前的马尔可夫状态矩阵和相邻时间的状态转移矩阵,计算得到下一时间点的马尔可夫状态矩阵,将所述下一时间点的马尔可夫状态矩阵对应分区的高精度分片提前下发至用户vr设备。
[0090]
在原始vr全景视频的当前下发播放的事件中,遍历时间线的所有时间点的马尔可夫状态矩阵之后,即可得到所有时间点的状态转移矩阵。在用户观看vr全景视频时,已知当前时间点、马尔可夫状态矩阵(即观看兴趣区)和状态转移矩阵,即可计算出下一个时间点的马尔可夫状态矩阵(即观看兴趣区),并提前对该区域的高精度分片进行预下载。这样就能保证用户的视野内始终有最高精度的视频分片进行填充。当然,若预下载的区域不是用户感兴趣的视频区域,则会实时下载对应存在交集的分区的高精度分片,但会因为网络速度的原因产生延迟。
[0091]
在本实施例中,通过将原始vr全景视频进行预设数量的分区,从而得到每个分区的水平视场角和垂直视场角范围区间,而且对每个分区进行高、中或低三种精度规格的分片,并为每个分区设置一个与时间点相关联的初始权重。把接收到用户vr设备实时上传的用户当前的水平视场角和垂直视场角范围区间,与原始vr全景视频的所有分区的水平视场角和垂直视场角范围区间进行比较,判断是否对应存在交集。如果对应存在交集,则将交集区间覆盖范围内的目标分区的高精度分片、中精度分片和低精度分片下发至用户vr设备。
[0092]
在原始vr全景视频的已下发播放的事件中,以对应存在交集的时刻为开始时间,以不存在交集的时刻为结束时间,将对应存在交集的分区的初始权重进行自增累加,得到分区权重随时间变化的权重变化记录。使用权重变化记录构建每一时间点的马尔可夫状态矩阵,结合前后相邻两个时间点的马尔可夫状态矩阵,计算得到每一时间点的状态转移矩阵。在原始vr全景视频的当前下发播放的事件中,根据当前时间点的马尔可夫状态矩阵和状态转移矩阵,计算得到下一时间点的马尔可夫状态矩阵,根据下一时间点的马尔可夫状态矩阵将对应分区的高精度分片提前下发至用户vr设备。
[0093]
首先,引入基于兴趣区统计的调度策略,即使用统计方法预测用户观看兴趣区,进行高质量视频子块的提前预传输,可有效提升用户的观看体验。
[0094]
而且,对于视频进行了多分区、多质量层级及分片权重的预处理方法,可以在不降低视频质量的前提下,有效的降低传输数据量。
[0095]
另外,兴趣区检测及预测是基于用户实际数据进行权重统计和校正的,具有更好的数据可信度。
[0096]
从而,在尽量节约用户带宽及设备性能资源的同时,保证用户的观看体验。
[0097]
可选地,所述将原始vr全景视频进行分区,对每个分区进行高、中或低三种精度规格的分片的步骤包括:
[0098]
综合所述原始vr全景视频的分区精度和解码效率,设定预设数量的大小;
[0099]
将原始vr全景视频进行预设数量的分区,得到每个分区的水平视场角和垂直视场角范围区间,对每个分区进行高、中或低三种精度规格的分片,并为每个分区设置一个与时间点相关联的初始权重;
[0100]
在开始设置权重时,将每个分区均设置为相同的初始权重。
[0101]
vr全景视频分区数量越大,每一个vr全景视频分区覆盖的视场角范围越小,传输过程中控制高精度分片范围就越精准,但同时解码额外开销也越大。因此在预处理阶段,综合传输和解码效率,在本发明实施例中对原始视频进行6*3分区。
[0102]
对每个分区ti进行高精度中精度低精度三种规格的磁贴分片,(i∈{1,2,...,18})。并为每个分区设置一个与时间点相关联的初始权重pri(t)。
[0103]
在本发明实施例中,参照图4,在时间线的起始,所有分片的权重都被设置为相同的初始权重,在本发明实施例中,预设初始权重为1。即:
[0104]
pri(t)=1(t=0,i∈{1,2,...,18})。
[0105]
可选地,所述vr全景视频的预处理方法,还包括:
[0106]
在所述原始vr全景视频的已下发播放的事件中,以对应存在交集的时刻为开始时
间,以不存在交集的时刻为结束时间,将对应存在交集的分区的初始权重自增累加,得到分区权重随时间变化的权重变化记录;
[0107]
在所述开始时间和所述结束时间的时间区间内,每增加预设时长,对应存在交集的分区的权重累加预设步进值。
[0108]
在本发明实施例中,预设时长为1秒,预设步进值为1。从某个分区进入用户fov范围内开始,令该时刻t1的分片权重pri(t1)为2,到该分区离开用户fov范围的时间t2为止,时间t从t1开始,每增加1s,则pri(t)累加1。即:
[0109]
pri(t)=2,t=t1,
[0110]
pri(t+1)=pri(t)+1,t1《t《=t2。
[0111]
参照图5,为0:01:00时vr全景视频各分区的权重。
[0112]
参照图6,为0:01:30时vr全景视频各分区的权重。
[0113]
可选地,在所述将对应存在交集的分区的初始权重自增累加之后的步骤,还包括:
[0114]
若不存在交集,则将对应不存在交集的分区的权重重置为初始权重。
[0115]
若不存在交集,例如当视频分片离开用户fov范围后到下一次进入用户fov范围前,令
[0116]
pri(t)=1,t》t2。
[0117]
以此表明权重大于1的分区认为是用户感兴趣的、想要看到的vr全景视频区域。
[0118]
可选地,在所述得到分区权重随时间变化的权重变化记录之后的步骤,还包括:
[0119]
使用所述权重变化记录构建每一时间点的马尔可夫状态矩阵,结合前后相邻两个时间点的马尔可夫状态矩阵,计算得到每一时间点的状态转移矩阵。
[0120]
将已下发播放的原始vr全景视频作为历史数据,当接收到新的播放需求,对原始vr全景视频做出重播动作时,选择执行本发明实施例的vr全景视频的预处理方法。在原始vr全景视频的已下发播放的事件中,从某个分区进入用户fov范围内的时间t1开始,将该分区的初始权重自增累加,直到该分区离开用户fov范围的时间t2为止,停止自增累加。根据视频分区在整条时间线上进入和离开用户fov的记录,则可以得到分区权重随时间线的权重变化记录。
[0121]
vr全景视频包含拍摄点周围360度全角度的影像,然而真正吸引用户兴趣的内容仅仅集中在部分角度的视频分片上(例如体育比赛或者舞台表演视频中的运动场、舞台等所在视频分片为用户兴趣区,看台区、宾客区等区域则非用户兴趣区)。因此大多数用户在某个时间点观看的兴趣区域是符合正态分布特性的(即大多数用户的观看区域会在某个时间点集中在某一部分视频分片上)。根据实际内容的不同,兴趣区则会分布在不同的区间。
[0122]
时间线是单向流动的,无法回溯,所以用户观看的兴趣区域变化过程在时间线上也是单向连续的。每一个时刻用户的观看区域相比上一个时刻观看区域的变化,与之前的所有时刻都是无关的。马尔可夫过程模型比较适合用于描述此类场景的数学模型。因此,我们可以对视频分片的兴趣区分布区间以及随时间的权重变化趋势构建一个马尔可夫过程模型。
[0123]
将兴趣区分布用一个6*3的矩阵m表示(元素数量与分区数量相同),即矩阵的每一个元素代表一个视频分片在某时间点权重:
[0124][0125]
m(t)则为时间点t的马尔可夫状态矩阵,使用权重变化记录即可构建每一时间点的马尔可夫状态矩阵。
[0126]
在时间线的维度上,在时间点t+1时的兴趣区分布矩阵m(t+1)相对上一个时间点t的矩阵m(t)的变化与之前的所有时间点都是无关的,仅仅由上一个时间点的分布矩阵m(t)和状态转移矩阵p(t)有关:
[0127]
m(t+1)=p(t)*m(t),
[0128]
又因为根据已下发播放的原始vr全景视频的历史数据已经得到在任意时间点的所有分区的权重变化记录,即已知任意时间点t的马尔可夫状态矩阵m(t)。所以结合前后相邻两个时间点的马尔可夫状态矩阵,就能计算得到每一时间点的状态转移矩阵p(t):
[0129]
p(t)=m(t+1)*m(t)-1
,
[0130]
而对于同一个原始vr全景视频的不同用户的观看,其状态转移矩阵p(t)则是相同一样的。
[0131]
以上计算模型则为马尔可夫过程的模型。
[0132]
可选地,所述若存在交集之后的步骤,还包括:
[0133]
以交集区间覆盖范围内的高精度分片对应的用户可视角度,计算得到第一用户可视角度和第二用户可视角度,将第一用户可视角度对应的中精度分片和第二用户可视角度对应的低精度分片下发至所述用户vr设备。
[0134]
本发明实施例提前对高精度分片进行预下载,保证用户感兴趣区域的视野内始终有最高精度的视频分片进行填充。另外,当把用户当前的与每个分区的水平和垂直视场角范围区间进行分别对应比较,得到交集区间覆盖范围后,以交集区间覆盖范围内的高精度分片对应的用户可视角度,求出中精度分片和低精度分片对应的用户可视角度,即第一用户可视角度和第二用户可视角度,并下发第一用户可视角度和第二用户可视角对应的中精度分片和低精度分片至用户vr设备,保证用户感兴趣区域的视野周围有中等精度的视频分片,远离用户感兴趣区域的视野范围的部分有低精度视频分片。
[0135]
可选地,所述以交集区间覆盖范围内的高精度分片对应的用户可视角度,计算得到第一用户可视角度和第二用户可视角度的步骤包括:
[0136]
以交集区间覆盖范围内的高精度分片对应的用户可视角度的补角作为第一用户可视角度,以交集区间覆盖范围内的高精度分片对应的用户可视角度以及第一用户可视角度两者之和的组角作为第二用户可视角度。
[0137]
参照图3,为根据用户fov视角发送不同精度的视频分区的策略。以高精度分片对应的用户可视角度为80度为例进行说明,则此时中精度分片对应的第一用户可视角度为100度(80度的补角),低精度分片对应的第二用户可视角度为180度(高精度分片对应的用户可视角度为80度和中精度分片对应的用户可视角度为100度的组角),也可以说低精度分片对应的第二用户可视角度固定为180度,但具体对应的方位角由高精度和中精度分片的用户可视角度确定。可以理解的是,在本发明实施例中参照图3进行的根据用户fov视角发送不同精度的视频分区的策略,是在水平视场角方向上进行的计算,而在垂直视场角方向
上的发送不同精度的视频分区的策略未做说明,但不影响本发明实施例的完整和实施。
[0138]
可选地,所述将第一用户可视角度对应的中精度分片和第二用户可视角度对应的低精度分片下发至所述用户vr设备的步骤包括:
[0139]
将视野中心点180度范围内的中精度分片以及视野中心点180度范围外的低精度分片下发至所述用户vr设备,所述中精度分片平均位于高精度分片两侧。
[0140]
同样参照图3,以高精度分片对应的用户可视角度为80度为例进行说明,中精度分片对应的第一用户可视角度为100度(80度的补角),其中中精度分片为平均位于高精度分片两侧的两部分,每部分50度。在用户vr设备上表现为,视野中央80度为高精度分片视频,视野中央左右两侧各50度范围内为中精度分片视频。也就是说,将视野中心点180度范围内的中精度分片以及视野中心点180度范围外的低精度分片下发至用户vr设备。由于中精度分片以及低精度分片的传输和解码压力较小,则选择进行实时传输,所以并未采用高精度分片的预下载方式进行传输。
[0141]
此外,本发明实施例还提供一种vr全景视频的预处理设备,所述vr全景视频的预处理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的vr全景视频的预处理程序,所述vr全景视频的预处理程序被所述处理器执行时实现如上述的vr全景视频的预处理方法的步骤。
[0142]
此外,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有vr全景视频的预处理程序,所述vr全景视频的预处理程序被处理器执行时实现如上所述的vr全景视频的预处理方法的步骤。
[0143]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
[0144]
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0145]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0146]
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
技术特征:
1.一种vr全景视频的预处理方法,其特征在于,所述vr全景视频的预处理方法包括:将原始vr全景视频进行分区,对每个分区进行高、中或低三种精度规格的分片;将用户当前视场角范围与每个分区的视场角范围进行比较,若存在交集,则按照交集区间覆盖范围将所述高、中或低精度规格的分片下发至用户vr设备;根据当前的马尔可夫状态矩阵和相邻时间的状态转移矩阵,计算得到下一时间点的马尔可夫状态矩阵,将所述下一时间点的马尔可夫状态矩阵对应分区的高精度分片提前下发至用户vr设备。2.如权利要求1所述的vr全景视频的预处理方法,其特征在于,所述将原始vr全景视频进行分区,对每个分区进行高、中或低三种精度规格的分片的步骤包括:综合所述原始vr全景视频的分区精度和解码效率,设定预设数量的大小;将原始vr全景视频进行预设数量的分区,得到每个分区的水平视场角和垂直视场角范围区间,对每个分区进行高、中或低三种精度规格的分片,并为每个分区设置一个与时间点相关联的初始权重;在开始设置权重时,将每个分区均设置为相同的初始权重。3.如权利要求2所述的vr全景视频的预处理方法,其特征在于,所述vr全景视频的预处理方法,还包括:在所述原始vr全景视频的已下发播放的事件中,以对应存在交集的时刻为开始时间,以不存在交集的时刻为结束时间,将对应存在交集的分区的初始权重自增累加,得到分区权重随时间变化的权重变化记录;在所述开始时间和所述结束时间的时间区间内,每增加预设时长,对应存在交集的分区的权重累加预设步进值。4.如权利要求3所述的vr全景视频的预处理方法,其特征在于,在所述将对应存在交集的分区的初始权重自增累加之后的步骤,还包括:若不存在交集,则将对应不存在交集的分区的权重重置为初始权重。5.如权利要求3所述的vr全景视频的预处理方法,其特征在于,在所述得到分区权重随时间变化的权重变化记录之后的步骤,还包括:使用所述权重变化记录构建每一时间点的马尔可夫状态矩阵,结合前后相邻两个时间点的马尔可夫状态矩阵,计算得到每一时间点的状态转移矩阵。6.如权利要求1所述的vr全景视频的预处理方法,其特征在于,所述若存在交集之后的步骤,还包括:以交集区间覆盖范围内的高精度分片对应的用户可视角度,计算得到第一用户可视角度和第二用户可视角度,将第一用户可视角度对应的中精度分片和第二用户可视角度对应的低精度分片下发至所述用户vr设备。7.如权利要求6所述的vr全景视频的预处理方法,其特征在于,所述以交集区间覆盖范围内的高精度分片对应的用户可视角度,计算得到第一用户可视角度和第二用户可视角度的步骤包括:以交集区间覆盖范围内的高精度分片对应的用户可视角度的补角作为第一用户可视角度,以交集区间覆盖范围内的高精度分片对应的用户可视角度以及第一用户可视角度两者之和的组角作为第二用户可视角度。
8.如权利要求7所述的vr全景视频的预处理方法,其特征在于,所述将第一用户可视角度对应的中精度分片和第二用户可视角度对应的低精度分片下发至所述用户vr设备的步骤包括:将视野中心点180度范围内的中精度分片以及视野中心点180度范围外的低精度分片下发至所述用户vr设备,所述中精度分片平均位于高精度分片两侧。9.一种vr全景视频的预处理设备,其特征在于,所述vr全景视频的预处理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的vr全景视频的预处理程序,所述vr全景视频的预处理程序被所述处理器执行时实现如权利要求1至8中任一项所述的vr全景视频的预处理方法的步骤。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有vr全景视频的预处理程序,所述vr全景视频的预处理程序被处理器执行时实现如权利要求1至8中任一项所述的vr全景视频的预处理方法的步骤。
技术总结
本发明公开了一种VR全景视频的预处理方法、设备及存储介质,所述方法为:将原始VR全景视频进行分区得到各分区的水平和垂直视场角范围区间,对每个分区进行高、中或低三种精度规格的分片,设置一个与时间点相关联的初始权重。把用户当前的与每个分区的水平和垂直视场角范围区间进行比较,若对应存在交集则将交集区间覆盖范围内的高、中、低精度分片下发至用户VR设备。根据当前的马尔可夫状态矩阵,和在原始VR全景视频的已下发播放的事件中计算得到的每一时间点的状态转移矩阵,计算得到下一时间点的马尔可夫状态矩阵,并将对应分区的高精度分片提前下发至用户VR设备。从而在尽量节约用户带宽及设备性能资源的同时,保证用户的观看体验。观看体验。观看体验。
技术研发人员:李绥彪
受保护的技术使用者:深圳创维新世界科技有限公司
技术研发日:2021.11.26
技术公布日:2022/3/8