AI算法,又整新活!萌妹子来挑战~

AI算法,又整新活!萌妹子来挑战~GANsNRoses动画脸控制变换算法

大家好,又见面了,我是你们的朋友全栈君。

大家好,我是 Jack。

好久没出趣味 AI 的教程了,今天安排一期。

只需要一张图片或者视频,就可以生成相应的二次元“老婆”。

感受一下:

AI算法,又整新活!萌妹子来挑战~

放个视频,感受更强烈:

GANsNRoses展示

二次元“老婆”,是跟随视频的动作,而改变的。

之前我写过一阶运动模型的算法教程:

让图片动起来,特朗普和蒙娜丽莎深情合唱

功能看起来类似,但是算法实现是不同的。

真人驱动动漫图片的算法,这种效果比较好:

二次元的正确打开方式

这个动画脸控制变换算法,采用的是 GAN,只需要一个输入即可,生成+控制,用这一个算法即可。

GANsNRoses

这个算法的名字叫 GANsNRoses,一种风格迁移算法。

简单来讲,就是一种以人脸图像的内容代码为输入并输出具有多种随机选择风格代码的动漫形象。

算法实现也并不复杂:

AI算法,又整新活!萌妹子来挑战~

生成器负责生成动画脸,辨别器负责辨别是否为动画脸。

生成器分为内容编码器c和样式编码器s。

AI算法,又整新活!萌妹子来挑战~

样式编码器s,负责整体的风格,比如头发样式,脸的位置,发色等。

内容编码器c,负责细节的把控,比如头部倾斜角度等。

想了解更详细,可以直接看论文:

https://arxiv.org/pdf/2106.06561.pdf

测试

目前有三种方式:

  • 网页 Demo

  • Colab

  • 本地搭建

网页 Demo

网页 Demo,用起来最简单,上传图片就行。

https://gradio.app/g/AK391/GANsNRoses

不过貌似只支持图片的制作。

测试了龙母的效果,她看了估计会哭晕在厕所。

AI算法,又整新活!萌妹子来挑战~

Colab

Colab 运行也很简单,有个梯子就行。

https://colab.research.google.com/github/mchong6/GANsNRoses/blob/main/inference_colab.ipynb

省去了部署环境的烦恼,傻瓜式运行即可,图片和视频,都可以测试。

本地搭建

主要是搭建环境,这个直接用 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 测试。

总结

这种算法,其实蛮多的,单从效果来讲,还有很大提升空间的

最后,我看B站有个up主,籽岷自己做了鬼畜,新宝岛版:

GANsNRoses展示2

目前,这类算法,做个鬼畜其实还行。


最后再送大家一本,帮助我拿到 BAT 等一线大厂 offer 的数据结构刷题笔记,是一位 Google 大神写的,对于算法薄弱或者需要提高的同学都十分受用:

谷歌和阿里大佬的Leetcode刷题笔记

以及我整理的 BAT 算法工程师学习路线,书籍+视频,完整的学习路线和说明,对于想成为算法工程师的,绝对能有所帮助:

我是如何成为算法工程师的,超详细的学习路线


我是 Jack,我们下期见。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132614.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Odin Inspector 系列教程 — Inline Property Attribute[通俗易懂]

    Odin Inspector 系列教程 — Inline Property Attribute[通俗易懂]InlinePropertyAttribute:用于将类型的内容放置在标签旁边,而不是呈现在折叠中。usingSirenix.OdinInspector;usingSystem;usingUnityEngine;publicclassInlinePropertyAttributeExample:MonoBehaviour{p…

    2022年7月21日
    14
  • 数据增强之cutout变体,添加噪声和mixcut

    数据增强之cutout变体,添加噪声和mixcut数据增强之cutout变体,添加噪声生成框defrand_bbox(size,lam):W=size[2]H=size[3]#ratio=np.sqrt(1.-lam)cut_w=np.int(W*lam)cut_h=np.int(H*lam)#uniformcx=np.rand…

    2022年9月25日
    0
  • Mysql 多表联合查询效率分析及优化

    Mysql 多表联合查询效率分析及优化1.多表连接类型1.笛卡尔积(交叉连接)在MySQL中可以为CROSSJOIN或者省略CROSS即JOIN,或者使用’,’如:SELECT*FROMtable1CROSSJOINtable2SELECT*FROMtable1JOINtable2SELECT*FROMtable1,table2由于其返回的结果为被连接的两…

    2022年4月28日
    32
  • 一阶惯性滤波特点_传递函数的固有频率怎么求

    一阶惯性滤波特点_传递函数的固有频率怎么求文章(一)一阶惯性环节采用后置反馈的方式可以实现较精确的系统跟踪性能。上述系统的传递函数为因此启动性能良好,另,一阶惯性环节无超调量,因此可通过修改反馈参数实现最优的跟踪性能。因此在针对温度等变化较小的物理量方面的控制上是较占优势的,但精确跟踪也就意味着出现高频干扰、低频干扰、白噪声时,传感器也会精确地将这些干扰输出。这对一些容易受到干扰的系统是极为不利的。如下图为加入高频正弦信号后上述系统的输出(幅值为1,频率为1000(rad/sec))可见,系统虽然有一定的滤.

    2022年10月5日
    0
  • C语言中fprintf_c语言gets函数用法

    C语言中fprintf_c语言gets函数用法c语言中fprintf函数C中的fprintf()函数(fprintf()functioninC)Prototype:原型:intfprintf(FILE*filename,constchar*string,….);Parameters:参数:FILE*filename,constchar*stringetc….

    2022年8月30日
    3
  • 深信服SCSA安全工程师题库(方便大家复习备考)

    深信服SCSA安全工程师题库(方便大家复习备考)1、【EDR】下列哪个端口是紧急情况下EDR管理平台和客户端通信端口,即紧急情况下用于下发Agent重启、Agent卸载和Agent停止等指令。()A:443.0B:54120.0C:8083.0D:8088.0正确答案B2、【EDR】客户有7000个终端需要安装EDR客户端进行安全防护,请问推荐部署多少个EDR管理平台()A:1个B:2个C:4个D:6个正确答案C3、【EDR】EDR的Agent客户端不支持在以下哪种类型的终端上安装()A:WindowsServerB

    2022年6月20日
    45

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号