π¨ ColorFlow
Retrieval-Augmented Image Sequence Colorization
Authors: Junhao Zhuang, Xuan Ju, Zhaoyang Zhang, Yong Liu, Shiyi Zhang, Chun Yuan, Ying Shan
Your star means a lot for us to develop this project! :star:
π Abstract
Automatic black-and-white image sequence colorization while preserving character and object identity (ID) is a complex task with significant market demand, such as in cartoon or comic series colorization. Despite advancements in visual colorization using large-scale generative models like diffusion models, challenges with controllability and identity consistency persist, making current solutions unsuitable for industrial application.
To address this, we propose ColorFlow, a three-stage diffusion-based framework tailored for image sequence colorization in industrial applications. Unlike existing methods that require per-ID finetuning or explicit ID embedding extraction, we propose a novel robust and generalizable Retrieval Augmented Colorization pipeline for colorizing images with relevant color references.
Our pipeline also features a dual-branch design: one branch for color identity extraction and the other for colorization, leveraging the strengths of diffusion models. We utilize the self-attention mechanism in diffusion models for strong in-context learning and color identity matching.
To evaluate our model, we introduce ColorFlow-Bench, a comprehensive benchmark for reference-based colorization. Results show that ColorFlow outperforms existing models across multiple metrics, setting a new standard in sequential image colorization and potentially benefiting the art industry.
π Getting Started
Follow these steps to set up and run ColorFlow on your local machine:
Clone the Repository
Download the code from our GitHub repository:
git clone https://github.com/TencentARC/ColorFlow cd ColorFlow
Set Up the Python Environment
Ensure you have Anaconda or Miniconda installed, then create and activate a Python environment and install required dependencies:
conda create -n colorflow python=3.8.5 conda activate colorflow pip install -r requirements.txt
Run the Application
You can launch the Gradio interface for PowerPaint by running the following command:
python app.py
Access ColorFlow in Your Browser
Open your browser and go to
http://localhost:7860
. If you're running the app on a remote server, replacelocalhost
with your server's IP address or domain name. To use a custom port, update theserver_port
parameter in thedemo.launch()
function of app.py.
π Demo
You can try the demo of ColorFlow on Hugging Face Space.
π οΈ Method
The overview of ColorFlow. This figure presents the three primary components of our framework: the Retrieval-Augmented Pipeline (RAP), the In-context Colorization Pipeline (ICP), and the Guided Super-Resolution Pipeline (GSRP). Each component is essential for maintaining the color identity of instances across black-and-white image sequences while ensuring high-quality colorization.
π€ We welcome your feedback, questions, or collaboration opportunities. Thank you for trying ColorFlow!
π° News
- Release Date: 2024.12.17 - Inference code and model weights have been released! π
π TODO
- β Release inference code and model weights
- β¬οΈ Release training code
π Citation
@article{zhuang2024colorflow,
title={ColorFlow: Retrieval-Augmented Image Sequence Colorization},
author={Zhuang, Junhao and Ju, Xuan and Zhang, Zhaoyang and Liu, Yong and Zhang, Shiyi and Yuan, Chun and Shan, Ying},
journal={},
year={2024}
}
π License
Please refer to our license file for more details.