AI换脸实战教学(FaceSwap的使用)---------第二步Tools:处理输入数据集。
续上篇:https://www.cnblogs.com/techs-wenzhe/p/12936809.html
第一步中已经提取出了源视频的人脸照片以及对应人脸遮罩(landmark以及其他自选遮罩)
第二步:利用Tools处理提取号好的数据集,使其对模型的训练产生正向收益。
首先,我们需要剔除不需要的人脸(对齐识别错误以及非想要换脸的目标),做法是对生成的人脸进行聚类,排序。之后把不需要的类别的人脸删除掉。
这一步的目的是:我们都知道训练一个模型输入参数的正确性决定了算法的精确度,这一步就是为了去除所有错误的,不恰当的输入数据(图片)集。我们需要给模型一个清晰,明了的可学习对象。
PS:如果你的输入数据集(人脸图片很多)过大,请拆分成多个,需要分多次聚类排序。因为这些操作会在RAM中进行,例如:大约22k 张人脸对应大约8G RAM,30k对应11G(还要考虑其他内存使用,浏览器什么的==). 根据你电脑的RAM能力,选择分几次来处理即可。
GUI的设置如下:
PS: 实际根据有啥模型就用啥,笔者自己办公用的机器有Face-cnn,所以就选了用这个模型排序,选face的话得需要vggface2_resnet50_v2.zip模型在对应目录下才行。
1.1 Data模块:
输入:输入包含上一步提取的人脸的文件夹。
输出:留空则基于输入的文件内直接排序。
1.2 Sort Settings模块:
Sort by:排序的方式,这里直接选face即可。意思是根据人脸相似度进行排序。当然还有其他排序方式(如基于landmark的Face-CNN,基于模糊度的Blur,基于聚类距离-识别错误对齐的distance,基于颜色的Color系列,基于大小的Size系列),实测还是face最有效。
Ref Threshold:Sort by内特殊几种算法(face-CNN, Hist)的调节,同样的值越高越严格。(推荐设置为-1即可,代表自动设置默认值) ,face-CNN 7.2就足够了,设置为4会有较高识别度。Hist 0.3就足够,设置为0.2 会有较高的识别度
1.3 Output模块:这里不需要设置任何东西(此部分已完全弃用,并将在未来的更新中删除。这里不需要设置任何东西。
选好模型,选好数据集(图片)所在文件夹,选好输出文件夹,点击sort等待结果即可。
可看到是提取图片中的landmark,根据直方图分类。
一旦完成,你应该发现 99% 的面孔被分类在一起,所有垃圾也一起分类,现在只需浏览每个垃圾箱(子文件夹),删除那些您不想保留的面孔/文件夹,然后将您想要保留的任何面孔移回父文件夹。
至此,排序完毕,接下来要清理校准-alignments文件
AI换脸实战教学(FaceSwap的使用)---------第二步Tools:处理输入数据集。的更多相关文章
- AI换脸实战教学(FaceSwap的使用)---------第一步Extration:提取人脸。
市面上有多款AI换脸的方法,笔者这里节选了Github那年很火的开源项目FaceSwap: (很早就实践了,但是忘记记录啦hhh,请勿用于不正当用途哦) 做了一篇详细教学,包括配置,参数设置,换脸效果 ...
- 程序员体验AI换脸就不要用ZAO了,详解Github周冠军项目Faceswap的变脸攻略
本文链接:https://blog.csdn.net/BEYONDMA/article/details/100594136 上个月笔者曾在<银行家杂志>发文传统银行如何引领开放 ...
- Linux实战教学笔记06:Linux系统基础优化
第六节 Linux系统基础优化 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 基础环境 第2章 使用网易163镜像做yum源 默认国外的yum源速度很慢,所以换成国内的. 第一步:先备份 ...
- Linux实战教学笔记05:远程SSH连接服务与基本排错(新手扫盲篇)
第五节 远程SSH连接服务与基本排错 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 远程连接LInux系统管理 1.1 为什么要远程连接Linux系统 在实际的工作场景中,虚拟机界面或物理 ...
- Linux实战教学笔记04:Linux命令基础
第四节:Linux命令基础 标签(空格分隔):Linux实战教学笔记 第1章 认识操作环境 root:当前登陆的用户名 @分隔符 chensiqi:主机名 -:当前路径位置 用户的提示符 1.1 Li ...
- Linux实战教学笔记18:linux三剑客之awk精讲
Linux三剑客之awk精讲(基础与进阶) 标签(空格分隔): Linux实战教学笔记-陈思齐 快捷跳转目录: * 第1章:awk基础入门 * 1.1:awk简介 * 1.2:学完awk你可以掌握: ...
- Linux实战教学笔记26:http协议原理
目录 第二十六节 http协议原理 第1章 Web服务基础 1.1 http服务重要基础 1.2 HTTP协议 1.3 HTTP资源 1.4 网站流量度量术语 1.5 www服务软件介绍 1.6 本章 ...
- Linux实战教学笔记24:SSH连接原理及ssh-key
目录 第二十四节 SSH连接原理及ssh-key讲解 第1章 SSH服务 1.1 ssh介绍 1.2 知识小结 第2章 ssh结构 2.1 SSH加密技术 第3章 ssh服务认证类型 3.1 基于口令 ...
- AI换脸
AI换脸 技术 调用到百度的AI接口,layui的图片上传,栅格化布局 核心代码 纯py文件运行 # encoding:utf-8 import requests import base64 impo ...
- Linux实战教学笔记08:Linux 文件的属性(上半部分)
第八节 Linux 文件的属性(上半部分) 标签(空格分隔):Linux实战教学笔记 第1章 Linux中的文件 1.1 文件属性概述(ls -lhi) linux里一切皆文件 Linux系统中的文件 ...
随机推荐
- Linux--多线程(三)
生产者消费者模型 概念: 生产者消费者模式就是通过一个容器来解决生产者和消费者的强耦合问题.生产者和消费者彼此之间不直接通讯,而通过一个来进行通讯,所以生产者生产完数据之后不用等待消费者处理,直接扔给 ...
- spring框架-jdbcTemplate
首先 dao层: dao -bookdao(interface) -bookdaoimpl service层: bookService 实体类对象 entiry-book 测试类 Test-TestB ...
- 7.Vue常用属性
1. data:数据属性 在之前的学习中我们已经了解到了data,属性中存放的就是js变量 <script> new Vue({ el: '#app', // data data: { u ...
- 云原生之旅 - 8)云原生时代的网关 Ingress Nginx
前言 当我们在Kubernetes部署的服务需要暴露给外部用户使用时,有三种选择:LoadBalancer,NodePort, Ingress. LoadBalancer类型得结合各个Cloud Pr ...
- JS数据结构与算法-概述
JS数据结构与算法概述 数据结构: 计算机存储, 组织数据的方式, 就像锅碗瓢盆 算法: 一系列解决问题的清晰指令, 就像食谱 两者关系: 程序 = 数据结构 + 算法 邂逅数据结构与算法 什么是数据 ...
- jmeter接口性能测试【CSV文件读取+接口关联+设置集合点】
一.前言 周计划上安排了个接口性能测试的任务,便开始了职业生涯的第一个接口性能测试... 接口进行压测之前,首先需要调通脚本.有两种方式,一种是通过抓包工具(如fiddler)抓取业务接口:另一种是通 ...
- Huawei OJ 题解 - 1. A + B Problem - Go 参考解答
# Huawei OJ 题解 - 1. A + B Problem - Go 参考解答## 简介- 详情:http://oj.rnd.huawei.com/problems/1/details- 难度 ...
- 【Java并发008】原理层面:ReentrantLock中 await()、signal()/signalAll()全解析
一.前言 上篇的文章中我们介绍了AQS源码中lock方法和unlock方法,这两个方法主要是用来解决并发中互斥的问题,这篇文章我们主要介绍AQS中用来解决线程同步问题的await方法.signal方法 ...
- Aspose.Cells实现excel预览
在WEB项目中经常遇到excel文档在线预览的需求,基本的解决思路有以下几大类:excel文档转PDF.excel文档直接转html.后台读取excel数据返回给前端利用Excel效果的表格插件如 ...
- HTTP Analyzer 伴侣,解决Probably another instance is already up
解决方案1: NET START HttpAnalyzer_StdV7_NetFilter START start HttpAnalyzerStdV7.exe将以上内容保存为.bat 解决方案2: p ...