本文整理自 OPPO HDR 研发负责人熊磊,在 RTE2021 实时互联网大会上的演讲。他通过介绍 HDR 视频标准与生态、关键技术、发展方向三部分,分享了在移动端 HDR 视频的落地情况以及技术细节。

▲图:OPPO HDR 研发负责人熊磊

HDR 这个词随处可见,拍照片时可以选择 HDR,拍出来照片看起来更加清晰。看视频时可以选择 HDR 格式播放,播出的画面显示更加明亮鲜艳。打游戏的时候,选择 HDR 画质选项,游戏体感更加流畅;这些技术都可以给用户带来 HDR 的体验。那什么是 HDR 视频呢?

01 HDR 视频标准与生态

HDR 视频有几个特点,首先是高对比度。通常来讲,现在能看到的 HDR 视频亮度范围是 0.005-1000nit,但标准最高能到 1 万 nit,目前之所以视频内容没有这么高亮度是因为受限于屏幕的显示硬件规格。第二个是宽色域,目前看到的 HDR 视频色域基本都在 display P3 色域范围内的,标准规定是最高能到 bit20,这受限于屏幕硬件。最后是高位深,常见的 HDR 视频都是 10bit 编码,普通视频是 8bit 编码,10bit 相较于 8bit 能表示的颜色种类会更多,所以色彩之间的过渡会更加自然。

我们认为,前面看到它的这些特点,同一个画面通过 SDR 和 HDR 编码出来的图像在暗部和亮部细节的对比上有比较明显的差异,HDR 视频能保留原始画面中更多的亮部和暗部的细节,显示的效果也更加好。

在视频的拍摄和分发系统上,HDR 视频可以更多的保留原始画面颜色信息以及亮度信息,呈现给用户更好的画质感受。

见 HDR 视频标准分两大类:一类是基于 PQ 的视频标准,我们采集到的信号需要经过二次竖立,生成元数据信息,这个元数据信息在屏显端会用做亮度映射。一类是 HLG 标准,在采集时即完成了编码,不需要做二次处理,对传统视频工作流影响比较小,在显示时能动态适配屏幕亮度,因此它主要是用于直播和广播的场景。

上图是几个标准的对比,主要看一下右边三个标准。右边是常见基于 PQ 的几个标准,首先是 HDR10,在手机上 HDR10 标准是最常见的,也是在各个链路上被支持比较好的。这个标准的特点是它支持的是静态元数据,不兼容 SDR 格式,也没有产品认证和版权费用。在 HDR10 基础上,三星和杜比分别开发出 HDR10+和 dolby vision 标准,这两个标准都增加了动态元数据,同时兼容 HDR10 格式。dolby vision 分不同的 profile,它还兼容 SDR 格式。在产品方面,这两个标准都有产品认证,在有些产品上可以看到这些认证 logo。HDR10+的版权费用目前宣布是免费,dolby vision 会对终端厂商收费。

02 HDR 视频的业界生态

现在 HDR 视频应用主要是电影行业,让我们通过一个电影从生产到分发到消费的工作流去更好地理解 HDR 视频生态。首先生产部分电影的拍摄,特邀处理和数字合成。然后生产出来电影内容会送到处理工作室做视频编辑、颜色调校以及导演的调色,最后生成的母版会根据分发途径不同做不同的内容格式编码。这就是一个 HDR 生态的标准工作流。

而分发这部分目前主要有两大途径,一个是直播,即常见的电影电视直播,第二个是流媒体,互联网或者 OTT 服务。最后通过不同分发途径,这些视频内容分发到不同终端上,手机、机顶盒、蓝光播放器,根据这些设备支持能力来进行 HDR 视频内容的解码和回放。

上图是一个生态全景图,对于整个生态来讲包含很多厂商,我们的认知生态是以 HDR 视频标准为基础,以前面的内容生产流程为纽带,将各个厂商聚合到一起,共同创造出来 HDR 视频的消费市场。我们比较关心的是流媒体生态,包括内容生产,分发,以及芯片和设备厂商。

