超越IP-Adapter!阿里提出UniPortrait,可通过文本定制生成高保真的单人或多人图像。
阿里提出UniPortrait,能根据用户提供的文本描述,快速生成既忠实于原图又能灵活调整的个性化人像,用户甚至可以通过简单的句子来描述多个不同的人物,而不需要一一指定每个人的位置。这种设计大大简化了用户的操作,提升了个性化生成的效率和效果。
UniPortrait以统一的方式定制单 ID 和多 ID 图像,提供高保真身份保存、广泛的面部可编辑性、自由格式的文本描述,并且无需预先确定的布局。
亮点直击
-
UniPortrait是一种创新的人类形象个性化框架,该框架统一了具有高面和可控性的单ID定制和多ID定制;
-
文中提出了一个新颖的ID嵌入模块,具有脱钩策略,该模块嵌入了详细的面部身份信息,同时保持良好的编辑性。
-
文中介绍了ID路由机制,该机制解决了多ID自定义中的身份混合问题,但并不损害每个身份完整性,生成的图像多样性和迅速设计灵活性。
相关链接
论文地址:http://arxiv.org/abs/2408.05939v1
项目地址:https://aigcdesigngroup.github.io/UniPortrait-Page/
论文阅读
UniPortrait:用于保留身份的单人和多人图像个性化的统一框架
摘要
本文介绍了一种创新的人体图像个性化框架 UniPortrait,它将单 ID 和多 ID 定制与高人脸保真度、广泛的人脸可编辑性、自由形式的输入描述和多样化的布局生成统一起来。UniPortrait 仅包含两个即插即用模块:ID 嵌入模块和 ID 路由模块。ID 嵌入模块使用解耦策略为每个 ID 提取多功能可编辑人脸特征,并将它们嵌入到扩散模型的上下文空间中。然后,ID 路由模块将这些嵌入自适应地组合和分布到合成图像中的各自区域,实现单 ID 和多 ID 的定制。通过精心设计的两阶段训练方案,UniPortrait 在单 ID 和多 ID 定制中均实现了卓越的性能。定量和定性实验证明了我们的方法优于现有方法的优势以及良好的可扩展性,例如与现有生成控制工具的通用兼容性。
方法
UniPortrait由两个即插即用的模块组成:ID 嵌入模块和 ID 路由模块。ID 嵌入模块使用针对每个 ID 的解耦策略提取多功能可编辑面部特征,ID 路由模块自适应地组合和分配这些嵌入到各自的位置,而无需提示和布局的干预。该框架的整个训练过程分为两个阶段,即单 ID 训练阶段和多 ID 微调阶段。
UniPortrait仅由两模块组成:ID嵌入模块和ID路由模块。
ID嵌入模块使用Stable Diffusion模型,接受文本提示并生成对应图像。该模块通过提取面部特征,并在嵌入过程中采用多层感知机模型,确保ID信息的高保真度和可编辑性。同时,通过将深层次的特征与结构特征相结合,UniPortrait能够有效地解耦身份信息和外部干扰信息,消除过拟合的可能性。
在ID路由模块中,UniPortrait引入了位置无关的ID嵌入,将每个潜在面部区域与一个独特ID相连,从而有效解决多ID生成中的身份混淆问题。训练过程分为两个阶段:单ID训练阶段和多ID微调阶段。这样的设计确保了模型不仅支持单一身份的定制,还能处理复杂的多身份任务。
实验
文本到单一 ID 个性化示例
文本到多 ID 个性化示例
与之前作品的比较
对单一 ID 图像定制的不同方法进行定性比较。
对多 ID 图像定制的不同方法进行定性比较。为了与 FastComposer 兼容,数字复数表达(例如"two men")被转换为由"and"连接的单数短语(例如"a man and a man")。
多 ID 定制的其他示例。UniPortrait 能够使用自由格式提示定制多 ID 图像并生成不同的布局。
多样化应用
UniPortrait 在对齐 ID、保持及时一致性以及增强生成图像的多样性和质量方面的卓越性能为大量潜在的下游应用铺平了道路。
结论
我们介绍了UniPortrait,该模型是为单IID图像的统一定制而开发的。 UniPortrait结合了一个高级ID嵌入模块,可确保高保真和可编辑的身份嵌入。此外,已经集成了一个模块化的插件ID路由组件,以解决多个ID生成过程中身份混合物的挑战。经验结果表明,UniPortrait通过提供不仅具有高质量和多样性的合成,而且提供了强大的编辑性和强大的身份保真度来优于现有方法。我们希望我们的单一图案将在该领域内作为新的基线工作,提供所有研究机构可以遵循,复制和优化的基准。
限制。 考虑到路由决策路由器仅基于人类ID信息,我们的 ID路由模块当前无法自定义与面对身份无关的属性,例如服装和动作, 对于多ID世代中的每个ID。可能的解决方案是为了将所有感兴趣属性的表示形式送入指导ID路由的路由器,即属性绑定ID路由。我们将其留给以后的研究。
相关文章:

