GitHub 1.3k 一款能“填色回忆”的神器:DDColor 让老照片鲜活又逼真

简介: DDColor 是阿里达摩院推出的图像自动着色模型,采用双解码器架构与 Colorfulness Loss 技术,实现黑白图到高保真彩色图的智能转换。支持 GPU/CPU 推理,兼容历史照片、动画、游戏截图等多场景,具备高效、真实、多样、易用等特点,广泛适用于影像修复、艺术创作等领域。

嗨,我是小华同学,专注解锁高效工作与前沿AI工具!每日精选开源技术、实战技巧,助你省时50%、领先他人一步。👉免费订阅,与10万+技术人共享升级秘籍!

image.png


DDColor 是如何通过双解码器技术,把黑白老照片和动画场景一键还原成色彩饱满、细节清晰的彩色图像?

项目简介

DDColor: Towards Photo‑Realistic Image Colorization via Dual Decoders 作者:Xiaoyang Kang 等,DAMO Academy(阿里达摩院) ICCV 2023 论文实现|公开PyTorch代码与预训练模型

DDColor 是阿里达摩院团队提出的新一代图像自动着色模型,基于“像素解码器 + 颜色查询解码器”双重设计,实现高保真、真实感强的黑白图转彩色图,兼容历史照片与二次元游戏风格图,创造“还原真实”的视觉奇迹。

痛点与场景

  • 黑白历史照:老照片缺色但蕴含高历史价值,传统着色容易失真、色彩偏差剧烈。
  • 动画或游戏截图:如《原神》风格清淡,不够自然。
  • 自动化需求强:手动上色耗时费力且效果不统一,在线或本地批量需求大。
  • 期望效果:需要真实的颜色、细节清晰、色彩丰富、自动可靠。

配合 GPU 或在线 Demo,几秒钟就能完成令人惊喜的色彩重塑。

核心功能亮点

  1. 双解码器架构
  • 像素解码器负责恢复图像空间结构;
  • 颜色查询解码器通过多尺度语义特征调色,协同避免色彩偏差。
  1. Colorfulness Loss:增加颜色丰富度,让输出饱满、生动。
  2. 多领域适配
  • 历史照片着色效果真实,细节还原力强;
  • 可将游戏或动画风格图转为写实风,场景更贴近现实。
  1. 预训练网络多样化:提供 tiny、paper、modelscope、artistic 四套模型,满足不同效果需求。
  2. 多出口平台支持
  • 本地 PyTorch 脚本推理;
  • ModelScope、Replicate 在线 Demo 接口;
  • Hugging Face Hub 模型调用。
  1. 多硬件兼容:支持 CUDA GPU 本地部署,也有 ONNX 优化,可在 CPU 上跑!
  2. 高性价比在线成本:Replicate 调用成本约 ,次才1。

技术架构

优势对比(区别于单解码模型或传统 CNN)

维度 传统 CNN Transformer 着色 DDColor 双解码器
色彩还原 容易失真、偏色 更好但复杂 语义结合色调,色彩更准确
多样性 效果模板化 效果较好 上色更加丰富、饱满
通用性 特殊场景需微调 通用但推理慢 四档预训练+在线接口即用
推理速度 较慢 ~1s/图,成本低、兼容 CPU+GPU

操作上手

🚀 在线 Demo (ModelScope / Replicate)

from modelscope.pipelines import pipeline
from modelscope.outputs import OutputKeys
from modelscope.utils.constant import Tasks

pipe = pipeline(Tasks.image_colorization, model='damo/cv_ddcolor_image-colorization')
out = pipe('xxx_bw.jpg')
cv2.imwrite('result.png', out[OutputKeys.OUTPUT_IMG])

效果秒出,色彩自然,细节清晰。

🎯 本地推理脚本

git clone https://github.com/piddnad/DDColor
cd DDColor
pip install -r requirements.txt
pip install torch==2.2.0 torchvision torchaudio -f .../cu118
python setup.py develop
python infer.py \
 --model_path ./modelscope/damo/cv_ddcolor_image-colorization/pytorch_model.pt \
 --input ./assets/test_images

🧠 ONNX 优化(轻量 CPU 版本)

