当前位置: 首页 > article >正文

FLUX 1 将像 Stable Diffusion 一样完整支持ControlNet组件

在这里插入图片描述

之前 InstantX 团队做的多合一的 Flux ControlNet 现在开始和 ShakkerAI 合作并推出了:Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro
该模型支持 7 种控制模式,包括 canny (0), tile (1), depth (2), blur (3), pose (4), gray (5) 和 low quality (6),并且还能和其他 ControlNet 一起使用。

模型卡片

  • 该 checkpoint 是 FLUX.1-dev-Controlnet-Union 的专业版,经过更多步骤和数据集的训练。
  • 该模型支持 7 种控制模式,包括 canny (0)、tile (1)、depth (2)、blur (3)、pose (4)、gray (5)、low quality (6)。
  • 建议 controlnet_conditioning_scale 为 0.3-0.8。
  • 该模型可与其他 ControlNets 共同使用。

效果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Multi-Controls 推理

import torch
from diffusers.utils import load_image

from diffusers import FluxControlNetPipeline, FluxControlNetModel, FluxMultiControlNetModel

base_model = 'black-forest-labs/FLUX.1-dev'
controlnet_model_union = 'Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro'

controlnet_union = FluxControlNetModel.from_pretrained(controlnet_model_union, torch_dtype=torch.bfloat16)
controlnet = FluxMultiControlNetModel([controlnet_union]) # we always recommend loading via FluxMultiControlNetModel

pipe = FluxControlNetPipeline.from_pretrained(base_model, controlnet=controlnet, torch_dtype=torch.bfloat16)
pipe.to("cuda")

prompt = 'A bohemian-style female travel blogger with sun-kissed skin and messy beach waves.'
control_image_depth = load_image("https://huggingface.co/Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro/resolve/main/assets/depth.jpg")
control_mode_depth = 2

control_image_canny = load_image("https://huggingface.co/Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro/resolve/main/assets/canny.jpg")
control_mode_canny = 0

width, height = control_image.size

image = pipe(
    prompt, 
    control_image=[control_image_depth, control_image_canny],
    control_mode=[control_mode_depth, control_mode_canny],
    width=width,
    height=height,
    controlnet_conditioning_scale=[0.2, 0.4],
    num_inference_steps=24, 
    guidance_scale=3.5,
    generator=torch.manual_seed(42),
).images[0]

我们还支持像以前一样加载多个控制网。

from diffusers import FluxControlNetModel, FluxMultiControlNetModel

controlnet_model_union = 'Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro'
controlnet_union = FluxControlNetModel.from_pretrained(controlnet_model_union, torch_dtype=torch.bfloat16)

controlnet_model_depth = 'Shakker-Labs/FLUX.1-dev-Controlnet-Depth'
controlnet_depth = FluxControlNetModel.from_pretrained(controlnet_model_depth, torch_dtype=torch.bfloat16)

controlnet = FluxMultiControlNetModel([controlnet_union, controlnet_depth])

# set mode to None for other ControlNets
control_mode=[2, None]

资料

  • InstantX/FLUX.1-dev-Controlnet-Canny
  • Shakker-Labs/FLUX.1-dev-ControlNet-Depth
  • Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro

http://www.kler.cn/a/281832.html

相关文章:

  • python调用MySql保姆级教程(包会的)
  • 《通往人工智能深度学习专家之路:全面解析学习路线图》
  • React Native 全栈开发实战班 - 打包发布之热更新
  • sqli—labs靶场 5-8关 (每日4关练习)持续更新!!!
  • 前后端交互之动态列
  • 基于Python实现的HDR图像处理算法
  • JavaScript异步编程中的常见陷阱与解决方案
  • YASKAWA机器人维修操作命令攻略-移动命令运用案例
  • jupyter notebook修改默认浏览器(改chrome)
  • 深度学习学习经验——长短期记忆网络(LSTM)
  • 爆改YOLOv8 | yolov8添加MSDA注意力机制
  • 代码随想录算法训练营第五十五天 | 图论part05
  • 怎么整合spring security和JWT
  • eclipse 配置 ABAP 连接操作手册
  • 北摩高科半年度军航民航双突破,技术创新引领行业发展
  • Ubuntu 22.04上稳定安装与配置搜狗输入法详细教程
  • C#入门篇5
  • 千益畅行,旅游卡,案例分享
  • Android UI绘制原理:UI的绘制流程是怎么样呢?为什么子线程不能刷新UI呢?讲解大体的流程是怎么样的
  • Flutter中的Key
  • 人工智能 | AutoGPT理念与应用
  • Android 获取安装包的签名,获取签名文件的MD5值
  • 测开新手:pytest+requests+allure自动化测试接入Jenkins学习
  • 《深入理解 Java 中的适配器模式》
  • 什么是杨氏模量
  • Redis:管道原理