超越IP-Adapter!阿里提出UniPortrait,可通过文本定制生成高保真的单人或多人图像。
阿里提出UniPortrait,能根据用户提供的文本描述,快速生成既忠实于原图又能灵活调整的个性化人像,用户甚至可以通过简单的句子来描述多个不同的人物,而不需要一一指定每个人的位置。这种设计大大简化了用户的操作,提升了…...

使用托管竞价实例在Amazon SageMaker上运行机器学习训练
这是本系列文章的第二篇,旨在通过动手实践,帮助大家学习亚马逊云科技的生成式AI相关技能。通过这些文章,大家将掌握如何利用亚马逊云科技的各类服务来应用AI技术。 那么让我们开始今天的内容吧! 介绍 什么是Amazon SageMaker …...

AIoT智能物联网平台定义
随着科技的飞速发展,我们正步入一个由智能设备和互联网络构成的新时代。AIoT,即人工智能物联网(Artificial Intelligence of Things),是这个时代的标志性产物。本文旨在探讨AIoT智能物联网平台的定义、核心组件、应用场…...

微服务设计原则——高性能:存储设计
文章目录 1.读写分离2.分库分表3.动静分离4.冷热分离5.重写轻读6.数据异构参考文献 任何一个系统,从单机到分布式,从前端到后台,功能和逻辑各不相同,但干的只有两件事:读和写。而每个系统的业务特性可能都不一样&#…...

hbase-manager图形化界面的安装与配置
相关资料下载 夸克网盘分享 1、上传项目到linux上 解压: 切换到conf目录下:/opt/installs/hbase-manager-2.0.8-hbase-2.x/conf/ 2、修改数据库配置信息 application-druid.yml 3、创建hbase-manager数据库(注意字符集编码),导入数据库脚本…...

STM32之继电器与震动传感器的使用,实现震动灯
在STM32的外设应用中,继电器扮演着重要的角色。继电器作为一种电控制器件,其主要作用是通过小电流控制大电流的通断,实现电路的自动控制和保护。具体来说,继电器在STM32外设中的作用可以归纳为以下几点: 电路隔离与保…...

RS232(旧协议)与RS485(新协议)
RS232: RS485: RS485和RS232是两种常见的串行通信标准,它们在通信距离、速度、拓扑结构等方面存在显著差异。以下是它们的主要区别: 1. 物理层接口 RS232: 使用单端信号传输,即信号通过一根信号线和一根公共地线(GND)…...

android13顶部状态栏里面调节背光,不隐藏状态栏面板
总纲 android13 rom 开发总纲说明 目录 1.前言 2.代码分析 3.修改方法 4.编译运行 5.彩蛋 1.前言 android13顶部状态栏里面调节背光,这个时候状态栏面板会被隐藏掉,有些需求就需要不隐藏这个面板。 2.代码分析 查找亮度条属性 id/brightness_slider ./frameworks/b…...

