一个用于高精度 RAW 图像处理的命令行工具
让摄影师也能用上电影调色工作流中的 LUT —— 精准、可复现、无需妥协。
Raw Alchemy 是一个基于 Python 的开源工具,专为解决一个长期困扰摄影师的痛点而设计:为什么在视频中表现完美的创意 LUT(色彩查找表),直接用在 RAW 照片上却总是色彩失真?
答案在于色彩空间不匹配。Raw Alchemy 通过构建一条严谨、自动化的色彩管线,将任意相机的 RAW 文件转换至标准中间空间,再精确模拟目标 Log 色彩空间(如 F-Log2、S-Log3),从而确保 LUT 的应用结果与在 DaVinci Resolve 等专业视频软件中完全一致。

核心理念:打破摄影与电影调色的壁垒
大多数创意 LUT 并非为 sRGB 或 Adobe RGB 设计,而是为特定的 Log 色彩空间(如 Sony S-Gamut3.Cine + S-Log3、Fujifilm F-Gamut + F-Log2)量身打造。当你在 Lightroom 中直接将一个 F-Log2 LUT 应用于 Fujifilm RAW 文件时,软件默认的色彩处理路径与 LUT 的预期输入严重不符,导致影调偏移、肤色失真、高光/阴影细节丢失。

Raw Alchemy 的解决方案是重构整个处理链:
- 统一解码:将所有 RAW 文件解码至 ProPhoto RGB(线性),消除不同厂商色彩科学的差异;
- 精准 Log 模拟:将线性数据转换至目标 Log 色域(如 F-Gamut)并应用对应 Log 曲线(如 F-Log2);
- 正确应用 LUT:在此“伪装”好的 Log 图像上加载 .cube LUT,结果与视频工作流一致;
- 高位深输出:保存为 16 位 TIFF,保留完整动态范围,便于后续专业调色。
处理流程(色彩管线)
RAW (相机原生)
↓ (rawpy 解码)
ProPhoto RGB (线性)
↓ (colour-science 转换)
目标 Log 色域 (线性,如 F-Gamut)
↓ (应用 Log 曲线,如 F-Log2)
目标 Log 编码图像
↓ (可选:应用 .cube LUT)
最终图像(Log 或 LUT 风格)
↓
16-bit TIFF 输出
主要特性
- ✅ RAW → 线性 ProPhoto RGB:使用
rawpy(基于 LibRaw)进行高质量 RAW 解码; - ✅ 支持主流 Log 格式:F-Log2、S-Log3、V-Log、Canon Log 2/3、LogC3/4、N-Log 等;
- ✅ 精确 LUT 应用:支持
.cube格式 LUT,在正确色彩空间下加载; - ✅ 灵活曝光控制:
- 自动测光:混合(hybrid)、平均(average)、中央重点(center-weighted)、高光保护(highlight-safe / ETTR);
- 手动覆盖:以 EV 档位精确调整曝光;
- ✅ 镜头校正:基于 Lensfun 的畸变与暗角校正(支持自定义数据库);
- ✅ 专业输出:16 位 TIFF,保留最大动态范围与色彩信息;
- ✅ 双界面支持:图形界面(GUI)+ 命令行(CLI),兼顾易用性与自动化。
使用方式
图形界面(GUI)
直接运行可执行文件(无参数),即可启动直观的交互窗口:
- 选择输入/输出
- 单文件处理:点击 Select File...
- 批量处理:点击 Select Folder...
- 配置处理参数
- Log Space(必选):从下拉菜单选择目标 Log(如 F-Log2);
- LUT File(可选):加载
.cube创意 LUT; - Custom Lensfun DB(可选):使用自定义镜头数据库(如从 Adobe LCP 转换而来)。
- 调整曝光
- Auto:选择测光模式(默认 hybrid);
- Manual:输入 EV 偏移值(如 +1.5)。
- 开始处理
- 点击 Start Processing,实时日志显示进度;
- 完成后提示 “processing complete”。
命令行(CLI)
基本语法
# 可执行文件(Linux 示例)
./RawAlchemy-linux input.CR3 output.tiff --log-space "F-Log2"
# 从源码安装
raw-alchemy input.ARW output.tiff --log-space "S-Log3" --lut "look.cube"
常用示例
1. 基础 Log 转换(保留 Log 空间供调色)
raw-alchemy photo.NEF photo_log.tiff --log-space "F-Log2"
2. 应用创意 LUT
raw-alchemy image.ARW final_look.tiff --log-space "S-Log3" --lut "cinematic_look.cube"
3. 手动曝光 +1.5 档
raw-alchemy dark.CR3 bright.tiff --log-space "V-Log" --exposure 1.5
4. 使用自定义镜头数据库
raw-alchemy input.CR3 output.tiff --log-space "Canon Log 3" --custom-lensfun-db "_lcps.xml"
CLI 选项说明
| 选项 | 说明 |
|---|---|
<INPUT_RAW_PATH> | 必需,输入 RAW 文件(.CR3, .ARW, .NEF 等) |
<OUTPUT_TIFF_PATH> | 必需,输出 16-bit TIFF 路径 |
--log-space TEXT | 必需,目标 Log 空间(见下方支持列表) |
--lut PATH | 可选,.cube LUT 文件路径 |
--exposure FLOAT | 可选,手动 EV 调整(如 -0.7, 2.0) |
--metering TEXT | 自动测光模式:hybrid(默认)、average、center-weighted、highlight-safe |
--lens-correct / --no-lens-correct | 启用/禁用镜头校正(默认启用) |
--custom-lensfun-db PATH | 自定义 Lensfun XML 数据库 |
支持的 Log 空间
F-Log, F-Log2, F-Log2C,
V-Log,
N-Log,
Canon Log 2, Canon Log 3,
S-Log3, S-Log3.Cine,
Arri LogC3, Arri LogC4,
Log3G10
高级功能:导入 Adobe LCP 镜头配置文件
Raw Alchemy 内置脚本 lensfun-convert-lcp,可将 Adobe LCP(Lens Correction Profile)转换为 Lensfun 可用的 .xml 数据库,大幅扩展镜头支持范围。
操作步骤
- 获取 LCP 文件
安装 Adobe DNG Converter,配置文件位置:- Windows:
C:\ProgramData\Adobe\CameraRaw\LensProfiles\1.0\ - macOS:
/Library/Application Support/Adobe/CameraRaw/LensProfiles/1.0/
- Windows:
- 运行转换脚本
# Windows
python src/raw_alchemy/vendor/lensfun/win-x86_64/lensfun-convert-lcp "C:\ProgramData\Adobe\CameraRaw\LensProfiles\1.0"
# Linux
python3 src/raw_alchemy/vendor/lensfun/linux-x86_64/lensfun-convert-lcp /path/to/lcp
- (推荐)启用去重
避免重复条目,指向项目内置数据库:
python ... --db-path "src/raw_alchemy/vendor/lensfun/db"
- 在 Raw Alchemy 中使用
通过--custom-lensfun-db参数或 GUI 的“Browse”加载生成的_lcps.xml。
提示:使用
--help查看脚本完整参数。
技术栈
- RAW 解码:
rawpy(封装 LibRaw) - 色彩科学:
colour-science(符合 ICC 与 ACES 标准) - 镜头校正:
Lensfun - 图形界面:基于
PyQt5或Tkinter(视版本而定)















