相机设置为 8 位灰度图可以正常在 pyqt 实时显示。
尝试用下面的代码转换为 8 位图再显示:
if self.image_raw.dtype == np.uint16:#已知 self.image_raw 是 numpy 数组
print("14bit image")
self.image_raw = ((self.image_raw / 16383) * 255).astype(np.uint8)
self.imv.setImage(self.image_raw, autoRange=True)
结果是直接闪退,提示是:
进程已结束,退出代码为 -1073741819 (0xC0000005)
问了 chatgpt 说是内存问题,继续问也问不出更多东西。
我将 fps 改为 1 以后程序可以维持几个循环,然后又闪退。
Windows11 ,python3.12 ,pyqt5