化身阿凡达,国外小哥开源 AI 实时变脸工具 Avatarify

作者: OSC神秘老司机 2020-05-27 09:56:41

 疫情期间,很多人都在用 Zoom 和 Skype 等软件进行视频会议。国外一位开发小哥觉得这样开会太无聊,于是基于 first-order-model 开发了一个能够把别人的照片套在自己脸上的“变脸”软件 Avatarify,并将其开源。

看过电影阿凡达(Avatar)的朋友应该对这款软件的立意并不陌生,简单理解就是把别人的脸套在自己的表情上实时驱动。Avatarify 的作者 Ali Aliev 最初只是想逗一下在 ZOOM 上开会的同事,在视频会议期间将一些名人的脸实时叠加到自己的脸上。于是他参考了发表在 arxiv 上的一篇论文 “First Order Motion Model for Image Animation”,并基于论文中的开源项目 first-order-model 构建了 Avatarify。如图所示,作者使用 Avatarify 模仿马斯克与同事进行视频会议:

 

与其他 AI 人脸交换技术(如 deepfakes)类似,Avatarify 的算法是在你想交换的脸上训练的,即训练材料是你想要模仿的人的脸部图像。该模型通过在目标的相似类别(比如人脸)上训练算法,实现了面部表情的实时呈现。但由于该软件对视频进行的是实时处理,即需要同时打开视频会议、Avatarify 等软件,因此对于 GPU 的要求比较高(作者用的是 1080 Ti,勉强达到 33 FPS)。

测试环境

  • GPU :越强越好,以下是作者使用的不同显卡的帧数参考:

GeForce GTX 1080 Ti:每秒 33 帧

GeForce GTX 1070:每秒 15 帧

GeForce GTX 950:每秒 9 帧

可以看到 1080 Ti 才能勉强不掉帧,想玩的同学量力而行......

PS:也可以在 Google 的 Colab 上进行远程测试,用谷歌的硬件来跑,在国外的朋友可以试试。

  • 摄像头一个
  • 下载训练好的神经网络权值:

 Dropbox

 Yandex.Disk

Google Drive

不同操作系统的朋友往下看:

Linux

使用v4l2loopback创建虚拟摄像头

1.下载 Miniconda Python 3.7 ,运行安装命令:

  1. bash Miniconda3-latest-Linux-x86_64.sh 

2.克隆 avatarify 镜像仓库,并安装相关依赖项 (需要 sudo 权限):

  1. git clone https://github.com/alievk/avatarify.git 
  2. cd avatarify 
  3. bash scripts/install.sh 

3.把之前下好的网络权值文件vox-adv-cpk.pth.tar 放在 avatarify 的目录下 (注意不要解压)。

Windows 10

1. 安装 Miniconda Python 3.7 。

2. 安装 Git 。

3. 点击开始菜单,在运行中输入"miniconda". 根据提示运行 Anaconda Prompt 。

4. 输入以下指令下载并安装 Avatarify :

  1. git clone https://github.com/alievk/avatarify.git 
  2. cd avatarify 
  3. scriptsinstall_windows.bat 

5. 把之前下好的网络权值文件 vox-adv-cpk.pth.tar 放在 avatarify 的目录下 (注意不要解压)。

6. 运行 run_windows.bat 如果安装成功,桌面会打开两个摄像头界面(一个是默认摄像头,一个是 avatarify 摄像头),不要关闭它们进行下一步。

7. 安装 OBS Studio 以抓取 Avatarify 摄像头的内容(主播直播常用的后台软件)。

8. 安装 VirtualCam 插件. 选择 Install and register only 1 virtual camera.

9. 运行 OBS Studio。

10. 点击来源一栏中的“+” —— 窗口捕获 —— 选择添加现有一栏中的 "[python.exe]: avatarify" —— 编辑 —— 转换 —— 自适应屏幕。

11. 在 OBS Studio 中, 点击工具栏 —— VirtualCam,选择自动启动,缓冲帧设置为 0,开始。

现在 OBS-Camera可以在 ZOOM 或其他视频会议软件中使用了。(10-11 步只需要设置一次)

除了 Linux 和 Windows 10 以外,作者还提供了 Mac 操作系统和一种连入 Google 平台的远程测试方法。

创建 Avatar 库 

作者在 Avatarify 项目中提供了一组名人的标准化身(爱因斯坦、蒙娜丽莎等),你也可以把其他你想变成的名人的图片素材放到 avatars 文件夹里,但注意要遵循以下规则:

1、人物图片最好为正方形。

2、参考文件夹里的默认图片,人物面部距离不宜太远或太近。

3、人物图片背景不宜太过复杂,单一色调为佳。

