Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

reducevolume

缩减三维体数据集内的元素数

语法

[nx,ny,nz,nv] = reducevolume(X,Y,Z,V,[Rx,Ry,Rz])
[nx,ny,nz,nv] = reducevolume(V,[Rx,Ry,Rz])
nv = reducevolume(...)

说明

[nx,ny,nz,nv] = reducevolume(X,Y,Z,V,[Rx,Ry,Rz]) 通过保留 x 方向的每 Rx 个元素、y 方向的每 Ry 个元素、z 方向的每 Rz 个元素,来缩减三维体中的元素数量。如果标量 R 用于指示量或缩减,而不是三元素向量,则 MATLAB® 软件假设缩减到 [R R R]

数组 XYZ 定义三维体 V 的坐标。缩减的三维体在 nv 中返回,而缩减的三维体的坐标在 nxnynz 中返回。

[nx,ny,nz,nv] = reducevolume(V,[Rx,Ry,Rz]) 假定数组 XYZ 定义为 [X,Y,Z] = meshgrid(1:n,1:m,1:p),其中 [m,n,p] = size(V)

nv = reducevolume(...) 仅返回缩减三维体。

示例

全部折叠

此示例使用表示一组人类颅骨 MRI 切面的数据集。这些数据将以不同的方式处理:

  • 四维数组被挤入 (squeeze) 三维,然后缩减 (reducevolume),这样会保留 x 和 y 方向的每第四个元素以及 z 方向的每个元素。

  • 缩减数据经过平滑处理 (smooth3)。

  • 颅骨的轮廓是生成为一个补片的等值面 (p1),其顶点法向量进行了重新计算以改进布光时的外观(patchisosurfaceisonormals)。

  • 带有插补面颜色的第二个补片 (p2) 绘制了端顶 (FaceColor, isocaps)。

  • 设置了对象的视图(viewaxisdaspect)。

  • 使用包含 100 个元素的灰度颜色图对端顶着色 (colormap)。

  • 在相机右侧添加灯光以照亮对象(camlightlighting)。

load mri
D = squeeze(D);
[x,y,z,D] = reducevolume(D,[4,4,1]);
D = smooth3(D);
p1 = patch(isosurface(x,y,z,D,5),...
    'FaceColor','red','EdgeColor','none');
isonormals(x,y,z,D,p1)
p2 = patch(isocaps(x,y,z,D,5),...
    'FaceColor','interp','EdgeColor','none');
view(3) 
axis tight
daspect([1,1,.4])
colormap(gray(100))
camlight
lighting gouraud

Figure contains an axes object. The axes object contains 2 objects of type patch.

扩展功能

版本历史记录

在 R2006a 之前推出