360视频在实际显示时,需要由2D平面投影到球面,最终呈现给观众的是球形视频,因此,直接评估2D平面视频是不准确的,于是引入了WS-PSNR、S-PSNR和CPP-PSNR。之前的学习中,都是从球面到平面变换公式中进行分析的,下面就来从球域采样分布,来更加直观的理解一下目前主要投影格式ERP和CMP质量评估中存在的问题。
在360lib中,直接给出了ERP的2D平面坐标系(u, v)到球面坐标系(ϕ, θ)的变换公式:
对于CMP格式,需要先根据面排列顺序由2D平面坐标和所在面序号求3D坐标,再由3D坐标求球面坐标,过程较复杂,不贴了。详细可见JVET-F1003。
通过球面坐标,可以绘制对应的球域采样情况。
“An Efficient Spherical Video Sampling Scheme Based on Cube Model”文中给出了ERP和CMP的球域采样图。
ERP:
CMP:
在之前的投影格式学习中曾提到过,ERP两极拉伸严重,对应到球域上就会产生过采样。CMP在角落区域也会发生过采样。在上图中可以清楚的看到过采样的情况。
可以很容易的联想到WS-PSNR,给ERP投影引入了一个纬度相关的权重,CMP投影引入了位置相关的权重,权重图如下,越亮权重越大。其实就相当于给过采样部分进行下采样。
而S-PSNR则是直接从球域角度进行考虑的。首先给出了球域上均匀的采样点,由这些采样点去找对应的2D平面上的像素来进行评估。但采样点并不能直接对应到2D平面的整像素位置,这就带来了问题:对于S-PSNR-I存在插值,会引入失真;对于S-PSNR-NN就近找点,存在误差。关于S-PSNR采样点,相关文献中提到使用的是球域均匀采样点,我尝试了将360Lib的sphere_655362.txt中的点绘制出来,正是球面上的均匀采样点,根据其大致分布情况来看,可能使用的是六边形拟合球的方法得到。
CPP-PSNR和S-PSNR一样,也是直接从球域角度进行考虑,使用球面上的均匀采样点。但其使用的球面上的点数量要远多于S-PSNR。但由于边缘问题,其球域采样在3D坐标系下x=0时存在漏点。