本文整理了HDR视频相关的基础,从标准到实现方式以及软件流程一次整理好。总结了HDR视频常见的标准格式,以及HDR视频的几种实现方式涉及等技术,最后整理了HDR视频的软件实现流程。
更及时的更新和排版可以查看:
成像技术实例-HDR视频技术基础
HDR技术涉及从传感器到ISP处理以及编解码和显示等完整链路,影像系统主要是指HDR生态的成像采集和处理段,之后是HDR生态的编解码,以及视频分发,分发到不同的终端上再进行内容的解码和回放显示,本文中心在前者,编码器以及显示等会在多媒体章节展开。
根据两年前梳理的成像技术的课程完善整理而成,系列规划已发出,如果你对相机成像技术感兴趣,欢迎持续关注更新。
一、什么是HDR视频
HDR视频是在连续视频流中实现高动态范围,侧重实时连续处理和显示,并保证全链路兼容。
HDR视频相比普通适配的特点就是高对比度(0.005-1000nit),宽色域(dispaly P3色域)以及高位深(10bit+)。
HDR关键技术是传递函数以及元数据,图像处理的核心是格式标准,格式标准包括:HDR10/HDR10+/HLG/Dolby Vision等,关键技术有计算HDR、DOL-HDR、逐帧动态元数据等,HDR视频需要重点考虑与旧SDR设备的兼容性。
HDR适配根据核心传递函数gamma曲线不同,可以分为两类HLG和PQ。其中基于PQ感知量化,是对采集到的数据进行二次处理,产生的元数据在显示段再做亮度映射;另一类是基于HLG则是在采集时就进行编码,无需二次处理,显示时动态适配屏幕。
其中最基础的格式是HDR10是基于PQ感知量化曲线,并配合静态元数据;HDR10+实在HDR10的基础上增加了动态元数据;HLG自然就是基于HLG曲线的标准;杜比基于HLG或PQ以及使用动态元数据。
二、HDR视频标准