运行

先打开 Avatarify 再打开视频会议软件。

Linux

运行脚本指令创建虚拟摄像机 /dev/video9,可在 scripts/settings.sh修改对应配置。

可以运行指令 v4l2-ctl--list-devices 显示系统中的所有设备。

运行:

  1. bash run.sh 

弹出 cam 和 avatarify 窗口, cam 窗口用来控制面部位置, avatarify 窗口可以预览 Avatar。

Windows 10

在 Anaconda Prompt 中运行:

  1. cd C:pathtoavatarify 
  2. run_windows.bat 
  1. 打开 OBS Studio,此时OBS-Camera上将显示 Avatarify 处理后的人物面部。
  2. 弹出cam 和 avatarify 窗口, cam 窗口用来控制面部位置,avatarify 窗口可以预览 Avatar。

注意:如果视频延迟过高,可以在 OBS Studio 中右键单击“预览”窗口,然后取消选中“启用预览”。

操作指令

按键

功能

1-9

快速切换准备好的 Avatar

Q

打开 StyleGAN 生成的 Avatar,每按下一次新的 Avatar 会被采样

0

开启/关闭 Avatar

A/D

切换上一个/下一个 Avatar

W/S

打开/关闭 ZOOM 摄像头

U/H/J/K

调整摄像头位置, H - 左移, K - 右移, U - 上移, J - 下移 (每次移动 5 像素,与 Shift 键一起按移动 1 像素)。

Shift-Z

重置摄像头位置

Z/C

调整原像透明度

X

重置参考帧

F

切换参考帧搜索模式

R

Mirror reference window.

T

Mirror output window.

L

重新载入 Avatar

I

显示 FPS

ESC

退出

Avatarify 支持任何视频会议应用程序,只要其中的视频输入源可以更改即可(ZOOM、Skype、Hangouts、Slack…)。聪明的朋友已经准备好了吴彦祖的 Avatar,开始和你的朋友视频吧。(当然,前提是你得有个 1080 Ti 以上的显卡)

AI 开源 人工智能
上一篇:“人脸识别”已衍生出“性格识别”,科技向善还要多久? 下一篇:终结重复工作!教你30分钟创建自己的深度学习机器
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

培养产业高端复合型AI人才 AICA首席AI架构师培养计划第五期开启

10月15日,深度学习技术及应用国家工程实验室与百度联合发起创办的AICA首席AI架构师培养计划第五期在京迎来开学典礼。

佚名 ·  1天前
自动驾驶存在不确定性的运动规划:基于强化学习的方法

存在不确定性的运动规划是开发自动驾驶车的主要挑战之一。本文专注于有限的视野、遮挡和传感距离限制导致的感知不确定性。

自动驾驶的挑战和发展 ·  1天前
中英文超大AI模型世界纪录产生,大模型竞赛新阶段来了

英伟达与微软联合发布了5300亿参数的“威震天-图灵”(Megatron-Turing),成为迄今为止全球最大AI单体模型。

边策 ·  1天前
AI即将拥有自我意识?Facebook推「Ego4D 」开启元宇宙大门

今年11月,Facebook将开源让AI拥有以第一人称视角与世界进行交互的能力的Ego4D(Egocentric 4D Perception)计划。

佚名 ·  1天前
AI技术再立功毕加索一副名画下隐藏的画作重见天日

据外媒报道,在成名之前,巴勃罗·毕加索并不总是有足够的资金来购买绘画材料,因此,像很多艺术家一样,他在现有的画布上创作新的作品,从而掩盖了早期的图像。目前研究人员利用AI对这幅隐藏画作进行了重建。

贾桂鹏 ·  1天前
2022年的AIOps趋势预测

将人工智能纳入IT活动可以使IT团队能够在复杂的IT条件下执行更复杂的任务。人工智能与IT运营的这种整合产生了AIOps这个术语,它利用大数据、数据分析和人工智能的能力进行IT运营管理。

arti ·  1天前
元学习热度不再!ICLR 2022投稿趋势:强化学习榜首,深度学习第二

ICLR 2022 论文投稿情况都是公开的,所以有研究者收集统计了ICLR 2022的3400篇论文,排出了前50个热门研究话题,发现深度学习、强化学习仍旧霸榜前两名,元学习的热度下降很多!

佚名 ·  1天前
当世界模型被用于sim2real:机器人通过视觉想象和交互尝试来学习

当机器人被置于一个新环境时,它必须能够利用其先前的知识来思考环境可能提供的潜在有用行为。

佚名 ·  1天前
Copyright©2005-2021 51CTO.COM 版权所有 未经许可 请勿转载