Imatest 支持的主要动态范围(DR)测试方式一览
方法 | 使用的模块 / 图卡 | 计算思路(要点) | 适用场景 | Imatest 官方评价 |
---|---|---|---|---|
1. 单张透射阶梯灰卡(Quality-based / SNR-based) | Color / Tone Interactive/Auto(Multicharts/Multitest)、36-patch Dynamic Range 透射灰卡 | 基于“场景参考噪声”求 SNRscene。在饱和点以下寻找 SNR ≥ {10, 4, 2, 1} 的最暗补丁,得出高/中高/中/低四档 DR(以 f-stop 或 dB 表示) | 最常用;一次曝光就能测一般数码相机的系统 DR | 官方推荐,Imatest 默认报告 |
2. Slope-based DR(使用与 1 相同的单张透射阶梯灰卡) | 与方法 1 同 | 计算密度曲线斜率 > 7.5 % 的区间;斜率过低或饱和区域不计入 DR | 用来限制方法 1,防止眩光把 DR 做大 | 不单独推荐使用,Imatest 5.2+ 只把它当上限 |
3. 多曝光反射/透射阶梯灰卡 | Stepchart + Dynamic Range 后处理 | 多张不同曝光合并,找最大像素(≈饱和)与最暗仍可用区 | 可用反射卡(如 Q-13/Q-14);适合实验室已拍好多曝光序列 | 结果没计入镜头眩光,官方不鼓励做正式比较 |
4. ISO 15739 SNR 推导 DR | Color / Tone 或 eSFR ISO | 先按 ISO 15739 算 SNR,再推断 DR(可只靠一块密度≈2 的补丁) | 反射卡、手机 CIPA / CPIQ 评价 | 符合国际标准,数值与方法 1 接近 |
5. 原始传感器 DR(EMVA 1288 拟合) | Color / Tone(Raw 模式) | 对 Raw 像素噪声拟合 EMVA 方程,外推 SNR=1 | 评估“裸传感器”潜力 | 只限线性传感器,不含 ISP/镜头 |
6. Contrast Resolution 图卡 | Color / Tone | 统计不同亮度上低对比细节的可见度 | HDR 手机、汽车摄像头 | 认为能更贴近“可用 DR”,但尚无行业标准 |
为什么 Imatest 推荐Quality (SNR)-based Dynamic Range?

1. 直观:直接把“画面内有用的数据范围”定义为 SNR ≥ 某阈值,和人眼感知一致。动态范围(DR) 指的是相机能够清晰捕捉并保持良好对比度和信噪比(SNR)的亮度范围(即拍摄场景或物体的明暗跨度)。
这种方法的核心问题:由于无法直接测量场景本身的亮度噪声(用于计算场景信噪比),因此必须通过可测量的数据来推算。这些数据包括:
- 信号(S):通常用数字值(DN,过去称为“像素值”)表示。
- 噪声(𝑁𝐷𝑁):即测量到的噪声(过去称为“𝑁𝑝𝑖𝑥𝑒𝑙𝑠”)。
简单来说,动态范围反映了相机能同时拍清最亮和最暗部分的能力,而信噪比的计算依赖于相机实际记录的信号和噪声数据。
2. 可分档: 给出 10 → 4 → 2 → 1 四档(20 dB→0 dB)的 DR,方便同时看“高画质”与“极限”表现
3. 更稳健: 使用场景参考噪声把伽马、肩部曲线、去噪等 ISP 影响“还原”回场景亮度,避免单纯像素 SNR 被曲线斜率误导
4. 自动防夸大: 从 5.2 版开始,Imatest 会用 Slope-based DR 把 Quality-based 结果“卡顶”,并在 24.2 + 版进一步剔除高光肩部(斜率 < 0.05)的虚假贡献
Quality (SNR)-based DR 计算流程
目的: 找出从高光到阴影,图像在 SNR ≥ 阈值 且未饱和的亮度跨度。
- 拍摄
- 用均匀背光的 36-patch 透射灰卡(或 HDR 卡)一次曝光。
- 确保最亮一两阶,恰好 98 % 饱和,防止过曝 。
- 测每块灰阶的平均像素值 S 与噪声 Npixels
- 时域噪声通常用“两张同曝光差分 / √2”方法,比多张平均快且准确 。
- 把像素噪声转换成“场景参考噪声” Nf-stop
- 计算灰度曲线斜率$$ g = dS/d(\log_2 L_{scene})$$
- $Nf-stop = Npixels / g $(单位已变成 f-stop)【直观含义:噪声相当于亮度±多少挡】 。
- 求场景 SNRscene(或直接用 1/Nf-stop)
- Imatest 同时给出 SNRscene(比值或 dB)和 f-stop 噪声两种表示。
- 判定四个质量档
档位 | 判定条件 | 典型用途 |
---|---|---|
High | SNR ≥ 10 (20 dB) | 专业摄影、HDR 合成 |
M-High | SNR ≥ 4 (12 dB) | 高端手机日光场景 |
Medium | SNR ≥ 2 (6 dB) | 一般浏览质量的打印 |
Low | SNR ≥ 1 (0 dB) | 仅可辨认轮廓 |
其中SNR与dB的转换关系如下:

