【问题标题】:How to get the Maximum Intensity Projection along the surface normal in 3D如何在 3D 中沿表面法线获得最大强度投影
【发布时间】:2016-06-23 10:32:11
【问题描述】:

我遇到了一个问题,以 3D 形式计算和可视化沿表面法线的最大强度投影 (MIP)。

如果我们只想得到一个轴,问题似乎很简单,例如一些简单的 Matlab 代码,

% Generate sample 3D matrix
A = rand(2,2,2)
% Get maximum intensity projection.
mip = max(A, [], 3)

但是,我有兴趣获得沿表面法线的 MIP,例如,我有一些表面,表面法线图如下所示:

如果我们想象表面有一些厚度并分配了一些强度,我想沿着表面法线(不仅仅是沿着 x、y 或 z 轴)获得 MIP。

我在网上找到的另一个例子是这个

(a) 中是一些 3D 渲染表面,(b) 显示表面法线。 (c) 显示计算出的 MIP,因为 3D 表面有一些厚度。

我不确定我们是否可以在 Matlab 中实现这一点,或者某些第三方软件可以做到这一点。请给我一些提示。非常感谢。

一个。

【问题讨论】:

  • 我认为(a)和(c)可以通过patch来实现。看看here
  • @A_C 感谢您的回复。是的,我想我知道如何在 Matlab 中绘制 (a) 和 (c)。实际上我对绘制 (c) 很感兴趣,因为我们首先需要计算 MIP。干杯。

标签: matlab graphics 3d visualization projection


【解决方案1】:

取表面法线和从表面点到相机位置的位移矢量之间的点积,然后除以它们的大小的乘积,得到角度 (θ) 的余弦值。如果这小于零,则忽略(背面剔除);如果介于 0 和 1 之间,则使用 this 作为参数在蓝色和红色之间进行插值。

【讨论】:

  • 非常感谢您的回复。我相信你所说的确实有道理,但我无法理解这一点。您是否有详细的参考资料(如论文或在线讲义)供我查看,或者有一些伪代码供我更好地理解?
  • @SamoJerom 看图
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-11-14
  • 2012-05-29
  • 1970-01-01
  • 1970-01-01
  • 2019-06-09
  • 2021-09-11
  • 2017-04-10
相关资源
最近更新 更多