Webrtc之SDP协议
SDP简介 SDP 最常用于 RTC 实时通话的协商过程,在 WebRTC 中,通信双方在连接阶段使用 SDP 来协商后续传输过程中使用的音视频编解码器(codec)、主机候选地址、网络传输协议等。 在实际的应用过程中,通信双方可以使用 HTTP、WebSocket、Data…...

mfc140u.dll丢失错误解决方法的基本思路——四种修复mfc140u.dll的方法
当遇到mfc140u.dll丢失的错误时,意味着你的系统中缺失了一个重要的动态链接库文件,该文件是微软 Visual C Redistributable for Visual Studio 2015 的一部分,对于运行那些用 Visual C 开发的程序是必需的。今天就教你mfc140u.dll丢失错误解决…...

Python Django 后端架构开发: 中间件架构设计
🌟 Python Django 后端架构开发: 中间件架构设计 🔹 中间件项目测试:自定义中间件的 process_response 与 process_view 方法 在 Django 中,中间件是一种用于处理请求和响应的钩子,可以在视图处理前后对请…...

HTTP的认证方式
0.HTTP认证相关的一些基本概念 0.1 HTTP保护空间(HTTP Protection Space) 也称为认证领域(Authentication Realm),是指在HTTP认证中用来定义一组受保护资源的范围。保护空间通常由一个realm标识符来表示,它定义了用户需要提供凭据(如用户名和密码)才能访问的资源集合…...

10分钟学会LVM逻辑卷
华子目录 前言认识LVMLVM基本概念LVM整体流程LVM管理命令pvs,vgs,lvs命令pvs基本用法选项示例 vgs基本用法选项示例 lvs基本用法 pvcreate,vgcreate,lvcreate命令pvcreate示例 vgcreate基本用法示例选项 lvcreate基本用法示例 pvr…...

【gitlab】gitlab-ce:17.3.0-ce.0 之2:配置
参考阿里云的教程docker的重启 sudo systemctl daemon-reload sudo systemctl restart docker配置 –publish 8443:443 --publish 8084:80 --publish 22:22 sudo docker ps -a 當容器狀態為healthy時,說明GitLab容器已經正常啟動。 root@k8s-master-pfsrv:~...

第七十四:前端实现点击页面某个菜单跳转到对应的锚点功能
1.用js来实现 scrollIntoView方法 先定义个id或者class随意,因为我是循环好几个小模块所以用动态的来实现 点击的时候传对应的类名进行滑动 document.getElementById(item.variableCode).scrollIntoView({behavior:“smooth”}); 加上behavior:“smooth” 进行平…...

PyTorch分布式训练全攻略:DistributedDataParallel精解与实战
标题:PyTorch分布式训练全攻略:DistributedDataParallel精解与实战 在深度学习飞速发展的今天,模型的规模和数据集的体量不断增长,单机单卡的训练方式已难以满足需求。分布式训练以其卓越的扩展性和效率,成为解决这一…...

Python(TensorFlow)多模光纤光束算法和GPU并行模拟
🎯要点 🎯多模光纤包含光学系统线性和非线性部分 | 🎯单变量线性回归、多变量线性回归、人脸图像年龄预测、音频语音分类和 X 射线图像评估算法 | 🎯在空间光调制器记录海螺参数矩阵,光束算法多变量预测年龄 | &#…...

实战Kubernetes之快速部署 K8s 集群 v1.28.0
文章目录 一、前言二、主机准备三、系统配置3.1. 关闭防火墙及相关配置3.2. 修改主机名3.3. 主机名DNS解析3.4. 时间同步3.5. 配置网络3.6. 重启服务器 四、安装软件4.1. 安装 Docker4.2. 安装 cri-dockerd4.3. 添加国内YUM源4.4. 安装 kubeadm、kubelet 和 kubectl 五、Master…...

YOLO知识点总结:
分类: 即是将图像结构化为某一类别的信息,用事先确定好的类别(category)或实例ID来描述图片。这一任务是最简单、最基础的图像理解任务,也是深度学习模型最先取得突破和实现大规模应用的任务。其中,ImageNet是最权威的评测集&…...