python ddcolorize.py --image 1.jpg --output 1_ddcolor.jpg

兼容无 GPU 场景,仅需下载 ONNX 模型。

界面 & 效果展示

典型应用场景

  • 资料馆、档案管理:为历史珍贵照片配色,提升可视传播价值。
  • 视频修复项目:对老旧黑白片段进行批量上色,使剧情更具吸引力。
  • 二次元或游戏截图:影视化处理,让画面质感逼近真实。
  • 个人艺术创作:无需专业绘师即可为老图、素描快速上色。

与同类项目对比

项目 色彩真实度 多样性 推理速度 上手难度 特点
DeOldify(GAN) ☆☆ 饱和但偏色
ColorFormer(Transformer) ☆☆☆☆ ☆☆ 效果较好,但依赖预设
DDColor(双解码) ★★★★★ ★★★★ 快(1s/图) 色彩丰富、真实、自动

DDColor 融合多优势,同时降低用户上手门槛。

同类/相关项目推荐

  • ComfyUI-DDColor:为 ComfyUI 制作节点插件,一键调用 DDColor 模型。
  • instant-high/DDColor‑onnx:ONNX 优化版,适合无 GPU 独立部署。
  • vs‑ddcolor:VapourSynth 插件,支持视频帧批量着色。

总结亮点

DDColor 是目前业界少有的集准确还原、色彩丰富、推理高效、平台多样于一体的图像自动着色方案。其双解码器结构、Colorfulness Loss,以及多平台支持,使其不仅是学术新星,也真正走进了用户工具链。历史修复、影像美化、艺术创作……都可成为你的“魔法笔”。

项目地址

https://github.com/piddnad/DDColor

相关文章
|
11天前
|
边缘计算 Kubernetes Cloud Native
OpenYurt 成为 CNCF 孵化项⽬:加速扩展云原⽣的边界
经 CNCF 技术监督委员会投票一致同意,OpenYurt 正式成为 CNCF 孵化项目
|
7天前
|
前端开发 JavaScript
JavaScript异步编程:从Callback到Async/Await的进化
JavaScript异步编程:从Callback到Async/Await的进化
|
7天前
|
存储 Java 调度
Java虚拟线程:轻量级并发的革命性突破
Java虚拟线程:轻量级并发的革命性突破
141 83
|
7天前
|
Java
解锁Java 17:三大特性提升代码质量与简洁性
解锁Java 17:三大特性提升代码质量与简洁性
148 83
|
7天前
|
安全 PHP
PHP 8 新特性实战:提升开发效率的利器
PHP 8 新特性实战:提升开发效率的利器
141 87
|
7天前
|
前端开发 JavaScript
JavaScript异步编程:告别回调地狱的优雅方案
JavaScript异步编程:告别回调地狱的优雅方案
|
14天前
|
JSON 数据可视化 API
产品经理的技术必修课:四步掌握API设计核心逻辑
产品经理的技术必修课:四步掌握API设计核心逻辑
148 83
|
27天前
|
SQL 人工智能 Java
阿里云百炼开源面向 Java 开发者的 NL2SQL 智能体框架
Spring-ai-alibaba-nl2sql 是析言 GBI 产品在数据问答领域的一次重要开源尝试,专注于 NL2SQL 场景下的核心能力开放。
429 48
|
5天前
|
人工智能 运维 自然语言处理
如何在 Elasticsearch 中构建你的智能 AI 助手?
本文将带你探索一种全新的思路:如何基于 Elasticsearch 快速构建一个具备自然语言理解能力、异常检测和安全威胁识别能力的智能运维 AI 助手 。文章会围绕实际部署流程、关键技术点和典型应用场景展开,帮助你把 Elasticsearch 从“日志仓库”升级为“智能决策中枢”。
127 30
|
7天前
|
数据采集 存储 分布式计算
一文读懂数据中台架构,高效构建企业数据价值
在数字化时代,企业面临数据分散、难以统一管理的问题。数据中台架构通过整合、清洗和管理数据,打破信息孤岛,提升决策效率。本文详解其核心组成、搭建步骤及常见挑战,助力企业高效用数。