25 诚实判据
✅ 已验证
一条硬门
写像素(set_pixels + ground)次数 ≤ 2
只允许背景铺黑(ground 一次,加上 Session 建文档时的一次底层写入)。其余每个像素要么来自矢量层,要么来自落笔。
job_trace.py 收尾自己数一遍并打印:
[check] 落笔 80669 笔 · 写像素 2 次 (只允许 BG_Base 的 1 次)
gauge.py 也读日志再数一遍。两处都过才算。
它拦住过什么
旧路线的成品,看起来是一张 8K 分层画,.kra 有 103 层、181 MB、降采样回 1x 对原图 38.74 dB。所有判据都是绿的。
它的日志:55 条记录,全是 set_pixels,一笔都没落。
它是把 1x 的像素分块升采样后塞进图层。没有这条门,它就通过了。
三个次级判据
在硬门之后,用来判「画得诚实不诚实」:
| 判据 | 来源 | 抓什么 |
|---|---|---|
empty < 44 dB | measure.py | 假分辨率:大画布上没有对应尺度的信息 |
edge_ratio > 0.90 | measure.py | 撒噪声作弊:真实细节贴着边缘长,噪声铺满全图 |
| 阶梯指纹 < 源图 | gauge.py | 放大痕迹:1x 像素格放大后的周期信号 |
empty 单独用是反的(第 33 章):诚实的 4x 重建确实不含 1024 以上的信息,它会给最该抓的 nearest 放大发绿灯。三条一起才拦得住。
判据本身要能被审计
每个数字要能回答「在哪块、怎么量的」:
gauge.py打印归一化宽度和特写窗口的坐标- 每个探针的 docstring 写明判据、判读方法和锚点
stages/保留每一阶段的 PNG,任何一步可以单独重量
没量过的东西写明未验证。 这本书里 📐 和 🧪 的标记就是这条规矩的落地。