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

给予FLUX更好的控制:FLUX.1-dev-ControlNet-Union-Pro-2.0

Shakker Labs FLUX.1-dev-ControlNet-Union-Pro-2.0

一、模型概述

Shakker Labs发布的FLUX.1-dev-ControlNet-Union-Pro-2.0是一个统一的ControlNet模型,专为FLUX.1-dev模型设计。该模型在前一版本基础上进行了多项改进,包括移除模式嵌入以减小模型尺寸,同时在Canny边缘检测和姿态控制方面实现了更好的控制效果和美学表现。此外,该模型新增了对软边缘的支持,但移除了对平铺(tile)模式的支持。

二、模型架构与训练

该ControlNet模型由6个双块组成,没有单块结构。训练过程从零开始,共进行了300,000步训练,使用了包含2000万张高质量通用和人物图像的数据集。训练参数包括:

  • 分辨率:512x512

  • 数据类型:BFloat16

  • 批量大小:128

  • 学习率:2e-5

  • 引导参数:从[1,7]均匀采样

  • 文本丢弃比率:0.20

三、支持的控制模式

该模型支持多种控制模式,包括:

  1. Canny边缘检测:使用cv2.Canny实现,推荐控制条件缩放比例为0.7,控制引导结束点为0.8

  2. 软边缘:使用AnylineDetector实现,推荐控制条件缩放比例为0.7,控制引导结束点为0.8

  3. 深度:使用depth-anything实现,推荐控制条件缩放比例为0.8,控制引导结束点为0.8

  4. 姿态:使用DWPose实现,推荐控制条件缩放比例为0.9,控制引导结束点为0.65

  5. 灰度:使用cv2.cvtColor实现,推荐控制条件缩放比例为0.9,控制引导结束点为0.8

四、使用示例

论文提供了两种使用示例:单条件推理和多条件推理。

单条件推理示例

    import torchfrom diffusers.utils import load_imagefrom diffusers import FluxControlNetPipeline, FluxControlNetModelbase_model = 'black-forest-labs/FLUX.1-dev'controlnet_model_union = 'Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro-2.0'controlnet = FluxControlNetModel.from_pretrained(controlnet_model_union, torch_dtype=torch.float16)pipe = FluxControlNetPipeline.from_pretrained(base_model, controlnet=controlnet, torch_dtype=torch.float16)pipe.to("cuda")control_image = load_image("./conds/canny.png")width, height = control_image.sizeprompt = "A young girl stands gracefully at the edge of a serene beach, her long, flowing"image = pipe(prompt,control_image=control_image,width=width,height=height,controlnet_conditioning_scale=0.7,control_guidance_end=0.8,num_inference_steps=30,guidance_scale=3.5,generator=torch.Generator(device="cuda").manual_seed(42),).images[0]

多条件推理示例

import torch
from diffusers.utils import load_imagebase_model = 'black-forest-labs/FLUX.1-dev'
controlnet_model_union = 'Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro-2.0'controlnet = FluxControlNetModel.from_pretrained(controlnet_model_union, torch_dtype=torch.float16)
pipe = FluxControlNetPipeline.from_pretrained(base_model, controlnet=[controlnet], torch_dtype=torch.float16)
pipe.to("cuda")control_image = load_image("./conds/canny.png")
width, height = control_image.size
prompt = "A young girl stands gracefully at the edge of a serene beach, her long, flowing"image = pipe(prompt,control_image=[control_image, control_image],width=width,height=height,controlnet_conditioning_scale=[0.35, 0.35],control_guidance_end=[0.8, 0.8],num_inference_steps=30,guidance_scale=3.5,generator=torch.Generator(device="cuda").manual_seed(42),
).images[0]

五、相关资源与致谢

文章提到该模型由Shakker Labs开发,原始想法受到xinsir/controlnet-union-sdxl-1.0的启发。所有版权均保留。

此外,论文还提到了其他相关模型资源,包括:

  • InstantX/FLUX.1-dev-IP-Adapter

  • InstantX/FLUX.1-dev-Controlnet-Canny

  • Shakker-Labs/FLUX.1-dev-ControlNet-Depth

  • Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro

六、核心技术汇总

在这里插入图片描述

相关文章:

  • 精准计量+AI管控——安科瑞助力高校水电管理数字化转型
  • 2025妈妈杯数学建模D题完整分析论文
  • 2 celery环境搭建
  • ASP.NET常见安全漏洞及修复方式
  • 【Drools+springboot3规则匹配】
  • 利用 DeepSeek-R1 模型和计算机视觉微调模型实现马铃薯叶片疾病识别和分类
  • STM32使用rand()生成随机数并显示波形
  • 如何在PDF.js中改造viewer.html以实现PDF的动态加载
  • 优化WAV音频文件
  • hooker frida版just_trust_me.js 2025升级 支持boringssl unpinning
  • Skipped breakpoint at ... because of stepping in another thread问题分析
  • AI Agents系列之构建多智能体系统
  • linux驱动之poll
  • Kaggle-Bag of Words Meets Bags of Popcorn-(二分类+NLP+Bert模型)
  • Redis ③-Linux下载Redis
  • 【医学影像 AI】早产儿视网膜病变国际分类(第三版)
  • python中,处理多分类时,模型之间的参数设置
  • 《计算机视觉度量:从特征描述到深度学习》—工业检测大模型RAG白皮书
  • 星露谷物语 7000+ 大型MOD整合包
  • 18-算法打卡-哈希表-两数之和-leetcode(1)-第十八天
  • 海康威视:去年海外主业和机器人等创新业务占比首次超50%
  • 祥源文旅:2024年营业收入约8.64亿元,今年旅游经济总体预期更为乐观
  • 14岁男孩膀胱内现52颗磁力珠,专家呼吁关注青春期少年心理健康
  • 地铁口被吐槽像棺材?杭州地铁公司回应:是一个标志性出入口
  • 解放日报头版:再出发再创业,浦东以开放拥抱世界
  • 台积电一季度净利增长六成,预计今年AI芯片营收增长一倍