一、前言
先做个声明,下面图片都是AI工具生成,此技术不要做危害他人之事。
在AI绘画的学习过程中,有不少人希望可以用AI做个人写真,或者将AI生成的图片换成真人的脸做服装展示。训练模型也可以实现上面的需求,但是需要的图比较多,很麻烦。今天教大家使用Roop插件进行一键换脸,方便快捷。下面是两个例子,可以看到Roop只会修改五官、眉毛以及脸型,不会改变肤色。而且将男生换到女生脸上也没什么违和感。接下来教大家如何安装使用Roop。
原图
换了一张外国姐姐的脸
换了小札的脸
二、Roop的安装
Roop的使用还是很简单的,但是安装环境有些繁琐,我在其中也遇到了很多问题。
在此先说下我使用的是B站秋叶的WebUI整合包,整合包版本是4.0,WebUI已更新到最新版本1.4版本(有小伙伴说其他低版本暂不支持Roop),运行在Windows,如果是其他整合包,安装过程可能会略微不同。
1.安装Microsoft C++ 生成工具
地址在https://visualstudio.microsoft.com/zh-hans/visual-cpp-build-tools/ 进入页面后点击“下载生成工具”。
会下载到一个exe文件,双击打开,选择“使用C++的桌面开发”这一项,然后点击“安装”。安装会占用大约9G空间,提前留好空间哦~
等待安装完成后,最好重启一下电脑。
2.安装insightface
在这里因为我用的是秋叶整合包,所以要去到整合包的python路径下进行安装。
进入到整合包的python位置,选择地址栏,输入cmd回车,调出控制台。
在控制台输入python -m pip install insightface==0.7.3
进行安装。 在这一步我遇到了很多问题,我会放到文末给大家参考。
3.进入到WebUI的插件界面安装Roop
点击WebUI的扩展标签——选择从网址安装(Install From URL)——将Roop的地址粘贴到仓库网址的位置——点击安装。 地址:https://github.com/s0md3v/sd-we
bui-roop
4.重启WebUI
此时WebUI会下载一些Roop需要的依赖项,如果控制台出现'NoneType' object has no attribute 'get'
这个错误,就下载inswapper_128.onnx
模型,放入到路径<webui_dir>/models/roop/
中。
模型地址:https://pan.quark.cn/s/2345f7b3e167 ,上述github地址中也可找到该模型。
三、Roop的使用方法
1.Roop界面
在文生图和图生图标签的下方,我们已经能看到Roop区域了。 来给大家讲解一下各个按钮的功能~ 图片区域上传要换的脸部,如果使用换脸功能,就需要「点击“启用”」。 面部编号在原图有「两张脸及以上」时使用。 面部修复和放大算法都和原版SD一样,不过多赘述。 模型目前只有inswapper_128这一种。
2.更换单人人脸
- 然后拿到图片的种子值,粘贴到文生图,将需要换的脸上传到roop区域里,点击启用,生成文生图,等待片刻,就可以拿到一张换好脸的图片。需要换的脸最好是正面图,如果觉得不像也可以试试其他角度,多进行尝试。
3.更换多人脸部
其实我自己对于拍婚纱照这种事儿就有些微抵抗,有了这种技术,以后婚纱照也不用愁了= =。。 更改多人脸部跟单人差不多,操作也很简单。
- Roop区域上传需要换的脸部,这一步我先换男士的脸部,点击启用。 面部编号这里详细说一下,针对原图的面部,roop会以从左到右,从0到n的方式编号,所以这里男士的脸部是0,女士的脸部是1。
- 生成图片,片刻后得到一张仅仅男士换脸的照片。我们点击图片下方的“发送到图生图”。
- 这里注意一下,图生图的重绘幅度要改成0,防止图片的其他部分发生变化。然后Roop区域上传女士的脸部,点击启用。