CN116886952A - 全景视频缓存方法、装置、电子设备及存储介质 - Google Patents

全景视频缓存方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN116886952A
CN116886952A CN202310847998.8A CN202310847998A CN116886952A CN 116886952 A CN116886952 A CN 116886952A CN 202310847998 A CN202310847998 A CN 202310847998A CN 116886952 A CN116886952 A CN 116886952A
Authority
CN
China
Prior art keywords
video
matrix
interest
target
weight
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310847998.8A
Other languages
English (en)
Inventor
李子桐
许长桥
丁仁杰
肖寒
杨树杰
马云霄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN202310847998.8A priority Critical patent/CN116886952A/zh
Publication of CN116886952A publication Critical patent/CN116886952A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2181Source of audio or video content, e.g. local disk arrays comprising remotely distributed storage units, e.g. when movies are replicated over a plurality of video servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/252Processing of multiple end-users' preferences to derive collaborative data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请提供一种全景视频缓存方法、装置、电子设备及存储介质,所述方法包括:获取目标全景视频和多个用户观看所述目标全景视频的历史数据。对所述目标全景视频进行投影分割处理,以得到多个视频段,其中,每个视频段中包括多个视频分片。基于所述历史数据计算每个视频分片的缓存权重,基于所述缓存权重确定缓存分片序列,按照所述缓存分片序列中的排列顺序将所述视频分片存储在边缘服务器中。通过上述方式,从用户观看全景视频的历史数据中提取用户关注度较高的视频分片,将关注度较高的视频分片预先缓存在边缘服务器中,减少远程服务器压力和通信链路的流量拥塞。同时,能够大大降低传输时延,减少播放的卡顿现象,为用户带来良好的观看体验。

Description

