批量上色为何改变了出版者的一切
当我们开始为出版而上色网漫章节时,学到的第一件事是:单张图像上色工具对制作工作基本没用。一个典型的网漫章节有 40 到 80 页。逐张上色 — 即使使用快速 AI 工具 — 也会导致每页颜色不一致。角色的头发在第 12 页可能是赤褐色,到第 13 页就变成了栗色。背景色调在分镜之间发生偏移。结果看起来就像每页由不同的画师上色。
批量上色不仅仅是速度问题。它是将整章视为一个工作单元,就像画师那样。当人类上色师处理一章时,会在第一页建立色板并一直延续。他们看到场景转换并保持氛围。不会忘记三页前墙壁是什么颜色。任何制作级上色工具都必须复现这种连续性,而这只有在工具一次性处理整章时才可能。
这就是我们从一开始就将 Watashi Colorizer 构建为批量流水线的核心原因。不是在单张图像工具上加装批处理模式,而是从底层设计的系统,能够将章节理解为相互关联的画面序列。
工程挑战:跨页色彩一致性
批量上色中最难的问题不是处理速度 — 而是一致性。AI 模型以固定大小的批次处理图像,任何两个批次都会对相同内容产生略微不同的色彩解读。如果一个场景从第 30 页底部开始,延续到第 31 页顶部,而这两页落入不同批次,你就会在动作正中间看到明显的色彩接缝。
我们的解决方案是虚拟图像拆分。我们不是将整页发送给 AI,而是扫描每页的黑色分隔线 — 网漫格式中分隔场景的纯黑水平条带。在这些分隔线处将页面拆分为独立的画面区域,然后按跨页的场景连续性重新分组。第 30 页底部和第 31 页顶部最终进入同一个 AI 批次,这样模型就能一起看到并上色。
这需要数月的调优。分隔线检测必须区分纯黑的分隔线和阴影、头发、夜景等深色画面内容。我们扫描每张图像的每一行,以 RGB 阈值 15 对像素进行分类 — 只有接近纯黑的才计数。任何具有可见纹理的内容,即使是每通道 10-30 的微妙灰度值,都会被识别为画面并保持原样。
从单张图像到完整章节:构建流水线
完整的流水线分四个阶段工作。首先,扫描每张上传的图像,在检测到的黑色空白处拆分为虚拟图像。其次,这些虚拟图像根据场景连续性组成批次,同时遵守最大宽高比以确保 AI 获得足够的分辨率。第三,每个批次被拼接成一张高图,发送给 AI,上色结果再被切分回来。第四,所有上色后的画面区域被合成回原始画布,尺寸精确匹配原始输入。
批次处理步骤是复杂度最高的环节。我们对相邻虚拟图像之间的每个边界进行评分,扫描完全黑色的行 — 不是对像素暗度取平均,而是统计 95% 以上像素为纯黑的行的数量。如果边界得分高,那么在此处分割批次是安全的。如果得分低,说明有画面跨越边界,我们就将这些图像保持在一起。这种基于行的评分能捕获像素平均化会遗漏的细节,例如黑色背景上的一行对话文字。
塑造我们方法的制作需求
多项制作需求推动了架构决策。输出必须精确匹配原始尺寸 — 出版者需要能直接替换到现有工作流中的文件。角色颜色必须可精确到十六进制级别的控制,因为出版者有既定的风格指南。工具必须无需手动配置即可处理日漫、韩漫、国漫和网漫格式,因为制作团队不应该需要为每个系列调整设置。
我们还学到,大规模时压缩至关重要。一张 2000×8000 像素的 PNG 页面可能超过 10MB。乘以 60 页,一章就有 600MB 通过流水线。导入时自动压缩 — 在不改变尺寸的情况下将过大的 PNG 重新编码为 JPEG q92 — 在保留每个可见像素质量的同时将其缩减到 100MB 以下。
这些都不是你在上色单张测试图像时会想到的事情。它们是在你处理第一百章之后才浮现的需求,那时流水线效率和输出一致性成为好用的工具与玩具之间的分水岭。
出版上色章节后的心得
在数十个系列中上色了数千页之后,最重要的教训是:一致性胜过峰值质量。每页都不错的章节,远比 5 页惊艳但其余明显不同的章节更适合出版。角色色板、上下文学习和场景感知分批都服务于同一个目标:让整章看起来像同一位画师上色的。
第二个教训是编辑不是可选的。无论 AI 多么优秀,总有些分镜需要手动调整。角色的瞳色可能偏移。背景氛围可能与剧本不符。我们的编辑模式允许用自然语言指令修正特定分镜,而无需重新处理整章,因为在制作中,进行精准修正的能力与初始上色质量同样重要。