1

我正在测量 3 颗牙齿的微晶发散度。每颗牙齿在物理上被分成 4 个切片,我使用 Matlab 为每个切片创建了一个网格。我表示的数据如图所示:

切片

对于每颗牙齿,我想使用 matlab 将这 4 个切片堆叠成一个 3-D 模型。我希望能够从所有 3D 方向查看模型。您能否让我知道我的想法是否可行并引导我朝着正确的方向前进。

4

1 回答 1

1

使用surf()功能

如果您将每个切片保存为图像,则可以使用该surf()功能将一个切片显示为与图像着色的平面。如果您的切片图像以 RGB 格式存储在sl尺寸为 [N,M,3] 的数组中,您可以编写以下内容:

% x, and y coordinates for each grid point
[x,y] = meshgrid(1:size(sl,2),1:size(sl,1));
% Position of slice in z-coordinate
z=0;
% Draw surface with slice projected onto
surf(x,y,repmat(z,size(sl)),sl,'edgecolor','none');

要在上方或下方添加更多切片,请发出hold all命令并将其他切片放置在不同z位置,然后对下一个切片重复上述操作。

于 2017-12-15T15:45:57.253 回答