问题标签 [volume-rendering]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
126 浏览

xtk - XTK 第 13 课(ami 示例) - 去除从 2D 体积渲染获得的切片中的边界线

我通过传递一组 DICOM 图像从 AMI 示例(这个 - https://fnndsc.github.io/ami/#xtk_lesson13 )中实现了 XTK 第 13 课。

在获得的切片中,我假设这些彩色虚线是某种边界。我需要删除它们,但我不确定它们到底是什么。有人可以告诉我它们是如何创建的或它们代表什么吗?

编辑:

我不能随意发布我的实现的屏幕截图,但这是来自示例 url 的屏幕截图。抱歉图片不是很清晰,示例加载超小图片。切片是底部的图像。

黄色虚线

在实际示例中移动图像(切片)时,图像上会出现黄色虚线。这就是我需要摆脱的。我也一直将它们称为虚线,我想它们实际上是虚线。对于那个很抱歉。

0 投票
1 回答
201 浏览

python - 如何加快合成光线投射功能?

我目前正在 python 中进行体积渲染项目,在给定由体素组成的 3D 体积时,我使用合成光线投射功能来生成图像。该函数(我在下面显示)可以正常工作,但运行时间很长。你们有关于如何使这个功能更快的提示吗?代码是 Python 3.6.8 并使用各种 numpy 数组。

0 投票
1 回答
217 浏览

python - 如何最好地在 python 中创建填充体积的 Lorenz Attractor 以进行体积渲染

我正在尝试创建一个 3D 数组,然后对像 Lorenz Attractor 这样的奇怪吸引子(在其他软件或体积渲染包中)执行体积渲染。例如,从数据点绘制吸引子并提供一个值来分配颜色并在 matplotlib 中可视化是很容易的。matplotlib 中的洛伦兹吸引子

但是我想要一个填充的体积阵列。我已经尝试过像 griddata 这样的插值方法,但它没有给出想要的结果。我的设想是这样的:在此处输入图像描述

这是来自维基百科页面。

这是我尝试过的,但是如果您在简单的查看器中打开结果,它看起来并不好。我在想,也许只在构成 x、y、z 数组的点之间进行插值……玩了几个小时后,我有点迷失了。我认为我需要的是获取点并进行某种插值或填充到数组中,这里我调用 interp_im。然后可以在体积渲染中查看。任何帮助都非常感谢!

0 投票
1 回答
212 浏览

glsl - WebGL 中的体积渲染

我有一个要使用 WebGL 呈现的科学数据的 3D 数组数据集。这是我编写的代码,也是我目前取得的结果。

我对输出画布发生的两件事一无所知:

  1. gl.clearcolor(0.4, 0.4, 0.5, 1); 屏幕渲染输出时不起作用


  2. 有时在 drawScene 调用代码会引发错误和警告。我相信警告是针对该错误的,但我无法调试导致该错误的原因:

警告:WebGL:INVALID_OPERATION:texImage3D:ArrayBufferView 对请求来说不够大

错误:texImage3D(TEXTURE_3D{WebGLTexture(“未命名”)},0,R8,64,64,64,0,RED,UNSIGNED_BYTE,Uint8Array(65536))中的错误:INVALID_OPERATION


3)渲染输出的预期输出为:

在此处输入图像描述



在此处输入图像描述

但渲染的输出未显示所需的颜色图输出。

这是一个现场演示:

在线演示

如果此代码段在任何情况下均未加载,则这是输出: 在此处输入图像描述

PS:如果片段未加载,请滑动右上角的滑块。

0 投票
1 回答
266 浏览

glsl - GLSL 中的最近邻插值

我有一个 GLSL 片段着色器作为渲染混合在一起的两个 3D 体积切片的管道的一部分。对于其中一个体积,我想使用最近邻插值,因为它是一个“分割掩码”(即在每个体素处指示,另一个图像中的体素属于哪个结构,例如背景为 0,目标结构为 1;请参阅下图中的紫色叠加层),因为默认的三线性插值会在边界处产生不希望的伪影(下图中边界处的绿线)

在此处输入图像描述

我将如何修改下面的片段着色器代码以在分段掩码 ( vol2) 上使用最近邻插值?

0 投票
1 回答
46 浏览

python - 如何将矢量(k1,k2)转换为体积中的RGBA(r,g,b,a)?

我有一个表示体积的 3d 数组。每个体素保持一个向量 (k1, k2) 作为其局部主曲率。

现在,我需要通过颜色来可视化这个体积(就像下图一样)。所以我需要将其转换为 RGBA 卷。是否有任何算法可以实现从(k1,k2)到(r,g,b,a)的传递函数?谢谢!

在此处输入图像描述

0 投票
0 回答
113 浏览

opengl - 我应该如何在 OpenGL 中渲染对象和立方体贴图之间的气氛

我在 OpenGL 中有一个带有对象和立方体贴图的场景。

我的大气着色器(瑞利散射)渲染到相机正前方的四边形。这当然会阻碍我的对象和立方体贴图的视觉。

我现在想结合这些元素,这样我就可以拥有:

  • 一个物体在前面
  • “中间”的气氛
  • 大气层外的另一个物体
  • 背景中的立方体贴图(银河系)

我想到的事情:

  • 将大气绘制到纹理并将其投影到立方体贴图上。但是,这听起来比它需要的要复杂得多(而且是错误的,因为使用这种方法不能存在立方体贴图和天空之间的对象)。

我一定错过了显而易见的事情。提前致谢。

0 投票
0 回答
28 浏览

opengl - OpenGL眼睛位置到纹理空间


我正在按照nVidia 的本教程来实现流体模拟,但是我对光线行进算法部分中的这一部分感到困惑。

光线方向由从眼睛到入口点的向量给出(都在纹理空间中)。

我已经有了光线入口点的坐标,所以这不是问题,但我不明白如何在纹理空间中获得眼睛位置。

0 投票
0 回答
7 浏览

rendering - 我们可以从窗口中读取 3D 切片器中的医学图像体积渲染中的体素吗

我正在使用 vtkGPUVolumeRayCastMapper 映射到图像数据。在应用传递函数和其他属性来可视化图像之后,我想将它们存储到 .vtk 文件中。

0 投票
0 回答
14 浏览

java-8 - Java 中的直接体积渲染 - RGB 传输函数如何工作?

我正在创建一个直接体积渲染应用程序,目标是编写至少 2 个 2d 传递函数和一个 3d 传递函数,用于确定体素的颜色和不透明度值。

我有一个 CT 数据集——cthead[k][j][i]它将在数据集中的特定 x、y、z 位置为我提供体素强度。

我现在拥有的不透明度传递函数是:

现在我的问题是- 你如何通过传递函数计算 RGB 颜色?这是如何运作的?