在 Imatest 里,动态范围就是从最亮未饱和补丁一直往暗处找,直到 场景参考 SNR 低于这些阈值为止,分别得出四档 DR 值(以 EV 或 dB 形式)。图里只是把阈值写出来,提醒你对应关系。
6. 计算 DR
以灰阶的入射光学密度或 f-stop 为横轴,
从最亮 98 % 饱和处向暗区找,直到 SNRscene 低于档位阈值,
两点光密度差即为该档 DR; f-stop换算 为dB 时乘 6.02。
7. 报告与校正
Imatest 会自动把肩部斜率 < 0.05 的区段剔除,防止高光“假 DR”。
如果 Quality DR > Slope DR,会取 Slope DR 作为上限,避免眩光伪高值。
Quality (SNR)-based DR方法小结
- 测一次图卡即可 得到四档 DR,并能同时查看噪声曲线与斜率,效率最高。
- 只要光路遮光没有环境光和杂散光干扰、背光均匀,Quality-based DR 就能给出稳定可信的结果。
- 其他方法(ISO 15739、Raw 模式、多次曝光等)在特定需求下仍有价值,但若想快速评估整机可用动态范围,Imatest 官方首推 Quality (SNR)-based 方法。
希望以上解释能让你轻松理解 Imatest 的动态范围测试选项及其计算核心!
Imatest输出数据表的数据分析



