Agent Skills
返回列表
🎨

OpenEXR HDR 合成流水线

设计多媒体 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/openexr-hdr-compositing-pipeline。

技能介绍

要解决什么问题

渲染器输出的 .exr 文件通常是 32 位浮点的高动态范围图像,单帧里可能同时包含 beauty、shadow、reflection 等多个渲染层。普通图像工具要么把 HDR 数据强行截断成 8 位,导致高光溢出或暗部死黑,要么根本不支持读取这类多层文件。当你需要把不同层分开调整、按对象做选择性合成,或者把 HDR 结果正确转换到显示设备时,就需要一条真正理解 OpenEXR 数据结构的处理链路。

核心能力

这个技能把整套处理流程收敛到基于 oiiotool 的命令行管线中,围绕三个核心环节展开:

  • 多层合成:读取单个 EXR 内的全部渲染层,按需重新组织通道并输出新的合成结果,而不是把所有层压平成一张图。
  • ACES 色调映射:通过 ACES 色彩变换把线性 HDR 数据映射到显示空间,保证高光与中间调在全亮度范围内都有可预测的过渡。
  • Cryptomatte 对象隔离:解析 EXR 内嵌的 Cryptomatte 元数据,按对象或材质 ID 提取遮罩,用于局部调整或独立导出。

整条链路围绕 OpenImageIO 与 Imath 两个底层库工作,所有操作都可以通过命令行参数组合出来,便于写进自动化脚本。

适用边界

  • 依赖宿主环境已正确安装 OpenEXR 及其前置依赖,否则 oiiotool 无法运行。
  • 这是命令行工具链,没有图形界面;不熟悉 CLI 的团队需要先打通构建与调用环节。
  • 合成质量取决于源 EXR 的通道结构和 Cryptomatte 命名规范,脏数据无法被这条管线修复。
  • 资料以 exrwriter.cpp 这个 “Hello, world” 示例作为上手入口,复杂场景需要查阅上游 OpenImageIO 与 OpenEXR 的技术文档。

使用场景

  • 渲染农场跑完动画序列后,需要批量把 beauty、shadow、reflection 等分层 EXR 重新合成并输出审核版
  • 视觉预览要放到 sRGB 显示器或 HDR 监视器上展示,需要把线性 HDR 数据按 ACES 正确映射到目标色彩空间
  • 广告片里某件道具需要单独调色或换背景,需要从 EXR 中按 Cryptomatte ID 提取该对象遮罩再做局部合成
  • 摄影测量或 HDR 环境贴图需要从原始曝光序列生成 32 位浮点 EXR,再在流水线里预览和分发

适合人员

  • 渲染技术总监,需要在交付前统一验证分层 EXR 的通道结构与合成结果是否符合规范
  • 合成师,经常处理多层渲染结果,需要在 ACES 工作流下做调色和局部遮罩合成
  • 后期流程工程师,负责搭建或维护基于 OpenImageIO 的命令行 EXR 处理脚本
  • 调色师,需要把 HDR 母版正确转换到不同显示目标并保留高光细节