Memory PyQt GUI中的Matplotlib图像显示因内存错误而停止

Memory PyQt GUI中的Matplotlib图像显示因内存错误而停止,memory,matplotlib,pyqt4,Memory,Matplotlib,Pyqt4,问题: 我有一个PyQt4 GUI应用程序,它必须导入16位灰度图像数据并对图像进行一些计算。Gui有一些控制元素和一个带有两个选项卡的QTabWidget()元素,其中一个显示图像,另一个表示表中的计算结果。图像表示使用Matplotlib完成 在我的应用程序中,我应该能够打开高达10000x1250像素的图像,这相当于250MB的图像数据。不幸的是,使用我的应用程序,我只能打开大约130MB大小的图像。当导入和显示大于8000x8000像素的数据时,我的应用程序停止显示内存错误。尽管映像本身

问题: 我有一个PyQt4 GUI应用程序,它必须导入16位灰度图像数据并对图像进行一些计算。Gui有一些控制元素和一个带有两个选项卡的QTabWidget()元素,其中一个显示图像,另一个表示表中的计算结果。图像表示使用Matplotlib完成

在我的应用程序中,我应该能够打开高达10000x1250像素的图像,这相当于250MB的图像数据。不幸的是,使用我的应用程序,我只能打开大约130MB大小的图像。当导入和显示大于8000x8000像素的数据时,我的应用程序停止显示内存错误。尽管映像本身大小为128MB,但windows任务管理器显示了用于python任务的694MB已用内存。无法再显示8000x9000像素大小的图像

我的电脑有4GB内存。我不认为问题的发生是由于记忆不足

问题: 如何使我的应用程序能够显示高达10000x1250像素的图像(灰度16位)?是否存在可以修改的Matplotlib内部限制

我搜索了一下网,但没有找到任何答案。最接近我的问题描述可以在中看到。但是将display命令从show()更改为draw()没有帮助


非常感谢您的帮助。

mapplotlib
对于包含图像的内存来说效率不高,数据有多个内部副本

除非你有一个巨大的屏幕(300ppi,你的图像是33英寸x 42英寸),否则你的图像在显示时会被下采样。我建议你把你的图像采样到一个更接近实际区域像素数的大小。您可能希望根据用户实际看到的内容编写一些自适应下采样的操作


相关的

mapplotlib
对于带有图像的内存无效,数据有多个内部副本

除非你有一个巨大的屏幕(300ppi,你的图像是33英寸x 42英寸),否则你的图像在显示时会被下采样。我建议你把你的图像采样到一个更接近实际区域像素数的大小。您可能希望根据用户实际看到的内容编写一些自适应下采样的操作

相关的