HDR→SDR 双轨输出:一致曲线的色域映射与亮度保持
关键词:HDR→SDR、双轨输出、PQ/HLG、一次映射、Tone Mapping、色域映射(BT.2020→P3→sRGB)、亮度保持(EOTF 跟踪)、LUT 家族、肤色/天空保护、蓝噪抖动、移动端相册/回放/导出
摘要:
面向移动端与跨平台分发,实际生产往往需要同一母版同时生成 HDR 主轨与SDR 代理轨。若两条轨道采用不同曲线或不一致的色域映射,容易出现亮度台阶、肤色漂移、天空分层与带状等问题。本文基于研发实践,给出可复用的 “一致曲线” 双轨策略:在 PQ/HLG 母版上以一次映射完成 HDR 渲染,并用同构 LUT 家族派生 SDR;在BT.2020→P3→sRGB的色域压缩中,通过色相带限+高光减饱和与局部对比分配保持风格统一;同时给出端到端的 EOTF/ΔE/Δh°/Banding 评测、瓦片化与内存控制方案,使双轨在相册、回放、导出与第三方应用中呈现稳定一致的画面。
目录
-
问题定义与目标
双轨输出的业务动机(相册/编辑/分发)、一致性风险、性能与内存约束、质量目标(EOTF/ΔE/Δh°/Banding/Flicker)。 -
母版到双轨:一次映射与 LUT 家族
PQ/HLG 母版确定中灰与 roll-off;建立可版本化的 1D/3D LUT 家族(HDR 渲染 LUT、HDR→SDR 导出 LUT、缩略图 LUT),确保“同源同形”。 -
亮度保持:EOTF 跟踪与中灰锚定
以 18% 灰为锚,定义 HDR/SDR 双曲线的对应点;高 APL/低 APL 的亮度策略;避免系统合成与应用重复映射的护栏。 -
色域映射:BT.2020→P3→sRGB 的压缩策略
主色域与容器色域、矩阵与伽马、优先保留色相与明度的压缩路径;肤色线(OKLCh/IPT)带限与高光减饱和;天空/植被等大色块的平滑压缩。 -
抗伪影:带状、块效应与二次映射防护
10-bit 全链路与蓝噪抖动、局部对比控制、锐化与增益斜率互斥;系统 Tone 已开启时的应用层策略。 -
工程实现:移动端渲染与导出
GLES/Metal 的一次映射着色器骨架、ARGB_8888 降级、瓦片化与缓存;导出与分享时的产物命名与回退(HDR 优先、SDR 备份)。 -
一致性评测:指标与门限
数据集与 ROI(肤/灰/天/阴影)、客观指标(EOTF RMSE、ΔE00、Δh°、Banding、直方图 RMSE)与建议阈值;轻量 A/B 主观对齐流程。 -
案例与配置管理
典型失配样例(肤色偏移、天空带状、亮度台阶、二次映射)与修复;参数版本化、灰度与回滚;失败样本回包与指标 Gate。
1. 问题定义与目标
在同一母版(PQ 或 HLG)上同时产出 HDR 主轨 与 SDR 代理轨,需要保证两条路径在亮度(EOTF 跟踪)与色彩(ΔE/Δh°)上的一致,同时满足移动端的性能/内存约束,并避免系统合成与应用层的二次映射。
1.1 业务诉求与常见风险
-
业务诉求:相册/播放器内 HDR 实时渲染 + 编辑/分享 SDR 导出,两者观感统一;列表缩略、详情页、导出文件三者一致。
-
常见风险:
- 不同曲线/不同色域压缩 → 亮度台阶、肤色漂移;
- 系统已做 Tone,应用再做 → 二次映射;
- 8-bit 落盘/传输 → 带状;
- LUT 版本不一致 → A/B 不一致。
1.2 质量与性能目标(建议)
指标 | 目标值(P95/均值) | 说明 |
---|---|---|
EOTF RMSE(HDR↦SDR 对标参考) | ≤ 0.03 | 亮度跟踪误差 |
ΔE00(肤/灰/天) | ≤ 3.0 | 色彩一致 |
Δh°(肤色) | ≤ 3.5° | 肤色色相稳定 |
BandingScore(天空/斜坡) | ≤ 0.30 | 抗带状 |
直方图 RMSE | ≤ 2% | 统计分布一致 |
详情页掉帧率 | ≤ 2% | 30/60 fps 背景 |
峰值内存 | ≤ 350 MB | 含 1 幅大图/瓦片 |