全景视频缓存方法、装置、电子设备及存储介质
技术领域
本申请涉及流媒体技术领域,尤其涉及一种全景视频缓存方法、装置、电子设备及存储介质。
背景技术
得益于5G技术的发展与支持,虚拟现实(Virtual Reality,VR)被认为是下一代网络技术的代表性应用场景。用户可以通过头戴式设备、VR眼镜等虚拟现实设备享受观看全景视频、进行大型游戏交互以及VR直播等沉浸式体验。与传统的扁平化视频不同的是,VR全景视频对于时延、带宽等网络条件要求很高。由于VR全景视频占用存储空间较大,在传输时产生的时延问题以及在播放时出现的卡顿问题,都对VR全景视频业务质量产生了一定的影响。
发明内容
有鉴于此,本申请的目的在于提出一种全景视频缓存方法、装置、电子设备及存储介质,以解决VR全景视频在传输时产生的时延问题以及在播放时出现的卡顿问题。
基于上述目的,本申请的第一方面提供了一种全景视频的缓存方法,包括:
获取目标全景视频和多个用户观看所述目标全景视频的历史数据;
对所述目标全景视频进行投影分割处理,以得到多个视频段,其中,每个视频段中包括多个视频分片;
基于所述历史数据计算每个视频分片的缓存权重;
基于所述缓存权重确定缓存分片序列,按照所述缓存分片序列中的排列顺序将所述视频分片存储在边缘服务器。
可选的,所述基于所述历史数据计算每个视频分片的缓存权重,包括:
根据所述历史数据中每个用户对应的视点位置计算确定第一矩阵,其中,所述第一矩阵中的元素用于表征两个视点对应的方向向量之间的夹角;
基于所述历史数据中的用户视野范围和所述第一矩阵采用聚类算法,确定所述目标全景视频中的多个感兴趣区域以及第二矩阵,其中,所述第二矩阵中的元素用于表征所述感兴趣区域占所述用户视野范围的比率;
基于所述第二矩阵分别计算每个感兴趣区域对应的目标吸引度;
针对每个视频段,分别计算所述视频段内的每个视频分片与所述视频段内的感兴趣区域之间的偏差值;
基于所述目标吸引度和所述偏差值计算每个视频分片的缓存权重。
可选的,所述根据所述历史数据中每个用户对应的视点位置计算确定第一矩阵,包括:
通过以下公式确定所述第一矩阵A中的每个元素a(i,j):
其中,(x1,y1,z1)表示视点i对应的视点位置,(x2,y2,z2)表示视点j对应的视点位置,i,j∈(1,m),i≠j,m表示视点总数。
可选的,所述聚类算法为DBSCAN算法;所述基于所述历史数据中的用户视野范围和所述第一矩阵采用聚类算法,确定所述目标全景视频中的多个感兴趣区域以及第二矩阵,包括:
基于所述第一矩阵,采用所述DBSCAN算法对所述历史数据中的用户视野范围进行聚类,以确定所述目标全景视频中的多个感兴趣区域以及第二矩阵。
可选的,确定所述第二矩阵,包括:通过以下公式确定所述第二矩阵S中的每个元素sij
其中,Δα表示视点i对应的用户的视野范围与视点j对应的用户的视野范围之间的横向偏离角度,Δβ表示视点i对应的用户的视野范围与视点j对应的用户的视野范围之间的纵向偏离角度,视野范围大小为120°*60°。
可选的,所述基于所述第二矩阵分别计算每个感兴趣区域对应的目标吸引度,包括:
通过以下公式计算每个感兴趣区域对应的目标吸引度Ik
其中,sij,k表示在第二矩阵S中与第k个感兴趣区域关联的元素,i表示第i个视点,j表示第j个视点,i,j∈(1,m),i≠j,m表示视点总数。
可选的,所述分别计算所述视频段内的每个视频分片与所述视频段内的感兴趣区域之间的偏差值,包括:
将所述视频分片对应的法向量与所述感兴趣区域对应的法向量之间的夹角作为所述偏差值。
可选的,所述缓存权重包括距离权重和吸引权重;所述基于所述目标吸引度和所述偏差值计算每个视频分片的缓存权重,包括:
通过以下公式计算所述缓存权重:
W{p,q,k}=α·PD{p,q,k}+β·PI{p,q,k} (5)
其中,W{p,q,k}表示第p个视频段中的第q个视频分片对应第k个感兴趣区域的缓存权重,α和β表示权重因子,PD{p,q,k}表示第p个视频段中的第q个视频分片对应第k个感兴趣区域的距离权重,PI{p,q,k}表示第p个视频段中的第q个视频分片所属的第k个感兴趣区域的吸引权重。
可选的,还包括:
通过以下公式计算所述距离权重PDp,q,k
其中,Dp,q,k表示第p个视频段中的第q个视频分片与第k个感兴趣区域之间的偏差值,D表示所有偏差值组成的偏差矩阵,max(D)表示偏差矩阵D中最大的偏差值,min(D)表示偏差矩阵D中最小的偏差值,k∈(1,n),n表示第p个视频段中包含的感兴趣区域的总数;
通过以下公式计算所述吸引权重PI{p,q,k}
其中,Ik表示第k个感兴趣区域的目标吸引度,I表示所有目标吸引度组成的吸引度矩阵,max(I)表示I中最大的目标吸引度,min(I)表示I中最小的目标吸引度。
可选的,所述基于所述缓存权重确定缓存分片序列,包括:
基于所述缓存权重对所有视频分片按照从大到小的顺序进行排序,得到所述缓存分片序列。
可选的,在按照所述缓存分片序列中的排列顺序将所述视频分片存储在边缘服务器之前,包括:
从远端服务器调取所述缓存分片序列对应的视频分片。
本申请的第二方面还公开了一种全景视频的缓存装置,包括:
获取模块,被配置为获取目标全景视频和多个用户观看所述目标全景视频的历史数据;
分割模块,被配置为对所述目标全景视频进行投影分割处理,以得到多个视频段,其中,每个视频段中包括多个视频分片;
计算模块,被配置为基于所述历史数据计算每个视频分片的缓存权重;
缓存模块,被配置为基于所述缓存权重确定缓存分片序列,按照所述缓存分片序列中的排列顺序将所述视频分片存储在边缘服务器。
本申请的第三方面还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可由所述处理器执行的计算机程序,所述处理器在执行所述计算机程序时实现如上所述的方法。
本申请的第四方面还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行如上所述的方法。
从上面所述可以看出,本申请提供的全景视频缓存方法、装置、电子设备及存储介质,所述方法包括:获取目标全景视频和多个用户观看所述目标全景视频的历史数据。对所述目标全景视频进行投影分割处理,以得到多个视频段,其中,每个视频段中包括多个视频分片。基于所述历史数据计算每个视频分片的缓存权重,基于所述缓存权重确定缓存分片序列,按照所述缓存分片序列中的排列顺序将所述视频分片存储在边缘服务器中。通过上述方式,从用户观看全景视频的历史数据中提取用户关注度较高的视频分片,将关注度较高的视频分片预先缓存在边缘服务器中,当接收到新的视频请求时,可以直接从边缘服务器中调取请求的视频分片,减少远程服务器压力和通信链路的流量拥塞。同时,能够大大降低传输时延,减少播放的卡顿现象,为用户带来良好的观看体验。
附图说明
为了更清楚地说明本申请或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例的全景视频的缓存方法的流程示意图;
图2为本申请实施例的缓存权重计算方法的流程示意图;
图3为本申请实施例的视频段中的视野范围的示意图;
图4为本申请实施例的全景视频的缓存装置的结构示意图;
图5为本申请实施例的电子设备硬件结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本申请进一步详细说明。
需要说明的是,除非另外定义,本申请实施例使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
如背景技术所述,VR全景视频凭借自身在代入感、多方位沉浸方面的优势,为观众提供如临其境、亦真亦幻的全新体验,使人们从传统意义上的旁观者转变为场景真正的参与者。VR全景视频是一种立体视频格式。与普通的2D视频在平面上展开不同,VR全景视频是在球体上展开。这种新媒体也是近年元宇宙场景的具象表现形式,为web3.0的一些领域提供了技术支持。然而,与传统的扁平化视频不同的是,VR全景视频对于时延、带宽等网络条件要求很高。一方面,为避免用户观看视频时产生晕动症,沉浸式多媒体渲染延迟的标准应在30ms之内;另一方面,超高清虚拟现实视频传输带宽需求为400Mbps,约为4K平面视频带宽需求(30Mbps左右)的10倍以上。一段5分钟超高清VR全景视频所需磁盘空间将达到15GB。在沉浸式VR全景视频体验中,由于用户能以3DoF(degree of free,自由度)进行视野移动,其观看行为具有动态性和多样性,进一步为全景视频传输渲染带来了难题。高比特率、高带宽、高QoS(Quality of Service,服务质量)和低时延、零卡顿的苛刻要求成为了提高VR视频业务质量的瓶颈。
为满足上述要求,基于分片的视频流已成为全景视频交付的共识方法。与遭受严重双极性失真问题的传统的等距柱状投影ERP(Equi-Rectangular Projection)相比,立方体投影格式CMP(Cubemap projection format)下的基于分片的全景视频流不仅在内容制作和系统实现方面更简单,而且观看体验也得到极大改善。基于CMP分片的流媒体为提高全景视频的服务质量创造了更多的可能性。
但是,如果多个用户同时请求全景视频时,远程服务器的压力较大,且容易造成通信链路的流量拥塞。有鉴于此,本申请提出一种全景视频的缓存方法,为全景视频传输渲染高要求问题提出了关键有效的解决方案。一方面,将经常被请求的视频分片预先缓存在与终端相近的边缘服务器上,从而减少远程服务器压力和回程链路的流量拥塞;另一方面,传输时延将大大降低,从而为良好的用户体验提供了先决条件。
以下结合附图来详细说明本申请的实施例。
本申请提出了一种全景视频的缓存方法,参考图1,包括以下步骤:
步骤102、获取目标全景视频和多个用户观看所述目标全景视频的历史数据。
具体的,目标全景视频为在边缘服务器中待缓存的视频,确定了目标全景视频中需要在边缘服务器中缓存的视频片段后,当用户请求目标全景视频时,可以将边缘服务器中已缓存的匹配的视频片段发送至用户所在的客户端,以降低传输时延。而在选择需要在边缘服务器中缓存的视频片段时,需要结合多个用户观看目标全景视频的历史数据确定。通过历史数据确定需要缓存的视频片段,能够提高缓存的视频片段的命中率,也即确保缓存的视频片段为用户关注度较高、请求率较高的视频片段。历史数据中包含了用户的视点信息和视野范围信息等。
步骤104、对所述目标全景视频进行投影分割处理,以得到多个视频段,其中,每个视频段中包括多个视频分片。
具体的,采用全景视频平铺流处理立方体映射将全景视频输出为CMP投影格式。与传统的ERP投影相比,CMP投影解决了不平衡极点采样的问题。CMP投影有助于消除失真,更加直观简洁,计算复杂度低,可以实现沉浸式媒体显示呈现。采用FFmpeg将CMP投影下的全景视频分割成每个立方体平面的行×列拼贴的一个侧面,并进行编码,其中,FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用多媒体打包器Mp4Box根据DASH(Dynamic Adaptive Streaming over HTTP,基于HTTP的动态自适应的比特率流)协议对分割后的行×列视频块进行切片,以产生m4s视频、m4a音频文件和用于VoD(Video On Demand,视频点播技术)流的静态MPD(Media Presentation Description)列表,其中,MPD是一种描述视频广播和点播内容的描述文件。示例性的,将目标全景视频通过立方体映射分割为6个视频段(每个视频段对应立方体的一个侧面),将每个视频段分割为3×4列的视频分片。在客户端请求目标全景视频时,基于FoV(Field of View,视场角)的分配算法,客户端对于用户视野范围内的视频分片请求高比特率,对于视野范围外的视频分片(例如背景内容)请求低比特率。
步骤106、基于所述历史数据计算每个视频分片的缓存权重。
通过历史数据中每个用户的观看信息可以确定目标全景视频中的多个感兴趣区域ROI(Region Of Interest),感兴趣区域为用户关注度较高的区域。再根据感兴趣区域和视频分片的关联关系,进而确定每个视频分片的缓存权重。缓存权重表征了视频分片的重要程度,缓存权重越大,表示对于该视频分片的请求率越高,则在边缘存储器中优先缓存该视频分片。在现有的边缘存储器的储存容量下尽可能提升视频分片的缓存命中率。
步骤108、基于所述缓存权重确定缓存分片序列,按照所述缓存分片序列中的排列顺序将所述视频分片存储在边缘服务器中。
具体的,在缓存分片序列中,排列顺序靠前的视频分片优先存储在边缘服务器中。示例性的,在缓存分片序列中按照从前至后的顺序,依次在边缘服务器中存储视频分片,直至边缘服务器缓存容量达到上限为止。或者,可以根据历史经验,将缓存分片序列中对应的前N个视频分片存储在边缘服务器中。
基于上述步骤102至步骤108,本实施例提供的一种全景视频的缓存方法,包括:获取目标全景视频和多个用户观看所述目标全景视频的历史数据。对所述目标全景视频进行投影分割处理,以得到多个视频段,其中,每个视频段中包括多个视频分片。基于所述历史数据计算每个视频分片的缓存权重,基于所述缓存权重确定缓存分片序列,按照所述缓存分片序列中的排列顺序将所述视频分片存储在边缘服务器中。通过上述方式,从用户观看全景视频的历史数据中提取用户关注度较高的视频分片,将关注度较高的视频分片预先缓存在边缘服务器中,当接收到新的视频请求时,可以直接从边缘服务器中调取请求的视频分片,减少远程服务器压力和通信链路的流量拥塞。同时,能够大大降低传输时延,减少播放的卡顿现象,为用户带来良好的观看体验。
在一些实施例中,参考图2,所述基于所述历史数据计算每个视频分片的缓存权重,包括以下步骤:
步骤202、根据所述历史数据中每个用户对应的视点位置计算确定第一矩阵,其中,所述第一矩阵中的元素用于表征两个视点对应的方向向量之间的夹角。
具体的,视点表示观察者对于被观察物的相对位置,在本实施例中,也即为用户对于球形的目标全景视频的相对位置。在一具体示例中,目标全景视频中两个视点i和j的方向向量分别为 同时,φ是两个方向向量之间的夹角,(x1,y1,z1)表示视点i对应的视点位置,(x2,y2,z2)表示视点j对应的视点位置,i,j∈(1,m),i≠j,m表示视点总数。
通过式(1)可以计算得到夹角φ:
将m个视点中任意两个视点按照式(1)进行计算得到相应的夹角,将所有的计算得到的夹角组成矩阵,也即第一矩阵,第一矩阵中的元素表示为a(i,j),表示视点i和视点j之间的夹角,也即,
步骤204、基于所述历史数据中的用户视野范围和所述第一矩阵采用聚类算法,确定所述目标全景视频中的多个感兴趣区域以及第二矩阵,其中,所述第二矩阵中的元素用于表征所述感兴趣区域占所述用户视野范围的比率。
具体的,本实施例中的聚类算法为DBSCAN算法。DBSCAN是一种基于密度的聚类算法,可以在带有噪声的空间数据集中发现任意形状的聚类,它将聚类定义为密度连接的点集。为了更好地应用于球形场景,在原有DBSCAN算法的基础上,将DBSCAN算法的度量指标设置为球面距离,用球形距离相似性矩阵(也即第一矩阵)代替算法的输入。基于所述第一矩阵,采用DBSCAN算法对所述历史数据中的用户视野范围进行聚类,以确定所述目标全景视频中的多个感兴趣区域以及第二矩阵。在将第一矩阵输入DBSCAN算法的同时,还需要将视野范围的坐标输入至DBSCAN算法中,聚合后通过DBSCAN算法输出所述目标全景视频中的多个感兴趣区域以及第二矩阵。感兴趣区域为不同用户视野范围的重叠区域,DBSCAN算法在输出感兴趣区域数量的同时,还能够输出每个感兴趣区域的中心位置。对于每个用户,将其视野范围定义为长为120°、宽为60°的矩形区域。
进一步的,通过式(3)确定所述第二矩阵S中的每个元素sij
其中,Δα表示视点i对应的用户的视野范围与视点j对应的用户的视野范围之间的横向偏离角度,Δβ表示视点i对应的用户的视野范围与视点j对应的用户的视野范围之间的纵向偏离角度。图3示出了视频段中的视野范围的示意图。如图3所示,在视频段300中,包括视点i对应的视野范围301以及视点j对应的视野范围302。视野范围301和视野范围302的重叠区域303为感兴趣区域。视野范围301和视野范围302之间的横向偏离角度为各视野范围中心点之间的横向距离。视野范围301和视野范围302之间的纵向偏离角度为各视野范围中心点之间的纵向距离。
步骤206、基于所述第二矩阵分别计算每个感兴趣区域对应的目标吸引度。
具体的,通过式(4)计算每个感兴趣区域对应的目标吸引度Ik
其中,sij,k表示在第二矩阵S中与第k个感兴趣区域关联的元素,i表示第i个视点,j表示第j个视点,i,j∈(1,m),i≠j,m表示视点总数。示例性的,如果第k个感兴趣区域是视点i对应的视野范围和视点j对应的视野范围的重合区域,则第k个感兴趣区域的目标吸引度Ik=sij
步骤208、针对每个视频段,分别计算所述视频段内的每个视频分片与所述视频段内的感兴趣区域之间的偏差值。
具体的,偏差值等于所述视频分片对应的法向量与所述感兴趣区域对应的法向量之间的夹角。
步骤210、基于所述目标吸引度和所述偏差值计算每个视频分片的缓存权重。
具体的,所述缓存权重包括距离权重和吸引权重。通过式(5)计算所述缓存权重:
W{p,q,k}=α·PD{p,p,k}+β·PI{p,q,k} (5)
其中,W{p,q,k}表示第p个视频段中的第q个视频分片对应第k个感兴趣区域的缓存权重,α和β表示权重因子,PD{p,q,k}表示第p个视频段中的第q个视频分片对应第k个感兴趣区域的距离权重,PI{p,q,k}表示第p个视频段中的第q个视频分片所属的第k个感兴趣区域的吸引权重。
进一步的,通过式(6)计算所述距离权重PDp,q,k
其中,Dp,q,k表示第p个视频段中的第q个视频分片与第k个感兴趣区域之间的偏差值,D表示所有偏差值组成的偏差矩阵,max(D)表示偏差矩阵D中最大的偏差值,min(D)表示偏差矩阵D中最小的偏差值,k∈(1,n),n表示第p个视频段中包含的感兴趣区域的总数。
进一步的,通过式(7)计算所述吸引权重PI{p,q,k}
其中,Ik表示第k个感兴趣区域的目标吸引度,I表示所有目标吸引度组成的吸引度矩阵,max(I)表示I中最大的目标吸引度,min(I)表示I中最小的目标吸引度。
进一步的,通过式(8)计算权重因子α和β:
其中,size(D)表示偏离矩阵D的大小。
在一些实施例中,所述基于所述缓存权重确定缓存分片序列,包括:
基于所述缓存权重对所有视频分片按照从大到小的顺序进行排序,得到所述缓存分片序列。也即,缓存分片序列中是按照缓存权重从大到小的顺序进行排列的,缓存权重越大,排序越靠前。
在一些实施例中,在按照所述缓存分片序列中的排列顺序将所述视频分片存储在边缘服务器之前,包括:
从远端服务器调取所述缓存分片序列对应的视频分片。目标全景视频的视频分片存储在远端服务器中,确定了目标全景视频中需要缓存的视频分片后,从远端服务器调取这些需要缓存的视频分片,再将视频分片存储在相应的边缘服务器中,以便客户端请求查看。
需要说明的是,本申请的实施例还可以以下方式进一步描述:
如下算法1所示,针对第p个视频段,基于用户观看目标全景视频的历史数据采用DBSCAN聚类算法确定感兴趣区域ROI以及感兴趣区域ROI的目标吸引度Ik。然后计算第p个视频段内的第q个视频分片tile(p,q)与第p个视频段内第k个ROI(p,k)之间的偏差值Dp,q,k。然后再基于目标吸引度Ik和偏差值Dp,q,k计算缓存权重W{p,q,k}。边缘集群根据缓存权重W{p,q,k}确定缓存至边缘服务器的视频分片。
具体的,算法1中的输入为历史数据和视频段数量T,输出为需要缓存的视频分片Cache=tile(p,q)。
函数1:如果当前第p个视频段属于T个视频段中的视频段,则采用DBSCAN算法确定该视频段内的n个ROI以及每个ROI的中心位置。循环遍历每个ROI、每个视频分片,计算每个视频分片对应的Dp,q,k、Ik和W{p,q,k}。最后返回需要缓存的视频分片cache(W)。
函数2:如果视频分片tile(p,q)属于排序后的缓存分片序列sort(W),此时如果边缘服务器的缓存容量已满,则停止缓存,如果边缘服务器的缓存容量未满且边缘服务器中不存在视频分片tile(p,q),则将视频分片tile(p,q)存储至边缘服务器中,最后返回缓存的视频分片cache。
此外,由于分布式缓存是基于图块的流,客户端可以访问不同的边缘服务器来请求同一时期的不同m4s视频文件(也即视频分片)。因此,边缘服务集群采用一致性哈希策略实现缓存扩展,提高系统容量。哈希算法处理缓存的视频内容,以确定哪个边缘节点服务于该请求。从远程服务器预取边缘节点缓存,以在本地存储视频资源,并与其他节点协作缓存用户服务。客户端播放器Aframe.js可以将多个dash播放器拼接成CMP视频播放器。WebXRAPI可以支持与头戴显示设备HMD(Head Mounted Display)的交互。Dash.js播放器可以导入ABR算法扩展。通过处理HMD的视场数据,基于HMD与视频图像的空间关系以及网络环境,设计了Fov驱动的ABR算法。在确定每个视频分片的比特率之后,客户端请求每个视频分片的m4s文件以确保用户体验。
需要说明的是,本申请实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本申请实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本申请的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种全景视频的缓存装置。
参考图4,所述全景视频的缓存装置,包括:
获取模块402,被配置为获取目标全景视频和多个用户观看所述目标全景视频的历史数据;
分割模块404,被配置为对所述目标全景视频进行投影分割处理,以得到多个视频段,其中,每个视频段中包括多个视频分片;
计算模块406,被配置为基于所述历史数据计算每个视频分片的缓存权重;
缓存模块408,被配置为基于所述缓存权重确定缓存分片序列,按照所述缓存分片序列中的排列顺序将所述视频分片存储在边缘服务器。
在一些实施例中,所述计算模块406,还被配置为,根据所述历史数据中每个用户对应的视点位置计算确定第一矩阵,其中,所述第一矩阵中的元素用于表征两个视点对应的方向向量之间的夹角;基于所述历史数据中的用户视野范围和所述第一矩阵采用聚类算法,确定所述目标全景视频中的多个感兴趣区域以及第二矩阵,其中,所述第二矩阵中的元素用于表征所述感兴趣区域占所述用户视野范围的比率;基于所述第二矩阵分别计算每个感兴趣区域对应的目标吸引度;针对每个视频段,分别计算所述视频段内的每个视频分片与所述视频段内的感兴趣区域之间的偏差值;基于所述目标吸引度和所述偏差值计算每个视频分片的缓存权重。
在一些实施例中,所述计算模块406,还被配置为,通过以下公式确定所述第一矩阵A中的每个元素a(i,j):
其中,(x1,y1,z1)表示视点i对应的视点位置,(x2,y2,z2)表示视点j对应的视点位置,i,j∈(1,m),i≠j,m表示视点总数。
在一些实施例中,所述聚类算法为DBSCAN算法,所述计算模块406,还被配置为,基于所述第一矩阵,采用所述DBSCAN算法对所述历史数据中的用户视野范围进行聚类,以确定所述目标全景视频中的多个感兴趣区域以及第二矩阵。
在一些实施例中,通过以下公式确定所述第二矩阵S中的每个元素sij
其中,Δα表示视点i对应的用户的视野范围与视点j对应的用户的视野范围之间的横向偏离角度,Δβ表示视点i对应的用户的视野范围与视点j对应的用户的视野范围之间的纵向偏离角度,视野范围大小为120°*60°。
在一些实施例中,所述计算模块406,还被配置为,通过以下公式计算每个感兴趣区域对应的目标吸引度Ik
其中,sij,k表示在第二矩阵S中与第k个感兴趣区域关联的元素,i表示第i个视点,j表示第j个视点,i,j∈(1,m),i≠j,m表示视点总数。
在一些实施例中,所述计算模块406,还被配置为,将所述视频分片对应的法向量与所述感兴趣区域对应的法向量之间的夹角作为所述偏差值。
在一些实施例中,所述计算模块406,还被配置为,通过以下公式计算所述缓存权重:
W{p,q,k}=α·PD{p,q,k}+β·PI{p,q,k} (5)
其中,W{p,q,k}表示第p个视频段中的第q个视频分片对应第k个感兴趣区域的缓存权重,α和β表示权重因子,PD{p,q,k}表示第p个视频段中的第q个视频分片对应第k个感兴趣区域的距离权重,PI{p,q,k}表示第p个视频段中的第q个视频分片所属的第k个感兴趣区域的吸引权重。
在一些实施例中,所述计算模块406,还被配置为,通过以下公式计算所述距离权重PDp,q,k
其中,Dp,q,k表示第p个视频段中的第q个视频分片与第k个感兴趣区域之间的偏差值,D表示所有偏差值组成的偏差矩阵,max(D)表示偏差矩阵D中最大的偏差值,min(D)表示偏差矩阵D中最小的偏差值,k∈(1,n),n表示第p个视频段中包含的感兴趣区域的总数;
通过以下公式计算所述吸引权重PI{p,q,k}
其中,Ik表示第p个视频段中的第q个视频分片所属的第k个感兴趣区域的目标吸引度,I表示所有目标吸引度组成的吸引度矩阵,max(I)表示I中最大的目标吸引度,min(I)表示I中最小的目标吸引度。
在一些实施例中,所述缓存模块408,还被配置为,基于所述缓存权重对所有视频分片按照从大到小的顺序进行排序,得到所述缓存分片序列。
在一些实施例中,在按照所述缓存分片序列中的排列顺序将所述视频分片存储在边缘服务器之前,所述缓存模块408,还被配置为,从远端服务器调取所述缓存分片序列对应的视频分片。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述任一实施例中相应的全景视频的缓存方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的全景视频的缓存方法。
图5示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的全景视频的缓存方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的全景视频的缓存方法。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的全景视频的缓存方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本申请的范围(包括权利要求)被限于这些例子;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本申请实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本申请实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本申请实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本申请的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本申请实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本申请的具体实施例对本申请进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本申请实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种全景视频的缓存方法,其特征在于,包括:
获取目标全景视频和多个用户观看所述目标全景视频的历史数据;
对所述目标全景视频进行投影分割处理,以得到多个视频段,其中,每个视频段中包括多个视频分片;
基于所述历史数据计算每个视频分片的缓存权重;
基于所述缓存权重确定缓存分片序列,按照所述缓存分片序列中的排列顺序将所述视频分片存储在边缘服务器。
2.根据权利要求1所述的方法,其特征在于,所述基于所述历史数据计算每个视频分片的缓存权重,包括:
根据所述历史数据中每个用户对应的视点位置计算确定第一矩阵,其中,所述第一矩阵中的元素用于表征两个视点对应的方向向量之间的夹角;
基于所述历史数据中的用户视野范围和所述第一矩阵采用聚类算法,确定所述目标全景视频中的多个感兴趣区域以及第二矩阵,其中,所述第二矩阵中的元素用于表征所述感兴趣区域占所述用户视野范围的比率;
基于所述第二矩阵分别计算每个感兴趣区域对应的目标吸引度;
针对每个视频段,分别计算所述视频段内的每个视频分片与所述视频段内的感兴趣区域之间的偏差值;
基于所述目标吸引度和所述偏差值计算每个视频分片的缓存权重。
3.根据权利要求2所述的方法,其特征在于,所述根据所述历史数据中每个用户对应的视点位置计算确定第一矩阵,包括:
通过以下公式确定所述第一矩阵A中的每个元素a(i,j):
其中,(x1,y1,z1)表示视点i对应的视点位置,(x2,y2,z2)表示视点j对应的视点位置,i,j∈(1,m),i≠j,m表示视点总数。
4.根据权利要求2所述的方法,其特征在于,确定所述第二矩阵,包括:通过以下公式确定所述第二矩阵S中的每个元素sij
其中,Δα表示视点i对应的用户的视野范围与视点j对应的用户的视野范围之间的横向偏离角度,Δβ表示视点i对应的用户的视野范围与视点j对应的用户的视野范围之间的纵向偏离角度,视野范围大小为120°*60°。
5.根据权利要求4所述的方法,其特征在于,所述基于所述第二矩阵分别计算每个感兴趣区域对应的目标吸引度,包括:
通过以下公式计算每个感兴趣区域对应的目标吸引度Ik
其中,sij,k表示在第二矩阵S中与第k个感兴趣区域关联的元素,i表示第i个视点,j表示第j个视点,i,j∈(1,m),i≠j,m表示视点总数。
6.根据权利要求2所述的方法,其特征在于,所述分别计算所述视频段内的每个视频分片与所述视频段内的感兴趣区域之间的偏差值,包括:
将所述视频分片对应的法向量与所述感兴趣区域对应的法向量之间的夹角作为所述偏差值。
7.根据权利要求2所述的方法,其特征在于,所述缓存权重包括距离权重和吸引权重;所述基于所述目标吸引度和所述偏差值计算每个视频分片的缓存权重,包括:
通过以下公式计算所述缓存权重:
W{p,q,k}=α·PD{p,q,k}+β·PI{p,q,k} (5)
其中,W{p,q,k}表示第p个视频段中的第q个视频分片对应第k个感兴趣区域的缓存权重,α和β表示权重因子,PD{p,q,k}表示第p个视频段中的第q个视频分片对应第k个感兴趣区域的距离权重,PI{p,q,k}表示第p个视频段中的第q个视频分片所属的第k个感兴趣区域的吸引权重。
8.根据权利要求7所述的方法,其特征在于,还包括:
通过以下公式计算所述距离权重PDp,q,k
其中,Dp,q,k表示第p个视频段中的第q个视频分片与第k个感兴趣区域之间的偏差值,D表示所有偏差值组成的偏差矩阵,max(D)表示偏差矩阵D中最大的偏差值,min(D)表示偏差矩阵D中最小的偏差值,k∈(1,n),n表示第p个视频段中包含的感兴趣区域的总数;
通过以下公式计算所述吸引权重PI{p,q,k}
其中,Ik表示第k个感兴趣区域的目标吸引度,I表示所有目标吸引度组成的吸引度矩阵,max(I)表示I中最大的目标吸引度,min(I)表示I中最小的目标吸引度。
9.根据权利要求1所述的方法,其特征在于,所述基于所述缓存权重确定缓存分片序列,包括:
基于所述缓存权重对所有视频分片按照从大到小的顺序进行排序,得到所述缓存分片序列。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至9任意一项所述的方法。
CN202310847998.8A 2023-07-11 2023-07-11 全景视频缓存方法、装置、电子设备及存储介质 Pending CN116886952A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310847998.8A CN116886952A (zh) 2023-07-11 2023-07-11 全景视频缓存方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310847998.8A CN116886952A (zh) 2023-07-11 2023-07-11 全景视频缓存方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN116886952A true CN116886952A (zh) 2023-10-13

