大家好,我是 Jack。
好久没出趣味 AI 的教程了,今天安排一期。
只需要一张图片或者视频,就可以生成相应的二次元“老婆”。
感受一下:
之前我写过一阶运动模型的算法教程:
功能看起来类似,但是算法实现是不同的。
真人驱动动漫图片的算法,这种效果比较好:
这个动画脸控制变换算法,采用的是 GAN,只需要一个输入即可,生成+控制,用这一个算法即可。
GANsNRoses
这个算法的名字叫 GANsNRoses,一种风格迁移算法。
简单来讲,就是一种以人脸图像的内容代码为输入并输出具有多种随机选择风格代码的动漫形象。
算法实现也并不复杂:
生成器负责生成动画脸,辨别器负责辨别是否为动画脸。
生成器分为内容编码器c和样式编码器s。
样式编码器s,负责整体的风格,比如头发样式,脸的位置,发色等。
内容编码器c,负责细节的把控,比如头部倾斜角度等。
想了解更详细,可以直接看论文:
https://arxiv.org/pdf/2106.06...
测试
目前有三种方式:
- 网页 Demo
- Colab
- 本地搭建
网页 Demo
网页 Demo,用起来最简单,上传图片就行。
https://gradio.app/g/AK391/GA...
不过貌似只支持图片的制作。
测试了龙母的效果,她看了估计会哭晕在厕所。
Colab
Colab 运行也很简单,有个梯子就行。
conda install --yes -c pytorch pytorch=1.7.1 torchvision cudatoolkit=<CUDA_VERSION>
pip install tqdm gdown kornia scipy opencv-python dlib moviepy lpips aubio ninja
省去了部署环境的烦恼,傻瓜式运行即可,图片和视频,都可以测试。
本地搭建
主要是搭建环境,这个直接用 Conda 创建虚拟环境,然后安装各种第三方库即可:
conda install --yes -c pytorch pytorch=1.7.1 torchvision cudatoolkit=<CUDA_VERSION>
pip install tqdm gdown kornia scipy opencv-python dlib moviepy lpips aubio ninja
Conda 使用可以参考这一篇:
然后下载模型权重文件,就可以,模型权重文件还是蛮大的,1.6G,从 Google Drive 下载比较慢,建议直接用 Colab 测试。
总结
这种算法,其实蛮多的,单从效果来讲,还有很大提升空间的。
我是 Jack,我们下期见。
作者:Jack Cui
原文:https://mp.weixin.qq.com/s/AZ...
关注作者公众号,获取更多有趣AI应用\~系列篇
更多AIoT领域有趣的算法应用及产品请关注有趣的AIoT应用专栏。