1、HDR10
HDR10是目前最广泛支持的高动态范围的开放式HDR标准视频格式,色深10-bit,10bit对应可显示超过10亿种颜色,所以一些地方也会用10亿色表示,峰值亮度1,000 nits,色彩空间ITU-R BT.2020,传输函数使用的PQ曲线,搭配的静态元数据。通用性强,几乎所有现代的电视和显示器等都支持,且内容生态完善,主流平台均已提供HDR10内容 。
为什么照片不支持HDR10?
照片不支持HDR10或者说HDR10为何只适合视频呢?因为照片更需要向后兼容,HDR10不兼容SDR设备;HDR10的静态元数据是针对的逐视频序列,无法覆盖单张照片的全局局部亮度变化。
2、HDR10+
三星常用HDR10+,主要是增加了动态元数据,且在一些产品上可以看到相关的认证logo。HDR10是使用单条静态元数据描述整个视频,HDR10+则是每帧/每场景都有独立的Tone Mapping参数。
3、HLG
HLG最初设计是用于实时广播,利用混合特性让SDR电视可以直接显示可接受的HDR画面,因此HLG标准的视频主要还是应用在直播、监控以及电视广播等。也有松下部分相机支持HSP 格式,是用HLG编码静态图像封装为HEIF格式。
Hybrid Log-Gamma用在视频领域中,HLG标准使用的BT.2020色域,10bit色深,无元数据且免版税。
4、Dolby Vision
Dolby Vision 是杜比实验室开发的专有HDR视频格式标准,初衷是为了提供影院级的视觉体验 。授权需要专有授权,需Dolby认证。一些流媒体视频以及院线会带Dolby Vision标识。杜比看起来好像高端一些,体现在整体参数上,数值会更高一些。
核心技术特点包括,影视工业色深可达到了12bit,iPhone一般使用10bit,峰值亮度也更高,达到了最高10,000 nits,元数据使用的逐帧/逐场景优化的动态元数据,动态元数据包含亮度、色彩映射指令等,播放设备使用时可根据自身能力实时优化显示效果。传输函数使用的PQ曲线。
5、HEVC
HDR视频核心编码标准是H.265/HEVC Main 10 Profile,Main 10 Profile 的核心定义是支10-bit 采样深度的视频编码,色度采样格式为 4:2:0,是 HDR 视频分发的基础标准 。
HDR10+编码标准是H.265/HEVC 和ST 2094-40动态元数据;而HLG无需元数据,编码器直接编码HLG曲线后的信号,表面标准就是H.265/HEVC以及兼容模式H.264。Dolby Vision 编码是最复杂,视频编码标准使用H.265/HEVC 和 Dolby Vision Profile。以上不同格式的编码均需要平台硬件支持。
6、ProRes
Apple HDR视频也是使用的PQ / HLG / Log 传递函数,位深10-bit 422为主。也有元数据存储,具体实现我不太清楚,就不过多展开。
ProRes 编码家族很丰富,包括ProRes 422、ProRes 444、ProRes raw等,一般使用纯帧内压缩,apple生态打通,便于拍摄以及后期创作。
三、传感器层HDR视频实现
HDR视频的实现与HDR照片类似,同样涉及硬件传感器层、ISP层、编码器层、显示层以及软件算法等多个层面的协同,但在技术侧重点不同,视频HDR更强调实时性、时序一致性、以及带宽效率等。HDR视频和普通视频的差异主要在前面两部分,其他模块在视频多媒体系列展开。
1. Digital Overlap HDR
DOL-HDR是指传感器以行交错方式输出多曝光数据,长曝光行与短曝光行交替出现,特点是实时HDR,根据曝光次数不同分为2曝光3曝光4曝光,每增加1曝光约 3-4 stops。当前骁龙8s Gen 4 搭配QDOL传感器,动态范围约提升12-16 stops,非常可观。
DOL照片和视频也是有区别的,视频DOL需要持续实时输出,需要传感器支持高帧率的行交错,而照片DOL则可容忍更高的读取时间。
代表传感器有Sony IMX586/IMX686以及Samsung ISOCELL GN2/GN5等。
2. Staggered HDR
Staggered HDR使用帧级交错,传感器以时间交错输出多帧不同曝光,之后再ISP实时融合,根据融合帧数的不同对帧率有限制,比如4K@60fps HDR需需要传感器支持输出120/180fps的码流,所以带宽需求以及功耗也就更高。代表传感器有OmniVision OV48C/OV64A等。
3. Dual Conversion Gain
DCG就是单帧内双路读出,双路包括高增益和低增益,视频模式,适合高速运动视频,实时融合但是动态范围提升有限,约 3-4 stops通常还是需配合其他技术一起使用,比如在极端运动场景下作为DOL-HDR的补充,也常用在高速慢动作HDR视频比如4K@120fps HDR视频中。
四、ISP层HDR视频实现
1. 实时多曝光融合
多帧融合一般实在sensor多帧的基础上进行,比如DCG/DOL,sensor输出多帧后,ISP进行HDR多帧融合。
多帧融合技术是捕捉同一场景下的多张不同曝光时间的照片合成一张HDR图像。视频实时多曝光融合更加强调实时性,ISP每帧接收多曝光数据,实时对齐融合输出单帧HDR,从而难点就是处理带宽以及延迟。
此时高通ISP有DMM引擎可以逐像素运动估计,保证融合匹配;有18-bit Triple pipeline可以同时处理3路HDR视频流。
以DCG输入为例,融合算法的步骤包括,首先使用DMM引擎运动检测,然后通过块匹配等进行对齐补偿,之后进行曝光的加权融合高光取短爆暗部取长曝,最后进行色调映射压缩到目标动态范围,从而输出一路HDR视频帧。
硬件ISP处理能力也是在不断的迭代,比如骁龙8 Gen 1支持DOL-HDR视频录制,但是骁龙8s Gen 4已经能够支持4曝光QDOL视频了。
2. AI ISP HDR视频
HDR视频有很多利用AI提升HDR提升动态范围的手段。
视频使用ISP中使用AI降噪在低光HDR视频中保持细节,通过利用前后帧信息降噪,提升HDR融合能力;比如在三重曝光4K HDR视频拍摄中,实时选择三重曝光中最亮、最暗和中间最佳部分融合,之后通过DMM引擎去除多帧合成中的鬼影。
利用AI增强HDR,使用NPU或者认知ISP实现实时语义分割 ,区分天空、人脸、建筑等区域差异化处理,并逐帧独立应用HDR tone mapping,
3. 18-bit RAW视频处理
ISP逐渐提升的计算能力,从而可以支持更高位深的图像信息,就不需要多帧融合,单帧就可以记录足够的动态范围信息。
比如当前有ISP就可以支持18-bit精度处理视频RAW流,自然就保留最大动态范围,输出的位深也可以尽量的高位深。可以应用在专业Log视频功能应用中。
五、HDR视频软件流程
1、HDR照片和视频
HDR 照片是Burst 离线融合,包括N 帧不同曝光 → ISP 耗时融合 → 单张输出;而HDR 视频是单帧实时融合,包括每帧 DOL/DCG → ISP 帧周期内处理 → 双路并行编码,维护时序一致性和元数据连续性。
所以对比HDR照片和HDR视频的相似处在HDR,差异较大,HDR视频的软件流程服用视频软件流程。setRepeatingRequest()持续请求,sensor单帧内多曝光,ISP每帧实时融合,ToneMapping自适应,HDR视频编码带入元数据。
2、普通视频和HDR视频
忽略最新混合以及优化设计方案,从纯粹的视频链路来对比普通视频和HDR视频的实现流程。
输入的话,输出流格式就不同,普通视频可以配置 8-bit YUV_420,HDR视频需要10-bit YUV_P010;sensorMode配置不同,普通视频单曝光,HDR需要配置多曝光DOL或者DCG。
pipeline Node处理链路也会分别设计链路,普通视频一路,HDR视频10bit需要和tuning重新调试10bit以及传递函数等。HDR图像处理需要严格管理帧周期,ISP 融合和Tone Mapping 必须在帧周期内完成。
输出来看,普通视频是 ISP 单路 8-bit Gamma 输出;HDR 视频是 IS双路并行,包括一路Preview 8-bit SDR 和Video 10-bit PQ/HLG),且需要编码器注入 HDR SEI 元数据。
HDR视频还需要考虑预览和视频一致性,所以预览Preview 需做 HDR→SDR 映射,避免用户所见非所得
六、总结
当前嵌入式平台上,HDR视频通常都会选择混合方案,此时request次数可能为2-3次,比如每次request采用DOL/QDOL的sensor,之后进行实时ISP融合,获得更高质量的图像,输出后进行HDR10/Dolby Vision编码,之后输出视频封装,整个过程根据平台特性以及在功耗、性能、画质等取得平衡。
除了ISP硬件,当然也有CPU的HDR软件处理方法,比如开源项目ISP Pipeline HDR+,是一种软件仿照真实硬件ISP的工作方式,通过多帧融合算法将几张不同曝光的图片合成一张HDR图像。
电影工业以及苹果生态常使用dolbyVision HDR,Android生态使用最多的是HDR10和HLG,三星则主要是HDR10+。
HDR视频的典型应用场景包括,使用4K Dolby Vision录制电影感Vlog,使用HLG实时HDR无需后期可以应用在直播短视频平台,高分辨率的HDR视频应用在拍摄纪录片,高帧率的HDR视频应用在高速运动赛事摄影中。
更多相关系列文章查看:
相机成像知识体系专栏-大纲