ControlNet
2023.8.10
Adding Conditional Control to Text-to-Image Diffusion Models
对于 T2I 扩散模型添加 条件控制
相关联比较大的几篇论文:
0.Abstract
可以为预训练的扩散模型提供额外的输入条件控制。不需要很多计算资源。
即使在小数据集上,也具有鲁棒性。
The ControlNet learns task-specific conditions in an end-to-end way。什么是
end-to-end way?解释:ControlNet直接从输入数据中学到所必要的条件和特征,然后直接输出,中间不需要什么操作。
1.Introduction
现有的 prompt-based 的生成模型 能否满足特定的条件(比较复杂的场景)?
通过调查发现三点:
①许多特定任务的数据集比较小,需要稳定的神经网络,以防止过拟合;
②需要很大的计算资源;
③许多的模型从输入到输出需要很多人工干预,所以引入 end-to-end学习方式,一端是输入数据、另一端是输出数据,让神经网络自己根据数据调节自己,而不需要人工干预。
提出ControlNet
从扩散模型克隆权重副本,包含两个部分:①locked copy,保留了从数十亿张图片所学得的能力;②trainable copy,用来学习特定场景下的条件。这两个部分通过 zero-conv 连接起来。
锁定副本:它的参数(权重)不会改变,用作参考;
可训练副本:它的参数会随着特定任务发生改变。
zero convolution
在卷积操作中,权重矩阵(卷积核)一开始初始化为0,随着学习不断调整,以达到最优参数。
实验
不同条件、不同大小数据集、在3090Ti上就可以跑。
引言小结

2 Related work
2.1 HyperNetwork and Neural Network Structure
2.2 DPM
2.3 Text-to-Image diffusion
2.4 Personalization, Customization,and Control of Pretrained DM
2.5 Image-to-Image Translation
3 Method
-
3.1 介绍了 基本结构 和 每个部分的motivation
-
3.2 在Stable Diffusion中使用 ControlNet 的细节
-
3.3 学习目标、训练方法
-
3.4 一些训练技巧
-
3.5 不同条件下的应用
3.1 ControlNet
结构解析:

为什么要设置 locked copy 和 trainable copy?
避免因数据集过小-->过拟合。
之后用数学证明了只要特征I不为零,在第一次梯度下降迭代中,权重w将被优化为非零矩阵。零卷积就成为一种独特的连接层,以一种学习的方式从零逐步增长到优化参数。
3.2 ControlNet in Image Diffusion Model
在Stable Diffusion 的基础上对 Encoder部分进入条件控制。

