❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦
🚀 快速阅读
- 功能:OminiControl 支持主题驱动控制和空间对齐控制,适用于多种图像生成任务。
- 技术:通过参数重用机制和统一序列设计,实现高效的多模态注意力交互。
- 应用:适用于艺术创作、游戏开发、电影制作、广告营销等多个领域。
正文(附运行示例)
OminiControl 是什么
OminiControl 是一个高度通用且参数高效的图像生成框架,专为扩散变换器模型如 FLUX.1 设计,能够实现对图像生成过程的精细控制。OminiControl 支持主题驱动控制和空间控制,例如边缘引导和绘画生成,仅需在基础模型中增加 0.1% 的参数。
OminiControl 能够将提供的素材主体无缝融入新生成的图片中,同时保持图像的高质量和主题的一致性。OminiControl 提供一个超过 20 万张图像的 Subjects200K 数据集,支持主题一致生成任务的研究。
OminiControl 的主要功能
- 主题驱动控制:根据用户提供的主体图像和文本提示生成新的图像,保留主体特征的同时按照文本描述修改背景或场景。
- 空间对齐控制:支持如边缘引导、绘画生成等需要精确空间对应的图像生成任务。
- 多模态注意力交互:将条件图像、噪声图像和文本条件标记统一处理,实现直接的多模态注意力交互,提高信息交换和控制信号传播的效率。
- 参数效率:与其他方法相比,OminiControl 引入极小比例的额外参数(0.1%),实现高效的图像条件控制。
- 灵活性和统一性:提供一个统一的架构处理空间对齐和非空间对齐的控制任务,增加系统的灵活性。
OminiControl 的技术原理
- 参数重用机制:利用模型已有的 VAE 编码器处理条件图像,将其编码为与噪声图像标记相同的潜在空间中的标记。
- 统一序列设计:将噪声图像标记、文本标记和条件图像标记合并为一个统一序列,让条件图像直接参与多模态注意力机制。
- 自适应位置嵌入:为条件图像标记分配位置索引,确保与噪声图像标记有效交互,对于空间对齐任务和非空间对齐任务都至关重要。
- 条件强度因子:引入偏置项调整注意力权重,支持在推理期间手动调整条件图像的影响力度。
- 多模态注意力操作:在 DiT 的每个 Transformer 块中,基于注意力机制实现图像和文本条件标记之间的交互。
如何运行 OminiControl
环境设置(可选)
- 环境设置
conda create -n omini python=3.10 conda activate omini
- 安装依赖
pip install -r requirements.txt
使用示例
- 主题驱动生成:
examples/subject.ipynb
- 图像修复:
examples/inpainting.ipynb
- 空间对齐任务:
examples/spatial.ipynb
Gradio 应用
运行 Gradio 应用进行主题驱动生成:
python -m src.gradio.gradio_app
主题驱动生成的指南
- 输入图像会自动居中裁剪并调整大小为 512x512 分辨率。
- 编写提示时,使用
this item
、the object
或it
等短语来指代主体。例如:- A close up view of this item. It is placed on a wooden table.
- A young lady is wearing this shirt.
- 模型目前主要适用于物体而非人类主体,因为训练数据中缺乏人类数据。
资源
- 项目官网:https://github.com/Yuanshi9815/OminiControl
- GitHub 仓库:https://github.com/Yuanshi9815/OminiControl
- HuggingFace 模型库:https://huggingface.co/Yuanshi/OminiControl
- arXiv 技术论文:https://arxiv.org/pdf/2411.15098
- 在线体验 Demo:https://huggingface.co/spaces/Yuanshi/OminiControl
❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