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

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_imagefrom diffusers import FluxControlNetPipeline, FluxControlNetModel, FluxMultiControlNetModelbase_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 FluxMultiControlNetModelpipe = 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 = 2control_image_canny = load_image("https://huggingface.co/Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro/resolve/main/assets/canny.jpg")
control_mode_canny = 0width, height = control_image.sizeimage = 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, FluxMultiControlNetModelcontrolnet_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.mrgr.cn/news/15384.html

相关文章:

  • 复现ssrf漏洞
  • rabbitmq发送的消息接收不到
  • 【论文阅读】YOLOv10: Real-Time End-to-End Object Detection
  • Windows Edge 兼容性问题修复
  • Spring Security与Apache Shiro:Java安全框架的比较
  • 如何为孤独症儿童选择最合适的康复机构?
  • SDI与CVBS信号处理:从编码到解码的深入探讨
  • 如何在知行之桥上通过业务单号查找原始报文?
  • 如何评估云服务器提供商可靠性与信誉度
  • 【Python 千题 —— 基础篇】身份证隐藏的信息
  • Spring Boot 八股文
  • Linux 系统通过 FTP 上传文件到云服务器
  • 【数学分析笔记】第2章第4节收敛准则(6)
  • 喜羊羊做Python二级(模拟考试--易错点)
  • 排序算法之插入排序详细解读(附带Java代码解读)
  • WHAT - 通过 react-use 源码学习 React(Animations 篇)
  • 小白指南:Linux怎么创建压缩包?又怎么解压缩?
  • Android设备如何异地访问本地部署的code-server随时随地远程开发
  • Spring Boot DevTools:简化开发,实现热部署
  • FPGA开发——IIC实现简单的串口回环