赞
踩
目录
上传一张照片,环游世界经典,穿梭赛博朋克,上述研究便是来自南开大学、腾讯等机构提出 PhotoMaker,这是一种高效的个性化文本到图像生成方法。
论文地址: PhotoMaker: Customizing Realistic Human Photos via Stacked ID Embedding
项目地址:https://github.com/TencentARC/PhotoMaker
论文于去年 12 月放出,前不久项目正式登陆 Github,PhotoMaker 除了生成逼真的人像,还能进行其他风格的生成,如草图、漫画、动画等。下面快来尝试下吧 !
◆ Image Encoder & Text Encoder
首先从文本编码器与图像编码器获取文本 Embedding 嵌入与图像的 Embedding 嵌入。
图像 Emb: imgae = "一个男士的图像" 结合训练集的男士头像融合生成
文本 Emb: text = "男士带着蓝色帽子",结合训练语料 text = "穿着西装,打着领带,翻领上有徽章" 融合生成
◆ MLPs & Stacked
接下来,我们沿着长度维度连接所有融合的嵌入,以形成堆叠的ID嵌入。类似于直接使用 Concat 融合特征。
◆ Diffusion Model
最后,我们将堆叠的 ID 嵌入提供给所有交叉关注层,以自适应地合并扩散模型中的 ID 内容。注意,尽管我们在训练过程中使用具有掩蔽背景的相同 ID 的图像,但我们可以在没有背景失真的情况下直接输入不同 ID 的图像来在推理过程中创建新的 ID。即 Photo 具备结合背景独立创新图像的能力。
ImageDownloading - 下载相关人脸图像
FaceDetect And Filter - 人脸识别与过滤
ID Verification - 人脸核验,将相同人脸的图像 group by 为统一 ID
Cropping & Segmentation - 图像裁剪与分割,这一步同样基于 group by 的统一 ID
Captioning & Marking - 图像内容标识
Realistic generation,基于我们给定的参考图像中的 Face 以及描述,实现角色的穿梭。
Stylization generation,根据给定的参考人脸,生成不同风格的图像。
Identity mixing 我们能够使用新的ID生成图像,同时保留输入身份特征。
构建 Python 3.8 的环境:
- conda create --name PhotoMaker python=3.8
- conda activate PhotoMaker
安装项目所需依赖:
- cd ./PhotoMaker
- pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
Tips:
安装 pytorch-cuda == 11.8 时会显示如下报错,这里可以查看本机 cuda 版本,满足则忽略:
nvcc --version
- from huggingface_hub import hf_hub_download
- photomaker_path = hf_hub_download(repo_id="TencentARC/PhotoMaker", filename="photomaker-v1.bin", repo_type="model")
可以通过命令行或者 URL 下载: https://huggingface.co/TencentARC/PhotoMaker
直接拿下:
这里 photomaker-v1.bin 模型文件博主放到 ./models 文件夹下,需要先 mkdir:
除此之外还需下载图像生成的原始模型,这里下载 ReallVisXL_V3.0:
链接: https://huggingface.co/SG161222/RealVisXL_V3.0
这个 Base 模型全部大小 20G,挂着
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。