魔性,用Python实现火爆全网的「蚂蚁呀嘿」视频特效!
公众号后台回复“图书“,了解更多号主新书内容
作者:小F
来源:法纳斯特
最近小F在抖音上看到很多「蚂蚁呀嘿」的魔性视频,各方大佬齐齐上阵。
刚好看到百度的开源项目,基于PaddleGAN实现表情迁移,于是也来玩一把!
先来看一下小F的成果,各大编程创始人齐唱「蚂蚁呀嘿」!
没配音,感觉不是很精彩,后面上视频。
那么需要如何实现呢,下面小F来手把手教学。
项目地址:
https://aistudio.baidu.com/aistudio/projectdetail/1586056
目前该项目适合在Windows和Linux上操作,Mac在调用ffmpeg这一步会出错。
不知道是不是和mac不支持gpu安装paddlepaddle有关系。
首先将PaddleGAN的源码从gitee上下载下来。
# 从gitee上克隆PaddleGAN代码
git clone https://gitee.com/paddlepaddle/
没有安装git的小伙伴,在公众号回复「蚂蚁呀嘿」就可以获取到文件。
下载解压后,小F是将PaddleGAN文件夹放置在PyCharm的项目中。
如此就能在PyCharm项目的虚拟环境中,进行相关的安装操作了。
# 终端打开文件夹
cd PaddleGAN# 安装相关依赖
pip install -r requirements.txt -i https://mirror.baidu.com/pypi/simple
pip install imageio-ffmpeg -i https://mirror.baidu.com/pypi/simple
终端打开文件夹,安装所需要的依赖。
毕竟是百度的开源项目,所以使用了百度的pip源,速度真的很快。
下面再创建一个输出文件夹,生成的视频会保存在这里。
# 打开文件夹
cd applications/# 新建文件夹
mkdir output
最后还需要安装百度的paddlepaddle和paddlehub。
paddlepaddle是基础,而paddlehub则是用来检测人脸用的。
将「输入图片」中的所有人脸检测出来,然后使用PaddleGAN对每个人脸进行表情迁移,最后生成视频。
# 安装库
pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple
pip install paddlehub -i https://mirror.baidu.com/pypi/simple
下面就可在终端运行如下命令。
export PYTHONPATH=$PYTHONPATH:../PycharmProjects/mayiyahei/PaddleGAN && python -u tools/first-order-demo.py --driving_video ../PycharmProjects/mayiyahei/MaYiYaHei.MP4 --source_image ../PycharmProjects/mayiyahei/input.jpeg --relative --adapt_scale
其中,“../”处应该修改成为你自己的路径。
命令行参数说明如下。
driving_video: 驱动视频,视频中人物的表情动作作为待迁移的对象。source_image: 原始图片,视频中人物的表情动作将迁移到该原始图片中的人物上 。relative: 指示程序中使用视频和图片中人物关键点的相对坐标还是绝对坐标,建议使用相对坐标,若使用绝对坐标,会导致迁移后人物扭曲变形。adapt_scale: 根据关键点凸包自适应运动尺度。
此处,大家可以使用自己设计的图片,生成你想要的视频。
比如我的原始图片input.jpeg,就是编程创始人集合照,如下图。
对于其他的视频特效,就需要更改驱动视频,即修改driving_video。
另外生成的视频是不带声音的,所以需要使用FFmpeg将视频与音频进行合并。
# 视频和音频合并
ffmpeg -i MaYiYaHei.mp4 -i MYYH.mp3 -vcodec copy -acodec copy result.mp4
最终实现项目的视频效果如下。
如果你想生成GIF,分享给其他人,比如整蛊你的好朋友。
同样可以使用FFmpeg生成GIF。
# 生成GIF
ffmpeg -ss 0 -t 8 -i result.mp4 -s 600*400 -r 15 result.gif
需要设定视频截取时间及GIF图像大小。
总结
好了,到此本期的实践就结束了。
相关代码及文件已上传,公众号回复「蚂蚁呀嘿」即可获取。
感兴趣的小伙伴也可以动手试一试。
这里需要注意,在使用PaddleGAN对人脸进行动作表情迁移,这期间耗费的时间比较多,慢慢等就好了。
◆ ◆ ◆ ◆ ◆麟哥新书已经在当当上架了,我写了本书:《拿下Offer-数据分析师求职面试指南》,目前当当正在举行活动,大家可以用相当于原价5折的预购价格购买,还是非常划算的:
数据森麟公众号的交流群已经建立,许多小伙伴已经加入其中,感谢大家的支持。大家可以在群里交流关于数据分析&数据挖掘的相关内容,还没有加入的小伙伴可以扫描下方管理员二维码,进群前一定要关注公众号奥,关注后让管理员帮忙拉进群,期待大家的加入。
管理员二维码:
猜你喜欢
● 卧槽!原来爬取B站弹幕这么简单● 厉害了!麟哥新书登顶京东销量排行榜!● 笑死人不偿命的知乎沙雕问题排行榜
● 用Python扒出B站那些“惊为天人”的阿婆主!● 你相信逛B站也能学编程吗
魔性,用Python实现火爆全网的「蚂蚁呀嘿」视频特效!相关推荐
- 魔性,用 Python 实现火爆全网的「蚂蚁呀嘿」视频特效!
完整文章.资料阅读公众号文章还有视频:https://mp.weixin.qq.com/s/RsJWPWKE0YCebelxHr-KaA 你好,我是悦创.这篇文章搞了前后两天,至于为什么搞,后面会说. ...
- python动态粒子素材,太魔性了,用 Python 实现火爆全网的「蚂蚁呀嘿」视频特效!...
大家好,我是安果! 最近在抖音上看到很多「蚂蚁呀嘿」的魔性视频,各方大佬齐齐上阵 刚好看到百度的开源项目,基于 PaddleGAN 实现表情迁移,于是也来玩一把! 先来看一下生成的效果图,各大编程创始 ...
- 用Python实现火爆全网的「蚂蚁呀嘿」视频特效!
https://mp.weixin.qq.com/s/t4I0j8APqENwJlP3xNfbmQ
- 用Python实现火爆全网的「蚂蚁呀嘿」!这也太恶搞了吧!
最近在抖音上看到很多「蚂蚁呀嘿」的魔性视频,各方大佬齐齐上阵. 刚好看到百度的开源项目,基于PaddleGAN实现表情迁移,于是也来玩一把! 先来看一下小F的成果,各大编程创始人齐唱「蚂蚁呀嘿」! 没 ...
- 重磅推荐:火爆全网的「合成大西瓜」源码来了
文章首发于微信公众号「GitHub精选」,欢迎大家关注. 大家好,我是章鱼猫. 就在今天,「合成大西瓜」再度上了微博热搜. 今天推荐的这个项目就和「合成大西瓜」有关,它是「bigwatermelon」 ...
- 全网都在求的「蚂蚁呀嘿」教程--基于PaddleGAN的First order motion model实现
什么?你还不知道「蚂蚁呀嘿」?这位兄台,那你可能out得相当严重! 这是引起男女老少的争相关注.火爆
- Python 小工具:调用「百度翻译API」实现英汉互译及多语言翻译
Python 小工具:调用「百度翻译 API」实现英汉互译及多语言翻译 API 简介 过程详解 完整代码 结果展示 附:官方 Demo - Python 2 版本 Python 小工具:调用「百度翻译 ...
- 清华加强版「蚂蚁呀嘿」来袭,再也不用手动抠素材了!
来源:新智元 2021年初,一股「蚂蚁呀嘿」的妖风吹遍各大社交平台,相信你也曾经刷到过互联网大佬.政要名人.体育明星甚至是动漫人物穿越时空,共同做着夸张的表情,唱着魔性的「蚂蚁呀嘿」的视频. 这是图像 ...
- 清华加强版「蚂蚁呀嘿」来袭 鬼畜区up主再也不用手动抠素材了
开源地址: https://github.com/yoyo-nb/Thin-Plate-Spline-Motion-Model 预训练300多m 清华大学云盘 2021年初,一股「蚂蚁呀嘿」的妖风吹遍 ...
最新文章
- git init 与 git init --bare 区别
- 斐波那契数列及青蛙跳台阶问题
- 例子:倒计时按钮可用
- (旧)走遍美国——(三、文化2)
- 重载(overload)、覆盖(override)、隐藏(hide)的区别
- 大数据平台网站日志分析系统
- 果蔬连连看java源代码_《基于Qt的连连看游戏的设计》-毕业论文.doc
- [Python] 关键字 yield 用法详解
- java word模板生成pdf,java根据模板生成pdf
- Linux下安装搜狗拼音输入法(Ubuntu18.04.2 LTS)
- 【python】实现共享表格协同编辑
- 推荐几个程序员赚钱的平台,你有技术就有钱!
- LIFT:Learned Invariant Feature Transform
- 一篇文章彻底搞懂JVM常见垃圾收集器算法、常见收集器、CMS三色标记等(深度剖析)
- [Learn Android Studio 汉化教程]Reminders实验(一)
- 百度,谷歌,360,搜狗,神马等蜘蛛IP段大全
- Linux添加PCF8563 RTC支持
- certbot申请通配符域名证书
- TLD 源码详解(一)--- TLD的编译和运行
- 解铃还须系铃人—大数据时代的安全交给大数据
热门文章
- 隐式转换的替代方案不是万能的
- 我们如何制作gif?制作gif的手机APP哪个好?
- [转]百本dsp经典书籍共享
- java中switch用法举例范围_Java中Switch用法代码示例
- 学计算机专业笔记本买多大尺寸的好,办公用笔记本电脑多大尺寸内存合适
- 健身教练转行软件测试,完成了月薪9k目标
- inter uhd graphics630显卡驱动_现有190个UHD频道
- python怎么调用navicat_Navicat使用与python操作数据库
- 如何设置Minecraft,以便您的孩子可以和朋友一起在线玩
- python中画图时x,y轴名称出现中文乱码的解决方法