本发明涉及视频通信技术领域,具体地,涉及360度视频传输的用户观看视点序列预测方法。
背景技术:
360度视频是虚拟现实技术的一种重要应用,与传统视频相比,360度视频采用全方位摄像头捕捉现实世界每个方位景象,并将这些景象拼接以形成全景图像。当观看360度视频时,用户可以自由转动头部调整观看视角,获得沉浸式体验。然而,360度视频有超高的分辨率,传输完整360度视频需要消耗的带宽高达传统视频的6倍以上。在网络带宽资源受限的情况下,特别是对于移动网络来说,传输完整的360度视频是很困难的。
受限于头戴式显示器的视场区域,每个时刻用户只能观看360度视频的一部分。因此根据用户头部运动选择用户感兴趣的视频区域进行传输能够更加有效利用带宽。从获取用户的需求信息,并将这一信息反馈至服务器端,直至用户接收到视频内容,会经历从用户到服务器的往返时延(round-triptime,rtt)。而用户在这一时间段内可能已经发生了头部位置移动,导致用户接收到的内容不再是其感兴趣的部分。为了避免rtt时延带来的传输滞后性,需要对用户的视点进行预测。
经过对现有技术的检索发现,为了实现用户的视点预测,一种常用方法是通过对过去时刻的视点位置来推断未来时刻的视点位置。y.bao等人在《ieeeinternationalconferenceonbigdata》会议上发表了题为“shootingamovingtarget:motion-prediction-basedtransmissionfor360-degreevideos”的文章,该文章提出了直接将当前时刻的视点位置作为未来时刻的视点位置的简单模型,及采用线性回归、前馈神经网络对用户视点位置随时间的变化关系进行回归分析,进而预测未来时刻的视点位置等三种回归模型。但是,诸如用户职业,年龄,性别,偏好等因素会影响用户对于360度视频的感兴趣区域,未来时刻的视点位置与过去时刻的视点位置之间的关系可以表征为非线性和长时间依赖关系,该文章提出的三种预测模型只能预测单个视点位置,无法预测未来多个时刻的视点位置。
经检索还发现,a.d.aladagli等人在《internationalconferenceon3dimmersion,2018,pp.1-6》发表了题为“predictingheadtrajectoriesin360virtualrealityvideos”的文章,该文章考虑了视频内容对于用户视点位置的影响,基于显著性算法预测视频的显著性区域,以此预测用户视点位置。但是,该文章没有考虑过去时刻视点位置对于观看视点的影响。
技术实现要素:
针对现有技术中的缺陷,本发明的目的是提供一种360度视频传输的用户观看视点序列预测方法。
本发明提供一种360度视频传输的用户观看视点序列预测方法,包括:
将用户过去时刻的视点位置作为视点序列预测模型的输入,通过所述视点序列预测模型预测未来多个时刻的视点位置,所述未来多个时刻的视点位置构成第一视点序列;
通过视点跟踪模型,将视频内容作为所述视点跟踪模型的输入,通过所述视点跟踪模型预测未来多个时刻的视点位置,所述未来多个时刻的视点位置构成第二视点序列;
结合第一视点序列和第二视点序列,确定用户未来的观看视点序列。
可选地,在将用户过去时刻的视点位置作为视点序列预测模型的输入,通过所述视点序列预测模型预测未来多个时刻的视点位置之前,还包括:
基于循环神经网络构建视点序列预测模型;其中,所述视点序列预测模型用于将输入的视点位置编码后输入到循环神经网络,计算隐藏单元和输出单元的值,学习用户不同时刻的观看视点间的长时间依赖关系,输出未来多个时刻的视点位置;所述视点位置包括:俯仰角、偏航角、滚动角的单位圆投影,所述视点位置的变化范围为-1到1;采用双曲正切函数作为输出单元的激活函数,所述激活函数限定所述视点位置的输出范围。
可选地,所述将用户过去时刻的视点位置作为视点序列预测模型的输入,通过所述视点序列预测模型预测未来多个时刻的视点位置,包括:
将用户当前时刻的视点位置作为所述视点序列预测模型第一次迭代的输入,得到第一次迭代的预测视点位置;
循环将上一次迭代的预测视点位置作为所述视点序列预测模型下一次迭代的输入,得到未来多个时刻的预测视点位置。
可选地,所述第一视点序列的长度与用户观看时头部运动的速度有关,用户头部运动速度越慢,则对应的第一视点序列的长度越长;用户头部运动速度越快,则对应的第一视点序列的长度越短。
可选地,在通过视点跟踪模型,将视频内容作为所述视点跟踪模型的输入,通过所述视点跟踪模型预测未来多个时刻的视点位置之前,还包括:
根据目标跟踪相关的滤波器算法构建视点跟踪模型,其中,所述相关的滤波器算法是指:设置相关滤波器,所述相关滤波器对视点位置的视频区域会形成最大响应值。
可选地,所述通过视点跟踪模型,将视频内容作为所述视点跟踪模型的输入,通过所述视点跟踪模型预测未来多个时刻的视点位置,包括:
采用等距圆柱投影方式,将未来时刻的360度视频帧的球形图像投影成平面图像;
通过所述视点跟踪模型在所述平面图像中确定一个边界框,所述边界框中的区域即为视点区域,根据所述视点区域确定对应的视点位置。
可选地,所述结合第一视点序列和第二视点序列,确定用户未来的观看视点序列,包括:
为所述第一视点序列中的视点位置和所述第二视点序列中的视点位置,分别设置不同的权重值w1和w2;且权重w1和w2满足w1+w2=1;其中:权重值w1和w2的设置需要满足预测的用户未来的观看视点位置与实际用户观看视点位置的误差最小原则;
根据权重值w1和w2,以及第一视点序列中的视点位置、第二视点序列中的视点位置,计算用户未来的观看视点序列;计算公式中如下:
其中:
可选地,随着预测时刻的增大,所述视点跟踪模型所预测的第二视点序列的权重w2逐渐减小。
与现有技术相比,本发明具有如下的有益效果:
本发明提供的360度视频传输的用户观看视点序列预测方法,结合了循环神经网络学习用户不同时刻的观看视点之间的长时间依赖关系,基于过去时刻的用户视点位置预测未来多个时刻的视点位置;同时考虑了视频内容对观看视点的影响,基于视频内容预测未来的视点序列;最后综合循环神经网络和视频内容对观看视点的影响,得到用户未来的观看视点序列,能够根据用户头部运动速度改变预测视点序列的长度,具有良好的实用性和扩展性。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例提供的应用360度视频传输的用户观看视点序列预测方法的系统框图;
图2为本发明一实施例提供的视点区域的原理示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
图1为本发明一实施例提供的应用360度视频传输的用户观看视点序列预测方法的系统框图,如图1所示,包括:基于循环神经网络的视点预测模块,基于相关滤波器的视点跟踪模块,融合模块,其中:循环神经网络视点预测模块,结合循环神经网络学习用户不同时刻的观看视点之间的长时间依赖关系,基于过去时刻的用户视点位置预测未来多个时刻的视点位置;相关滤波器视点跟踪模块,考虑了视频内容对观看视点的影响,提出基于相关滤波器的视点跟踪模块,探索视频内容和视点序列之间的关系,基于视频内容预测未来的视点序列;融合模块,结合了循环神经网络视点预测模块和相关滤波器视点跟踪模块的预测结果,两个模块优势互补,提高了模型的预测准确度。
本实施例中,结合循环神经网络学习用户不同时刻的观看视点之间的长时间依赖关系,基于过去时刻的用户视点位置预测未来多个时刻的视点位置;同时考虑了视频内容对观看视点的影响,提出基于相关滤波器的视点跟踪模块,探索视频内容和视点序列之间的关系,基于视频内容预测未来的视点序列;最后通过融合模块结合了循环神经网络视点预测模块和相关滤波器视点跟踪模块的预测结果,两个模块优势互补,提高了模型的预测准确度。本发明提出的视点序列预测结构,能够根据用户头部运动速度改变预测视点的序列长度,具有良好的实用性和扩展性,为360度视频的高效传输打下了坚实基础。
具体地,本实施例中,预测视点位置实际为预测俯仰角(θ)、偏航角
在本实例中,主要关注对于偏航角
本实施例中,所述循环神经网络视点预测模块采用当前时刻视点位置
hi=σ2(whxxi+whhhi-1+bh)(2)
yi=wohhi+bo(3)
其中,wxv为将偏航角
本实施例中,所述相关滤波器视点跟踪模块根据目标跟踪相关滤波器算法,设计的相关滤波器对于视点所在区域有最大响应,采用未来时刻360度视频帧
本实施例中,结合了循环神经网络视点预测模块和相关滤波器视点跟踪模块的预测结果,赋予不同权重以得到最终预测结果,即
本实施例中关键参数的设置为:实验数据来源于y.bao等人在《ieeeinternationalconferenceonbigdata》会议上发表了题为“shootingamovingtarget:motion-prediction-basedtransmissionfor360-degreevideos”的文章,该数据采集了153个志愿者观看16段360度视频时的头部运动信息,部分志愿者只观看部分视频,共采集985个观看样本。在本实施例数据预处理中,对每个观看样本进行每秒10次的采样,每个观看样本共记录289个运动数据,共得到285665个运动数据。采用80%的运动数据作为训练集,20%的运动数据作为测试集。对所述循环神经网络模块,隐藏单元大小设为256,采用adam(自适应矩估计)优化方法,动量和权重衰减分别设置为0.8和0.999。批量大小为128,共训练500个周期。学习率在前250个周期训练过程中从0.001到0.0001线性衰减。对所述相关滤波器视点跟踪模块,调整图像大小为1800×900,设置边界框大小为10×10。对于所述融合模块,对w1和w2赋不同值,选择使得最终的视点位置预测值误差最小的作为最终权重值。
本发明为适应360度视频传输中提高带宽利用率的需要,提出了基于用户过去时刻视点位置和360度视频内容的视点序列预测系统。本发明提出的视点序列预测结构,能够预测未来多个时刻用户的视点位置,并且能够根据用户头部运动速度改变预测视点的序列长度,具有良好的实用性和扩展性,为360度视频的高效传输打下了坚实基础。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。