【问题标题】:Raycasting render 2d chest CT scans to 3d using OPENGL/C++Raycasting 使用 OPENGL/C++ 将 2d 胸部 CT 扫描渲染为 3d
【发布时间】:2021-10-21 17:07:01
【问题描述】:

我将把这个问题分成三部分

首先,我遇到了这个问题,不知道从哪里开始,如果您一直在解决相关问题,请给我一些提示和关键字来帮助我做更多研究?

我自己做了一些研究

这里是一些 2D 胸部 CT 扫描(抱歉,由于信誉规则,我无法直接实现图像)

所有照片的角度相同。所以我想我可以简单地将每张照片读取为像素向量,进行一些阈值保持,以使所有黑色和黑色像素都成为非彩色像素。接下来,我将为这些向量创建一个名为 vector_of_photo 的向量。然后vector_of_photo中每个向量的索引现在是Z-index。 现在我可以从这些像素向量中渲染出 3D 照片了吧?

其次,我在理解光线投射算法时遇到了麻烦,

我认为这里的想法是,当我已经得到一个像素框时,每次我旋转该框时,它都会从相机的那个角度投射直线到该框,每条线都会找到一个有颜色的像素停止投射并渲染该像素(或更具体地说,将像素复制到平面上的确切位置)。

我理解正确吗?

最后OPENGL/c++ 部分只是我想我要用来解决这个问题的选项。而且我不太确定这是不是一个好主意,所以请给我一些关于我应该看看的编程语言、库或模块的更多提示。

【问题讨论】:

  • 我很一般,用问号 (?) 更容易解释问题。尽管您似乎有三个潜在的问题,但您只有一个问号。也许您可以更清楚地表达您的问题?
  • Marching cubes,也许?
  • 对不起@Neil 我的项目是关于使用光线投射算法重建 3d
  • 所以你有在常规等值面上拍摄的图像,你想建立一个模型?然后您使用光线投射查看该模型?
  • archive 的这个已删除的 QA stackoverflow.com/a/48092685 所以你可以将 CT 扫描直接输入 3D 纹理并使用 GLSL 着色器来支持光线跟踪/光线投射......但是渲染光线投射的确切形式/ rayrtrace 方法取决于您想要实现的目标,您知道有透明度、SSS 次表面散射和其他技术来渲染 3D 体素对象(不仅仅是边界表示)

标签: c++ algorithm opengl raycasting 3d-reconstruction


【解决方案1】:

我碰巧在业余时间处理同样的问题。哈哈:)

这是解决问题的一种方法:

  1. 将图像加载到您的应用程序中,以便获得您描述的 3D 体积数据集
  2. 删除不适合某个值范围的所有点(例如 0.4/1.0 到 0.6/1.0 亮度)。您可能需要应用预处理和过滤。
  3. 使用开源软件将网格拟合到生成的点云。这是一篇很好的博客文章 https://towardsdatascience.com/5-step-guide-to-generate-3d-meshes-from-point-clouds-with-python-36bad397d8ba
  4. 获取生成的网格(可能是一个 STL 文件)并在您想要的任何软件(Blender 3D、Unity 3D、Cinema 4D、自定义 OpenGL 应用程序)中将其可视化。

我自己解决此问题的方法与您在问题中建议的方法非常相似,并且我已经取得了一些进展。因此,我认为建议另一条路线会很好。

注意请注意,您正在处理的不是一个小问题。这是一个大型项目,许多商业公司为此投入了数年时间。这是一个学习 OpenGL、渲染和其他概念的好项目。这是完全可行的,但您可能会看到几个月的工作,以及大量的试验和错误。祝你好运!

两个人碰巧解决同一个问题的情况并不常见,因此,如果您想进一步讨论,请随时通过linkedin与我联系和/或在下面发表评论。 www.linkedin.com/in/michael-sohnen-a2454b1b2

【讨论】:

  • 你好,我终于完成了这些步骤(至少,了解它们)。而且我发现创建一个网格看起来像是一个行进立方体的工作,而不是光线投射算法。
  • 这是我在link 找到的帖子,他们指导完成了上述所有 4 个步骤
  • @Ade 感谢您分享该帖子。从那以后,我一直采用与那篇文章类似的方法。祝你好运,如果您需要一些 python 调试帮助,请务必链接一个新问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-27
  • 2012-09-30
相关资源
最近更新 更多