Stable Diffusion - 扩展 Roop 换脸 (Face Swapping) 插件的配置与使用

news2024/12/23 5:19:00

欢迎关注我的CSDN:https://spike.blog.csdn.net/
本文地址:https://spike.blog.csdn.net/article/details/131856141

RobustSwap

官网:GitHub - roop,参考论文:RobustSwap: A Simple yet Robust Face Swapping Model against Attribute Leakage

面部替换的目标是将源图像的身份(即,面部特征)注入目标图像,同时严格保留与身份无关的目标属性。然而,以前的方法仍然受到源属性泄露的困扰,其中源图像的属性会干扰目标图像的属性。通过分析 StyleGAN 的潜在空间,并且找到适合面部替换任务的潜在组合。因此,开发出简单但稳健的面部替换模型,RobustSwap,对于可能的源属性泄露有抵抗力。此外,利用 3DMM 的隐式和显式信息的协调作为指导,以融入源图像的结构和目标图像的精确姿势。尽管方法仅使用没有身份标签的图像数据集进行训练,但是模型具有生成高保真度和时间一致性视频的能力。通过大量的定性和定量评估,在合成图像和视频方面,与以前的面部替换模型相比,有显著的改进。


1. 测试 SD 模型

模型:墨幽人造人_v1010,使用 LiblibAI 墨幽人造人 官网下载,同时包括 麦橘写实,参考:

wget https://liblibai-online.liblibai.com/web/model/6a226dd292a983b3ed4987402453ad4d954b77825c1cf99d39d8746909791761.safetensors?attname=%E5%A2%A8%E5%B9%BD%E4%BA%BA%E9%80%A0%E4%BA%BA_v1010.safetensors -O 墨幽人造人_v1010.safetensors

wget https://liblibai-online.liblibai.com/web/model/e4a30e4607faeb06b5d590b2ed8e092690c631da0b2becb6224d4bb5327104b7.safetensors?attname=majicMIX%20realistic%20%E9%BA%A6%E6%A9%98%E5%86%99%E5%AE%9E_v6.safetensors -O 麦橘写实_MajicMIX_Realistic_v6.safetensors

LiblibAI 下载速度约 10M / s,非常快。

其他真实系模型包括:MajicMIX、DreamShaper 等。

Embeddings 模型:

  • Age Slider,控制年龄,由不同的 Embeddings 控制。
  • Gender Slider,控制性别,由不同的 Embeddings 控制。

LoRA 模型:

  • Fashion Girl,LoRA,提升真实系模型的人物表现。

2. 安装 Roop 插件

Roop 插件:https://github.com/s0md3v/sd-webui-roop

下载插件:

git clone https://ghproxy.com/https://github.com/s0md3v/sd-webui-roop.git

安装包:

pip install insightface==0.7.3
pip install --upgrade protobuf

下载: inswapper_128.onnx,放入 <webui_dir>/models/roop/

cd stable_diffusion_webui_docker/models/roop

bypy downfile /stable_diffusion/extensions/roop/inswapper_128.onnx inswapper_128.onnx

下载其他模型文件:

bypy downfile /stable_diffusion/extensions/roop/roop_other_models.zip roop_other_models.zip

模型位置:

