前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >适用于高动态范围视频的码率控制算法简介

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

作者头像
用户1324186
发布2018-03-05 17:30:02
1.4K0
发布2018-03-05 17:30:02
举报
文章被收录于专栏:媒矿工厂媒矿工厂

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

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-12-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 媒矿工厂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档