前言

哈喽,大家好。

大家在刷短视频的时候有没有刷到这样的视频,视频里一张静态的人物图片能动起来,如:歪歪头、眨眨眼、笑一笑。

类似于下面这种效果

最左侧的人物是原始的动作,上面是静态图片。通过AI技术便可以让最左侧人物的动作运用到上面的静态图片上,从而让张图都可以做出相同的动作。

这种技术一般是基于的GAN(生成对抗网络)来实现,今天我给大家分享一个开源项目,能够复现上面的效果,可以做些有趣的项目,也可以怀念故人。

1. 运行项目

项目地址:https://github.com/AliaksandrSiarohin/first-order-model

首先,git clone将项目下载到本地,进入项目安装依赖

git clone https://github.com/AliaksandrSiarohin/first-order-model.git
cd first-order-model
pip install -r requirements.txt

然后,在项目首页Pre-trained checkpoint标题下,找到模型下载链接,下载模型文件,模型有很多,我用的是vox-adv-cpk.pth.tar。

准备好模型文件后,在项目根目录下执行下面命令即可

Python学习交流Q群:906715085####
python demo.py  \--config config/vox-adv-256.yaml \--driving_video src_video.mp4 \--source_image src_img.jpg \--checkpoint weights/vox-adv-cpk.pth.tar

解释下参数:

•–config:模型配置文件,在源文件中有

•–driving_video:提供动作的视频

•–source_image:需要加动效的静态图片

•–checkpoint:刚刚下载的模型文件

运行完成后,会看到如下输入

该项目使用PyTorch搭建神经网络,支持GPU和CPU运行,所以如果你的电脑只有CPU,运行会比较慢。

我是在CPU下运行的,从上图可以看到,driving_video只有 31 帧。如果你也是CPU运行,最好控制driving_video视频的时长,不然运行时长会比较长。

有了该项目,可以自己做些比较有意思的尝试

2. Python API

上面教大家按照官网在命令行运行该项目。

有些朋友可能想在Python项目中调用,所以我在demo.py中抽取了核心代码,封装了一个Pyhton API

有需要的朋友可以下载这个文件,放到与first-order-model同一级的目录下,按照下面代码调用即可

fom = FOM()
# 查看驱动视频,驱动视频最好裁剪为480 x 640 大小的视频
driving_video = ''
# 被驱动的画面
source_image = ''
# 输出视频
result_video = ''
# 驱动画面
fom.img_to_video(driving_video, source_image, result_video)

最后

今天的分享就到这里了,大致的思路都给大家整理出来了,心动不如行动,喜欢的小伙伴赶紧动手操作起来啦~~

