妙鸭相机本地平替,5张照片生成个人专属写真
妙鸭相机本地平替,5张照片生成个人专属写真
前段时间妙鸭相机大火,通过上传一些你自己的照片,就可以拥有一个专属的数字分身,然后得到一张张专业质感的写真。但由于需要上传个人20张照片到服务器,其隐私性备受争议。
就在8月10日,阿里魔搭社区也上线了人物写真生成在线demo,用户可免费体验个人写真生成,体验地址:https://modelscope.cn/studios/CVstudio/cv_human_portrait/summary,但同样是在线生成存在隐私问题,且免费体验需要排队。
基于上述问题,学术Fun第一时间基于阿里开源的人物写真生成模型,肝出了windows一键启动整合包,集成了python环境以及用到的算法模型,在你自己的本地电脑即可免费体验AI人物写真,使用效果如下。
上述写真照片,由以下几张马老师照片生成。
安装教程
下面废话不多说,进入整合包下载安装教程,首先明确前提环境:
拥有12G显存以上N卡
windows 10以上
安装了11.8及以上版本的Cuda
Cuda的下载安装教程网上很多,这里不再赘述。
整合包使用教程
下载整合压缩包,下载地址: https://xueshu.fun/2891/
解压后,如下图所示,双击
启动程序.bat
文件运行
启动后浏览器访问http://127.0.0.1:7860/,软件界面如下所示。
点击
选择图片上传
,选择本地图片,注意人脸不要有遮挡,否则效果不好点击
开始训练
,本人3090显卡,5张图片训练时间在10分钟以内,训练完成后,下方有文字提示。
训练完成后,切换至形象体验,选择生成图片数量,点击
开始推理
即可生成写真,6张图片推理时间大概在2分钟左右
更多
算法原理
个人写真模型的能力来源于Stable Diffusion模型的文生图功能,输入一段文本或一系列提示词,输出对应的图像。我们考虑影响个人写真生成效果的主要因素:写真风格信息,以及用户人物信息。为此,我们分别使用线下训练的风格LoRA模型和线上训练的人脸LoRA模型以学习上述信息。LoRA是一种具有较少可训练参数的微调模型,在Stable Diffusion中,可以通过对少量输入图像进行文生图训练的方式将输入图像的信息注入到LoRA模型中。因此,个人写真模型的能力分为训练与推断两个阶段,训练阶段生成用于微调Stable Diffusion模型的图像与文本标签数据,得到人脸LoRA模型;推断阶段基于人脸LoRA模型和风格LoRA模型生成个人写真图像。
训练阶段
输入:用户上传的包含清晰人脸区域的图像
输出:人脸LoRA模型
描述:首先,我们分别使用基于朝向判断的图像旋转模型,以及基于人脸检测和关键点模型的人脸精细化旋转方法处理用户上传图像,得到包含正向人脸的图像;接下来,我们使用人体解析模型和人像美肤模型,以获得高质量的人脸训练图像;随后,我们使用人脸属性模型和文本标注模型,结合标签后处理方法,产生训练图像的精细化标签;最后,我们使用上述图像和标签数据微调Stable Diffusion模型得到人脸LoRA模型。
推断阶段
输入:训练阶段用户上传图像,预设的用于生成个人写真的输入提示词
输出:个人写真图像
描述:首先,我们将人脸LoRA模型和风格LoRA模型的权重融合到Stable Diffusion模型中;接下来,我们使用Stable Diffusion模型的文生图功能,基于预设的输入提示词初步生成个人写真图像;随后,我们使用人脸融合模型进一步改善上述写真图像的人脸细节,其中用于融合的模板人脸通过人脸质量评估模型在训练图像中挑选;最后,我们使用人脸识别模型计算生成的写真图像与模板人脸的相似度,以此对写真图像进行排序,并输出排名靠前的个人写真图像作为最终输出结果。
模型列表
附(流程图中模型链接)
[1] 人脸检测+关键点模型DamoFD:https://modelscope.cn/models/damo/cv_ddsar_face-detection_iclr23-damofd
[2] 图像旋转模型:创空间内置模型
[3] 人体解析模型M2FP:https://modelscope.cn/models/damo/cv_resnet101_image-multiple-human-parsing
[4] 人像美肤模型ABPN:https://modelscope.cn/models/damo/cv_unet_skin-retouching
[5] 人脸属性模型FairFace:https://modelscope.cn/models/damo/cv_resnet34_face-attribute-recognition_fairface
[6] 文本标注模型Deepbooru:https://github.com/KichangKim/DeepDanbooru
[7] 模板脸筛选模型FQA:https://modelscope.cn/models/damo/cv_manual_face-quality-assessment_fqa
[8] 人脸融合模型:https://modelscope.cn/models/damo/cv_unet-image-face-fusion_damo
[9] 人脸识别模型RTS:https://modelscope.cn/models/damo/cv_ir_face-recognition-ood_rts