适用于高动态范围视频的码率控制算法简介

1.背景介绍

随着高动态范围(HDR,High Dynamic Range)概念的普及以及诸如OLED等技术上的进步,消费者市场对HDR设备呈现出极大的热情。相比4K带来的是更多细节和更加精细的纹理上的变化,HDR带来的则是在色彩呈现上更加生动的画面。HDR电视的最高亮度可达1000尼特,亮度的提升使得场景更加的真实。由于HDR相比标准动态分布(SDR,Standard Dynamic Range)拥有更广的亮度范围,因此将HDR的光信号转换为数字信息以进行编码相比传统SDR信号,也需要新一代的变换函数,比如杜比的基于对比度敏感函数(CSF, Contrast Sensitivity Function)的感知量化(PQ, Perceptual Quantizer)曲线。与PQ曲线相对应的是用于SDR视频的BT.1886曲线,二者的对比如下图所示:

图1. PQ曲线和BT.1886曲线对比

从上图我们可以看到,对于传统的8比特BT.1886曲线,由于其位深度的限制,所以只能描述100cd/m2以下的亮度范围,而如果直接将8比特的BT.1886曲线扩展到10比特,由图中我们可以看到虽然10比特的BT.1886曲线可以描述更宽的亮度范围,但是由于其曲线的特性,变换后的信号并不能均匀的分布在量化区间内,比如,在小于100cd/m2的范围内,大约有12%的值用于描述这段范围的亮度,而PQ曲线则大约有50%的量化值用于描述这段亮度区间。其各段亮度范围的详细对比如下图所示。

图2. PQ曲线和BT.1886曲线亮度变换分布图

因此,HDR在传输时由于采用了诸如PQ映射曲线等不同于以往的技术,所以需要在编解码HDR视频信号时进行特殊的考虑,对于传统视频使用的码率控制技术也是如此。

2.HDR视频的编解码框架

为了在传输HDR内容时使用现有的编码框架,可以考虑在编解码前后做变换以及对应的反变换,使得进入编码器的视频信号可以适用于现有编码器,同时这种变换也保证了在传输实际的码流时不需要附带额外的元信息,使得HDR内容可以在一般的解码器上正常解码。具体的用于HDR视频信号的编解码框图如下图所示。

图3. HDR编解码框架

输入的HDR原始图像格式一般为RGB BT2020,采样为4:4:4的半浮点线性光格式,而编码器的输入为整形 4:2:0 的Y'CbCr格式。具体的转换步骤如下:

(1) 首先将RGB信号归一化,之后利用变换函数,如基于感知的量化函数,即PQ函数,将原始线性光信号变换为非线性的R'G'B'信号。

(2) 将变换后的光信号由色域R'G'B'变换到色域Y'CbCr。

(3) 将浮点数Y'CbCr变为10bit整形,记为DY’DCbDCr。

(4) 对色度进行降采样,将得到的DY'DCbDCr 4:4:4信号转化为4:2:0。

(5) 对变换后标准的视频信号执行编码。

逆变换则是上述变换的逆格式,此处就不再赘述。

3.HDR视频在码率控制模式下编解码的挑战

最新的HEVC的参考代码(HM)中已经针对HDR做了很多的优化,比如支持更高的位深度以及基于亮度的量化参数的调整。然而在码率控制方面,目前还没有相关的针对HDR内容的码率控制技术的研究,如果直接将传统码率控制技术用于HDR视频信号,将带来一系列的问题。

(1) 由于现有的码率控制模型的参数等都是在SDR的实验条件下拟合得出的,因此在对HDR内容进行编码时会由于如前所述的亮度分布的改变,导致分配的码率不准确,如下图所示:

a)不开码控(QP=28)

b)使用原始码控(524Kbps)

c)使用改进后的码控(524Kbps)

图4. 码率控制对编码质量的影响

上图a)为QP为28时的编码图像,图b)为与QP=28时对应的码率=524Kbps时的图像,可以看到由于HM已经针对HDR内容在量化参数上做了相应的优化,而并没有对码率控制模式下的编码做对应的优化,因此在码控模式下可以清楚地看到其存在更多的块效应,如图中画圈处所示。因此现有的码率控制模型并不适用于编码HDR的视频内容,图c)还给出了本文介绍的改进后的码率控制算法的效果。