因为条件的feature map得是 64 \times 64 的,所以需要一个小网络 把条件图像(512 \times 512 \rightarrow 64\times 64) 。这个小网络是由 4个conv layer。
3.3 Training
z_0,...,z_t ,当 t 足够大的时候,图像就会近似于纯噪声。
给定一系列条件:
-
time step t
-
text prompts c_t
-
task-specific conditions c_f
图像扩散算法就会学习一个网络 \epsilon_{\theta} 来预测添加到 加噪图像z_t 中的噪声
相关文章:
ControlNet
2023.8.10 Adding Conditional Control to Text-to-Image Diffusion Models 对于 T2I 扩散模型添加 条件控制 相关联比较大的几篇论文: 0.Abstract 可以为预训练的扩散模型提供额外的输入条件控制。不需要很多计算资源。 即使在小数据集上,也具有鲁棒…...
竞赛项目 深度学习图像风格迁移 - opencv python
文章目录 0 前言1 VGG网络2 风格迁移3 内容损失4 风格损失5 主代码实现6 迁移模型实现7 效果展示8 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习图像风格迁移 - opencv python 该项目较为新颖,适合作为竞赛课题…...
Windows dos文件夹与文件怎么创建与删除
在Windows操作系统中,你可以使用命令行工具(命令提示符或PowerShell)来创建和删除文件夹和文件。以下是创建和删除文件夹和文件的基本方法: 创建文件夹: 使用mkdir命令来创建文件夹(目录)。 m…...
JVM总结2
1.基本概念 java代码执行 代码编译class:javac 源文件通过编译器产生字节码文件,字节码文件通过jvm的解释器编译成机器上的机器码 装载class:ClassLoader执行class: 解释执行编译执行 client compilerserver compiler 内存管理…...
servlet三大类HttpSevlet,HttpServletRequest,HttpServletResponse介绍
一、HttpServlet HttpServlet类是一个被继承的方法,可以看做一个专门用来响应http请求的类,这个类的所有方法都是为响应http请求服务的,要对一个某个路径谁知http响应时,需要写一个类来继承HttpServlet类,并重写里面的…...
【雕爷学编程】Arduino动手做(12)---霍尔模块之霍尔磁感应声光报警器(磁控开关,接220V)
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的&#x…...
认识 SQL
文章目录 1.简介2.组成3.工作原理4.五种子语言5.注释方式6.字符串表示方式参考文献 1.简介 SQL(Structured Query Language,结构化查询语言)是一种用于管理和操作关系型数据库的标准化查询语言。它是一种领域特定语言(DSL&#x…...
【剑指Offer 58】翻转单词顺序,Java解密。
LeetCode 剑指Offer 75道练习题 文章目录 剑指Offer:翻转单词顺序示例:限制:解题思路:剑指Offer:翻转单词顺序 【题目描述】 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"I am a stu…...
微服务Ribbon-负载均衡原理
目录 一、LoadBalancerIntercepor 二、LoadBalancerClient 三、负载均衡策略IRule 四、总结 上一篇中,我们添加了LoadBalanced注解,即可实现负载均衡功能,这是什么原理呢? SpringCloud底层其实是利用了一个名为Ribbon的组件&…...
如何实现Vue的异步组件?如何在Vue中使用本地存储?什么是Vue的指令模块化?
1、如何实现Vue的异步组件? 在Vue中,可以使用异步组件来加载远程数据,或者在组件的生命周期中执行一些耗时操作。实现异步组件,需要使用Vue的异步组件和Vue的组件系统。 下面是一个基本的示例: <template><…...
《HeadFirst设计模式(第二版)》第六章代码——命令模式
代码文件目录: Command package Chapter6_CommandPattern.Command;/*** Author 竹心* Date 2023/8/6**/public interface Command {public void execute();public void undo();//撤销该指令 }CeilingFan package Chapter6_CommandPattern.ElectricAppliance;/*** …...
JS 原型与继承2
//***-、原型、原型链、构造函数 prototype、 proto_、constructor function Foo(){this.a1} var foo new Foo(); Object.getPrototypeOf(foo);//访问对象原型 效果等同于,foo. proto ,只是更推荐使用 Es6的 Object.getPrototypeof()方式 // construct…...
账号登录相关的一点随笔
最后更新于2023年8月8日 14:25:32 JWT验证: 简单:一个token验证; 前端发来登录信息,后端验证通过后,将token发回前端; 复杂:Access Token Refresh Token验证: 将Access Token和R…...
常见的一些BUG
常见的一些BUG,但实际上在编写代码时,我们应该尽可能避免这些类型的错误: 变量名与函数名冲突: def main(): print("Hello, World!") main 5 print("The value of main is:", main) 函数参数传递错误&…...
ChatGPT在智能社交网络分析和关系挖掘中的应用如何?
智能社交网络分析和关系挖掘是当今信息时代中的重要研究领域,它们通过运用人工智能、机器学习和数据挖掘技术,从社交网络中提取有价值的信息,洞察用户之间的关系和行为模式。ChatGPT作为一种强大的自然语言处理模型,在智能社交网络…...
你不了解的Dictionary和ConcurrentDictionary
最近在做项目时,多线程中使用Dictionary的全局变量时,发现数据并没有存入到Dictionary中,但是程序也没有报错,经过自己的一番排查,发现Dictionary为非线程安全类型,因此我感觉数据没有写进去的原因是多线程…...
c++类模板,嵌套类模板,模板链表,动态数组
c类模板,嵌套类模板,模板链表,动态数组 一.类模板 1.类模板的书写 代码如下 template<typename T>//模板 class CTest {//类 public:T m_a;CTest(const T&a):m_a(a){}void fun1() {cout << typeid(m_a).name() << …...
【Flutter】【基础】CustomPaint 绘画功能,绘制各种图形(二)
CustomPaint 使用实例和代码: 1.canvas.drawColor 绘制背景颜色 class MyPainter1 extends CustomPainter {overridevoid paint(Canvas canvas, Size size) {//绘制背景颜色,整个UI 现在就是红色的canvas.drawColor(Colors.red, BlendMode.srcATop);}…...
YOLOv5修改注意力机制CBAM
直接上干货 CBAM注意力机制是由通道注意力机制(channel)和空间注意力机制(spatial)组成。 传统基于卷积神经网络的注意力机制更多的是关注对通道域的分析,局限于考虑特征图通道之间的作用关系。CBAM从 channel 和 sp…...
计算机网络 网络层 概述
...
不用装软件!这款MicroPython浏览器 IDE :让你在手机上也能调试树莓派 Pico亚
1、普通的insert into 如果(主键/唯一建)存在,则会报错 新需求:就算冲突也不报错,用其他处理逻辑 回到顶部 2、基本语法(INSERT INTO ... ON CONFLICT (...) DO (UPDATE SET ...)/(NOTHING)) 语…...
突破学术资源壁垒:Unpaywall扩展全方位应用指南
突破学术资源壁垒:Unpaywall扩展全方位应用指南 【免费下载链接】unpaywall-extension Firefox/Chrome extension that gives you a link to a free PDF when you view scholarly articles 项目地址: https://gitcode.com/gh_mirrors/un/unpaywall-extension …...
CogVideoX-2b效果探索:极端提示词下的边界测试
CogVideoX-2b效果探索:极端提示词下的边界测试 1. 引言:当文字遇见视频魔法 你有没有想过,用几句话就能拍出一部微电影?输入一段文字描述,几分钟后就能得到一段动态视频,这听起来像是科幻电影里的场景&am…...
你知道ZooKeeper分布式锁怎么应用吗?【原理与实现深度解析】
目录 一、前言 二、核心实现原理 1. 创建节点 2. 获取子节点列表 3. 判断是否获取锁 4. 监听前序节点 5. 等待与重试 三、锁的类型与实现变体 排他锁(Exclusive Lock) 共享锁(Shared Lock) 可重入锁(Reentr…...
把 Flask 搬进 ESP,高中生自研嵌入式 Web 框架 MicroFlask !唤
如果有多个供应商,你也可以使用 [[CC-Switch]] 来可视化管理这些API key,以及claude code 的skills。 # 多平台安装指令 curl -fsSL https://claude.ai/install.sh | bash ## Claude Code 配置 GLM Coding Plan curl -O "https://cdn.bigmodel.cn/i…...
国产大模型DeepSeek首次推出模式分层功能,开启V4版本灰度测试,引发行业广泛关注
文章目录前言去医院挂号?这次DeepSeek让你选"普通门诊"还是"专家号"快速模式:那个戴着闪电标志的"急诊小能手"专家模式:戴着钻石的"学霸型选手"视觉模式:那个还在"隐身"的第三…...
仅用3行代码重构I/O密集型API,PHP异步响应时间从1.2s降至86ms(真实电商订单中心压测数据)
第一章:PHP异步I/O性能的本质瓶颈与重构价值PHP 传统同步阻塞模型在高并发 I/O 场景下存在根本性性能瓶颈:每个请求独占一个进程或线程,当执行文件读写、数据库查询或 HTTP 调用时,整个执行流被挂起,CPU 空转等待内核返…...
释放AutoCAD潜能:PyAutoCAD自动化开发指南
释放AutoCAD潜能:PyAutoCAD自动化开发指南 【免费下载链接】pyautocad AutoCAD Automation for Python ⛺ 项目地址: https://gitcode.com/gh_mirrors/py/pyautocad 重新定义CAD工作流:为什么选择PyAutoCAD? 你是否曾陷入AutoCAD重复…...
智能车浅谈——控制规律篇
文章目录前言计算机控制系统常用控制规律PID控制比例(P)控制器比例积分(PI)控制器比例积分微分(PID)控制位置式PID增量式PID数字PID控制算法的改进PID参数整定小结串级控制模糊控制智能车系列文章汇总前言 之前已经记录了一些有关…...
Linux 文件权限 rwxrwxr-- 完整解析
📌 Linux 文件权限 rwxrwxr-- 完整解析这是 Linux 系统中文件 / 目录权限的符号表示法,下方的 7 6 4 是对应的八进制数字权限,我们一步步拆解:1. 权限结构与含义Linux 权限分为 3 组,每组 3 位,对应 3 类用…...
