使用 Stable Diffusion 实现老照片智能上色与高清修复
前言
随着人工智能技术的发展,利用 AI 技术恢复年代久远的黑白老照片已成为可能。许多家庭珍藏的黑白照片因岁月流逝而褪色或模糊,通过 Stable Diffusion 及其生态插件,我们可以有效地为这些照片重新上色并提升画质,唤醒珍贵的记忆。
本文将以实际案例为例,详细介绍从基础着色到高清修复的完整工作流,涵盖模型选择、ControlNet 控制、色彩修正及超分辨率放大等关键技术点。
环境准备
在进行操作前,请确保已安装以下软件与环境:
- Stable Diffusion WebUI: 推荐使用 ComfyUI 或 Automatic1111 版本,需支持 ControlNet 扩展。
- 显卡要求: 建议 NVIDIA 显卡,显存不低于 8GB,若显存较小可配合 MultiDiffusion 插件使用。
- 必要插件:
- ControlNet (含 Recolor 预处理器)
- Cutoff (用于区域色彩控制)
- GFPGAN (人脸修复)
- StableSR (图像超分)
- MultiDiffusion (大尺寸分块渲染)
核心工作流详解
1. 模型选择与基础设置
对于人物照片的还原,推荐选用写实风格的大模型(如 Realistic Vision)。在提示词(Prompt)中,直接描述颜色与内容,例如'黑色头发'、'黄色皮肤'、'深蓝色衣服'。由于黑白照片缺乏色彩信息,部分颜色需根据历史背景进行合理推测。
2. 使用 Recolor 模型进行初步上色
ControlNet 是控制生成过程的关键。在此步骤中,我们启用 Recolor 模型。
- 预处理器选择: 经过测试,
recolor_luminance的效果优于其他选项,能更好地保留原图的明暗关系。 - 注意事项: 仅依靠基础上色往往不够精准,颜色可能会出现在非预期位置,且照片上的斑驳痕迹可能导致背景颜色不统一。这是正常现象,需要通过后续步骤优化。
3. 色彩分布控制 (Cutoff 插件)
为解决颜色污染问题,即不同颜色提示词相互干扰,我们需要引入 Cutoff 插件。
- 操作步骤: 依次按顺序设置好颜色提示词对应的区域掩码。
- 目的: 强制 AI 将特定颜色限制在指定区域内,确保配色与内容逻辑一致。
4. 人脸细节修复 (GFPGAN)
上色完成后,由于老照片原始像素较低,需进行后期处理以提升清晰度。
- 工具: 使用 GFPGAN 算法。
- 功能: 专门针对五官进行重绘和清晰化处理。
- 局限性: 该步骤主要优化面部,对头发、衣物等其他元素的清晰度提升有限。
5. 整体高清放大 (StableSR + MultiDiffusion)
为了获得高分辨率输出,需进入图生图模式进行放大。
- 脚本选择: 启用 StableSR 脚本。这是目前对原图还原最精准的重绘放大插件之一。
- 模型切换: 建议切换到 SD 2.1 模型,VAE 选择
vqgan。 - 提示词: 此时提示词留空,避免对原图产生不必要的干扰。
- 显存优化: 若显存不足,启用 MultiDiffusion 插件。它支持分块渲染,可在不增加放大倍数的情况下,将图片放大至足够倍数,有效解决 OOM(显存溢出)问题。


