如何在不显示图像窗口的情况下使用pyqtgraph保存(导出)图像?

时间:2016-11-24 10:57:32

标签: python image pyqtgraph

我想使用pyqtgraph将Numpy ndarray导出为png文件作为图像。

import pyqtgraph as pg import pyqtgraph.exporters import h5py h5file = h5py.File('hoge.h5',"r") images = h5file['image'].value for i in xrange(images.shape[0]): img = pg.image(images[i]) exporter = pg.exporters.ImageExporter(img.view) exporter.export('image_'+str(i)+'.png') 是(N,128,128,3)形状的numpy ndarray。 (N是我需要的图像数量)

代码运行时,由于images,图像窗口显示N次。我希望这些图像窗口不显示。

请给我一些关于此的想法。

1 个答案:

答案 0 :(得分:0)

这可能不是一个漂亮的解决方案,但您可以在同一个ImageWindow中绘制所有图像,而不是每个绘图分别绘制一个。

import pyqtgraph as pg
import pyqtgraph.exporters
import numpy as np

images = np.random.random((3,128,128))

imagewindow = pg.image()

for i in xrange(images.shape[0]):
    img = pg.ImageItem(images[i])
    imagewindow.clear()
    imagewindow.addItem(img)
    exporter = pg.exporters.ImageExporter(imagewindow.view)
    exporter.export('image_'+str(i)+'.png')

编辑:我还建议不要通过pyqtgraph,而是直接保存,请参阅 Saving a Numpy array as an image