无缝衔接Stable Diffusion,一张照片几秒钟就能生成个性化图片-InstantID

news2024/10/1 12:20:08

        最近一段时间基于扩散模型的图像处理方法遍地开花,接下来为大家介绍一种风格化图像的方法InstantID,可以通过仅有一张人脸照片,几秒钟内生成不同风格的人物照片。与传统方法需要多张参考图像和复杂的微调过程不同,InstantID只需一张图像,而且无需复杂的训练或微调过程。这项技术能够生成高质量的个性化图像,保持个人特征的真实性,并且能够适应不同的视觉需求。

        InstantID的操作流程非常简化,只需要提供一张照片,它就能根据这张照片生成很多不同风格的图片,同时保持这个人的面貌特征不变。与传统方法需要多张参考图像和复杂的微调过程不同,InstantID只需一张图像,无需复杂的训练或微调过程,并且能在几秒钟内生成图像。最重要的是它还能够作为一个通用插件与stable diffusion以及controlnet等进行无缝集成。简直是AIGC者的福音,据作者说一月底就会把模型和代码开源,大家也一起期待一波~

        OK,接下来就进入真题,让我们一起来看一下InstantID可以做那些事情吧~

论文标题:《InstantID : Zero-shot Identity-Preserving Generation in Seconds》

Qixun Wang, Xu Bai, Haofan Wang(*), Zekui Qin, Anthony Chen, InstantX Team

论文链接:https://arxiv.org/abs/2401.07519

项目链接:https://github.com/InstantID/InstantID

                  InstantID模型支持高保真度的身份保持生成,只有一个参考图像在任何风格

摘要

        现有的个性化生成方法,如文本反转、DreamBooth和LoRA,在自定义图像创建方面取得了重大进展。然而,这些工作需要昂贵的计算资源和时间进行微调,并且需要多个参考图像,这限制了它们在现实世界中的应用。InstantID通过利用即插即用模块解决了这些限制,使其能够熟练地处理任何风格的图像个性化,仅使用一个面部图像,同时保持高保真度。为了保持人脸的身份,引入了一种新的人脸编码器来保留参考图像的复杂细节。InstantID在各种场景下的性能和效率显示了它在各种实际应用中的潜力。并且InstantID可以与常见的预训练文本到图像扩散模型(如SD1.5和SDXL)作为插件兼容。

方法

        给定一个参考ID图像,InstantID旨在从单个参考ID图像生成具有各种姿势或风格的自定义图像,同时确保高保真度。下图概述了InstantID方法。它包含三个关键组成部分:

        (1)捕获鲁棒语义面部信息的ID嵌入;

        (2)具有解耦交叉注意的轻量级自适应模块,便于使用图像作为视觉提示;

        (3)对参考面部图像的细节特征进行编码并附加空间控制的IdentityNet。

        InstantID与以往的工作有以下几个方面的不同:

  • 不训练UNet,因此可以保留原始文本到图像模型的生成能力,并与社区现有的预训练模型和ControlNets兼容;

  • InstantID不需要测试时间调优,所以对于一个特定的字符不需要收集多幅图像进行微调,只需推断一张图像一次;

  • 实现了更好的人脸保真度,同时保留了文本的可编辑性。

脸部风格变换

 

InstantID支持风格化和现实风格

可编辑性和多引用

        参考图像数量的影响。对于多幅参考图像,InstantID取ID嵌入的平均值作为图像提示符。即使只有一张参考图像,InstantID也能取得很好的效果。 

与之前工作比较

        哈哈,上图全都是计算机界的大佬。比较了IP-Adapter (IPA), IP-Adapter- faceid和最近的PhotoMaker。其中,PhotoMaker需要训练UNet的LoRA参数。可以看出,PhotoMaker和IP-Adapter-FaceID都实现了很好的保真度,但文本控制能力有明显的下降。相比之下,InstantID实现了更好的保真度,并保留了良好的文本可编辑性(面部和样式更好地混合)。 

InstantID与预训练字符lora的比较。可以在没有任何训练的情况下获得具有竞争力的结果。

 

        InstantID与InsightFace Swapper(也称为ROOP或Refactor)的比较。而在非写实风格中,我们的作品在人脸与背景的融合上更加灵活。

