【问题标题】:Convert stack of 2d images into 3d image, volume rendering将 2d 图像堆栈转换为 3d 图像,体绘制
【发布时间】:2012-12-03 17:28:49
【问题描述】:

我想对 CT 数据进行基于纹理的体积渲染。我有一堆 2d CT 图像,我想在 opengl 中用作 3d 纹理(真的是 jogl)。我必须以在查看参数更改时发生变化的多边形代理几何体的方式进行操作。如何将 2d 图像转换为一个 3d 纹理?我还没有找到任何关于 opengl 如何期望 3d 图像被格式化的信息。我看到了这个:https://stackoverflow.com/questions/13509191/how-to-convert-2d-image-into-3d-image,但我不一样。

另外,我仍然对这种体积渲染技术感到困惑。是否可以在 3d 纹理中获取 3d 位置并将其映射到四边形的 2d 角?我找到了这个例子:http://www.felixgers.de/teaching/jogl/texture3D.html 但我不知道这是否意味着你必须使用 3d 顶点。有没有人知道更多带有明确示例的来源?

【问题讨论】:

    标签: opengl jogl volume-rendering 3d-texture


    【解决方案1】:

    见

    http://www.opengl.org/registry/doc/glspec40.core.20100311.pdf

    第 3.8.3 节,关于定义 3D 纹理图像。

    这会产生一个 3d 纹理像素立方体,是的,您可以将这个立方体中的 3d 位置映射到四边形的一角。

    【讨论】:

      【解决方案2】:

      OpenGL 确实知道 3D 纹理格式,其中每个纹素都是 [0;1]^3 立方体中的一个小子体积。当您使用此纹理对三角形或四边形进行纹理处理时,就像您切出该体积的薄片一样。如果你想要一个体积,你必须编写一个体积 raycaster。如果你谷歌“GPU 直接体积渲染”,你应该会找到很多教程。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-05-25
        • 1970-01-01
        • 2018-03-24
        • 2020-11-24
        • 1970-01-01
        • 2014-04-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多