【问题标题】:How can I save(export) image using pyqtgraph without displaying the image window?如何在不显示图像窗口的情况下使用 pyqtgraph 保存(导出)图像?
【发布时间】:2017-04-08 15:38:39
【问题描述】:

我想使用 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')

images 是 (N,128,128,3) 形状的 numpy ndarray。 (N 是我需要的图片数量)

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

请给我一些想法。

【问题讨论】:

    标签: python image pyqtgraph


    【解决方案1】:

    这可能不是一个很好的解决方案,但您可以在同一个 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

    【讨论】:

    • 我参考了你附上的网址,使用了PIL Image的方式。
    • 然后我成功解决了我的问题。谢谢!
    猜你喜欢
    • 2014-04-17
    • 2011-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-17
    • 2010-11-18
    • 2021-12-20
    • 1970-01-01
    相关资源
    最近更新 更多