(2) 在实验中我们还进一步发现,由于前面的帧导致的码率控制的不准确,靠近序列后面的帧的率失真性能还会进一步恶化,导致整个序列在码率控制模式下的编码性能受到影响。

4.最新成果

上海交通大学图像所研究团队提出了一种适用于高动态范围视频的码率控制算法,在一定程度上解决了上述问题,在率失真性能和码率控制精准度方面都有着不错的表现,模型结构清晰合理,可实用性强。该模型借助了传统码率控制模型的优势,对传统码率控制做进一步的优化,使其适用于HDR内容的编码,其最终的模型如下所示。

其中a为常数,通常取4.2005,β是与实际编码的视频内容有关的参量,每一个CTU在更新β时参考的是已编码帧的对应CTU的β。C(L_HDR )是与HDR的亮度相关的常量,根据每个CTU的平均亮度值计算得出,其取值被限制在[-6,3]的范围上,如下式所示。

由于指数函数的特性,当C(L_HDR )为负时,指数函数小于1。导致比普通码率控制模型分配更少的比特。 当C(L_HDR )为正时,指数函数大于1。这导致比普通码率控制模型分配更多的比特。下表给出了该算法的视频经过解码后与原始算法的率失真性能对比,可以看到,对比原始方法,本算法在Y、U、V分量上都可以有较为明显的增益。

表1. 标准动态范围视频的率失真性能

而经过逆变换得到的HDR格式的图像内容对比原始算法也都有了很明显的改善,具体的如下表所示

表2. 高动态范围视频的率失真性能

下图给出了两个序列各个帧的客观质量的改善情况对比,蓝色线为原始算法,红色线为改进后的算法。

图5. 亮度分布码率控制与原始码控的tPSNR-XYZ对比图

更多论文细节和实验分析详见论文:

Bai, L., Song, L., Xie, R., Zhang, L., & Luo, Z.,Y. Rate Control Model for high dynamic range video [C]// Visual Communications and Image Processing. IEEE, 2017:1-4.

下载链接:

http://medialab.sjtu.edu.cn/publications/2017/VCIP2017_LXBai_Rate%20Control%20Model%20for%20HDR%20Video.pdf

原文发布于微信公众号 - 媒矿工厂(media_tech)

原文发表时间:2017-12-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏华章科技

良心GitHub项目:各种机器学习任务的顶级结果(论文)汇总

该 GitHub 库提供了所有机器学习问题的当前最优结果,并尽最大努力保证该库是最新的。如果你发现某个问题的当前最优结果已过时或丢失,请作为问题提出来(附带:论...

592
来自专栏FD的专栏

良心GitHub项目:各种机器学习任务的顶级结果(论文)汇总

项目地址:https://github.com//RedditSota/state-of-the-art-result-for-machine-learning...

1395
来自专栏目标检测和深度学习

目标检测入门(四):特征复用、实时性

文章结构 本文的第一部分关注检测模型的头部部分。对与每张图片,深度网络其实是通过级联的映射获得了在某一流形上的一个表征,这个表征相比原图片更有计算机视角下的语义...

3557
来自专栏专知

【NLP专题】斯坦福CS224n课程笔记03:词向量表示(2)——深入探究词向量

1541
来自专栏机器之心

学界 | BMXNet:基于MXNet的开源二值神经网络实现

选自arXiv 作者:杨浩进等 机器之心编译 参与:李亚洲 ? 论文地址:https://arxiv.org/abs/1705.09864 摘要:二值神经网络(...

2705
来自专栏大数据挖掘DT机器学习

怎样做中文文本的情感分析?

2016课程地址 项目描述地址 ---- 什么是情感分析? 就是要识别出用户对一件事一个物或一个人的看法、态度,比如一个电影的评论,一个商品的评价,一次...

3668
来自专栏机器学习算法与Python学习

机器学习(4)之线性判别式(附Python源码)

关键字全网搜索最新排名 【机器学习算法】:排名第一 【机器学习】:排名第二 【Python】:排名第三 【算法】:排名第四 LDA是什么? 线性判别式分析(Li...

3589
来自专栏大数据文摘

R: 学习Gradient Boosting算法,提高预测模型准确率

22511
来自专栏人工智能头条

美团网内部分享:机器学习中的数据清洗与特征处理实践

2163
来自专栏人工智能头条

写给大家看的机器学习书【Part3】直观易懂的感知机学习算法PLA

1925

扫码关注云+社区