python 含子图的gif生成时内存溢出的方法

yipeiwu_com6年前Python基础

今天想用python做个demo,含两个子图的动态gif,代码如下:

import matplotlib.pyplot as plt
import imageio,os
import matplotlib
 
 
# plt.ion()
 
fig=plt.figure(0)
ax1=plt.subplot(121)
ax2=plt.subplot(122)
 
ax1.set_title('input')
ax2.set_title('GT')
 
 
for i in range(1000):
  img1=plt.imread('F:\\pythonprogram\\test_bord/path\\enc_in_img\\{}.png'.format(i))
  img2 = plt.imread('F:\\pythonprogram\\test_bord/path\\dec_out_img\\{}.png'.format(i))
  ax1.imshow(img1)
  ax2.imshow(img2)
  # ax2.axis('off')
  plt.pause(0.00001)
  plt.cla()
 
plt.show()

首先分别将画布分为两块,分别循环读如图片,显示图片后暂停,再清除原图像~

但是由于plt.cla()只能作用于最后一个子图,第一块子图读取过程中占用大量内存导致内存溢出,目前没找到解决办法。

最后在matlab上完成这个工作。

以上这篇python 含子图的gif生成时内存溢出的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python实现点击按钮修改数据的方法

使用JSON获取前端数据,转成JSON,传递到后端,然后对数据库做修改。 前端代码 <div style="padding: 10px;"> <button c...

Python设计模式之单例模式实例

注:使用的是Python 2.7。 一个简单实现复制代码 代码如下:class Foo(object):    __instance = None ...

python opencv人脸检测提取及保存方法

注意这里提取到的人脸图片的保存地址要改成自己要保存的地址 opencv人脸的检测模型的路径也要更改为自己安装的opencv的人脸检测模型的路径 import cv2 save_pat...

python 安装virtualenv和virtualenvwrapper的方法

1. 首先介绍pip常用命令 pip安装命令: pip install package_name pip升级命令:pip install –ungrage package_name...

Python脚本在Appium库上对移动应用实现自动化测试

 采用Appium进行自动化的功能性测试最酷的一点是,你可以使用具有最适合你的测试工具的任何一门语言来写你的测试代码。大家选择最多的一个测试编程语言就是Python。 使用Ap...