【发布时间】:2014-08-14 01:04:24
【问题描述】:
大家好,
我正在为相机编写一个 GUI,我想要一个带有来自相机的实时流的小部件。
按照其中一个示例,我是这样做的:
def updateview():
global img, camera
img.setImage(camera.most_recent_image(camera.detector_shape))
win = QtGui.QWidget()
# Image widget
imagewidget = pg.GraphicsLayoutWidget()
view = imagewidget.addViewBox()
view.setAspectLocked(True)
img = pg.ImageItem(border='w')
view.addItem(img)
view.setRange(QtCore.QRectF(0, 0, 512, 512))
layout = QtGui.QGridLayout()
win.setLayout(layout)
layout.addWidget(imagewidget, 1, 2, 3, 1)
win.show()
viewtimer = QtCore.QTimer()
viewtimer.timeout.connect(updateview)
viewtimer.start(0)
app.exec_()
viewtimer.stop()
这确实有效,如果不是因为我还需要侧面的强度直方图,我会很高兴的。
所以我尝试像这样更改第一段:
def updateview():
global img, camera
img.setImage(camera.most_recent_image(camera.detector_shape),
autoHistogramRange=False)
win = QtGui.QWidget()
img = pg.ImageView()
layout = QtGui.QGridLayout()
win.setLayout(layout)
layout.addWidget(img, 1, 2, 3, 1)
这仅适用于几帧(我可以看到图像发生变化并且直方图相应移动)然后整个 GUI 冻结。有人见过这种行为吗?
非常感谢,
费德里科
【问题讨论】:
标签: pyqtgraph