ID和风格交互

        再来看看,20%的杨幂+80%的泰勒长什么样?

        还有,将身份属性添加到非人类角色中的效果怎么样?

          据作者说一月底会放出开源代码,所以一起期待一下吧~   

        We are working with diffusers team and will release the code before the end of January. Starring our work will definitely speed up the process. No kidding!

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

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

相关文章

Linux: dev: glibc: 里面有很多的关于系统调用的函数

其实都没有实体源代码klogctl.c,而是通过编译时构造出来的源代码实体,比如klogctl这个函数,glibc的反汇编如下: 直接是0x67这个系统调用:103: Reading symbols from /usr/lib64/libc-2.28.so... (No debugg…

vue3前端开发,一篇文章看懂何谓pinia

vue3前端开发,pinia的基础练习第一节! 前言,pinia是为了取代vuex而诞生的产品,它有一些改进。去掉了之前的mutations。只有一个action,既可以支持异步,又支持同步。还提供了解构函数,可以把返回的对象内部属性和方法直…

Prometheus配置Grafana监控大屏(Docker)

拉取镜像 docker pull grafana/grafana挂载目录 mkdir /data/prometheus/grafana -p chmod 777 /data/prometheus/grafana临时启动 docker run -d -p 3000:3000 --name grafana grafana/grafana从容器拷贝配置文件至对应目录 docker exec -it grafana cat /etc/grafana/gra…

【RHCSA服务搭建实验】之apache

虚拟web主机类型 一、基于端口 1.vim /etc/httpd/conf.d/vhost2.conf ---- — 改变http服务默认访问路径 <directory /testweb1>allowoverride none 表示不允许覆盖其他配置require all granted 表示允许所有请求 </directory> <virtualhost 0.0.0.0:…

x-cmd pkg | jq - 命令行 JSON 处理器

目录 简介首次用户功能特点类似工具进一步探索 简介 jq 是轻量级的 JSON 处理工具&#xff0c;由 Stephen Dolan 于 2012 年使用 C 语言开发。 它的功能极为强大&#xff0c;语法简洁&#xff0c;可以灵活高效地完成从 JSON 数据中提取特定字段、过滤和排序数据、执行复杂的转…

有色金属市场分析:预计2023年产量增幅在3.5%左右

上周各有色金属品种走势接近&#xff0c;均呈现出周初持续走弱、最后两个交易日反弹的走势。影响有色金属行情的主线逻辑一个是美国债务上限谈判的进展情况&#xff0c;另一个是全球经济衰退的预期。上周四和上周五市场整体反弹&#xff0c;主要由于美国债务上限谈判出现进展&a…

蓝桥杯、编程考级、NOC、全国青少年信息素养大赛—scratch列表考点

1、小小情报员&#xff08;202309scratch四级24题&#xff09; 1.准备工作 &#xff08;1&#xff09;选择背景 Colorful City&#xff1b; &#xff08;2&#xff09;保留角色小猫&#xff0c;选择角色Ballerina。 2.功能实现 &#xff08;1&#xff09;角色小猫初始位置…

matlab Robotics Toolbox

工具箱下载地址&#xff1a;ROBOTICS TOOLBOX 安装教程 笛卡尔运动规划 在MATLAB中&#xff0c;ctraj和jtraj是两个不同的函数&#xff0c;主要用于控制系统和机器人学中的轨迹规划。它们之间的主要区别在于它们处理的问题类型和使用方式。 ctraj&#xff08;连续时间轨迹规划…

Leetcode刷题笔记题解(C++):LCR 102. 目标和

思路&#xff1a;利用回溯去遍历&#xff0c;回溯结束条件为遍历到最后一个数字&#xff0c;如果符合target则目标数1 class Solution { public://记录合为结果的数量int count 0;int findTargetSumWays(vector<int>& nums, int target) {//利用回溯来寻找backtrac…

DevOps系列文章之 GitLab CI/CD

CICD是什么? 由于目前公司使用的gitlab&#xff0c;大部分项目使用的CICD是gitlab的CICD&#xff0c;少部分用的是jenkins&#xff0c;使用了gitlab-ci一段时间后感觉还不错&#xff0c;因此总结一下 介绍gitlab的CICD之前&#xff0c;可以先了解CICD是什么 我们的开发模式…

MS35656/MS35656N 双通道 DMOS 全桥驱动器

MS35656/MS35656N 是一款双通道 DMOS 全桥驱动器&#xff0c;可 以驱动一个步进电机或者两个直流电机。每个全桥的驱动电流 在 24V 电源下可以工作到 1.4A 。 MS35656/MS35656N 集成了固 定关断时间的 PWM 电流校正器&#xff0c;以及一个 2bit 的非线性 DAC &…

Java Server-Sent Events通信

Server-Sent Events特点与优势 后端可以向前端发送信息&#xff0c;类似于websocket&#xff0c;但是websocket是双向通信&#xff0c;但是sse为单向通信&#xff0c;服务器只能向客户端发送文本信息&#xff0c;效率比websocket高。 单向通信&#xff1a;SSE只支持服务器到客…

网络通信(15)-C#TCP客户端掉线重连实例

本文上接前面的文章使用Socket在C#语言环境下完成TCP客户端的掉线重连实例。 掉线重连需要使用心跳包发送测试网络的状态,进而进入重连循环线程。 前面实例完成的功能: 客户端与服务器连接,实现实时刷新状态。 客户端接收服务器的数据。 客户端发送给服务器的数据。 客…

Java--信息管理系统

文章目录 主要内容一.信息管理系统1.内容及要求2.源代码代码如下&#xff08;示例&#xff09;: 3.结果 总结 主要内容 一.信息管理系统 1.内容及要求 设计学生信息管理系统&#xff0c;以实现以下功能&#xff1a; 1&#xff09;输入 8 名学生姓名&#xff0c;学号&#xff…

Python 安装 QtDesigner

Python 安装 QtDesigner 对于最新版本的 PyQt6 模块&#xff0c;可以直接使用如下代码来安装 Designer 软件。 pip install PyQt6-tools 安装好以后&#xff0c;需要到 Python 安装目录中寻找对应的启动 exe 文件。 C:\Softwares\Python 3.11.5\Lib\site-packages\qt6_applica…

ubuntu安装vm和Linux,安装python环境,docker和部署项目(一篇从零到部署)

1、下载Ubuntu Index of /releaseshttps://old-releases.ubuntu.com/releases/ 2、下载VMware 官方正版VMware下载&#xff08;16 pro&#xff09;&#xff1a;https://www.aliyundrive.com/s/wF66w8kW9ac 下载Linux系统镜像&#xff08;阿里云盘不限速&#xff09;&#xff…

利用AI制作桌游卡牌的个人实践

一、引言&#xff1a; ChatGPT ChatGPT是由OpenAI开发的一款基于GPT&#xff08;生成式预训练变换器&#xff09;架构的人工智能语言模型。GPT-4&#xff0c;是ChatGPT中使用的最新版本&#xff0c;具有以下特点&#xff1a; 1. **语言理解与生成能力**&#xff1a;ChatGPT擅…

Linux 一键部署grafana

grafana 前言 Grafana 是一款开源的数据可视化和监控仪表盘工具。它提供了丰富的数据查询、可视化和报警功能,可用于实时监控、数据分析和故障排除等领域。 通过 Grafana,您可以连接到各种不同的数据源,包括时序数据库(如 Prometheus、InfluxDB)和关系型数据库(如 MySQ…

【数据结构初阶】——顺序表

本文由睡觉待开机原创&#xff0c;转载请注明出处。 本内容在csdn网站首发 欢迎各位点赞—评论—收藏 如果存在不足之处请评论留言&#xff0c;共同进步&#xff01; 这里写目录标题 1.数据结构2.顺序表线性表顺序表的结构 3.动态顺序表的实现 1.数据结构 数据结构的概念&…

YOLOv8改进 | Conv篇 | 2024.1月最新成果可变形卷积DCNv4(全网独家首发,附详细教程)

一、本文介绍 本文给大家带来的改进机制是2024-1月的最新成果DCNv4,其是DCNv3的升级版本,效果可以说是在目前的卷积中名列前茅了,同时该卷积具有轻量化的效果!一个DCNv4参数量下降越15Wparameters左右,。它主要通过两个方面对前一版本DCNv3进行改进:首先,它移除了空间聚…