二次元的正确打开方式

二次元的正确打开方式

 

本文 GitHub https://github.com/Jack-Cherish/PythonPark 已收录,有技术干货文章,整理的学习资料,一线大厂面试经验分享等,欢迎 Star 和 完善。

一、前言

大家好,我是 Jack 。

去年发表的「Talking Head Anime」大家都看过了吧?

最近,这位谷歌工程师对算法进行了升级,「Talking Head Anime 2」效果更好

只需要一张 PNG 二次元角色图片,就可以生成虚拟偶像,生成带面部表情捕捉的 Vtuber 角色。

二次元的正确打开方式

老规矩,今天就教大家怎么玩!

二、算法原理

算法的核心思想是:给定某个动漫人物的一张人脸图像和六轴的姿态信息(Pose),生成同一人物的另一张人脸图像。

通过实时控制六轴的姿态信息(Pose),来达到实时控制动漫人物的效果。

二次元的正确打开方式

整个过程分类两个步骤:

  • 第一步:改变面部表情,即控制眼睛和嘴的开闭程度。
  • 第二步:人脸旋转。

每一步都使用单独的一个网络,并将第一个网络的输出作为第二个网络的输入。

第一个网络为人脸变形器,第二个网络为人脸旋转器。

二次元的正确打开方式

为了获得更好的面部动作,作者本次升级将姿态维度增加到了 42 维

同时在人脸变形器中增加了眉毛、眼睛、嘴巴形变器。

二次元的正确打开方式

眉毛变形器:可以分割出眉毛,并控制眉毛扭曲的形状。

二次元的正确打开方式

眼睛和嘴巴变形器的网络也是类似操作。

二次元的正确打开方式

更具体的原理,详见作者的论文:

https://pkhungurn.github.io/talking-head-anime-2/

三、算法测试

「Talking Head Anime 2」还没有开源,不过应该马上就有了。

着急,可以先玩一玩「Talking Head Anime」,效果也很不错,同时也算为第二代做环境的准备了。

项目地址:

https://github.com/pkhungurn/talking-head-anime-demo

第一步:配置开发环境。

依赖不多,使用 Anaconda 配置安装下即可。

二次元的正确打开方式

这里有详细的环境配置教程:《一劳永逸的 Python 开发环境搭建

第二步:下载代码和权重文件。

一共四个权重文件,下载好并它们放在工程目录的 data 目录下。

二次元的正确打开方式

我将代码和权重文件,进行了打包,可以直接下载使用(提取码:jack):

https://pan.baidu.com/s/1MlBYx2EhyZgRoD7nXWayBA

第三步:运行程序。

python app/manual_poser.py

超级简单,运行效果:

二次元的正确打开方式

 

四、总结

很期待第二个优化版本,效果绝对更好!

真实人脸也是可以这样控制的,只是需要的维度更多,数据更多。

现在各种虚拟主播已经登场了,在直播领域上线了不少相关产品,后续这类技术会做的越来越好。

三次元的人脸模型驱动也将不在话下。

我是 Jack,我们下期见。

文章首发链接:
二次元的正确打开方式

 

Jack-Cui CSDN认证博客专家 算法工程师
微信公众号搜索【JackCui-AI】,关注这个爱发技术干货的程序员。个人网站:https://cuijiahua.com
相关推荐
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页