摘要:
本帖参考T. Richter等人发表在SMPTE Motion Imaging Journal的文章JPEG-XS—A High-Quality Mezzanine Image Codec for Video Over IP。超高清(UHD)内容的生产,需要更多的带宽用来传输和交换数据;基于IP协议栈的基础架构则更多的灵活性。在生产工作流程中的母片压缩技术可以减少必要的数据传输容量,甚至可以使用旧的、支持HD的基础架构。这类编解码器设计的主要难点是满足超低延迟并且保持高质量的同时,降低设计复杂性。考虑到这一点,联合图像专家组(JPEG)委员会启动了一个名为JPEG-XS的工作组,应对此需求。本文介绍了此类编解码器的具体要求、标准题案的结果、核心实验的阶段进展,及对所选技术的一些评述。
引言
现今,视频制作行业可以看到两个主要趋势。一种趋势是将分辨率提高到4K(UHD-1)甚至8K(UHD-2),再加上更高的动态范围(HDR),这导致图像数据和带宽需求的巨大增加。第二是摆脱专用布线和基础设施,如数字分量串行接口(SDI),并使用现成的基础设施和基于以太网的信息技术。现在的问题是:这些视频数据流在未压缩时以哪种方式可以在3~40 Gbits / s的带宽上有效地传输。
业内成熟的方法是使用压缩。然而由于必须在典型生产设施的交付链内处理数据,压缩–解压多次循环(generation losses)将导致延迟或质量连续降级。一些解决方案例如HEVC或JPEG 2000,具有高复杂性和高成本。出于这个原因,JPEG委员会于2016年启动了一项针对IP视频应用的低复杂度、低延迟母版图像压缩编解码器的项目,要求各方提出相关的编码技术。这个新工作项目的名称是JPEG-XS,xs是extra speed及extra small的缩写。
JPEG标准化
国际标准化组织/国际电工委员会(ISO / IEC)JTC1 SC29 WG1工作组,以JPEG名称更为人所知。近年来JPEG致力于图像压缩的新应用,例如HDR,低延迟,及向后兼容部署的标准。图1显示了标准化过程。
2016年,委员会调查了这些新应用领域的潜力,并要求业界提供证据;这使得我们对母版图像(mezzanine image)编解码器标准化的需求有了更好的认识。目前,尽管缺乏标准化已经一定程度上阻碍了其在业界的广泛应用,在这个特定的应用领域中已经出现了多个专有编解码器。
图1. JPEG标准化过程的简化方案
要求
在2015年10月19日至23日在比利时布鲁塞尔举行的第70次会议和2016年2月22日至26日在加利福尼亚州拉霍亚举行的第71次会议上,JPEG委员会确定了对所需新工作项目的要求。相关要求如下:
在最坏的情况下,压缩比需要高达6:1,这相当于24位RGB 444内容的比特率为4 bpp。出于核心实验的目的,JPEG委员会认为比特率甚至需要低至3 bpp。
JPEG还确定了以下标杆,以便将提案与现有技术进行比较:JPEG 2000,使用tiles或precincts以延迟约束模式运行,以达到32线延迟; 以及VC-2(SMPTE 2042-1-2009 / 2042-2-2009)标准,基于BBC开发的Dirac编解码器,解决了一个非常相似的情况。anchors也包括JPEG和HEVC,即使两者的延迟约束,以及HEVC锚的复杂性约束并没有满足要求。
JPEG-XS标准化过程
JPEG-XS标准化始于2015年7月6日至10日在波兰华沙举行的第69届JPEG会议上以ISO / IEC 21112的新工作项目申请,虽然在第71次会议期间仍继续提出要求的改进和征集建议的准备,图1展示了所有ISO过程的典型布局。该标准已经设计为由多个部分组成,其中的第一部分描述了核心编码系统。本文的其余内容就会着重介绍这一部分,而其他部分仍在准备中。他们将在第2部分中描述配置文件和缓冲模型,以及第3部分中介绍容器格式–最主要的是文件格式和通过SDI链接的传输。第4和第5部分传统意义上定义了一致性测试和参考软件。TABLE 1则列出了所有当前考虑的内容以及发布国际标准文件草案的预期目标日期。
提案
提案提交分为两个阶段。在第一阶段,缔约方将在2016年6月第72次日内瓦会议上表明兴趣需求,对他们想要提出的技术提供概述。在第二阶段,必须在2017年9月之前提交准备运行的二进制文件,然后对生成的流文件进行主观(即人为观察)和客观的评估。以下是日内瓦会议收到的提案。
2016年10月在中国成都举行的第73次会议期间对提案进行了评估,包括基于PSNR的客观测量,以及遵循ISO / IEC 29170-2中规定的测试协议的主观评估。此外,支持者必须根据FPGA实现所需的查找表数量的近似计数来估计其编解码器的复杂性。为了在再压缩下测试编解码器的稳定性,在10次压缩-解压缩循环后也测量了其主观和客观质量。有关评估程序的详细信息,请参阅参考资料。
JPEG委员会认为基于JPEG 2000的提案和基于HEVC的提议的复杂性太高,无法集成到FPGA目标架构中。此外,尽管HEVC提案在第一次压缩-解压缩循环中表现出良好的性能,但在第十次循环的时候质量显著降低。除了复杂性,基于JPEG 2000的提议总体上表现得相当不错,虽然它的码率分配基于逐帧启发式,导致场景切换质量下降,但这被认为是不重要的。基于VC-2的提案由于与其他提交相比性能不佳而被淘汰,尽管它的复杂性非常适合调用;在基于JPEG-LS的提案上可以观察到同样的问题,该提议在整个测试集中无法达到很高的目标质量。最后,第一个提案被其支持者撤回,并且进而支持了第二个基于DCT的提案,该提案看起来更有希望被实施。
经过多次讨论,仍有两项提案。它们提供了始终如一的良好性能和低到足以满足呼叫要求的复杂性,即基于DCT的提议-上面列表中的第二个-以及基于小波的技术,上面列表中的第六个。最终决定将两种候选技术合并为一个通用测试模型,并在此测试模型的基础上继续标准化。2017年初推出了第一版JPEG-XS(“XSM”)测试模型。
整个2017年,XSM组合软件的工作不停在进行,JPEG成员提出了编码引擎的多个附加扩展和增强,这些扩展和增强已经并且正在通过所谓的核心实验进行研究,这些实验研究候选技术的质量改进和复杂性。在2017年10月的会议上,委员会计划发布JPEG-XS的第一个“委员会草案”(CD)版本,基本上冻结了核心技术,并将正在进行的开发限制为微小的改进和更正。计划于2018年中期由委员会发布最终国际标准。
XSM测试模型编码器概述
图2概述了1.1.3 XSM测试模型中当前的JPEG-XS编码器设计。在第一步中,输入样本被放大,并且通过适当的移位去除所有DC偏移,使得信号在零附近对称。然后通过可逆的颜色变换将RGB分量去相关,这与JPEG 2000标准的可逆颜色分量变换(RCT)相同。然后,5/3小波执行图像信号的能量压缩,通常通过五次水平和一次垂直变换。然后在该步骤之后进行预量化,该预量化包括8位downshift,然后是常规量化,取决于码率分配过程,可以去除额外的位平面。然后对得到的quantization bucket indices进行熵编码。
图2 JPEG-XS编码过程概述
遵循JPEG-XS的低复杂度设计目标,熵编码非常简单。首先,将小波系数组合成四个水平相邻系数的组,即编码组。对于每个编码组,计算组合的所有四个系数的数据密度最大的位平面。该位平面计数在标准中称为“MSB位置”,它是唯一经历可变长度编码的量。
以下部分详细介绍了能量压缩和码率分配以及JPEG-XS要求如何影响变换选择和码率分配策略。
能量压缩和码率分配的设计约束
低延迟的要求对JPEG-XS的设计有几个意义,最显著的是去相关变换选择和码率分配。前者的目的是能量压缩,即图像数据应仅用几个系数表示; 而码率分配必须通过量化器调整信息损失,以生成符合输出信道带宽要求的码流。由于期望的总压缩比相对适中,熵编码在JPEG-XS标准中仅起很小的作用。因此,JPEG-XS的设计主要是码率分配问题,以及合适的能量压缩的选择。
对于编码器处的能量压缩,32线的最大端到端等待时间最多留下16线等待时间,即去相关变换的时间。在实际情况下,码率分配,缓冲和码流构建需要额外的线路。
现在,在收到的所有提案中,有能量压缩的以下策略。
码率控制是JPEG-XS的第二个关键组件。当然,可用于码率分配目的的图像数据越多,其操作就越精确,图像质量就越好。
总体而言,经过试验发现,尽管在13/7滤波器等替代小波滤波器上的实验仍未完成,但显然基于前瞻窗口的方法效果最好。初步结果将在稍后介绍。虽然较长的滤波器longer filters可提供更好的质量,但它们也减少了码率分配器可用的look-ahead量。在码率分配所花费的延迟和能源压缩引入的延迟之间进行权衡是委员会正在进行的工作。
并行处理
低延迟是JPEG-XS的一个特点,而并行处理则是其另一个特点:GPU和矢量化CPU实现是预想标准的一个重要应用领域。小波变换和颜色去相关变换对于并行化来说是微不足道的,而熵编码则需要我们更多去关注。并行解码的多种设计选择如下:
实验和结果
为了评估和演示JPEG-XS编码系统的性能并提供市场上可用技术的更完整图景,我们测量了解决相关用例的多个图像静止图像编解码器的码率-失真曲线。特别的,我们测量了以下编解码器和配置。
源取自JPEG-XS核心实验测试集,虽然数据被转换并缩减为8-bpp RGB 444用于所有编解码器,但是可以用JPEG压缩。对于Apple ProRes,实验中包含有从444 RGB到422 YUV的依赖于配置的转换,并且图中的每个数据点都对应于编解码器的一共五种可能配置之一。不幸的是,ProRes的码率控制只能进行非常粗略的调整。在444-RGB空间中一致地测量了PSNR。图3显示了此测试中包含的图像。
选择包含在测试中的图像。从左到右,从上到下依次为:AlexaDrums,一个自然场景。 AppleBaseball:混合自然和屏幕内容,FemaleHorseFly:具有高度纹理化图像区域的平滑渐变,Hintergrundmusik:高度纹理化的人工内容,Lake:具有平坦区域和高度结构化区域的自然图像,HuaweiMap:包含渲染街道地图的屏幕截图,RichterScreenContent:混合文本和自然图像的混合光栅内容,以及Tools:来自国际电信联盟测试集的过度锐化图像。
图3. 测试图像
图4显示了图3中列出的源材料上所有选定编解码器的码率-失真性能。此处以PSNR与比特率作图。请注意,比例因图像而异,因为性能取决于源的复杂性。
可用的多个小波滤波器的码率-失真性能如图5所示。熵编码工具仅限于WD1.0中提供的设置,即没有部署高级编码技术。然而,小波滤波器在具有两个而不是一个垂直分解水平的5/3滤波器和具有单个垂直分解水平的13/7滤波器之间变化。码率分配窗口和码率分配器预测配置为尽可能大,同时仍确保延迟不大于32线。特别的,这里简单的单级5/3滤波器具有最大的前瞻量,接着是13/7滤波器和两级5/3滤波器(这是所有滤波器中提供最少前瞻量的)。即使13/7和两级5/3滤波器的延迟完全相同,后者只允许以四线为一组进行码率分配,与单级13/7滤波器不同,导致对两级滤波器的前瞻量有了额外的限制。
图4. 所有测试编解码器的码率/失真性能
图5. 各种选择的小波的码率/失真性能
讨论
根据以上的内容,JPEG-XS与JPEG 2000的低延迟变体相比甚至更优。它在自然和流畅的内容上表现得特别好,尽管基于DCT的方法(如JPEG和Apple ProRes)在复杂内容上具有一定的优势。但请注意,两个编解码器都不包含码率控制,因此不能满足与JPEG-XS相同的一组要求。鉴于编解码器的简单性,结果非常有前景,并且在与TABLE 3中列出的用例相近的比特率下显示出更具有竞争力的编码性能。
将2017年8月工作草案4.1 / XSM版本1.1.2中的最新版JPEG-XS与2016年末的初始版本1.0.0进行比较,结果显示编码性能平均提高了约2 dB。这主要归功于于两个垂直级别的小波分解,但其他编码工具(如行程编码)同样也有助于提高编码增益。
诸如“FemaleHorseFly”图像之类的复杂图像显示了延迟约束编码的局限性。像JPEG或ProRes这样的编解码器在这里比延迟受限的编解码器(例如JPEG-XS或用于测试的受约束的JPEG 2000变体)表现得更好。放松此约束将会显著提高编码性能,这在各种JPEG-XS配置的直接比较中证明了这一点。然而,这里测试的“全帧”变体超出了JPEG-XS标准的要求。
图5显示,对于非常低的比特率,选择两级小波分解可以将码率/失真性能提高多达3dB,这也是在JPEG-XS要求之外的。13/7滤波器的性能介于单级和双级5/3滤波器之间。 对于符合标准要求的比特率,13/7滤波器大约能达到两级滤波器的性能,甚至在一种特定情况下-即非常复杂的“Hintergrundmusik”图像-优于所有其他滤波器。但是,目前还不清楚这种滤波器是否会包含在标准中。
JPEG-XS标准的目标是更加适中的压缩因子,最高达2:1,这些因素未在本文生成的图表中显示。另外,我们也没有观察到超过5 bpp后的任何特定变化,并且图表可以外推超过8 bpp而不改变编解码器彼此的相对性能。
结论
新的JPEG-XS标准为mezzanine压缩编解码器提供了优化的解决方案,其中探索了设计空间,以便以最小的资源消耗和最低的延迟在针对压缩因子从2:1到6:1的应用中实现相对高的压缩质量。根据计划,JPEG标准将于2018年完成,并且也会在2018年完成第一次实施。
相关链接
1. 高吞吐量JPEG 2000(HTJ2K):新的算法和机会
参考文献
1.International Organization for Standardization/International Electrotechnical Commission (ISO/IEC) JTC1 SC29 WG1, “JPEG XS—Call for Proposals for a low-latency lightweight image coding system,” Mar. 11, 2016. [Online]. Available: https://jpeg.org/items/20160311_cfp_xs.html
2.International Organization for Standardization/International Electrotechnical Commission (ISO/IEC) JTC1 SC29 WG1, “Information Technology—Advanced Image Coding and Evaluation—Part 2: Evaluation Procedure for Nearly Lossless Coding,” Aug. 2015. [Online]. Available: https://www.iso.org/ standard/66094.html
3.S. Daly, “The Visible Difference Predictor: An Algorithm for the Assessment of Image Fidality,” in Digital Images and Human Vision, pp. 179–206, MIT Press: Cambridge, MA, 1993.
4.R. Mantiuk, K.-J. Kim, A. G. Rempel, and W. Heidrich, “HDR-VDP-2: A Calibrated Visual Metric for Visibility and Quality Predictions in all Luminance Conditions,” ACM Trans. Graphics (Proc. SIGGRAPH’11), 30(4):2011.
5.T. Richter, S. Fößel, J. Keinert, and A. Descampe, “High- Speed, Low-Complexity Image Coding for IP Transport with JPEG XS,” Proc. Appl. Digital Image Proc. XXXIX (SPIE 2016), 2016.
6.A. Descampe, J. Keinert, T. Richter, S. Fößel, and G. Rouvroy, “JPEG XS: A New Standard for Visually Lossless Low-Latency Lightweight Image Compression,” Proc. Appl. Digital Image Proc. XL (SPIE 2017), 2017.
7.A. Willème, T. Richter, C. Rosewarne, and B. M. Macq, “Overview on the JPEG XS Objective Evaluation Procedures,” Proc. Appl. Digital Image Proc. XL (SPIE 2017), 2017.
8.D. McNally, T. Bruylants, A. Willème, P. Schelkens,
T. Ebrahimi, and B. M. Macq, “JPEG XS Call for Proposals Subjective Evaluations,” Proc. Appl. Digital Image Proc. (SPIE 2017), 2017.
9.T. Richter, J. Keinert, and S. Fößel, “High-Speed Low-Complexity Video Coding With EDiCTius: a DCT Coding Proposal for JPEG XS,” Proc. Appl. Digital Image Proc. XL (SPIE 2017), 2017.