这个步骤主要是把一些辅助模型拷贝到对应的位置,如果你电脑有魔法,直接点“启动”也会自动下载。
既然是离线版,肯定要考虑到“局域网”用户,所以我想了个办法,先把东西放在压缩包里,点一下,会自动把文件放到指定位置。这个指定的位置就是你电脑的用户目录。
②启动
点击“启动.exe”就可以启动软件了。
点击之后,会先跳出黑色的命令窗口,等一会儿会跳出一个界面。跳不出来,那就是出问题了,可以反馈给我!
③选择图片和视频
界面出现后,就可以选①照片和②视频了。照片肯定是要选有人脸,清晰,完整,正面的图片(路径和文件名不要有中文,不要有中文,不要有中文)。最好选特征比较明显的人,换脸效果更明显。视频最好是不要整太大,先搞个720P,几十秒钟的练练手。如果要快速体验,可以用我放在demo里的素材。
界面上有两个参数可以设置,一般来说,不要动,用默认。
④开始换脸
设置和照片和视频之后,只要点击③Start 就可以开始了。点击之后会跳出一个窗口,让你选择换脸后的视频放在哪里。设置好存储路径之后,就真的开始处理了。处理过程中这个界面会卡死,命令窗口会有进度。
处理大概分了三个阶段,第一阶段是视频分割,然后处理,最后是合成。在处理阶段会把CPU资源占满,不管你多少的CPU都会爆卡,但是也不用担心CPU会嗝屁。
处理完成后,会看到”Video Saved as ….” 这里可以看到具体的保存路径。
⑤查看效果
通过事先的设置,或者最后的路径提示,找到视频,打开,就可以看到效果了。
换脸效果还是可以的,融合得也不错。就是人脸比较大的话看起来会有些模糊。用来做做小视频,或者搞笑视频,足够了。
侧脸部分,幅度不能太大,太大了会乱飘。多人的场景也会出现混乱,所以最好用来处理单人的视频。
相比DFL来说,操作真的是简单太多,制作也快了很多。但是论可玩性,效果上限,DFL依旧是换脸界的王者。
另外,我这次制作的是CPU版,理论上所有Windows系统的电脑都可以跑。我有测试过AMD和inter的CPU都可以。
GPU版本正在研究,我在3060 12G上能正常运行,但是3070 8G上却一直卡死,这个项目对系统资源的利用相当“残暴”。我看看有啥优化方式,等我搞明白了,再发布。
还有一个问题,roop刚上的时候是没有限制涩涩的,但是很快就加入了NSFW的检测。好多人问,在线脚本为啥不能换素材,就是这个原因。
本地的一台电脑行做了个简单的对比,同一个小视频,CPU要5分多钟,GPU只要12秒。而且,内存的需求量也大幅度降低了。
美队这个架子,给托尼用,也挺不错哦!
这次的版本,准确来说是GPU+CPU都可以,另外是代码更新到了最新。
本来我只是想搞个GPU版,但是看代码里好像支持参数里面好像支Nvidia,Inter,AMD,Apple,既然有这个内置参数,我为啥不在界面上加个选择呢?
然后我一激动就改代码了。
我花了一些时间,加了“设备选择”项。但是,当我界面写好,事件写好,运行后缺发现木有效果…
仔细一看,参数里面的类型好像还都是摆设。即使我通过界面改变了参数,其实还是只有NVIDIA和CPU两种,苹果下使用APPLE也没法调用GPU。所以白整了,只能是截个图给大家看下,证明我努力过!
使用方法,还是很简单。拿到软件之后,直接解压,直接使用!
解压完成后,如果是第一次使用,点一下“初始化.exe”
如果之前已经用过CPU版,就不需要点了,直接点击“启动GPU.exe” ,如果没有显卡或者配置不好,可以使用“启动CPU.exe”
启动后
点击①,选择换脸图片
点击②,选择换脸视频
点击③,启动转换程序
点击之后,会弹出一个窗口,让你设置换脸后的视频名称和保存路径。
相比于之前的版本,这里多了一个预览按钮“Preview”
①点击预览之后,会跳出一个预览窗口。
②下发有一个可以拖动的小方块,相当于播放器一样,可以拖动到某一个画面。
③然后点击Test按钮,就会对当前这一帧进行换脸了。
大概就是这个样子,其他应该没啥好说了。
1.文件名的问题
这是一个非常常见的问题,但是他的错误提示并不会直接告诉你这是“文件名的问题”。
大概提示如上图,主要就是提示是“AttributeError NoneType” 。单看这个提示,很难直接找到原因。但是从目前经验来看,大部分是因为文件名和路径的问题。
简单来说是,你的素材和放素材的文件夹全部都不能有中文和特殊符号。
不知道这句话能不能很好地理解?
比如你用的换脸图片的路径是:”D:\AI换脸\roop\图片.jpg” 。这里的“AI换脸”和“图片” 全部得改成英文!
2. 硬件环境的问题。
该项目主页并未列出对硬件的具体要求,但是可以肯定并不是所有电脑都能运行。内存和显存会是两个重要的制约因素,如果看到out of memory相关的提示估计就是和他们有关了。
也有可能和虚拟内存的设置有关。
我测试的环境中是内存32G和64G,显卡测过RTX3070 8G和RTX3060 12G,系统测过win10和win11。
另外,离线包肯定不支持AMD显卡,所以A卡没法使用GPU版。
3. 图片视频少儿不宜的问题
如果是官方版本,没有做过任何处理,那么会自动过滤少儿不宜的内容。具体的表现如下:
出现这个东西之后,就没有任何后续内容了。解决方法,用我之前发布的“真男人版”,或者自己修改源代码。
3.初始化的问题。
这个看到不多,但是也遇到了。
解决方法,可以手动拷贝文件。把下面的两个文件夹直接拷贝到用户目录%userprofile%下面。
4. 操作系统的问题
目前已知,在Win7下面可能无法运行。win10和win11正常。
解决办法,就是升级系统咯~~!
5.其他不知道啥问题的问题
有看到好几个人说 卡100%没有后续,我还不确定是啥原因~!
另外有一个问题是 ONNXRuntimeError!
这里面又可以细分为不同的问题,比如下方的
CUBLAS_STATUS_ALLOC_FAILED。
这个问题,我估计是和显卡显存不够有关。ROOP项目主页也有类似的bug报告,但是还没有人给出解决方案。
还有另外一种提示,同样是ONNX失败,具体的提示为CUBL ostname-LIAMLI_PC。
[ONNXRuntimeError]: 6 :RUNTIME_EXCEPTION : Non-zero status code returned while runni us Message: D: la\_work\1\s\onnzruntime \core\provi ders\cuda \cuda_call. cc: 121 onnxruntim time\core providers \cuda \cuda_call. co: 114 onnzruntime: :CudaCal1 CUBLAS failure 3: CUBL ostname-LIAMLI_PC: file-Dilal.
work 1\s\ornzruntime\core\providers \cuda \cuda_ezecution.
lasCreate(Boublas_handle_
这个错误,翻遍了github和搜索引擎,都没有找到一模一样的错误提示,更不用说是解决方案了…
有知道解决方案的可以留个言,我能力有限,只能靠大家的智慧了。
如果你使用过程有遇到问题,也可以私信我,把电脑的软件配置和错误信息说清楚,我来排查下,最好是能远程的,我排查起来方便一点。