face 发表于 2023-8-9 12:53:53

人脸提取性能大提速,4X速度质量不变

第一次玩换脸,我提取了一万多张用于训练的相片,想提取人脸,结果看到1s/it,又看到自己cpu gpu占用率都很低,于是就着手研究如何并行化提速
首先打开cmd,注意红色文字是我的文件路径,然后执行python路径
cd E:\ai\DFL_maozhihanhua_RTX3000\_internal\
e:
./setenv.bat

这时候你就可以执行命令行来提取文件了
cd E:\ai\DFL_maozhihanhua_RTX3000\_internal\python-3.6.8\
python E:\ai\DFL_maozhihanhua_RTX3000\_internal\DeepFaceLab\main.py extract--detector s3fd --input-dir E:\ai\DFL_maozhihanhua_RTX3000\workspace\data_src\ --output-dir E:\ai\DFL_maozhihanhua_RTX3000\workspace\data_src\aligned --no-output-debug --face-type whole_face --max-faces-from-image 0 --image-size 512 --jpeg-quality 90 --force-gpu-idxs 0

标红的地方都是我环境

现在既然你能够命令行执行提取文件夹了,也就自然可以把文件内容分几个文件夹,然后执行几个这个命令同时进行

当然,这样有点傻,每次自己要创建几个文件夹和输出文件夹,然后托文件分均匀,然后改几次命令,然后生成好在都拖出来

如果你还想更省事,这时候就需要我这个花费十五分钟写的自动化脚本,自动拷贝,自动均匀分布,自动多线程开命令,全部完成后自动合并,唯一需要的就是您来指定开几个进程.因为每个人显存不同,开多了显存会爆,而且这个应用好像没有给我简单设置每一个显存默认值的地方(至少我花费20分钟并没有找到)

下面就是我的脚本,希望您尊重他人劳动成果,有问题可以在下面留言,但我并不保证我能快速回复


关于如何自己动手更改线程数 看下图红箭头处的内容: 这是4个线程的时候的几个值,如果你要改成5个就所有的位置都 1 即可
页: [1]
查看完整版本: 人脸提取性能大提速,4X速度质量不变