360Lib介绍文档360Lib是JVET小组设计并面向使用者公开的全景视频研究平台,主要关注投影方案的评价标准。
360Lib内置了多种成熟的全景视频投影格式,并且可以完成对输入视频序列的投影格式转换;嵌入到HM或JEM后能够结合平台已有的功能完成投影转换的评估,包括IBP帧的PSNR数值、耗时和码率。
360Lib的一个重要特点是内置了多种以全景视频为目标的新型PSNR标准。
1 360Lib使用说明为了符合现有的视频编码标准要求,球面全景视频需要投影转换为平面图像,进行后续的编码和传输;在用户端经过解码后,则进行逆投影过程重新获得球面全景。
360Lib中集成了投影格式转换和质量评估的功能,用户通过命令行参数配合cfg配置文件来使用360Lib,程序执行完毕后输出数值报表。
需要用户提供ERP格式的yuv420视频序列作为输入。
1.1 360Lib单独使用使用360Lib的投影格式转换功能时,将TApp360Convert设为启动项,并按照如下命令行参数进行配置。
cfg类型文件保存用户设置,分为投影转换配置文件和帧序列配置文件,包含投影视窗坐标、输入序列分辨率、帧率和位深度等信息。
以实现ERP转换CMP(Cubemap3x2)格式为例:1.2 360Lib结合HM使用在HM中配置好360Lib,并将TAppEncoder设为启动项。
仍以从ERP转换(CMP)Cubemap3x2格式为例,命令行信息如下:CMP投影输出报表2 360Lib 中的新型PSNR 标准PSNR 即为峰值信噪比,是一种评价图像的客观标准,常用于判断前后图像的品质差别。
))((MSEPSNR 2n 101-2log 10= ∑∑==-⨯=H i W j j i Y j i X W H MSE 112)),(),((1基于逐点计算的PSNR 并不符合人眼对亮度信息敏感而对色度信息迟钝的特性;同时人眼对一幅图像的观看重点往往落于视觉中心。
因此传统的PSNR 评价结果与人的主观感觉不一致。
在360Lib 平台中的搭建中JVET 小组采纳了一些学者提出的新型评价标准作为全景视频的客观质量评估标准,并实现了内置。
它们包括WS-PSNR 、S-PSNR 、CPP-PSNR 等。
框架中的各种评价标准总结评价方式对应的方案 仅编码 WS-PSNR, S-PSNR 跨格式 CPP-PSNR, S-PSNR 端对端 S-PSNR, WS-PSNR 传统 PSNR360Lib 中的全景视频评估系统框架360Lib框架中新增的多种评价标准使用情况各不相同不同,同一种标准也可以在不同的情况下使用。
评价对象的选取方式分为四种,分别为仅编码分析、跨格式分析、端对端分析和传统分析。
仅编码分析对应框架中间部分,用于分析格式转换后编码前的图像与经过编码解码后的图像之间的失真,用来评价投影方式对编解码失真度适应性。
跨格式分析在不同投影格式的图片之间进行分析,通过球面全景作为中间步骤链接,能反映出投影方式与球面投影之间均匀性关系。
端对端分析是在跨格式的基础上,再升采样并重构出ERP格式后进行失真比较的方式,在系统框架图中跨度最长,能综合反映投影好坏。
360Lib评价标准框架全面考虑各种情形,针对性地发现各种投影方案的优缺点。
下面对360Lib中新型PSNR评价标准进行介绍。
360Lib中对各种评价标准的描述Metric name NotesWeighted to Spherically uniform PSNR(WS-PSNR)[15]The distortion at each sample position is weighted by the area on the sphere covered by the given sample position. All samples on the 2D projection plane are used in WS-PSNR calculation. The two inputs to the metric calculation must have the same resolution andprojection format.Spherical PSNR w/o interpolation(S-PSNR-NN)[16]Calculate PSNR based on a set of points uniformly sampled on the sphere. To find the sample value at the corresponding position on the projection plane, nearest neighbor rounding is applied. The two inputs to the metric calculation can have different resolution and/orprojection format.CPP-PSNR[15]Apply another projection format conversion to convert the two inputs into the Crasters Parabolic Projection (CPP) domain, and calculate PSNR in CPP domain. The two inputs to the metric calculation can have different resolution and/or projection format.2.1 WS-PSNRWS-PSNR (Weighted to Spherically uniform PSNR )通过引入权重的方式对源视频与输出视频直接计算PSNR 。
其计算公式如下,记图像的大小为 。
∑∑∑∑-=-=-=-=⋅-=1021010i 10j ),()),(),((),(w 1M i N j M N j i w j i d j i s j i WMSE)lg(10-2WMSE MAX PSNR WS =其中 和 分别为参考图像和测试图像点的像素值, 为权重。
权重值对于不同的投影方式有不同的选取。
常见的ERP 和CMP 格式的投影权重的计算公式和示意图如下所示,亮度越高代表权重越大。
NN j j i w ERP π)2/5.0(cos ),(-+= 2/32222x 3)r)5.0()5.0(1),(--++-++=r j r i j i w CMP (ERP 与CMP 权重分布示意图WS-PSNR 通过在平面图像上引入权重值来计算图像质量,遵循了人眼的观看习惯,客观性高;完全平面操作使其与现有视频编码框架兼容性好,复杂度低;图像中的每一个点都参计算,准确性高。
它的缺点是无法进行跨投影格式的评估,因为参考图像和测试图像必须是相同投影类型,否则不同格式的权重值无法客观比较。
2.2 S-PSNRS-PSNR (Spherical PSNR )使用球面上一系列预先确定位置的点来对参考图像和测试图像进行采样,比较它们两两之间的差值,累加得到整幅图像的S-PSNR 值。
S-PSNR 的计算过程示意如下所示。
对于球上的点s ,分别找到参考序列和测试序列上相应位置的点(在360Lib 中非整数位置用距离其最近的整数位置像素代替,而不使用差值,因此360Lib 中的S-PSNR 也写作S-PSNR-NN ),然后计算两者之间像素值之差。
对文件预先确定的点遍历,累加差值,最终得到S-PSNR 。
S-PSNR 计算过程示意图S-PSNR 的优点是能进行跨格式评估,同时不要求参考序列与测试序列图像分辨率相同,提高了灵活性。
与WS-PSNR 不同,S-PSNR 用到了立体坐标计算,对于特定的全景图片来说,可以指定采样点的位置,对人眼更关注信息位置进行更密集的计算,以更贴近人眼的实际观看效果。
S-PSNR 的不足是对于高分辨率图片来说,像素利用率低。
在360Lib 中使用的采样点位置信息文件中包含655362个点,以4K 视频为例(3840x1920=7372800个像素),实际上仅有8.9%的像素参与失真计算,这对于其真实性是不利的。
2.3 CPP-PSNR克拉斯特抛物线投影(Craster ’s Parabolic Projection ,CPP ),是一种在地图学上常用的伪圆柱等面积投影方式,投影示意如图所示。
CPP 投影在相同空间分辨率下形状失真优于ERP 投影,因为ERP 两极区域像素被无限拉伸而引入数据冗余,而CPP 对其进行了改进。
全景视频从球坐标到CPP 投影坐标的变换公式如下:]1)32cos 2[(-=ϕλR x , 3sin ϕπR y =全景视频从CPP 投影坐标到球坐标的逆变换公式如下: πϕy R sin arc 3=, R x )132cos 2(-=ϕλCPP 投影示意图360Lib 中CPP-PSNR 计算过程为,将输入序列从ERP 格式转换成CPP 格式,再由CPP 变换到其他的投影格式进行编码和后续操作,这样做的优势是免去了对冗余像素的处理过程,提高转换和编码效率。
在进行CPP-PSNR 计算时需要对有效区域进行标注,因为CPP 投影并没有完全填充矩形区域,原来ERP 格式中的冗余像素在CPP 格式中即显示为无有效含义像素,就像上图中的矩形角落。
对参考序列和测试序列的有效区域进行传统PSNR 计算,得到的值即作为CPP-PSNR 输出。
相对于传统PSNR ,CPP-PSNR 可以计算不同分辨率和不同投影格式的序列之间的PSNR 。
3 360Lib 中各种投影方式效果ERP 格式投影CMP格式投影OHP格式投影SSP格式投影图3.4-8 TSP格式投影参考资料:[1] Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IECJTC 1/SC 29/WG 116th Meeting: Hobart, “Algorithm descriptions of projection format conversion and video quality metrics in 360Lib”, AU, 31 March – 7 April 2017[2] https://jvet.hhi.fraunhofer.de/svn/svn_360Lib/trunk[3] A. Abbas, D. Newman, “AHG8: Rotated Sphere Projection for 360 Video”, Joint VideoExploration Team of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, JVET-F0036, April 2017, Hobart, Australia.[4] Q. Xu, J. Boyce, Y. He, Y. Ye, “360Lib modifications for spherical rotation”, Joint VideoExploration Team of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, JVET-F0065, April 2017, Hobart, Australia.[5] Y. Sun, A. Lu, L. Yu, “AHG8: WS-PSNR for 360 video objective qu ality evaluation,” JointVideo Exploration Team of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, JVET-D0040, Oct. 2016, Chengdu, China.[6] Y. He, X. Xiu, Y. Ye, “AHG8: On cross-format S-PSNR-NN”, Joint Video Exploration Team ofITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, JVET-F0042, April 2017, Hobart, Australia.。