OminiControl: Minimal and Universal Control for Diffusion Transformer
Zhenxiong Tan, Songhua Liu, Xingyi Yang, Qiaochu Xue, and Xinchao Wang
Learning and Vision Lab, National University of Singapore
OminiControl is a minimal yet powerful universal control framework for Diffusion Transformer models like FLUX.
Universal Control 🌐: A unified control framework that supports both subject-driven control and spatial control (such as edge-guided and in-painting generation).
Minimal Design 🚀: Injects control signals while preserving original model structure. Only introduces 0.1% additional parameters to the base model.
With just one line adding the 'mmgp' module (https://github.com/deepbeepmeep/mmgp\), OminiControl can generate images from a derived Flux model in less than 6s with 16 GB of VRAM (profile 1), in 9s with 8 GB VRAM (profile 4) or in 16s with less than 6 GB of VRAM (profile 5)
To run the Gradio app with a profile 3 (default profile, the fastest but requires the most VRAM):
python gradio_app --profile 3
To run the Gradio app with a profile 5 (a bit slower but requires only 6 GB of VRAM):
python gradio_app --profile 5
You may check the mmgp git homepage if you want to design your own profiles (for instance to disable quantization).
If you enjoy this applcitation, you will certainly appreciate these ones:\
Hunyuan3D-2GP: https://github.com/deepbeepmeep/Hunyuan3D-2GP\ A great image to 3D or text to 3D tool by the Tencent team. Thanks to mmgp it can run with less than 6 GB of VRAM
HuanyuanVideoGP: https://github.com/deepbeepmeep/HunyuanVideoGP\ One of the best open source Text to Video generator
FluxFillGP: https://github.com/deepbeepmeep/FluxFillGP\ One of the best inpainting / outpainting tools based on Flux that can run with less than 12 GB of VRAM.
Cosmos1GP: https://github.com/deepbeepmeep/Cosmos1GP\ This application include two models: a text to world generator and a image / video to world (probably the best open source image to video generator).
conda create -n omini python=3.10
conda activate omini
pip install -r requirements.txt
examples/subject.ipynbexamples/inpainting.ipynbexamples/spatial.ipynbthis item, the object, or it. e.g.
Demos (Left: condition image; Right: generated image)
Other spatially aligned tasks (Canny edge to image, depth to image, colorization, deblurring)
Prompt: A light gray sofa stands against a white wall, featuring a black and white geometric patterned pillow. A white side table sits next to the sofa, topped with a white adjustable desk lamp and some books. Dark hardwood flooring contrasts with the pale walls and furniture.
Subject-driven control:
| Model | Base model | Description | Resolution |
|---|---|---|---|
experimental / subject | FLUX.1-schnell | The model used in the paper. | (512, 512) |
omini / subject_512 | FLUX.1-schnell | The model has been fine-tuned on a larger dataset. | (512, 512) |
omini / subject_1024 | FLUX.1-schnell | The model has been fine-tuned on a larger dataset and accommodates higher resolution. (To be released) | (1024, 1024) |
oye-cartoon | FLUX.1-dev | The model has been fine-tuned on oye-cartoon dataset by @saquib764 | (512, 512) |
Spatial aligned control:
| Model | Base model | Description | Resolution |
|---|---|---|---|
experimental / <task_name> | FLUX.1 | Canny edge to image, depth to image, colorization, deblurring, in-painting | (512, 512) |
experimental / <task_name>_1024 | FLUX.1 | Supports higher resolution.(To be released) | (1024, 1024) |
FLUX.1-dev.Training instructions can be found in this folder.
@article{
tan2024omini,
title={OminiControl: Minimal and Universal Control for Diffusion Transformer},
author={Zhenxiong Tan, Songhua Liu, Xingyi Yang, Qiaochu Xue, and Xinchao Wang},
journal={arXiv preprint arXiv:2411.15098},
year={2024}
}
Python
98.2%
Shell
1.8%
OminiControl: Minimal and Universal Control for Diffusion Transformer
Zhenxiong Tan, Songhua Liu, Xingyi Yang, Qiaochu Xue, and Xinchao Wang
Learning and Vision Lab, National University of Singapore
OminiControl is a minimal yet powerful universal control framework for Diffusion Transformer models like FLUX.
Universal Control 🌐: A unified control framework that supports both subject-driven control and spatial control (such as edge-guided and in-painting generation).
Minimal Design 🚀: Injects control signals while preserving original model structure. Only introduces 0.1% additional parameters to the base model.
With just one line adding the 'mmgp' module (https://github.com/deepbeepmeep/mmgp\), OminiControl can generate images from a derived Flux model in less than 6s with 16 GB of VRAM (profile 1), in 9s with 8 GB VRAM (profile 4) or in 16s with less than 6 GB of VRAM (profile 5)
To run the Gradio app with a profile 3 (default profile, the fastest but requires the most VRAM):
python gradio_app --profile 3
To run the Gradio app with a profile 5 (a bit slower but requires only 6 GB of VRAM):
python gradio_app --profile 5
You may check the mmgp git homepage if you want to design your own profiles (for instance to disable quantization).
If you enjoy this applcitation, you will certainly appreciate these ones:\
Hunyuan3D-2GP: https://github.com/deepbeepmeep/Hunyuan3D-2GP\ A great image to 3D or text to 3D tool by the Tencent team. Thanks to mmgp it can run with less than 6 GB of VRAM
HuanyuanVideoGP: https://github.com/deepbeepmeep/HunyuanVideoGP\ One of the best open source Text to Video generator
FluxFillGP: https://github.com/deepbeepmeep/FluxFillGP\ One of the best inpainting / outpainting tools based on Flux that can run with less than 12 GB of VRAM.
Cosmos1GP: https://github.com/deepbeepmeep/Cosmos1GP\ This application include two models: a text to world generator and a image / video to world (probably the best open source image to video generator).
conda create -n omini python=3.10
conda activate omini
pip install -r requirements.txt
examples/subject.ipynbexamples/inpainting.ipynbexamples/spatial.ipynbthis item, the object, or it. e.g.
Demos (Left: condition image; Right: generated image)
Other spatially aligned tasks (Canny edge to image, depth to image, colorization, deblurring)
Prompt: A light gray sofa stands against a white wall, featuring a black and white geometric patterned pillow. A white side table sits next to the sofa, topped with a white adjustable desk lamp and some books. Dark hardwood flooring contrasts with the pale walls and furniture.
Subject-driven control:
| Model | Base model | Description | Resolution |
|---|---|---|---|
experimental / subject | FLUX.1-schnell | The model used in the paper. | (512, 512) |
omini / subject_512 | FLUX.1-schnell | The model has been fine-tuned on a larger dataset. | (512, 512) |
omini / subject_1024 | FLUX.1-schnell | The model has been fine-tuned on a larger dataset and accommodates higher resolution. (To be released) | (1024, 1024) |
oye-cartoon | FLUX.1-dev | The model has been fine-tuned on oye-cartoon dataset by @saquib764 | (512, 512) |
Spatial aligned control:
| Model | Base model | Description | Resolution |
|---|---|---|---|
experimental / <task_name> | FLUX.1 | Canny edge to image, depth to image, colorization, deblurring, in-painting | (512, 512) |
experimental / <task_name>_1024 | FLUX.1 | Supports higher resolution.(To be released) | (1024, 1024) |
FLUX.1-dev.Training instructions can be found in this folder.
@article{
tan2024omini,
title={OminiControl: Minimal and Universal Control for Diffusion Transformer},
author={Zhenxiong Tan, Songhua Liu, Xingyi Yang, Qiaochu Xue, and Xinchao Wang},
journal={arXiv preprint arXiv:2411.15098},
year={2024}
}
Python
98.2%
Shell
1.8%