Files
nan 198fcbf55b
Some checks failed
Test / test (push) Has been cancelled
Initial public release
2026-09-19 21:31:36 +08:00

79 lines
3.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# two-times-upscale Specification
## Purpose
TBD - created by archiving change add-pisa-sr-two-times-upscale. Update Purpose after archive.
## Requirements
### Requirement: Unified two-times output
系统 SHALL 对全部 Upscale 模型返回处理输入宽高各 2 倍的结果,并将该倍率用于界面说明和尺寸计算;处理输入为应用已有最大输入尺寸限制后的图像。
#### Scenario: Existing models produce two-times images
- **WHEN** 任一现有模型处理 W×H 输入
- **THEN** 系统先得到原生 4W×4H 结果,再使用 Lanczos 缩小到 2W×2H
- **AND** 使用已有 4× 权重
#### Scenario: Repeated upscale
- **WHEN** 用户对一次 2× 结果再次执行 Upscale 且输入尺寸仍满足限制
- **THEN** 新结果宽高各为本次输入的 2 倍,即最初输入的 4 倍
### Requirement: Fixed PiSA-SR preset
系统 SHALL 提供 `PISA_SR` 模型选项,使用固定像素强度 1.0、语义强度 0.7、空提示词和 seed 42,通过 ONNX Runtime 生成 2× 结果。现有默认模型 SHALL 保持有效。
#### Scenario: Selected preset is executed
- **WHEN** 用户选择 PiSA-SR 并执行 Upscale
- **THEN** 模型对同一 latent 的预测按 `pixel + 0.7 * (full - pixel)` 组合
- **AND** 输入插值、采样、解码与颜色校正遵循已验证的实验基线
#### Scenario: Repeatable inference
- **WHEN** 相同图像在相同运行环境重复执行 PiSA-SR
- **THEN** 系统使用相同噪声和处理规则,结果在该设备的数值容差内一致
### Requirement: Arbitrary dimensions and alpha preservation
系统 SHALL 支持合法输入范围内的小图、非方形图、奇数尺寸和跨 tile 图像,输出精确 2× 尺寸;有 alpha 的生产输入 SHALL 保留由源 alpha 插值而来的透明度。
#### Scenario: Tiled PiSA-SR image
- **WHEN** 输入需要多个 PiSA-SR tile
- **THEN** 系统融合重叠区域并裁去填充,输出无多余边缘的 2W×2H 图像
- **AND** 连续纹理与渐变测试图的 tile 边界不出现可辨识拼接线
#### Scenario: Transparent input
- **WHEN** 输入包含全透明和半透明像素
- **THEN** 输出 alpha 等于源 alpha 直接 Lanczos 放大到最终尺寸的结果
- **AND** RGB 生成过程不生成或覆盖 alpha
### Requirement: Model readiness and resource lifecycle
系统 SHALL 对 PiSA-SR 全部必需资产完成下载及校验后才判定就绪,按所选设备创建管线;其模型切换、取消、资源错误和显式清理 SHALL 覆盖全部组件。
#### Scenario: Incomplete model package
- **WHEN** PiSA-SR 任一必需文件缺失或校验失败
- **THEN** 系统提示准备模型并阻止使用不完整管线进行推理
#### Scenario: Bounded UNet residency
- **WHEN** PiSA-SR 执行像素与完整预测阶段
- **THEN** GPU 同时常驻的 UNet 至多一套,阶段间中间数据被保留以完成 0.7 组合
#### Scenario: Cancel or resource failure
- **WHEN** 推理被取消或发生资源错误
- **THEN** 系统停止后续阶段并清理任务中间文件
- **AND** 资源错误释放整个 PiSA-SR 管线并报告可理解的失败原因
#### Scenario: Unsupported device
- **WHEN** 所选设备无法执行已分发的 PiSA-SR 资产
- **THEN** 系统报告明确的设备支持原因或执行已验证并明确呈现的回退路径
### Requirement: Consistent job behavior
系统 SHALL 在生产与调试任务采用同一模型预设和最终倍率,并对多帧输入逐帧应用该约定。
#### Scenario: Multiple frames
- **WHEN** Upscale 处理多帧输入
- **THEN** 每帧输出均为其处理输入的 2× 尺寸,帧顺序正确且阶段之间可以取消
#### Scenario: Debug matches production
- **WHEN** 相同 RGB 输入、模型和设备分别通过生产与 Debug 入口处理
- **THEN** 两者的 RGB 处理规则和最终尺寸一致