对于流媒体生态的内容生产,我们现在主要电影生产还是从好莱坞八大那边出来的,主要支持两个格式是 dolby vision,三星提出 HDR10+,这些年也有几家厂商支持。视频分发 HDR10 和 dolby vision 占绝大部分,HDR10+ 和 HLG 则分别有对应的厂商支持,在目前 Android 生态里面支持最多的还是 HDR10,dolby vision 由于收费的问题所以在 Android 生态里面基本上看不到内容,但是 dolby vision 在苹果生态会占据很大份额,三星的 HDR10+目前在国内没有内容,在国外有几家都是支持 10+ 格式的。

我们主要看一下手机几个主要芯片厂商,手机现在主流芯片厂商主要是四家,高通、MTK、华为和苹果。华为和苹果都是自家芯片自家用,其中华为支持 10、10+、HLG,也支持其自家的 HDR Vivid 格式。苹果主要的支持是 HDR10 和 dolby vision。高通和 MTK 现在是 Android 手机最常用的芯片厂商,我们主要是支持 10、10+和 HLG。从芯片厂商的支持我们可以看到,手机侧现在 Android 手机,特别是近几年手机大部分是支持 10、10+和 HLG 格式,苹果主要是 dolby vision。

03 HDR 视频的关键的技术点

前面看了标准和生态,接下来看一下视频标准里面几个关键的技术点。

首先是亮度,自然界的亮度和对比度范围是挺大的,左边这个图一朵花里面最亮部分可以达到 14700nits,最暗的才 188nits,这个对比度能到大概 7000:1 的样子。但人眼能接收的亮度是有限的,过于暗的光线会导致人眼看不清物体,同时,人眼还有个特性,在不同的环境光亮度下,人眼是可以自动地调整它的瞳孔大小,以便更好的观察物体。新的 HDR 标准在定义的时候就很好地利用了人眼的这些视觉特性。

视频标准里面最基础的东西是光电转换曲线。顾名思义,把光信号转换为电信号存储起来的一个过程,该过程可以从下面亮度采集和重现过程看到。摄像机将自然界光线采集下来,通过光电转换曲线进行图样编码,最后生成数字信号,也就是人们常说的 YUV 或 RGB 数据,把这些数据送到显示端之后会做反向光电转换,将它解码成光信号,最后送到屏幕上输出,这样的话就能看到视频上的内容。不同视频标准有不同的光电转换曲线,传统视频标准及 SDR 光电转换曲线用的 Gamma 曲线。

Gamma 曲线最开始是依据传统的 CRT 亮度和电压响应关系定义出来的。虽然后面 CRT 显示设备我们基本不用了,但是 Gamma 曲线仍然作为 HDR 光电曲线在整个系统当中保留了下来。随着我们显示亮度范围提升和图像编码的提升,Gamma 光电转换已经不适用于 HDR 领域光电转换,所以我们需要定义一条新的曲线。

这个是杜比早前做过的一个实验,为了定义 PQ 光电曲线的亮度范围,各种信号水平用户喜好度 0-1 万比特,用户喜好度超过 84%,因此杜比在定义 PQ 这条光电曲线的时候,将峰值亮度定义到了 1 万。这部分利用了人眼的视觉特效模型定义了光电转换曲线的形状,我们发现紫色的线是人眼视觉特效模型 Barten ramp 阈值曲线,单比特光电转换曲线位于这条曲线斜坡之上时,说明转换出来的图像可能会有量化误差。位于阈值之下的时候,编码出来的图像会平滑。一个 12 比特的 Gama 峰值量都是 1000 比特和 12 比特 PQ,峰值量是 1 万和 1000 比特,它们的曲线在 Barten ramp 这条阈值曲线上是表示成这样。Gama 在 11 比特以下大部分处于曲线之上的,因此会出现量化误差,而 PQ 两条曲线和 Barten ramp 曲线形状比较一致,而且都处于 Barten ramp 曲线之下,所以它不会出现误差,而且不同亮度下位宽利用率比较好。

