1.一种基于移动端的虚拟视点合成的云卸载方法,其特征在于,所述方法包括以下步骤:
A1.将输入帧,包括左右视点的纹理图和深度图,平均分成n块;其中n为用户自行设定的将每帧视频分割的块数,n为大于1的整数;
A2.参考上一帧分割块空洞数目,预测当前帧每一分割块进行视点合成的负载;
A3.将每个图像块的负载代入云卸载模型,通过最小化移动端的功耗,得到分配结果,实现资源的动态分配;
A4.根据A3的分配结果,在云端或者在移动端分别对不同的图像块进行视点合成;
A5.将云端和移动端合成的虚拟视点图像进行拼接,生成一个完整的虚拟视点。
2.根据权利要求1所述的云卸载方法,其特征在于,所述步骤A1中,将输入帧,包括左右视点的纹理图和深度图,平均分割成n块,分割为纵向分割或者横向分割,对左右视点的纹理图和深度图采用的分割方法完全相同。
3.根据权利要求1所述的云卸载方法,其特征在于,所述步骤A2中对分割后的每帧图像块进行负载预测;
Ψ≈ΨF+ΨM,其中Ψ为每一块进行视点合成的负载;ΨF和ΨM分别为左右视点的纹理图向虚拟视点的映射的负载和左右视点向虚拟视点映射后的图像融合的负载;
ΨF=2α1WH,其中,W和H分别为分割后的每块的宽度和高度;对于α1,把所有线程各自ForwardWarp()函数时间加在一起除以总的像素点,即
ΨM≈α2(2WH-Θ),其中,Θ为空洞点的数目,对于α2,把所有线程各自Merge()函数时间加在一起除以总的非空洞像素点,即
其中,TMerge()为Merge()函数时间,Nonholes为非空洞像素点。
4.根据权利要求1所述的云卸载方法,其特征在于,所述步骤A3中云卸载模型的表达式为:
其中,为向量,
如果Ii(i=1,2...n)为1,则第i块分配到云端进行虚拟视点合成,若Ii(i=1,2...n)为0,则在移动端进行视点合成;Pc为移动端在计算时的功耗,Pi为移动端闲置时的功耗,Ptr为移动端在数据传送时的功耗;Cm为分配到移动端的算法复杂度,Cc为分配到云端的算法复杂度;f为移动端的每秒处理速度,S为每秒云端的计算速度,D是云端和移动端传输的数据的大小,B为带宽;
其中
ψi(i=1,2,…,n)为第i块进行视点合成的负载,ft为当前设备的每秒处理速度;
D=Dm+Dc,其中Dm和Dc分别为在移动端上和在云端进行视点合成时需要传输到移动端的数据。
5.根据权利要求4所述的云卸载方法,其特征在于,当视频在云端时,若某块需分配到移动端进行视点合成,需要传输到移动端的数据包括该合成块对应的左右视点的深度图和纹理图;当该块分配到云端进行视点合成时,需要传输到移动端的数据包括该合成块对应的左右视点的深度图和纹理图以及新合成的视点,即
其中,W、H为当前块的宽度和高度,n为将一帧视频分割的块数,对应于YUV 420,YUV 422和YUV 444的视频,γ分别为1.5,2和3。
6.根据权利要求4所述的云卸载方法,其特征在于,当视频在移动端时,若某块需分配到移动端进行视点合成,由于视频原来就存储在移动端,需要传输到移动端的数据为0;当该块分配到云端进行视点合成时,需要先将该合成块对应的左右视点的深度图和纹理图传输到云端进行视点合成,待合成完毕后,需要将合成后的视点传输回移动端,即
Dm=0,其中,W、H为当前块的宽度和高度,n为将一帧视频分割的块数,对应于YUV 420,YUV 422和YUV 444的视频,γ分别为1.5,2和3。
7.根据权利要求1所述的云卸载方法,其特征在于,所述步骤A4中在云端或者在移动端分别对不同的图像块进行视点合成,采用视点合成参考软件VSRS里的标准方法进行视点合成。
8.如权利要求1所述的方法,其特征在于,所述步骤A5中将云端和移动端合成的虚拟视点图像进行拼接,是指将合成的每块视点拼成完整的一帧。
9.一种基于移动端虚拟视点合成的云卸载系统,其特征在于,系统包括输入帧视点分割模块、负载预测模块、云卸载模块、虚拟视点合成模块、虚拟视点拼接模块;输入帧视点分割模块用于将输入的左右视点的深度图和纹理图的等份分割;负载预测模块用于预测分割后每块图像进行视点合成的负载;云卸载模块通过代入一帧中每块进行视点合成的负载,最小化移动端的功耗,得到分配结果,实现资源的动态分配;虚拟视点合成模块用于在移动端或云端进行虚拟视点合成;虚拟视点拼接模块用于将云端和移动端产生的虚拟视点图像进行拼接,输出一个完整的虚拟视点图像。