纯色换底
用一个不透明 #RRGGBB 颜色替换背景,逐像素强制 alpha=255;半透明边缘与背景色按有效 alpha 混合,输出无意外透明像素。
输入与参数
file— 选择图片(PNG/JPEG/WebP,≤15 MiB / 16 MP)color— 背景颜色(#RRGGBB,必须不透明)sample— 固定样例format— 导出格式edits— 遮罩编辑 JSON(可空)undo— 撤销步数redo— 重做步数
真实示例
sample=product-white(4×3 白底商品,遮罩 [0,0,0,0,0,128,255,0,0,255,128,0]);color=#FFFFFF;op=change-background;format=png。
→ PNG 4×3,119 bytes,文件名 cutout-change-background-20261115T000000Z.png;12 个像素 alpha 全为 255,遮罩=0 的像素 RGB 为 (255,255,255),maskHash=5ac8db63。
限制与失败处理
只支持一个不透明纯色(#RRGGBB),不做渐变/图片背景;15 MiB / 16 MP 预算。半透明边缘用整数四舍五入混合,不是浮点 GPU 合成;真实 WebGPU/WASM 推理与浏览器 Canvas 编码未实测。模型下载失败重试 3 次、取消不遗留任务;热缓存按 url@revision 命中,revision 变化不会误用旧缓存。
FAQ
为什么不接受带透明度的 #RRGGBBAA?
“纯色底”承诺输出不透明;8 位 alpha 非 FF 会返回 TRANSLUCENT_BACKGROUND,避免出现意外透明像素。需要透明输出请用“去背景”。
换底会改变原图像素尺寸吗?
不会缩放像素;仅按 EXIF 方向对齐(如 Orientation=6 把 4×3 变成 3×4)。输出标注实际尺寸,原尺寸导出不代表模型在原分辨率推理。