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设计】。

相关文章

Linux下通过python访问MySQL、Oracle、SQL Server数据库的方法

本文档主要描述了Linux下python数据库驱动的安装和配置,用来实现在Linux平台下通过python访问MySQL、Oracle、SQL Server数据库。 其中包括以下几个软件...

详解Python读取yaml文件多层菜单

需要用到的Python知识点 Python的对象属性方法; 用到字典{key:value}值的提取; 列表的增加; if循环结合break的使用; yaml文件读取...

对python:threading.Thread类的使用方法详解

Python Thread类表示在单独的控制线程中运行的活动。有两种方法可以指定这种活动: 1、给构造函数传递回调对象 mthread=threading.Thread(target...

Python中struct模块对字节流/二进制流的操作教程

Python中struct模块对字节流/二进制流的操作教程

前言 最近使用Python解析IDX文件格式的MNIST数据集,需要对二进制文件进行读取操作,其中我使用的是struct模块。查了网上挺多教程都写的挺好的,不过对新手不是很友好,所以我重...

用uWSGI和Nginx部署Flask项目的方法示例

用uWSGI和Nginx部署Flask项目的方法示例

概况 在开发过程中,我们一般直接用Python命令直接运行Flask程序。这样的运行只适合我们开发,方便我们调试。一旦程序部署到线上,这样运行的Flask程序性能会比较低。可以采用uW...