我们看左边的时候,左边是 10bit 的,把右边几个曲线往右上角平移了一下。10bit,是有量化误差的,但通常视频图像在分发过程中会做二次编码,这个编码会掩盖这部分量化误差,因此我们现在 HDR 视频生态里用得最多的是 10bit 编码格式,这是利用不同亮度下的 Gama 和 PQ 码字利用率,有两点。第一点,PQ 在不同亮度下,在低亮部分它都保留一定的码字,这样的话可以更好地展示低亮部分的细节,而 Gama 则没有。另外,在 1-1000 人眼常见亮度下,PQ 的码字分辨差异比较小,编码出来的码字比较稳定。

其次是色彩,10bit 编码颜色种类更多,更宽色域能显示的颜色则更多,右边 2020 色域相比 709 大很多,尤其是绿色区域,能显示更多绿色。

最后一个技术是色调映射,现在能看到的 HDR 视频通常峰值亮度都能到 1000 比特,但显示设备没有那么高的亮度,如果我们不做任何处理直接显示内容的话,超过显示设备能力的那部分数据就会被丢失掉,因此我们在显示之前需要根据显示设备峰值亮度做色调映射,就是 tonemapping。这个 tonemapping 主要依赖于内容生产时生成的 HDR 元数据来生成这条 tonemapping 曲线。

元数据分两大类:一个是静态元数据,HDR10,主要包括内容生产时的参考显示器的亮度信息和色彩信息以及最大的帧平均亮度和最大的内容亮度。另一类是动态元数据,动态元数据是由三星和杜比分别定义的,我们有个共同特点,是逐场景变化的元数据,每一个视频帧都携带一份动态元数据。

从上面这张图可以看出,动态元数据相比静态元数据,它在生成 tonemapping 曲线时更加灵活,它的每一帧都可以生成一条独立的 tonemapping 曲线,而静态元数据,整个文件所有帧都是共用一条 tonemapping 曲线。

最后我们看一下 HDR10+标准里面的色调映射,HDR10+动态元数据中包含一部分是贝塞尔曲线的 10 个锚点,第二部分是拐点信息,第三部分是参考屏幕的峰值亮度信息。在终端屏幕上可以重新构建出一条贝塞尔曲线,这条曲线在低亮的地方是一条直线,用直线可以保留在拍摄端显示出来的阴影细节,这样的话我们在做 tonemapping 亮度和亮度之间的关系不会有改变。接着上面那部分是一条曲线,10+ 标准里面用的是贝塞尔曲线,贝塞尔曲线的特点是可以通过有限的锚点生成一条平滑的形状各异的曲线,这条曲线在制作的时候,导演可以根据自己想要的创作意图去调整这条曲线的形状,在人脸部分可以保证人脸细节,天空部分可以通过这条曲线保证天空的细节。最后是 Knee point,Knee point 是直线和曲线的连接部分,通常是希望这条直线和曲线连接部分是平滑过渡的,也就是说直线斜率和曲线在 Knee point 一点的斜率必须是一致的,这样就能避免图像在 Knee point 点左右两边出现 compressd 现象。

04 HDR 技术未来发展方向

第一,在手机技术发展有一个普遍趋势,硬件能力的小型化和专业能力往移动端迁移,认知 HDR 技术也是遵循这个规律,所以未来首先是手机屏幕硬件发展,目前屏幕普遍支持亮度都是小于 1000 比特的,色域基本都在 DCI-P3,未来可能会出现更高亮度的屏幕以及支持更宽色域的屏幕。这样的话就能显示出更好的 HDR 效果。

第二,目前的拍摄能力向移动端演进,这个在 iPhone12 和 iPhone13 上都能看到一点趋势了,dolby vision 的拍摄到显示一整套链路的落地。

第三,未来认知图片格式可能也会有一次净化,目前的图片虽然拍照时打开 ”HDR,但本身图片格式是 8bit 的、Gamma 2.2 曲线的图像内容。图像内容实际上限制了现在手机上 SP 硬件的能力,因此未来可能会有新的 10bit HDR PQ 的照片标准或者格式出现;现在在一些相机上,像佳能,它们已经支持 10bit 的 HDRPQ 照片。有了拍摄同样也需要有显示,这个是 NETFLIX 在 XBOOK 上做的实验,将 HDR 视频外面简介画面替换成一张 HDR PQ 图片来显示,保证用户在播放视频之前看到的显示效果和视频里的显示效果是一致的,我们认为在未来这也可能会落地到移动端。这个落地有很多难点要解决,现在看到的最大难点是,在传统图像处理领域有很多图样算法,这些图样算法都是基于 8bit Gamma 值处理的,如果平移到 PQ 域的话,处理出来的图像效果和以前是不是一样的,这个是要打一个问号的。

往期回顾

RTE2021 回顾丨基于 V-PCC 框架的点云视频编码与重构技术

RTE2021 回顾丨声网实时背景分割算法研究与应用落地

RTE2021 回顾丨智感超清:给你最优的视觉盛宴!

RTE2021 回顾丨Flat 在线教室的开源初体验

RTE2021 回顾丨面向 RTE 场景的新一代 API 探索和实践

RTE2021 回顾丨实时语音活动背后的质量监控

RTE2021 回顾丨一增两减,助力深度学习在实时推理场景中的应用

RTE2021 回顾丨面向 RTE 场景的新一代 API 探索和实践

RTE2021 回顾丨实时语音活动背后的质量监控

RTE2021 回顾丨一增两减,助力深度学习在实时推理场景中的应用

RTE2021 回顾丨WebRTC 漫漫成长路,下一个十年将走向何方?

RTE2021 回顾丨基于深度学习的音频编/解码的实现与落地挑战

RTE2021 回顾丨HDR 技术产品实践与探索的更多相关文章

  1. 深度解析SDN——利益、战略、技术、实践(实战派专家力作,业内众多专家推荐)

    深度解析SDN——利益.战略.技术.实践(实战派专家力作,业内众多专家推荐) 张卫峰 编   ISBN 978-7-121-21821-7 2013年11月出版 定价:59.00元 232页 16开 ...

  2. MOT大连站 | 卓越研发之路:前沿技术落地实践

    还在讨论究竟哪种编程语言更容易深度学习?哪种编程语言更具有价值?如果你是资深技术人员又或者是团队负责人,在机器学习.微服务.Spring 5反应式编程等方面遇到了问题,不妨参加一场由msup和微软联合 ...

  3. react技术栈实践(2)

    本文来自网易云社区 作者:汪洋 这时候还没完,又有两个问题引出来了. 按照上面的配置,第三方库 antd 竟然也被编译了,导致样式失败. react中,一旦包裹了子组件,子组件没办法直接使用 styl ...

  4. 聚焦性能技术和实践, MTSC全面揭秘PerfDog演进之路

    商业转载请联系腾讯WeTest获得授权,非商业转载请注明出处. 12月14日,2019年度中国移动互联网测试开发大会(Mobile Testing Summit China,简称 MTSC)深圳站于深 ...

  5. 网易云信技术分享:IM中的万人群聊技术方案实践总结

    本文来自网易云信团队的技术分享,原创发表于网易云信公众号,原文链接:mp.weixin.qq.com/s/LT2dASI7QVpcOVxDAsMeVg,收录时有改动. 1.引言 在不了解IM技术的人眼 ...

  6. 在线公开课 | 5G时代的视频云服务关键技术与实践

    5G时代来临在即,视频技术将会如何发展呢?基于视频云服务的技术开发又有怎样的变化呢?为此,京东云视频云产品研发部高级总监魏伟为大家做出了详细解读. 魏伟拥有10多年视频行业研发经验,先后从事于AVS标 ...

  7. 20145203盖泽双 《网络对抗技术》实践九:Web安全基础实践

    20145203盖泽双 <网络对抗技术>实践九:Web安全基础实践 1.实践目标 1.理解常用网络攻击技术的基本原理. 2.Webgoat下进行相关实验:SQL注入攻击.XSS攻击.CSR ...

  8. 20145203盖泽双 《网络对抗技术》实践八:Web基础

    20145203盖泽双 <网络对抗技术>实践八:Web基础 1.实践目标 (1)编写Web前端--含有表单的HTML代码. (2)编写Web前端--javascipt验证用户名.密码的代码 ...

  9. 20145203盖泽双《网络对抗技术》实践五:MSF基础应用

    20145203盖泽双<网络对抗技术>实践五:MSF基础应用 1.实践目标 掌握metasploit的基本应用方式,掌握常用的三种攻击方式的思路.下面是我自己做的时候用的四个套路. (1) ...

  10. 2017-2018-2 20179205《网络攻防技术与实践》第十一周作业 SQL注入攻击与实践

    <网络攻防技术与实践>第十一周作业 SQL注入攻击与实践 1.研究缓冲区溢出的原理,至少针对两种数据库进行差异化研究 缓冲区溢出原理   在计算机内部,输入数据通常被存放在一个临时空间内, ...

随机推荐

  1. Asp.Net Core中dotnet 命令行语法

    查看dotnet是否安装成功 dotnet -v dotnet-ef 不存在需要先安装(默认安装最新的版本) dotnet tool install -g dotnet-ef dotnet-ef 不存 ...

  2. 【PDF】数理科学 2001年01月号 特集:「時間とは何か」- 時間が生んだ世界観とパラダイム -

    书本详情 标题:数理科学 2001年01月号 特集:「時間とは何か」- 時間が生んだ世界観とパラダイム - | 数理科学編集部 | 年份:2001出版社:サイエンス社ISBN10:暂无信息5ISBN1 ...

  3. 天龙八部<三联版>二

    段誉来到无锡,遇上乔峰,斗气与乔峰比酒,乔峰误以为段誉是慕容复,段誉被乔峰豪气所折服,像乔峰坦言,乔峰不但不怒,反而对段誉很认可,二人结拜 段誉跟随乔峰来到丐帮,包不同和三女因为慕容复而和丐帮发生争执 ...

  4. 杭电oj--1019题C++实现

    这道题有两个问题: 首先,是求利用数论的辗转相除法求最大公约数,后再求最小公倍数m*n/gcd(m,n),其中,m*n可能会超过int 数据范围,所以,该语句换成m/gcd(m,n)*n. 然后是如果 ...

  5. 2021/9/26 Leetcode 两数之和

    题目:给你两个整数 a 和 b ,不使用 运算符 + 和 - ​​​​​​​,计算并返回两整数之和. int getSum(int a, int b) { while(b != 0){ unsigne ...

  6. snorkel SentenceNgramViewer 标记时出现 Integrity Error

    Snorkel使用SQLAlchemy作为数据管理工具,在本地会生成一个.db文件,现有操作与.db文件中已有的记录重复,违反了数据库主键不能重复的性质 解决方式: You can load a la ...

  7. ssh连接不上、Xshell意外关闭Socket error Event: 32 Error: 10053.

    Xshell意外关闭可能会出现这种问题,如遇如下错误可解决: Connecting to 47.106.80.28:22- Connection established. To escape to l ...

  8. 理解Node.js中的流(译)

    前言 本文部分译自by: Liz Parody in Node.js, 2019.11.23,英文良好的同学建议阅读原版. Node.js中的流是众所周知的难理解,而且更加难用.按照Dominic T ...

  9. jmeter设置支持https方法

    2020-2-26,疫情影响下第一天上班,今年想把自己学到的测试方面的知识记录下来,方便自己方便有需要的人,废话不多说,开启第一篇随笔,jmeter设置. 最近在测接口性能,涉及https的接口,不知 ...

  10. 【相邻父元素选择器】为啥p元素里面的h3也被选择了呢?求赐教

    <!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>& ...