博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python matplotlib 播放图片变化过程
阅读量:4945 次
发布时间:2019-06-11

本文共 1146 字,大约阅读时间需要 3 分钟。

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

import numpy as npimport matplotlib.pyplot as pltfrom matplotlib import animationfrom 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

你可能感兴趣的文章
关于数组
查看>>
sql 关于查询时 出现的 从数据类型 varchar 转换为 numeric 时出错 的解决方法。
查看>>
说完Pivot 今天说下Unpivot 的处理方式
查看>>
Microsoft发布新一代主机:Xbox One
查看>>
PB16060282+PB16060145
查看>>
获取指定端口的连接数
查看>>
Resource is out of sync with the file system: 解决办法
查看>>
十大排序算法
查看>>
JavaScript for...in 循环
查看>>
Mysql and ORM
查看>>
hdu 1963 Investment 解题报告
查看>>
CSS基础问题
查看>>
python面试题(一)
查看>>
apicloud开发优化策略
查看>>
Android研究-开发Android Widget基础
查看>>
python之tk学习,闲鱼搜索-小记
查看>>
POJ1050 To the Max 最大子矩阵
查看>>
(转)spinlock与linux内核调度的关系
查看>>
9.多彩的幕布layer
查看>>
解题报告 『于是他错误的点名开始了(map)』
查看>>