图像比较
ABDiff 的图像比较功能结合了人工目视检查和分析式 diff。目标不只是证明两个文件不同,而是判断这种差异是否真的重要。
开始图像比较
- 拖入两张图像即可打开图像比较。
- 如果你已经在比较两张图像,再拖入一张新的图像时,ABDiff 会保留最新拖入的那张图像。
推荐工作流程
- 先对齐。 确保两张图像共享一个有意义的比较网格。
- 先用肉眼检查。 在切换到分析模式之前,先用 Split、Side-by-side 或 Crossfade。
- 在两个尺度下检查。 先用适应视图看整体,再切换到 Actual Size (1:1) 做像素级检查。
- 定位变化。 用 Change Boxes 快速找到可疑区域。
- 给差异分类。 根据你想回答的问题选择分析模式。
- 用放大镜确认细节。 判断这个差异到底是真实回归、预期中的渲染漂移,还是无害噪声。
- 导出合适的视图。 当你拿到所需证据后,导出当前比较视图。
比较前先对齐
Alignment 决定两张图像如何映射到同一个比较画布上,以便对应像素可以被有意义地比较。Alignment 可以移动或缩放图像,但不会改变缩放级别或适配模式本身。
Side-by-side 和 Change Boxes 会把源图像并排显示。其他模式会把两张图像叠放到同一个比较画布中,并使用以下四种 Alignment 模式之一:
- Top-Left:把两张图像都固定在左上角,不做缩放或位移。适用于两张图像的大小和位置本来就一致的情况。
- Find Smaller Image in Larger…:在大图中找到小图并对齐到对应位置。适用于其中一张图像是另一张图像的裁剪区域或嵌套内容。
- Scale Right to Left:把右侧图像等比缩放到左侧图像的尺寸基准。
- Scale Left to Right:把左侧图像等比缩放到右侧图像的尺寸基准。
当 Alignment 生效时,标题栏会显示诸如 Scaled to Left、Scaled to Right 或 Aligned (Containment) 的状态标记。
先从肉眼检查开始
良好的评审流程应该先从视觉模式开始,用来判断这个变化是否值得进一步分析。
| 模式 | 最适合的用途 |
|---|---|
| Split | 沿着可移动分割线比较布局、间距和局部变化 |
| Side-by-side | 同时查看两张图像,并共享缩放级别 |
| Crossfade | 通过混合显示来发现微妙的视觉偏移 |
| Change Boxes | 在右侧图像上快速找到变化区域 |
- Split 是默认最合适的选择,适用于你想快速扫视整张图并直接比较局部区域的情况。
- Side-by-side 更适合需要同时看到两张源图像的时候。
- Crossfade 适合那些通过“闪烁”或“运动感”更容易察觉的差异。
- Change Boxes 能帮助回答“这张图里哪里变化最大?”这个问题。
根据问题选择分析模式
当你已经知道自己要调查哪个区域、哪一类变化时,分析模式最有价值。
| 模式 | 适用场景 |
|---|---|
| Absolute Difference | 你需要精确的逐像素差异 |
| Proportional Difference | 相对变化比绝对幅度更重要 |
| Blurred Difference | 想压低像素级噪声并强调更大的视觉漂移 |
| Edge Difference | 轮廓、间距和结构比颜色更重要 |
| SSIM | 想看结构或感知层面的相似性 |
| Delta E | 想判断可感知的颜色准确度 |
- Absolute Difference 会显示每一个发生变化的像素,包括抗锯齿带来的噪声。
- Proportional Difference 可以让非常亮或非常暗区域中的微小变化更容易看出来。
- Blurred Difference 在像素级噪声不重要、而整体视觉漂移更重要时尤其有用。
- Edge Difference 通常适合检查布局、间距或形状变化。
- SSIM 评估的是结构相似性,而不是逐像素完全一致。
- Delta E 适用于颜色准确度才是核心问题的情况。
在总览和 1:1 中都检查
先用适配模式获得整体上下文,再切换到 1:1 做最终判断。
- Actual Size (1:1):固定的 1:1 像素显示。在判断细小变化是否可接受前,先使用这个模式。
- Fill Window(Split、Cross-fade、Difference):一次性适配到当前可见窗口。可以放大到 100% 以上。
- Fill Pane(Side-by-side、Change Boxes):一次性共享适配到两个面板。可以放大到 100% 以上。
- Show Whole Image:一次性显示整张图像,但不会超过 100%。
- Fit to Window
(Auto):持久性的自动适配模式,会在窗口大小变化时重新计算。
- 在 Split、Cross-fade、Difference 中,它的行为类似持续性的 Fill Window。
- 在 Side-by-side、Change Boxes 中,如果两张图都能放下,就自动使用 1:1;否则退回到整图适配。
当你只想在不放大超过 100% 的前提下快速看全图时,请使用 Show Whole Image。 当你希望 ABDiff 随着窗口变化持续调整时,请使用 Fit to Window (Auto)。
可以通过鼠标滚轮或 视图 ▸ 缩放 命令来缩放。
图像可以通过拖动或迷你地图来重新定位。只有在当前缩放下图像尺寸大于可见区域时,迷你地图才会显示。它会在 2 秒无操作后自动隐藏,但当你悬停或在其中拖动时会保持可见。
用放大镜确认可疑区域
放大镜会放大光标附近的区域,并让你快速切换到另一张图像。
快捷键:
- L:打开或关闭放大镜
- A:显示左侧图像
- D:显示右侧图像
- S:切换放大倍率:1× → 2× → 4× → 8× → 1×
快速判断指南
- 当你还不确定到底哪里变了时,先用 Split 或 Side-by-side。
- 如果需要快速找到变化区域,请用 Change Boxes。
- 如果你关心的是布局、间距或形状,请用 Edge Difference。
- 如果你关心的是精确的像素变化,请用 Absolute Difference。
- 如果像素级噪声过于干扰,请用 Blurred Difference。
- 如果你关心的是结构上的感知相似性,请用 SSIM。
- 如果你关心的是可见的颜色差异,请用 Delta E。
- 最终判断请在 Actual Size (1:1) 下完成,而不只是依赖适配后的总览。
导出与版本回顾
- 如果你想保存或分享当前正在看的这张比较视图,请导出当前图像比较。
- 当你需要回顾一段时间内的变化时,可以使用 Git 历史把旧版本图像加载到任一面板中。