Family

ID=88256282

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310847998.8A Pending CN116886952A (zh) 2023-07-11 2023-07-11 全景视频缓存方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN116886952A (zh)

Similar Documents

Publication Publication Date Title
Fan et al. A survey on 360 video streaming: Acquisition, transmission, and display
US11653065B2 (en) Content based stream splitting of video data
EP3459252B1 (en) Method and apparatus for spatial enhanced adaptive bitrate live streaming for 360 degree video playback
CN109565610B (zh) 处理全向视频的方法、装置以及存储介质
CN109600674B (zh) 非线性媒体的基于客户端的自适应流式传输
JP6979035B2 (ja) 仮想現実メディアコンテンツのストリーミングを向上させる方法、デバイス及びコンピュータプログラム
CN107888987B (zh) 一种全景视频播放方法及装置
WO2019202207A1 (en) Processing video patches for three-dimensional content
CN110248212B (zh) 多用户360度视频流服务器端码率自适应传输方法及系统
US11539983B2 (en) Virtual reality video transmission method, client device and server
Yaqoob et al. A combined field-of-view prediction-assisted viewport adaptive delivery scheme for 360° videos
US20200404241A1 (en) Processing system for streaming volumetric video to a client device
Park et al. Seaware: Semantic aware view prediction system for 360-degree video streaming
Yaqoob et al. Dynamic viewport selection-based prioritized bitrate adaptation for tile-based 360° video streaming
US20190012822A1 (en) Virtual reality system with advanced low-complexity user interactivity and personalization through cloud-based data-mining and machine learning
Alkhalili et al. A survey of volumetric content streaming approaches
CN108574881B (zh) 一种投影类型推荐方法、服务器及客户端
Vats et al. Semantic-aware view prediction for 360-degree videos at the 5g edge
ES2960073T3 (es) Procedimiento de procesamiento y sistema de procesamiento de datos de vídeo
CN116886952A (zh) 全景视频缓存方法、装置、电子设备及存储介质
Ozcinar et al. Delivery of omnidirectional video using saliency prediction and optimal bitrate allocation
US11134236B2 (en) Image processing device and system
Chen et al. Edgevr360: Edge-assisted multiuser-oriented intelligent 360-degree video delivery scheme over wireless networks
Kočkovič et al. Optimizing 360° Video Delivery: Advancements and Strategic Approaches

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination