查看原文
其他

打造极致的视觉体验 ——BIGO在HDR领域的探索与尝试

技术君 BIGO技术 2022-08-25

近十年来,视频技术发展日新月异,随着网络视频点播、短视频、直播、VR、5G等行业的兴起,消费者越来越注重接近真实的视觉体验,服务商为了迎合消费者,也想方设法从各个方面来提升视觉体验。提升视觉体验的一个主要途径是提升分辨率:从标清SD到高清HD,再到近年来的4k乃至8k,大分辨率确实给人们带来了更好的观感,然而,在手持设备成为主流消费终端的今天,大屏幕带来的收益愈发显得捉襟见肘,如何呈现更“好”的像素而非更“多”的像素,成为各大厂商考虑的问题。


在此背景下,HDR(High Dynamic Range,高动态范围)技术应运而生,相比于SDR(Standard Dynamic Range,标准动态范围),它旨在减少影像在采集过程中的亮度损失并扩展显示器的显示范围,从而使图像亮部和暗部的细节得以保留,提升对比度,给观众带来更接近真实场景的沉浸式视觉体验。BIGO作为全球音视频业务领域的开拓者和领军者,今年首次在短视频Likee尝试HDR技术,从零开始搭建了BIGO HDR系统,并在10-11月的试运行中取得了不错的效果,图1是BIGO HDR相对于普通SDR的效果示意图。


图 1  SDR(左)vs. BIGO HDR(右)

(HDR需要特殊显示设备,此图仅为示意)


想要让用户体验HDR视频,片源从何而来是我们面对的第一个难题。目前市场上支持HDR视频录制的手机凤毛麟角,例如2018年索尼发布的Xperia XZ2系列是世界首款支持HDR录制的旗舰机,2019年的三星Galaxy S10系列,2020年的小米10至尊版、iPhone 12系列等刚刚才开始支持。这就意味着,如果我们端内支持HDR录制上传,由于满足HDR硬件拍摄条件的拍客很少,上传的HDR片源数量也将极其有限。另外,不同手机品牌录制出的HDR视频格式也不尽相同,例如小米10至尊版录制的HDR是HDR10格式,三星Galaxy S10是HDR10+,而iPhone 12系列则是Dolby Vision,播放器如何适配各种格式也将是一个难题。BIGO HDR为了克服这些难题,在服务端通过ITM(Inverse Tone Mapping)和CC(Color Correction)将SDR视频转换为HDR视频,使HDR片源得到了极大的提升。


第二,消费者的设备能够支持HDR播放吗?答案是肯定的。我们调研发现,自2017年起,大多数手机制造商,例如苹果、三星、HTC、索尼,就陆续发布了支持HDR播放的旗舰机。到2020年,市面上许多中高端手机都已经能够支持HDR播放。在移动端HDR标准HDR10、HDR10+以及Dolby Vision中,HDR10是大部分HDR手机都支持的标准,并且是免费的,所以BIGO HDR选用HDR10作为统一的转换格式。


BIGO HDR系统整体架构如图2所示,它是一个端到端的HDR系统,用户只需上传普通的SDR视频,SDR视频在服务端被统一转码为HDR视频,下发侧动态自适应配置,如果消费者的设备满足HDR播放条件,则能够享受到HDR带来的视觉体验。


图 2  BIGO HDR系统架构


HDR之所以能够带来更逼真视觉体验,最重要的原因就是显示设备能够呈现的亮度范围更大。古老的CRT(Cathode Ray Tube,阴极射线管)显示器峰值亮度仅有100nit(尼特,一种亮度单位),十几年前普通的SDR显示器的峰值亮度有300~500nit,而如今智能手机屏幕的典型亮度普遍可达500nit,峰值亮度可超过1000nit。具有更高亮度范围的HDR视频要想在只支持低亮度范围的设备上显示,就需要将高亮度范围映射到低亮度范围,这个过程被称为TM(Tone Mapping)。BIGO HDR正相反,它通过把0~100nit的SDR域映射到0~1000nit的HDR域,实现由SDR到HDR的转换,这个过程叫做 ITM。


图 3  BIGO HDR TM曲线


如图3,BIGO HDR使用了一种三段式的TM曲线,包含从  到  的暗部  、从  到  的线性部分  和从  到  (白点)的亮部  ,即:

  


像这样对中间亮度的区域进行线性扩展可以保持图像整体曝光度不变,针对高亮区域进行更大幅度的亮度拉伸可以提升图像的明暗对比,以此获得更佳的观感。曲线的每段都可以抽象为形如  的表达式,这样有利于我们对其形状进行控制调整。确定了  后,其反函数  就是我们所需的ITM。


对于f(x)函数的具体形式,我们根据每个视频的特征,动态自适应地确定。这些特征来自于我们的预分析,目前有直方图分布、色彩主成分分析,随着后续的迭代,我们会加入更多的预分析特征。


图 4  LUT原理图


在工程层面,BIGO HDR使用了Lut(Lookup Table)来进行实际的ITM操作,加快处理速度。因为ITM是有限个离散亮度值集合之间的映射,具体的映射值计算方法如下:首先设计一个覆盖所有输入亮度的递增HDR序列  ,把该序列输入到TM函数  中可得到对应的SDR序列  ;然后对于某个SDR亮度值  ,它对应的HDR亮度值可以由线性插值求得:

  


其中  、  分别是SDR序列中小于等于、大于等于  且最接近  的元素;  、  分别是HDR序列中和  、  具有相同位置的元素。我们遍历所有的SDR亮度值,构造ITM Lut,在转码过程中直接查表完成映射,减少了许多不必要的运算。


2015-2016年,ITU-R(国际电联无线电通信组织)分别发布了关于SDR和HDR标准的建议书BT.709-6和BT.2100-0,表1列出了两者的主要差别。除了上文所述的亮度范围差异外,对于光电、电光转换函数、位深和色域空间,BIGO HDR也参照标准做了相应的转换,在此不多做赘述。

表 1  SDR和HDR标准的主要差别


2020年,我们在Likee短视频上试运行了BIGO HDR系统,结果表明,目标用户的人均观看时长平均提升4.53%,播完率平均提升0.8%,提升了用户体验。


BIGO HDR系统,解决了现阶段HDR视频不足的困境,采用效果优先,兼顾性能的算法,把大量优质的SDR转化为高体验的HDR视频。同时,我们在SDR视频不断转化为HDR视频的过程中,也将支持HDR视频的录制,进一步扩充HDR视频的量。我们将不断迭代BIGO HDR,在效果和性能方面持续突破,创造更大的价值。



版权声明

转载本网站原创文章需要注明来源出处。因互联网客观情况,原创文章中可能会存在不当使用的情况,如文章部分图片或者部分引用内容未能及时与相关权利人取得联系,非恶意侵犯相关权利人的权益,敬请相关权利人谅解并联系我们及时处理。


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存