Imatest “Quality (SNR)-based” 动态范围(Low 档,SNR ≥ 1)在这份 CSV 里用到的关键数据
计算步骤 | 对应数据列(文件中的表格标题) | 示例取值 | 说明 |
---|---|---|---|
① 选定最亮的参考补丁(饱和前一档) | (-)Log(exp) 列(行 Zone 1) | 0.1670 | 这是 36 阶透射灰阶中最浅的一格,对应场景曝光基准 Emax。 |
② 从暗区向亮区寻找 Y_f-stop S/N ≥ 1 的最后一格 | Y-fstop S/N 列(表头 “Noise … f-stop Signal/Noise (scene-ref)”) | Zone 24 = 1.13 | Zone 25 开始掉到 0.8 以下,因此 Zone 24 是阈值最后通过的位置。 |
③ 读取该阶的曝光值 | 同一行的 (-)Log(exp) | 5.1091 | 表示该阶相对 Emax 的光学密度(OD)。 |
④ 计算 DR (f-stops) | ΔOD × log₂10 → (5.1091 – 0.1670) × 3.3219 ≈ 16.5 EV | OD → f-stop 的换算系数 log₂10 = 3.3219。 | |
⑤ 换算 DR (dB) | DR₍EV₎ × 20 log₁₀2 → 16.5 × 6.0206 ≈ 99.3 dB | Imatest 在表 “Dynamic_Range_dB” 行给出的就是这个结果。 |
小结
- 用到的核心列只有两组
- 灰阶曝光顺序表里的 $(-)Log(exp)$(确定每个补丁相对场景亮度的 logE)。
- 噪声后处理表里的$ Y-fstop S/N$(场景参考 SNR;已把像素噪声除以曲线斜率换算成$ f-stop $噪声)。
- Imatest 先找出 最后一个 $Y-fstop S/N ≥ 1 $的灰阶 → Zone 24;再与最亮参考补丁作差得到 ΔEV,并乘 6.02 dB/EV 转换成 dB。
- 于是 Low-quality 档(SNR ≥ 1)得到 DR = 99.3 dB,这就是报告中 “Dynamic_Range_dB” 表的第一列数值。
Quality-based Dynamic Range (QDR) 方法的局限性
局限点 | 原因 / 机理 | 受 Tone-mapping 影响的表现 |
---|---|---|
1. 依赖“全局”传递曲线斜率 g | QDR 把像素噪声 N_{pixels} 除以曲线斜率 g=dS/d(\log_2 L) 得到场景参考噪声;假设 所有灰阶都受同一全局 OECF | 局部或分段 Tone-mapping 会让每块灰阶都有各自的局部斜率 → g 被压缩或放大,噪声被错误放大 / 缩小,导致 SNRscene 失真 |
2. 肩部/高光会被“拉平” | 激进的 Highlight Tone-mapping 让曲线在高光变得几乎水平(g≈0) | Imatest 24.2+ 会把 g < 0.05 的区段直接排除,但这也意味着 真正可辨亮度 可能被低估,DR 上限受限 |
3. 阴影被抬升 | Shadow Tone-mapping 通常提亮暗部 → 像素信号 S 升高而噪声 σ 基本不变 | 阴影补丁的 SNRscene 被“虚假增益”,看上去暗端 DR 提高,但真实对比度细节往往不足 |
4. 假设同一区域无低频非均匀性 | QDR 噪声计算用 σ(ROI);若 Tone-mapping 引入局部亮度渐变,就会把非均匀性当噪声 | Imatest 用二次面剔除部分非均匀性,但对强局域映射仍可能残留误差 |
5. 无法显示“细节可见度” | QDR 只看灰阶 的 SNR,不评估低对比细节的再现 | Tone-mapping 设计目标正是保留/增强暗部细节;单纯 DR 数字难以反映这一特性 |
对使用大规模 Tone-mapping 的系统,Quality-based DR数值可能出现的典型偏差
- 暗端 DR 虚高
- 因为暗区被提亮,SNRscene ≥ {10, 4, 2, 1} 的阈值在更暗的入射曝光就被满足 → 报告的 DR 挡数增加。
- 亮端 DR 被“截断”
- 高光肩部斜率接近 0,被 Imatest 自动剔除 → 亮端纵深减少;导致整幅 DR 与视觉感受不符。
- 跨灰阶的 SNR 波动大
- 局部 Tone-mapping 使相邻补丁斜率不同,测得的噪声和 SNR 曲线呈“锯齿”,分析难度增大。

如何减轻 / 规避这些局限?
建议 | 说明 |
---|---|
1. 同时查看 Slope-based DR | 让 QDR 受斜率上限约束,可避免肩部过度抑制导致的虚假 DR |
2. 使用 Contrast Resolution 图卡 | 该图卡通过在每个大灰块里嵌入 ±0.15 OD 的微对比子块,直接测 ΔS/N,对 Tone-mapping 不敏感,能反映真实细节可见度 |
3. 拆分测量:Raw→ISP 前后 | 先在 Raw(无 Tone-mapping)上做 QDR,评估硬件极限;再在处理后图像上做 Contrast Resolution,看算法对细节的保留/破坏 |
4. 保留 Tone-mapping LUT / 曲线 | 若可能,导出 ISP 的 Tone-mapping 曲线,在分析时反算场景噪声,可恢复更准确的 SNRscene |
5. 结合视觉主观评价 | 对汽车 HDR、监控等以“看得见细节”为目标的系统,应把 DR 数字与主观可见度或 ΔS/N 阈值一起报告,避免单一 EV / dB 值误导 |
结论
- Quality-based DR 仍是评估线性或轻度曲线相机的首选,但
- 大量或局部 Tone-mapping 会扭曲它的核心假设,使暗端被“虚高”、亮端被“削短”。
- Imatest 官方也提示:针对 HDR / Tone-mapping 画面,可辅用 Slope-based DR 上限 与 Contrast Resolution 分析,才能给出既量化又贴近视觉体验的动态范围结果。
Was this helpful?
0 / 0