subvolume

Извлечение подмножества набора объемных данных

Синтаксис

[Nx,Ny,Nz,Nv] = subvolume(X,Y,Z,V,limits)
[Nx,Ny,Nz,Nv] = subvolume(V,limits)
Nv = subvolume(...)

Описание

[Nx,Ny,Nz,Nv] = subvolume(X,Y,Z,V,limits) извлекает подмножество набора объемных данных V использование заданной выровненной по оси limits. limits = [xmin,xmax,ymin, ymax,zmin,zmax] (Любой NaNs в пределах указывает, что объем не должен быть обрезан вдоль этой оси.)

Массивы X, Y, и Z определить координаты для объема V. Подтомник возвращается в NV и координаты подтомника приведены в NX, NY, и NZ.

[Nx,Ny,Nz,Nv] = subvolume(V,limits) принимает массивы X, Y, и Z определяются как

[X,Y,Z] = meshgrid(1:N,1:M,1:P) 

где [M,N,P] = size(V).

Nv = subvolume(...) возвращает только подтомник.

Примеры

свернуть все

Загрузите mri набор данных, который является сбором МРТ- срезы человеческого черепа. Затем:

  • Отжать четырехмерный массив в три размерности и извлечь подмножество используя subvolume.

  • Используйте закрашенную фигуру, чтобы отобразить изоповерхность контура черепа.

  • Добавьте вторую закрашенную фигуру с интерполированными цветами лица.

  • Установите представление объекта.

  • Измените палитру на палитру полутонового цвета.

  • Добавьте свет справа и слева от камеры, чтобы осветить объект.

load mri
D = squeeze(D);
[x,y,z,D] = subvolume(D,[60,80,nan,80,nan,nan]);
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 0.4])
colormap(gray(100))
camlight right; 
camlight left; 
lighting gouraud

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

Расширенные возможности

Представлено до R2006a