最近想将原图片和处理后的图片放在一起观察图片的变化过程。但是网上并么有找到有用的示例代码,所以粘出来和大家分享一下。

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import animation
from PIL import Image
img_ori = np.array(Image.open('5.png'))img_tran = np.load('img_tran.npy')fig = plt.figure()plt.subplot(1, 2, 1)plt.imshow(img_ori)plt.subplot(1, 2, 2)i = [i for i in range(200) if i % 5 == 0]def update(i):    return plt.imshow(img_tran[i].reshape([28, 28]))ani = animation.FuncAnimation(fig, update)# ani.save('contrast.mp4', fps=15,#                  extra_args=['-vcodec', 'libx264'],#                  writer='ffmpeg_file')ani.save('contrast.gif', writer='imagemagick', fps=30)# plt.show()

简单分析一下,输入是一张手写数字的图片,实际上我是将这张图片经过了一个自编码网络,通过求输入与输出的距离,然后反向传播迭代权重和偏置。最后形成一张接近原图的图像。具体的就不细讲了,这里我主要是讲如何显示出来这些数据。我将迭代生成的图像保存在‘img_train.npy’文件里。

i = [i for i in range(200) if i % 5 == 0]

其实,img_tran是一个维度为(1000,784, 1)的数组,我就显示了其中一部分,i 也就是一个索引列表,索引要显示的图像。后面就是利用animation.FuncAnimation函数显示动图,该函数的具体细节可以自行google。然后由于博客园上传不了视频,我就在下面加了一行保存为gif的代码。最后可能你会遇到这样的问题,

KeyError: 'ffmpeg'

安装这个库就行。具体参考http://www.jianshu.com/p/c41d4127cc7d

运行结果是

转载于:https://www.cnblogs.com/subic/p/7929630.html

python matplotlib 播放图片变化过程相关推荐

  1. python matplotlib 绘制图片并保存图片

    python matplotlib 绘制图片并保存图片 import matplotlib.pyplot as plt import numpy as npdef plt_image(tl, x_da ...

  2. 使用python(matplotlib)打开图片

    import matplotlib.pyplot as plt import matplotlib.image as pliimage = plt.imread('/xx/xx.jpg') #输入图片 ...

  3. python matplotlib显示图片_Python OpenCV ——Matplotlib显示图片

    Color image loaded by OpenCV is in BGR mode.But Matplotlib displays in RGB mode.So color images will ...

  4. Python Matplotlib数据可视化绘图之(六)————图片大小、颜色、标题、纵横坐标、画布和绘图区域背景颜色、Legend(图例)等的参数设置详解

    文章目录 前言 一.图片大小的设定和调节 1. 三种调整matplotlib图片大小的方法 1.1 plt.figure(figsize=(n, n)) 1.1.1 代码如下: 1.1.2 输出结果如 ...

  5. python如何将图片的像素矩阵绘制成图片(python,matplotlib):TypeError: Invalid shape (1, 28, 28) for image data

    矩阵变成图片,这个问题使用(python , matplotlib ) 可以轻松实现. import matplotlib.pyplot as plt #使用格式 plt.imshow(x)#其中x为 ...

  6. python读取图像并相加_python使用PIL和matplotlib获取图片像素点并合并解析

    python 版本 3.x 首先安装 PIL 由于PIL仅支持到Python 2.7,加上年久失修,于是一群志愿者在PIL的基础上创建了兼容的版本,名字叫Pillow,支持最新Python 3.x,又 ...

  7. JavaScript实现京东轮播图效果——自动轮播,左右按钮切换图片,小圆圈跟随图片变化,点击小圆圈可跳转图片,无缝循环播放

    JavaScript实现京东轮播图效果--自动轮播,左右按钮切换图片,小圆圈跟随图片变化,点击小圆圈可跳转图片,无缝循环播放 静态效果图如下: CSS部分 *{margin: 0;padding: 0 ...

  8. ☀️手把手教你Python+matplotlib模拟锁相放大器的原理以及工作过程☀️《❤️记得收藏❤️》

    ☀️手把手教你Python+matplotlib模拟锁相放大器的原理以及工作过程☀️<❤️记得收藏❤️> 目录

  9. 【python】幻灯片播放图片

    **背景:**图片多的时候,有时会想自己整个幻灯片功能来播放图片,在播放图片过程中还可以夹杂些自己想做的操作,方便搜集想要的图片: 初步摸索了下,整了个初稿先实现幻灯片的播放. 一 获取相应文件夹下的 ...

最新文章

  1. Revit结构2021-2022从零到精通
  2. Version 1.3.1_01 of the JVM is not suitable for this product.Version:1.4.1 or greater is required。
  3. 《雷达技术丛书》分享
  4. Multidex实现简要分析
  5. 61-1 认识webpack
  6. 辨异 —— 行星 vs 恒星
  7. 1031. Hello World for U (20)-PAT甲级真题
  8. 非受检异常_Java异常(Exception)类型及处理
  9. 【行业】盘点BAT如何进行技术布阵
  10. 四川托普计算机职业学校教务管理系统,四川托普信息技术职业学院教务处
  11. 基于JAVA的GUI编程的的迷宫游戏 2020-12-15
  12. 阳阳智能开关固件2.0版本
  13. Robotcup2D学习记录四
  14. 如果不是对的人,最终的结局大概不会好吧
  15. Typora配色方案
  16. 500000服务器响应错误,加载资源失败:服务器响应状态为500(内部服务器错误)Django...
  17. jemalloc源码解读(六)基数树
  18. Android应用之——微信微博第三方sdk登录分享使用过程中的一些常见问题
  19. MySQL多表查询之纵向合并
  20. 类中无错误显示,但类名出线红色波浪线

热门文章

  1. 【Java从0到架构师】分布式框架通信核心基础 - 序列化(JDK、Protobuf)、远程过程调用 RMI
  2. 筝乐音乐播放器——黑马koltin影音笔记1
  3. weblogic创建多个域 及域的配置方法 war包部署及访问测试
  4. 主机_云服务器vps价格比对[博]
  5. ubuntu中bash,sh,./,bash区别
  6. 从入门到进阶,这10本高分书籍,优秀数据分析师越早读完越好
  7. 简单分析帆软报表中一次HTTP请求的过程。
  8. flex4.5新特征
  9. python导入数据库的数据怎么在qt界面里刷新_Python中使用pyqtgraph库实现数据可视化之逐点刷新波形图...
  10. 双纵坐标的绘图命令_Matplotlib绘图 | 快速定义图表样式的小技巧