Stable Diffusion+ControlNet+Lora 指导AI+艺术设计的WebUI全流程使用教程

2023-05-16

目录

  • 一. 背景知识
    • 1.1 Stable Diffusion背景知识
    • 1.2 ControlNet 背景知识
  • 二. 使用方法
    • 2.1 环境配置
    • 2.2 运行WebUI
  • 三. 背景知识
    • 3.1 Stable Diffusion参数详解
    • 3.2 ControlNet 参数详解
  • 四. 定制化技巧
    • 4.1 参数技巧
  • 五. 参考来源

设计师们往往对于新出的绘画工具上手比较艰难,本文针对目前比较火热的Stable Diffusion+ControlNet指导AI艺术设计的工具使用进行全面讲解。很多人会有预感,未来要么设计师被图形学程序员取代,要么会使用AI工具的设计师取代传统设计师,2023年开始,AI辅助设计甚至主导设计已经成了司空见惯的现象。

软硬件环境:
OS: Ubuntu 20.04(Stable Diffusion开发需要Linux 环境,纯使用Web工具也可在WIndows下运行)
CPU: AMD5800 8core 16Thread
GPU: NVIDIA RTX 3090 * 2
RAM: 16GB * 4
Pytorch-gpu=1.13
CUDA=11.7

一. 背景知识

1.1 Stable Diffusion背景知识

1.2 ControlNet 背景知识

二. 使用方法

目前开放AI+艺术设计工具的方式多为Web交互界面,接入互联网后调用AI公司内部的云GPU服务器,服务器计算后返回结果给用户。其大多有次数或功能限制,或者收费较高。本部分讲述如何利用本地GPU工作机进行Web交互式AI绘图。

2.1 环境配置

下载以下四个源代码/模型文件:

  1. 主要使用的SD的Web版本(第三方,非官方):

    stable-diffusion-webui

  2. 下载SD官方的v1.5模型:
    runwayml/stable-diffusion-v1-5

  3. 下载ControlNet的Web版本(第三方,非官方):
    Mikubill/sd-webui-controlnet

  4. 下载ControlNet官方发布的模型:
    lllyasviel/ControlNet/tree/main/models

下载好后首先进入stable-diffusion-webui 中,注意将 Mikubill/sd-webui-controlnet 的源代码放在 extensions 目录下面:

在这里插入图片描述
将下载好的ControlNet源代码目录中的models 复制到extensions 下面:

在这里插入图片描述

2.2 运行WebUI

在命令行中执行脚本(注意不要使用sudo命令,否则会不成功):

./webui.sh 

接下来脚本自动进行环境安装和模型加载。加载完毕后会返回一个本地Web网址,访问这个网址可以进行本地浏览器界面交互:
在这里插入图片描述
复制url,打开浏览器,即可得到带有ControlNet功能的SD的WebUI交互界面,可以利用界面上面的组件进行本地的快速交互设计开发。
在这里插入图片描述

三. 背景知识

3.1 Stable Diffusion参数详解

Sampling method: 采样方法

Sampling steps:采样迭代步数

Restore faces: 面容修复

Tiling: 生成平铺纹理

Highres.fix: 高分辨率修复

Firstpass width: 一开始的低分辨率的宽

Firstpass height: 一开始的低分辨率的高

CFG scale: 数值越小,AI多样性越多,越大限制越多

Seed: 种子数

Variation seed: 在原来种子数的基础之上的子种子数

Denoising strength:跟原来图片的差距大小

3.2 ControlNet 参数详解

  1. 2D重绘
    Canny Edge
    HED Boundary
    M-LSD Lines
    Faske Scribbles

  2. 专业领域
    Depth Map
    Normal Map
    Semantic Segmentation
    Human Pose

四. 定制化技巧

4.1 参数技巧

