赞
踩
以下文章用于介绍如何使用stable diffusion, 基于真人照片的pt文件制作
照片随机抓取至网络。原始照片举例:
原始照片-1
原始照片-2
经过训练后,由stabel diffusion 生成的照片举例
stable diffusion生成照片示意-1
stable diffusion生成照片示例-2
以下基于深度学习的一般流程,介绍一下基于真人照片的pt批处理文件流程
深度学习建模的一般流程
1- 数据处理
首先是原始数据的获得,一般通过网络公开渠道都可以获得原始的训练数据。
1.1 数据清洗
但是我们从网络上获得的大部分数据都需要做一个初步的处理,比如对于过于花哨的背景,需要进行抠像处理;过于模糊的照片或者本身已经失真的照片需要剔除;部分照片如脸上有特效,头发遮住一部分脸庞,身上衣服有大范围的数字和字母、文字,纹身等等,最好予以剔除。
最后得到的初始照片大致如下:
使用ios相册的抠像功能可以自动抠像
1.2 数据预处理
首先在启动stabel diffusion 之前,进入VAE文件夹,将model.vae.pt文件改为1model.vae.pt,这一步很重要,VAE若自动加载,则训练必失败。
VAE 文件夹位置
随后启动stabel diffusion对于上述图像进行预处理。
VAE 设置为无(后续画图的时候再换回来)
设置反推提示词如下
反推提示词 deepbooru
记得“保存设置”,切记!!!
不保存设置,是无法进行训练的。
1.3 随后进入训练页签,对于图像进行预处理
输入embedding的名字,这个也决定了这个pt的后续名字,方便记忆即可。
初始化文字越简单越好,如果是人像输入1girl即可;如果是画风训练则输入画师的名字即可,方便区分和记忆即可。
每个token的向量数是很重要的,一般与你的初始图片数量有关,如果是人像训练,一般设置数字为6-12, 如果是画风训练则一般10以上。
举例我如果是20张照片,我设置为6;如果40张照片,我一般设置为8或者9;如果有100张照片,我一般设置为16.
生成初始的embedding文件
点击生成embedding文件,显示成功生成pt文件
成功生成pt文件
1.4 对于原始图像进行预处理
在stable diffusion程序文件夹内,创建一个train文件夹,在train文件夹下,输入你这个人像训练或画风训练的embedding文件夹,在这个文件夹下,再创建一个old文件夹。
创建三个嵌套的文件夹
将你前期经过抠像的图片存储入上述创建的old文件夹
这里就是初始数据了
1.5 由SD进行图像的预处理
源目录为上述创建的old目录绝对路径。
目标目录和上述目录路径相同,将最后的old改为new
如果是独立显存8G,则宽度高度保持默认的512*512即可;如果是独立显存6G,则宽度高度改为384*384,不然容易爆显存。
另外,即使你的初始照片为1024*768或其他比例,这里也建议保留原始的宽度高度512*512不要修改,不然生成的照片比例会很奇怪。
最下面的选项如图片选择即可。
点击预处理生成new文件夹,且sd会自动对于你的照片进行文字反推
后台显示对于初始文件进行预处理
显示批处理初始照片进度
SD会自动创建new文件夹,并对于初始照片进行处理
生成的照片会自动去除原有水印
SD会根据上述照片反推出来prompt关键词
2 训练配置
进入文生图页面,prompt输入简单内容即可,一般将embedding名字放在最后,不要加太多的prompt,如1girl, realistic即可。
prompt要尽量简单
回到训练页面
embedding选择自己刚才创建的embedding名字
学习率保持默认即可
数据集目录,设置为之前的new文件夹,用预处理过的图像作为数据集目录
日志目录为textual_inversion,如果是画风训练,则下方应选择为style_filewords,如果是人像训练,则下方应选择为subject_fileword。
宽度高度保持不变,依旧512*512
最大迭代步数由100000改为10000或20000
下面步数默认500或者250都可以。
训练参数设置如上
点击“训练embedding”,开始训练模型
3 SD后台开始训练embedding文件
最下面会显示embedding训练进度,如这里训练20000张图片,需要2.5小时。
4 查看训练结果
在textual_inversion文件夹下,会自动创建一个当天日期的文件夹
在当天日期文件夹下,会自动创建一个embedding名字的子文件夹
在images下面,会看到每隔500个结果,保存的照片
一般这时候照片会比较难看,但是如果只要还看的出来是原来的画风和人像,就可以不要打断SD,让他继续训练下去,直至完成。
每隔500,会自动保存一个样例,有些像,有些很不像。耐心等SD训练完。
5 校验,调整
20000个图像训练完成
训练完成后,我们就可以直接使用刚才的embedding作为prompt生成照片了
进入文生图页面
输入embedding名字,生成照片
这是删去定制embedding名字后,同样prompt生成的图片,差异明显。
6 图像模型优化
如果训练完的照片还是不像怎么办?
进入之前提到的\textual_inversion\2023-03-14\yuejiang2\image_embeddings 目录
在image_embedding目录之下,逐个查看,记住比较像的或者符合你审美的过程照片
比如,记住这个9000的照片
再选一个13000的照片
进入上述文件夹同级的embedding文件,找到和之前所挑选数字对应的两个pt文件
选择和刚才两个数字相同的pt文件
进入SD安装目录下的 embedding文件夹,将上述两个pt文件复制粘贴进来
将上述两个pt文件存入SD安装目录下的embedding文件夹下
在文生图页面下,记得输入刚才粘贴的pt文件名字
好看的照片变多了,比单纯输入没有数字的embedding文件名好看多了
将9000改为13000,同样生成好看照片的概率增加了。
7 锁定seed,进一步优化
在上述生成照片的十几张照片中,找到一张最顺眼的照片,
点击随机种子选项中的“Reuse seed……”按钮,锁定seed
找一张最顺眼的照片,锁定seed
再次基于锁定seed,重新文生图
锁定seed,用同一张脸再次文生图
8最终效果举例
(masterpiece), (best quality), realistic, 1girl, yuejiang2-13000
(masterpiece), (best quality), realistic, 1girl, yuejiang2-13000, full body
(masterpiece), (best quality), realistic, 1girl, yuejiang2-13000, short hair
(masterpiece), (best quality), realistic, 1girl, yuejiang2-13000, diamond necklace, in beach
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。