合宙LuatOS AIR700 IPV6 TCP 客户端向NodeRed发送数据
为了验证 AIR700 IPV6 ,特别新建向NodeRed Tcp发送的工程。 Air700发送TCP数据源码如下: --[[ IPv6客户端演示, 仅EC618系列支持, 例如Air780E/Air600E/Air780UG/Air700E ]]-- LuaTools需要PROJECT和VERSION这两个信息 PROJECT "IPV6_SendDate_N…...

git 如何生成sshkey公钥
打开git客户端 输入 ssh-keygen -t rsa -b 4096 -C "xxxxxxexample.com" 然后根据提示按enter 或者y 直到出现下图所示 打开 c盘的路径下的文件,/c/Users/18159/.ssh/id_rsa.pub 将id_rsa.pub中的公钥贴到git 网站上的SSH keys即可...

python从入门到精通:函数
目录 1、函数介绍 2、函数的定义 3、函数的传入参数 4、函数的返回值 5、函数说明文档 6、函数的嵌套调用 7、变量的作用域 1、函数介绍 函数是组织好的,可重复使用的,用来实现特定功能的代码段。 name "zhangsan"; length len(nam…...

【Android性能篇】如何分析 dumpsys meminfo 信息
一、dumpsys meminfo是什么 dumpsys meminfo 是一个用于分析Android设备内存使用情况的强大命令。 二、dumpsys meminfo的关键信息 要分析其输出信息,我们需要注意以下几个关键点: Total PSS by OOM adjustment:这个值表示每个进程的总比…...

c++进阶——继承的定义,复杂的菱形继承及菱形虚拟继承
目录 前言: 1.继承的概念及定义 1.1继承的概念 1.2 继承定义 1.2.2继承关系和访问限定符 1.2.3继承基类成员访问方式的变化 2.基类和派生类对象赋值转换 3.继承中的作用域 4.派生类的默认成员函数 5.继承与友元 6. 继承与静态成员 7.复杂的菱形继承及菱…...

计算机网络:DNS、子网掩码、网关
参考: https://blog.csdn.net/weixin_55255438/article/details/123074896 https://zhuanlan.zhihu.com/p/65226634 在计算机网络中,DNS(Domain Name System,域名系统)、子网掩码(Subnet Mask)…...

程序员如何学习开源项目
程序员如何学习开源项目 豆包MarsCode使用豆包MarsCode学习开源项目步骤导入git上开源的项目 豆包MarsCode https://www.marscode.cn/home 使用豆包MarsCode学习开源项目 步骤 https://www.marscode.cn/dashboard 导入git上开源的项目 找到项目的README.md文件,使…...

探索数据结构:红黑树的分析与实现
✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:数据结构与算法 贝蒂的主页:Betty’s blog 1. 红黑树的介绍 1.1. 红黑树的引入 我们前面学习了AVL树,…...

【设计模式】装饰器模式和适配模式
装饰器模式 装饰器模式能够很好的对已有功能进行拓展,这样不会更改原有的代码,对其他的业务产生影响,这方便我们在较少的改动下对软件功能进行拓展。 类似于 router 的前置守卫和后置守卫。 Function.prototype.before function (beforeFn)…...

Visual Studio VS 插件之 ReSharper
集成在VS2022上的ReSharper暂无找到汉化方式,如果有大神可以汉化,请指导下。 首先ReSharper 是IDE 下的插件 主要是基于C# 语句优化的这么一个插件。 使用ReSharper可以使开发效率大大提高,但是也是比较吃电脑的配置。所以说如果配置低的小…...

【二分查找】--- 进阶题目赏析
Welcome to 9ilks Code World (๑•́ ₃ •̀๑) 个人主页: 9ilk (๑•́ ₃ •̀๑) 文章专栏: 算法Journey 本篇博客我们继续来了解一些有关二分查找算法的进阶题目。 🏠 寻找峰值 📌 题目内容 162. 寻找峰值 - 力扣&#…...