深度真人LoRa模型训练建议:
使用和LoRa一样的底模(大模型); 最好使用和LoRa作者相同的参数;正确设置loRa的权重(0.8~0.9, <1);提示词中要加入触发词;LoRa不是越多越好。
1、训练总数:建议50张图数据集深度训练15000次左右,更大数据集可用Dadaptation优化器测试最佳总步数。
2、训练轮次:建议10/5次预设,每个图建议单轮训练20~30次。
3、训练分辨率:建议768x1024,根据电脑显存调整。
4、训练源模型:建议chilloutmix_NiPnjnedFp32Fix, 1.5模型。
5、Text Encoder learning rate (文本编码器学习率):主要影响鲁棒性、泛化性和拟合度,过低不利于更换特征。
6、Unet learning rate (Unet学习率):主要影响模型像与不像,影响lost率和拟合度,不拟合加大,过拟合减小。
7、文本编码器学习率和Unet学习率的关系:没有必然的1/5~1/10倍率关系、庞大数据集下Unet甚至可以低过Text。
8、Network Rank (Dimension”网络大小):强化训练细节,建议128〜192,128以上增加提升相对不明显。
9、Network Alpha (网络Alpha):建议96以上,弱化训练细节,有正则化效果,可与Dim同步增加。
10、让AI训练AI:首发训练采用Dadaptation,所有学习率均设为1。
1k手动训练方法:建议用AadmW优化器,可以通过调整学习率获得很像与易用性的平衡。
12、lost率控制:不是越低越好,越低模型越拟合,但模型也越难更换特征,甚至会影响动作和表情。
13、Lion优化器:不建议用在深度训练中,太快拟合虽然能很像,但是造成泛用性差。
14、本地深度训练方法:可以用远程操作软件监控,训练过程中发现学习率不合适远程修改。

五. 参考来源

如何训练一个非常像的真人Lora模型(深度探讨)

[2023最新]LORA安装和训练指南

还搞不定lora训练集吗?干货分享+打标讲解

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Stable Diffusion+ControlNet+Lora 指导AI+艺术设计的WebUI全流程使用教程 的相关文章

