把下面这两个文件复制到stable-diffusion-webui下面
点击A启动器,启动stable-diffusion,然后点击~运行中~
然后就可以看到启动起来了~可以使用了
一些好的资源网站:
ckpt是大模型,是完整的,pt文件只是其中一个部件,pt文件也有很多种的,embedding是pt文件,hypernetwork也是pt文件,美学梯度也是pt文件但是作用不一样的
TextualInversion(也称为Embedding)是一种使用文本提示来训练模型的方法。它根据模型引用给定的图像并选择最匹配的图像。你做的迭代越多越好,能够在保持图像质量的同时,快速生成大量图像。这种方法对计算资源要求较低,适用于需要快速生成大量高质量图像的场景。(生成特定角色比如:郭德纲)
训练好是一个PT文件,比较小,就是一个embedding~
特点:
生成的模型文件小,大约几十KB
通常适用于转换图像风格
使用时不需要加载模型,只需要在提词中embeddings中的关键tag
本地训练时对计算资源要求不高
可以通过生成的PT文件覆盖在原有基础上继续训练
模型关键字尽量是不常见的词语
推荐训练人物
训练时关键参数设定:
learning_rate:0.05:10,0.02:20,0.01:60,0.005:200,0.002:500,0.001:3000,0.0005
numberofvectorspertoken:按图片数量设置(图片数量小于10设置为2,10-30张设置范围2~3,40-60张设置范围5~6,60-100张设置范围8-12,大于100张设置范围12~16)
max_train_steps:3000(起步3000步)
生成的模型文件比Embedding大,大约几十MB
通常训练艺术风格
推荐训练画风
learning_rate:0.000005:1000,0.0000025:10000,0.00000075:20000,0.0000005:30000,0.00000025:-1
prompttemplatefile:对应风格类型文件可以编辑只留下一个[fileword],[name]在那里,删除多余的描述
Dreambooth是一种使用少量图像来训练模型的方法,是一种基于深度学习的图像风格转换技术。它可以将一张图片的风格应用到另一张图片上,以生成新的图像,Dreambooth的一个优点是它可以生成高质量的艺术作品,而无需用户具备专业艺术技能。
训练完会生成一个比较大的ckpt文件,可以让SD直接加载进来~只能训练物体,效果比TextualInversion要好~不仅仅是训练了embedding,还训练了扩散模型~所以训练效果比TextualInversion要好~
模型文件很大,2-4GB
适于训练人脸,宠物和物件
使用时需要加载模型
可以进行模型融合,跟其他模型文件融合成新的模型
本地训练时需要高显存,>=12GB
推荐训练人物*画风
训练时关键参数:
高学习率和过多的训练步骤将导致过度拟合(换句话说,无论提示如何,模型只能从训练数据生成图像)。
低学习率和过少的步骤会导致学习不足,这是因为模型无法生成训练过的概念。
物件:400步,2e-6
人脸:1500步,1e-6或2e-6
TrainingStepsPerImage(Epochs):(根据你图片的数量设定,大概值为你想训练的总步数/图片数量)
SanitySamplePrompt:是否过度训练参数设定,我们可以加上一些特征从而去判断训练过程中是否出现过度拟合如填入personofXXredhair(说明:XX替换为你的关键字,我们在这里加入了红头发的特征,如果出训练输出图像出现了非红头发此时我们就知道过度拟合了,训练过度了)
模型大小适中,8~140MB
使用时只需要加载对应的lora模型,可以多个不同的(lora模型+权重)叠加使用
可以进行lora模型其他模型的融合
本地训练时需要显存适中,>=7GB
personalizingtext-to-imageGenerationviaAestheticGradients
训练风格上会比TextualInversion要好~
需要大量的相同美学风格的图片进行训练
训练好的是一个小的pt文件,但是这个PT文件使用必须使用在SD的OpenforclipAesthetic插件里
1安装dreambooth插件
在扩展里找到插件并安装,然后重启sd
2准备训练图片
1尺寸相同512*512或其他2的倍数
3在dreambooth里设置
名称:希望训练的模型名称
sourcechekpoint:训练的原始模型
scheduler调节器:选择euler-ancestral
设置好上面的以后,点击create创建~
下图位置选择好刚创建好的空的模型
开始训练前的参数设置,如果想训练Lora模型就需要勾选Lora
TrainingStepsPerImage(Epochs):每张图的训练步数,训练图片数量*10
想训练lora模型就需要勾选uselora
learningrate:学习速率推荐0.0001(值越小速度越慢)
TrainingWizard(Person)/TrainingWizard(Object/Style)训练角色模型还是场景或物件模型,点击对应按钮会自动设置一些预制的训练步数。
datasetdirectory:训练目录填写训练图片的路径(这里图片需要图像需要先进行预处理才行)
训练----图像预处理
instancetoken:[filewords]
instanceprompt:[filewords]
sampleimageprompt:[filewords]
[filewords]:代表来自数据集图像文件名的单词
classificationimageNegativeprompt:反向提示词
sampleNegativePrompt:方向提示词
都设置好后,点击下图按钮进行训练~training按钮~
训练完成后,点击下图按钮GenerateCkpt训练彻底完成~
训练完成~
数据集目录:选择数据集的目录(需要训练图片的路径)
日志目录:生成日志的文件目录名字
Prompttemplate:需要选择hypernetwork(如果是训练embedding模型则选择对应的选项~)
每N步保存一个图像~这个如果是hypernetwork则需要设置的参数大一些~因为生成文件比较大
设置好以后点击训练~可以中止也可以继续训练~
训练的时候需要去掉自己设置的VAE
5~okenjoy~
名称:如果是角色就创建一个角色的名字
初始化文字:可以用*号代替
token向量数:如果训练图片数量不是很多(100以内)设置不超过10就可以~
然后点击生成embedding~按钮
1选择需要训练模型的基础模型~
2设置训练图片路径和训练后输出图片的路径
3训练的图片尺寸(需要提前设置好统一尺寸2的倍数)
4勾选生成镜像和使用BLIP生成说明文字(如果是hypernetwork就不要勾选这个,而勾选使用deepbooru生成说明文字)
5点击处理~
注意下训练时候一定要确定VAE文件~
embedding选择前面创建的embedding模型
prompttemplate:根据训练内容需求选择对应的训练魔板
风格模型魔板位置
都设置好然后点击训练embedding就可以了~
训练完成后可以看看下面目录下~生成训练的图片效果~检验训练效果是否OK
和hypernetwork一样,模型可以训练一半停止,然后再次继续训练~也可以针对过去的模型继续训练~
使用软件:
1krita把视频转成单帧的序列图片
2stablediffusion利用ai批量修改图片
3premierePro重新把图片导出成视频
sdmj生成角色图片
chatGPT生成演讲稿
IIElevenLabs生成音频
DID创建视频
metahuman创建模型
这样的方法更多是类似图片细节的放大~但是对于图片放大后的原本缺失细节重绘会稍微差一些
注意图片尺寸需要是原图片需要放大后的尺寸
重绘幅度0.5,ai会自动计算补充放大后的细节。
或者使用重绘幅度0.25,然后切换别的采样方式来获得不同的放大后细节的变化~(因为重绘强度比较低所以ai只会根据不同采样方式的特点来重绘补充放大后的细节部分)
如果想放大到原图的4倍,可以先用图生图放到2倍,然后用缩放功能再放大2倍
参数:
X/Y/ZPlot脚本可以实现方便的对比不同的参数间的效果,并生成这样的一张图,方便对比各种参数组合生成图片的效果。
Drawlegend:是否显示标注。
Keep-1forseeds:每次生成时是否重新随机。按需使用,如果为了横向比较效果,最好不勾选。
IncludeSubImages:是否显示单张图。
includeSubGrids:是否Batch
字符串类型/列表选项类型:
例如Sampler,你可以设置成Eulera,Euler,LMS,Heun,DPM2,DPM2a,DPM++2Sa,DPM++2M,DPM++SDE,这样配置的效果是按照这9个不同的Sampler进行生成。如果升级到最新版的WebUI的话,也可以点击value输入框右侧的图标,快速输入所有的选项,再进行编辑。
数值型:这个写法比较灵活,大概有三种:
区间写法1单调递增1:1-5=1,2,3,4,5
区间写法2修改默认递增值:
1-5(+2)=1,3,5
10-5(-3)=10,7
1-3(+0.5)=1,1.5,2,2.5,3
区间写法3生成范围内n个数值
1-10[5]=1,3,5,7,10
0.0-1.0[6]=0.0,0.2,0.4,0.6,0.8,1.0
特殊写法:
PromptS/R:
第一个逗号前是用来匹配的目标字符,后面每个逗号隔开的是需要进行替换的字符,从而组成不同的prompts进行生成
darkness,light,green,heat=4项组合:darkness,light,green,heat
darkness,"light,green",heat=3项组合:darkness,light,green,heat
其中有一个参数是“提示词顺序”,并声称“给它若干个prompt,它可以给你每一种排列组合情况。”