使用 GLVolumeItem 在 pyqtgraph 中进行最大强度投影
Maximum intensity projection in pyqtgraph using GLVolumeItem
我想使用最大强度投影 (MIP) 在 pyqtgraph 中使用 GLVolumeItem 查看一些 3D 医学图像。我看到有三个预定义的 GLOptions
设置。 translucent
和 additive
模式看起来都像 MIP。所以我的问题是
- 是真正的MIP视图吗?如果不是,我应该如何更改
GLOptions
(例如,GL_DEPTH_TEST
、GL_BLEND
等)?
- 是否有包含不同显示模式的 GL 配置(例如,
GL_DEPTH_TEST
、GL_BLEND
等)的网站?
更新:
从 this website 开始,我将 GLOptions
设置为
{'glBlendFunc': (GL_ONE, GL_ONE), 'glBlendEquation': (GL_MAX_EXT), GL_BLEND: True}
但是,弹出一个错误说GL_MAX_EXT
没有定义。我应该如何解决它?
终于找到答案了:
from OpenGL.GL import *
from OpenGL import GL
from OpenGL.GL.EXT.blend_minmax import GL_MAX_EXT
glOptions = {'glBlendFunc': (GL_ONE, GL_ONE), 'glBlendEquation': (GL_MAX_EXT, ), GL_BLEND: True}
这应该会给您真正的 MIP 视图。
我想使用最大强度投影 (MIP) 在 pyqtgraph 中使用 GLVolumeItem 查看一些 3D 医学图像。我看到有三个预定义的 GLOptions
设置。 translucent
和 additive
模式看起来都像 MIP。所以我的问题是
- 是真正的MIP视图吗?如果不是,我应该如何更改
GLOptions
(例如,GL_DEPTH_TEST
、GL_BLEND
等)? - 是否有包含不同显示模式的 GL 配置(例如,
GL_DEPTH_TEST
、GL_BLEND
等)的网站?
更新:
从 this website 开始,我将 GLOptions
设置为
{'glBlendFunc': (GL_ONE, GL_ONE), 'glBlendEquation': (GL_MAX_EXT), GL_BLEND: True}
但是,弹出一个错误说GL_MAX_EXT
没有定义。我应该如何解决它?
终于找到答案了:
from OpenGL.GL import *
from OpenGL import GL
from OpenGL.GL.EXT.blend_minmax import GL_MAX_EXT
glOptions = {'glBlendFunc': (GL_ONE, GL_ONE), 'glBlendEquation': (GL_MAX_EXT, ), GL_BLEND: True}
这应该会给您真正的 MIP 视图。