随机推荐

  • 【深度学习环境01】 Windows10+WSL2迁移d盘+ Ubuntu 22

    前言 Windows10 xff1a Win系统稳定度舒适度没话说 xff0c 之前用双系统Linux实在太折腾 xff0c 我要布置环境用来开发程序的 xff0c 不是每次安装软件就要debug WSL2迁移d盘 xff1a Wsl是Wi
  • Arduino智能垃圾桶

    Arduino智能垃圾桶 硬件准备工作原理接线方式代码实物补充 舵机和超声波 调试舵机超声波传感器 这个小项目是基于Arduino设计的一款感应式智能开盖垃圾桶这个项目只要一点C语言的基础 xff0c 懂得一点点物联网知识就可以 xff0c
  • p1593 因子和

    因子和 题目描述 输入两个整数 a和 b xff0c 求 a b a b a b 的因子和 由于结果太大 xff0c 只要输出它对 9901 取模的结果 输入格式 仅一行 xff0c 为两个整数 a 和 b 输出格式 输出一行一个整数表示答
  • 如何在指定文件夹下安装python的虚拟环境

    1 什么是python中的虚拟环境 之前我们安装python第三方库时 xff0c 都是直接通过 pip install xx 包名 的方式进行安装的 xff0c 这样会使第三方库直接安装到Python系统环境中 xff0c 同时默认安装的
  • 【求救】各位大侠,救救我吧!!!

    在Sqlite数据库中 xff0c 向某整形或浮点型字段插入0 000005数值时 数据库自动将该值转变成了科学计数法表示的数字 xff0c 即使插入0 000005字符串时 xff0c 情况也一样 请问 xff1a 怎么阻止数据库的自动转
  • C# 字符提取和整數整除

    C 字符提取和整数整除练习 xff08 Console xff09 用控制台应用程序实现下列功能 xff1a 从键盘接收一个大于100的整数 xff0c 然后分别输出该整数每一位的值 xff0c 并且输出这些为相加的结果 要求分别用字符提取
  • 蓝桥杯 试题 历届真题 时间显示【第十二届】【省赛】【B组】java

    蓝桥杯 试题 历届真题 时间显示 第十二届 省赛 B组 java 问题描述 xff1a 小蓝要和朋友合作开发一个时间显示的网站 在服务器上 xff0c 朋友已经获取了当前的时间 xff0c 用一个整数表示 xff0c 值为从 1970年 1
  • 【无标题】

    借个地方发个外链图片
  • 最小m段和问题 动态规划 c++含讲解

    最小m段和问题 给定n个整数组成的序列 xff0c 现在要求将序列分割为m段 xff0c 每段子序列中的数在原序列中连续排列 如何分割才能使这m段子序列的和的最大值达到最小 xff1f 刚刚写了最大k乘积问题的分析 xff0c 再过来看这道
  • OpenCV 源码编译 + cuda + cuDNN(未成功)

    目录 安装 cuda cuDNN1 1 安装 cuda1 2 安装 cuDNN 重新编译 OpenCV 测试安装结果3 1 添加配置项3 2 OpenCV cuda 测试结果 参考文章 前言 xff1a 上篇文章搭建 OpenCV 环境的时
  • 树莓派报错“Cannot currently show the desktop”的完美解决办法

    最近在利用树莓派部署神经网络的时候出现了一些大大小小的问题 xff0c 很多问题都可以在网上直接或间接地找到答案 xff0c 但有个别问题即使按照网上的高赞博客说的去做了仍然没用 笔者根据最近遇到的有关树莓派VNC win10远程桌面连接
  • 汉字国标码、区位码和机内码三者的定义及联系

    一 三者的定义 1 汉字国标码 xff1a 创建于1980年 xff0c 目的为了使每个汉字有一个全国统一的代码而颁布了汉字编码的国家标准 每个汉字有个二进制编码 xff0c 叫汉字国标码 2 区位码 xff1a 国标码是一个四位十六进制数
  • 汇编语言程序设计实验(五)——嵌套循环打印ACSII表

    目录 实验目的及内容一 单层循环实验1 斐波那契数列2 自然数累加和 二 嵌套循环实验1 冒泡排序法2 输出ACSII码表 实验目的及内容 理解循环程序结构的特点 xff0c 掌握循环结构程序的编写 一 单层循环实验 xff08 1 xff
  • logism电路仿真实验(三)——串行加减法器、先行进位加法器、阵列乘除法器、ALU运算器组成实验

    目录 实验说明1 多位串行加法器和多位可控加减电路的设计 xff08 1 xff09 设计完成8位串行加法器 xff08 2 xff09 设计完成8位可控加减法器 2 快速加法器的设计 xff08 1 xff09 设计4位先行进位电路 xf
  • 计算机视觉(多目标跟踪)算法中卡尔曼滤波算法详解

    目录 一 背景详解二 卡尔曼滤波 Kalman 原理代码实践 三 总结参考文献 一 背景详解 卡尔曼滤波 xff08 Kalman filter xff09 是一种高效的自回归滤波器 xff0c 它能在存在诸多不确定性情况的组合信息中估计动
  • 结合AutoLayout实践iOS8上UITableViewCell高度的自适应

    上一次写博客已经是4个月之前了 xff0c 不是不想写 xff0c 只是没找到太合适的题目 xff0c 本人秉着宁缺毋滥的原则 好吧 xff0c 我承认是我懒惰了 四个月 xff0c 虽然陆续提交了几个项目 xff0c 但是所学所用变化不大
  • 正则表达式

    概述 1 正则表达式功能非常强大 xff0c 但是学习难度也很大 正则表达式是一套独立的语法 xff0c 和Python并没有任何相似和相关之处 xff0c 只不过是Python提供了对正则表达式的支持 2 正则表达式是编写网络爬虫提取特定
  • PaddleX 在windows10使用paddle_inference部署C#打包dll全教程

    目录 一 基本环境配置1 1 Visual Studio2019安装1 2 CUDA10 2安装1 3 安装Cudnn1 4 下载PaddleX develop1 5 下载paddleinference1 6 下载opencv3 4 61
  • Jetson Nano Pytorch+TensorRT环境配置系统移植到另一张TF卡

    PS 使用本文章中dd写入的方式 可以用于备份TF卡 SD卡 硬盘里操作系统 环境变量和系统数据 随时备份 随时恢复 内容完全一样 目录 PS 使用本文章中dd写入的方式 可以用于备份TF卡 SD卡 硬盘里操作系统 环境变量和系统数据 随时
  • Stable Diffusion+ControlNet+Lora 指导AI+艺术设计的WebUI全流程使用教程

    目录 一 背景知识1 1 Stable Diffusion背景知识1 2 ControlNet 背景知识 二 使用方法2 1 环境配置2 2 运行WebUI 三 背景知识3 1 Stable Diffusion参数详解3 2 Control