cd ~
mkdir .ifnude
cd .ifnude
# detector.onnx 和 classes
mv roop_other_models/.ifnude/* .

cd ~
mkdir .insightface
cd .insightface
# .insightface/models/buffalo_l
# 1k3d68.onnx\2d106det.onnx\det_10g.onnx\genderage.onnx\w600k_r50.onnx
mv roop_other_models/.insightface/* .

inswapper_128.onnx: 下载地址 henryruhs/roop at main (huggingface.co)

安装 Roop 插件成功,版本 v0.0.2,在下面的插件区域显示,如下:

Roop


3. 生成测试图像

正向提示词:

1girl,black footwear,black hair,boots,curtains,dress,floral print,full body,handbag,lips,long hair,long sleeves,looking at viewer,polka dot legwear,shoes,smile,solo,standing,tile floor,tile wall,
a woman standing in front of a building wearing a gray dress and purple socks and a gray jacket with polka dots,Ayami Kojima,long black hair,a hologram,private press,
best quality,masterpiece,ultra high res,(photorealistic:1.4),

负向提示词:

(ng_deepnegative_v1_75t,badhandv4,bad_prompt_version2-neg,EasyNegative:0.9),(worst quality, low quality:1.3),(depth of field, blurry:1.2),(greyscale, monochrome:1.1),croped,lowres,text,jpeg artifacts,(logo,signature,watermark,username,artist name,title:1.3),

注意:提示词来源真实图像反推

After Detailer:

  • After Detailer 的脸部提示词,推荐:detailed face, close-up, portrait,
  • After Detailer 的手部提示词,推荐:detailed hand, perfect hand,
  • After Detailer 相关的 ControlNet 模型,推荐 Inpaint 模型,Module 选择 Inpaint_global_harmonious。 测试效果不好。

其他配置:

  • Upscale: 8x_NMKD-Superscale_150000_G 算法,适合真人风格。
  • 固定随机种子:2086435253

墨幽人造人的信息汇总:

1girl,black footwear,black hair,boots,curtains,dress,floral print,full body,handbag,lips,long hair,long sleeves,looking at viewer,polka dot legwear,shoes,smile,solo,standing,tile floor,tile wall,
a woman standing in front of a building wearing a gray dress and purple socks and a gray jacket with polka dots,Ayami Kojima,long black hair,a hologram,private press,
best quality,masterpiece,ultra high res,(photorealistic:1.4),
Negative prompt: (ng_deepnegative_v1_75t,badhandv4,bad_prompt_version2-neg,EasyNegative:0.9),(worst quality, low quality:1.3),(depth of field, blurry:1.2),(greyscale, monochrome:1.1),croped,lowres,text,jpeg artifacts,(logo,signature,watermark,username,artist name,title:1.3),
Steps: 35, Sampler: DPM++ 2M SDE Karras, CFG scale: 7, Seed: 2086435253, Size: 768x1024, Model hash: 6a226dd292, Model: 墨幽人造人_v1010, Denoising strength: 0.3, Clip skip: 2, ADetailer model: face_yolov8n.pt, ADetailer prompt: "detailed face, close-up, portrait, ", ADetailer confidence: 0.3, ADetailer dilate/erode: 4, ADetailer mask blur: 4, ADetailer denoising strength: 0.4, ADetailer inpaint only masked: True, ADetailer inpaint padding: 32, ADetailer version: 23.7.6, Hires upscale: 2, Hires steps: 10, Hires upscaler: 8x_NMKD-Superscale_150000_G, Version: v1.4.0

麦橘写实的信息汇总:

1girl,black footwear,black hair,boots,curtains,dress,floral print,full body,handbag,lips,long hair,long sleeves,looking at viewer,polka dot legwear,shoes,smile,solo,standing,tile floor,tile wall,
a woman standing in front of a building wearing a gray dress and purple socks and a gray jacket with polka dots,Ayami Kojima,long black hair,a hologram,private press,
best quality,masterpiece,ultra high res,(photorealistic:1.4),
lora:add_detail:0.5
Negative prompt: (ng_deepnegative_v1_75t,badhandv4,bad_prompt_version2-neg,EasyNegative:0.9),(worst quality, low quality:1.3),(depth of field, blurry:1.2),(greyscale, monochrome:1.1),croped,lowres,text,jpeg artifacts,(logo,signature,watermark,username,artist name,title:1.3),
Steps: 35, Sampler: DPM++ 2M SDE Karras, CFG scale: 7, Seed: 2086435253, Size: 768x1024, Model hash: e4a30e4607, Model: 麦橘写实_MajicMIX_Realistic_v6, Denoising strength: 0.3, Clip skip: 2, ADetailer model: face_yolov8n.pt, ADetailer prompt: "detailed face, close-up, portrait, ", ADetailer confidence: 0.3, ADetailer dilate/erode: 4, ADetailer mask blur: 4, ADetailer denoising strength: 0.4, ADetailer inpaint only masked: True, ADetailer inpaint padding: 32, ADetailer model 2nd: hand_yolov8s.pt, ADetailer prompt 2nd: “detailed hand, perfect hand,”, ADetailer confidence 2nd: 0.3, ADetailer dilate/erode 2nd: 4, ADetailer mask blur 2nd: 4, ADetailer denoising strength 2nd: 0.4, ADetailer inpaint only masked 2nd: True, ADetailer inpaint padding 2nd: 32, ADetailer version: 23.7.6, Hires upscale: 2, Hires steps: 10, Hires upscaler: 4x-UltraSharp, Lora hashes: “add_detail: 7c6bad76eb54”, Version: v1.4.0

左侧是墨幽人造人(侧脸) ,右侧是麦橘写实(正脸),图像:

VS

4. 配置与使用 Roop 插件

脸型参考:英国籍亚裔女演员 克拉拉 的图像,头像清晰,即:

克拉拉

调用 Roop 插件生成换脸图像,配置如下:

  1. 选择 启用
  2. 调低 面部修复强度 至 0.5
  3. 放大算法,使用现实风格的 8x_NMKD-Superscale
  4. 模型使用默认的 inswapper_128.onnx,即可
  5. 注意:放大倍率是2,会导致图像放大 2 倍,即由 1536x2048 放大至 3072x4096

即:
配置

需要重新运行之前的配置(或者使用 图生图 功能),再次生成图像,之前的脸部由 AI 生成,现在转换成 克拉拉 图像中的脸型。

运行日志如下:

Applied providers: ['CPUExecutionProvider'], with options: {'CPUExecutionProvider': {}}
find model: /root/.insightface/models/buffalo_l/1k3d68.onnx landmark_3d_68 ['None', 3, 192, 192] 0.0 1.0
Applied providers: ['CPUExecutionProvider'], with options: {'CPUExecutionProvider': {}}
find model: /root/.insightface/models/buffalo_l/2d106det.onnx landmark_2d_106 ['None', 3, 192, 192] 0.0 1.0
Applied providers: ['CPUExecutionProvider'], with options: {'CPUExecutionProvider': {}}
find model: /root/.insightface/models/buffalo_l/det_10g.onnx detection [1, 3, '?', '?'] 127.5 128.0
Applied providers: ['CPUExecutionProvider'], with options: {'CPUExecutionProvider': {}}
find model: /root/.insightface/models/buffalo_l/genderage.onnx genderage ['None', 3, 96, 96] 0.0 1.0
Applied providers: ['CPUExecutionProvider'], with options: {'CPUExecutionProvider': {}}
find model: /root/.insightface/models/buffalo_l/w600k_r50.onnx recognition ['None', 3, 112, 112] 127.5 127.5
set det-size: (640, 640)
Applied providers: ['CPUExecutionProvider'], with options: {'CPUExecutionProvider': {}}
find model: /root/.insightface/models/buffalo_l/1k3d68.onnx landmark_3d_68 ['None', 3, 192, 192] 0.0 1.0
Applied providers: ['CPUExecutionProvider'], with options: {'CPUExecutionProvider': {}}
find model: /root/.insightface/models/buffalo_l/2d106det.onnx landmark_2d_106 ['None', 3, 192, 192] 0.0 1.0
Applied providers: ['CPUExecutionProvider'], with options: {'CPUExecutionProvider': {}}
find model: /root/.insightface/models/buffalo_l/det_10g.onnx detection [1, 3, '?', '?'] 127.5 128.0
Applied providers: ['CPUExecutionProvider'], with options: {'CPUExecutionProvider': {}}
find model: /root/.insightface/models/buffalo_l/genderage.onnx genderage ['None', 3, 96, 96] 0.0 1.0
Applied providers: ['CPUExecutionProvider'], with options: {'CPUExecutionProvider': {}}
find model: /root/.insightface/models/buffalo_l/w600k_r50.onnx recognition ['None', 3, 112, 112] 127.5 127.5
set det-size: (640, 640)
2023-07-21 16:32:20,145 - roop - INFO - Upscale with 8x_NMKD-Superscale_150000_G scale = 2
2023-07-21 16:32:43,872 - roop - INFO - Restore face with CodeFormer

墨幽人造人,侧脸对比,如图:

Side

麦橘写实,正脸对比,如图:

麦橘

参考:站酷 - lulusmile服装街拍

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/777734.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

kubesphere部署谷粒商城, nginx无法路由到网关服务

使用kubesphere部署谷粒商城&#xff0c;微服务和nginx均已部署成功&#xff0c;其中ingress-controller已安装。但是nginx无法路由到网关服务。使用域名gulimall.com访问谷粒商城&#xff0c;默认访问的是nginx首页&#xff0c;路由失败。 校对nginx的配置信息&#xff0c;上游…

MySQL数据库第十课-------join连接的再续------强强连锁

作者前言 欢迎小可爱们前来借鉴我的gtiee秦老大大 (qin-laoda) - Gitee.com __________________________________________________________ 目录 join连接 内连接 左连接 右连接 外连接 其他连接 ______________________________________________________________ 作…

Unity 实用插件篇 | Tutorial Master 2 游戏引导教程 快速上手

前言【Unity 实用插件篇】 | Tutorial Master 2 游戏引导教程 快速上手一、Tutorial Master 2 介绍1.1 基本概念1.2 相关链接1.3 效果展示二、搭建简易测试环境三、制作简易引导教程3.1 挂载一个Tutorial Master Manager脚本3.2 设置引导预制体3.3 创建一个引导教程3.4 添加引导…

SpringBoot系列--【如何集成prometheus?】

如何集成prometheus&#xff1f; 1.添加pom依赖 注意&#xff1a;prometheus的版本依赖springboot版本&#xff0c;示例使用的springboot版本的2.3.X. 2.配置文件添加配置 3.主启动类添加如下配置 4.验证端点 SpringBoot项目到这里就配置完成了&#xff0c;启动项目&#xff0c…

将请求参数数据推送至RabbitMQ队列中并且捕捉消息没有到达交换机的异常

1&#xff1a;自定义mq信息类&#xff08;我的交换这些信息都从nacos上直接取的&#xff0c;怎么从nacos取配置信息看上篇文章&#xff09;&#xff1a; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor;impo…

Windows10 + Mingw + Paho Mqtt C/C++编译使用

文章目录 1、前言2、按照Mingw环境3、编译paho c3.1、ssl验证大坑3.2、解决方法3.3、mingw32-make过程出现报错3.4、继续出错3.5、编译成功 4、编译paho c5、Qt使用paho mqtt库5.1、编码 1、前言 起初使用的是Cmake Visual Studio 2019进行编译&#xff0c;使用的时候出现ssl错…

《Java核心技术大会2023》——AIC松鼠活动第一期

共同深入探讨 Java 生态&#xff01;直播预约&#xff1a;视频号“IT阅读排行榜” 大会简介 人工智能在22年、23年的再次爆发让Python成为编程语言里最大的赢家&#xff1b;云原生的持续普及令Go、Rust等新生的语言有了进一步叫板传统技术体系的资本与底气。我们必须承认在近…

【搜索引擎Solr】配置 Solr 以获得最佳性能

Apache Solr 是广泛使用的搜索引擎。有几个著名的平台使用 Solr&#xff1b;Netflix 和 Instagram 是其中的一些名称。我们在 tajawal 的应用程序中一直使用 Solr 和 ElasticSearch。在这篇文章中&#xff0c;我将为您提供一些关于如何编写优化的 Schema 文件的技巧。我们不会讨…

基于linux下的高并发服务器开发(第二章)- 2.14 管道的读写特点和管道设置为非阻塞

管道的读写特点&#xff1a; 使用管道时&#xff0c;需要注意以下几种特殊的情况&#xff08;假设都是阻塞I/O操作&#xff09; 1.所有的指向管道写端的文件描述符都关闭了&#xff08;管道写端引用计数为0&#xff09;&#xff0c;有进程从管道的读端读数据&#xff0c;那么管…

SpringBoot系列--【K8s中的SpringBoot如何给应用配置健康检查?】

K8s中的SpringBoot如何给应用配置健康检查&#xff1f; 1.健康检查的必要性 作为业务监控的首要目标&#xff0c;服务的存活性&#xff0c;也就是它的健康状况&#xff0c;成为了重中之重&#xff0c;容器云平台可以根据健康检查策略来对服务实例进行自动重启或从负载均衡中摘除…

IP-GUARD如何在客户端上进行审批管理?

如何在客户端上进行审批管理&#xff1f; 4 实现步骤如下&#xff1a; 1、先在控制台-加密-加密授权设置-常规中&#xff0c;勾选允许登录审批管理平台开启客户端登录审批管理平台的功能。 2、然后客户端电脑&#xff0c;右键加密托盘登录审批账号后即可正常审批。 如何实现特…

MySQL 8.1.0正式发布!

早在五年前&#xff0c;MySQL 8.0 就发布了第一个 GA 版本&#xff0c;此后一直在这个版本进行更新&#xff0c;而没有升级大版本。最近 MySQL 官方终于发布了 MySQL 8.1.0 和 MySQL 8.0.34&#xff0c;分别代表了创新版和长期支持版。 新版本中与 SQL 相关的改进包括保存执行计…

用C++在Windows桌面上打个叉❌

我们的目标是&#xff0c;只写一二十行代码&#xff0c;用 Windows自带的原生接口&#xff0c;强行在桌面上打个大红❌&#xff0c;如图&#xff1a; 写了大半年C&#xff0c;天天和“黑乎乎” 的小窗口你侬我侬&#xff1f;赶紧来打开一扇“Windows”&#xff0c;从窗口跳进全…

数据库系统课程笔记

初步认识数据库系统 schema 英 /ˈskiːmə/ 美 /ˈskiːmə/ n.(计划或理论的)提要&#xff0c;纲要 关系模型之基本概念 关系和表的差别 关系的特性 什么是sql 创建数据库&#xff08;编写脚本&#xff09; 创建表格语法&#xff08;编写脚本&#xff09; 修改表的结构语法 …

微服务Day4——Docker

一、什么是Docker 微服务虽然具备各种各样的优势&#xff0c;但服务的拆分通用给部署带来了很大的麻烦。 分布式系统中&#xff0c;依赖的组件非常多&#xff0c;不同组件之间部署时往往会产生一些冲突。在数百上千台服务中重复部署&#xff0c;环境不一定一致&#xff0c;会…

如何生成一个随机数?

文章目录 虚假的随机数真正的随机数生成规定位数的随机数 虚假的随机数 说到如何生成一个随机数&#xff0c;可能当你百度后会看到这样一段代码。 srand((unsigned int)time(NULL)); int ret rand();那么一个随机数到底是如何生成的呢&#xff1f;我相信善于探索的你一定想知…

(黑客)自学笔记

特别声明&#xff1a; 此教程为纯技术分享&#xff01;本教程的目的决不是为那些怀有不良动机的人提供及技术支持&#xff01;也不承担因为技术被滥用所产生的连带责任&#xff01;本教程的目的在于最大限度地唤醒大家对网络安全的重视&#xff0c;并采取相应的安全措施&#x…

Docker镜像分层

文章目录 docker镜像分层镜像层构成镜像FS 构成基础镜像层扩展镜像层容器层 镜像摘要分发散列值 多架构镜像工作原理 docker镜像分层 Docker 镜像由一些松耦合&#xff08;关系不怎么紧密&#xff09;的只读镜像层组成&#xff0c;Docker Daemon 负责堆叠这些镜像层&#xff0c…

vim安装及使用

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

得物 Android 包体积资源优化实践

包体积优化中&#xff0c;资源优化一般都是首要且容易有成效的优化方向。资源优化是通过优化APK中的资源项来优化包体积&#xff0c;本文我们会介绍得物App在资源优化上做的一些实践。 1. 插件优化 插件优化资源在得物App最新版本上收益12MB。插件优化的日志在包体积平台有具…