Python一步实现静态图片动态化相关推荐

  1. Python三步爬取VMgirls小姐姐图片

    Python三步爬取VMgirls小姐姐图片 具体思路 第一步:确定目标 第二步:分析目标网站 第三步:代码编写 具体思路 第一步:确定目标:寻找目标网站,我选择的网站是http://www.VMgi ...

  2. Python 实现 GIF 动态图片分解 , 多帧动态图分解成多张静态图片

    文章目录 需求 实现 参考 需求 有时候你看到一张动态图片,其中的一个画面你觉得很不错,想从中提取出来.例如以下这张由多个漂亮小姐姐组成的 GIF 动态图: 实现 GIF 动态图片是由多张静态图片组合 ...

  3. Python+AI让静态图片动起来

    哈喽,大家好. 大家在刷短视频的时候有没有刷到这样的视频,视频里一张静态的人物图片能动起来,如:歪歪头.眨眨眼. 类似于下面这种效果 最左侧的人物是原始的动作,上面是静态图片.通过AI技术便可以让最左 ...

  4. 怎么把静态图片做成动态图?简单三步让图片动起来

    想要让普通的静态图片动起来,使用gif图片制作(https://www.gif.cn/)工具-[GIF中文网]就能够实现.非常简单,上传jpg.png格式的图片,就可以在线制作gif动图,打开浏览器即 ...

  5. python批处理实现爬取网页静态图片文件重命名图片统一修改大小等功能

    按照特定字符(此处选为字符'j')分割文档成多个小文档 def main():with open("dir/origin.txt","r") as f:temp ...

  6. canvas全局合成画月牙_教你用Python将自己喜欢的图片转成字符画,居然还有动态的 - 松鼠爱吃饼干...

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章一级Python技术 ,作者派森酱 前言 字符画是一种由字母,标点或其他字 ...

  7. python 存储图片_使用python存储网页上的图片实例

    使用python存储网页上的图片实例 本文介绍在已知网络图片的地址下,存储图片到本地 本文例子随便选择LOFTER上一张图片,复制图片的地址,如下图所示 在Python中输入代码 import req ...

  8. 在html中加入一个动态图,图片上加gif图片 图片某个角落贴个gif动态图,如何在静态图片上面加一张GIF动态图...

    喜欢上网的小伙伴就会知道网上流传灰常广泛一种搞笑gif动态图片,这类图片大部分是视频转gif的,就是截取视频经典搞笑画面制作而成,还加了些搞笑文字.使用网络聊天工具尤其是QQ就最常见了,那些搞笑的表情 ...

  9. Python+PIL 轻松制作九宫格图片

    一个尺寸自适应的图片切割器,Python实现,PIL,Image 前言 520前夕,又接了个活.对方的需求就是把一张照片切割成九宫格,这样发微信朋友圈感觉更炫酷一点.比如说520当天发对象的照片吖,就 ...

  10. Python 保存 网页上的图片

    使用Python保存网站上的图片. 测试网站是豆瓣电影上的海报网址 使用以下code成功的建立了一个文件夹,并且在其中 保存该页面上的17张海报图片(仅保存海报图片,其他图片不保存). 使用`Pyth ...

最新文章

  1. 营销推广中心设计(一)营销架构与策略
  2. Windows Server 笔记之磁盘管理
  3. 专题1.1——Exchange2013部署前准备条件
  4. 数据分析利器之Pandas
  5. mysql海量数据查询/处理
  6. 成绩查询系统源代码-Leo老师
  7. 1024程序节|Android框架之一 BRVAH【BaseRecyclerViewAdapterHelper】使用demo
  8. 区块链开发(四)区块链技术详解PPT
  9. 靠自己。linux manul手册入门
  10. nmds与mds的区别_通过ggplot2为NMDS的椭圆添加特定的形状和线型
  11. 2015-2020: 5年,不问归期,奋斗没有终点
  12. 【非常重要】运行supervisorctl错误提示【FATAL或BACKOFF 】Exited too quickly (process log may have details)问题总结
  13. VsCode超实用插件推荐,让你的开发效率火力全开
  14. CSR867x一拖多加密工具8670 8675
  15. matlab串口陀螺仪,matlab通过串口接收ARM7外设陀螺仪数据并绘图有困难急求解答...
  16. 【预研】关于互联网广告:半小时读懂互联网广告新生态
  17. iPad 4.2.1 非完美越狱
  18. 如何制作一寸、二寸、六寸照片。以后不用再去照相馆了!
  19. 小生境方法(niching methods)
  20. python中的range()函数

热门文章

  1. 【摘录】大学课程对照英文翻译
  2. qt 实现MVC Api控制器开发 web api接口-连载【5】-企业级系统开发实战连载系列 -技术栈(vue、element-ui、qt、c++、sqlite)
  3. 燃烧的远征服务器排队小程序,你还在让顾客排队吗?试试小程序吧!让顾客不再排队!...
  4. 【NPM】Building fresh packages运行很久都没反应
  5. Windbg远程调试
  6. Kattis - battleship【模拟】
  7. UVA11991 Easy Problem from Rujia Liu?(第K个V的位置)
  8. POJ3580:SuperMemo
  9. 文本分类(2)——取特征词构建词典
  10. 障碍期权定价 python_Python二项期权定价