Main Content

imresize3

Cambiar el tamaño de imágenes volumétricas 3D de intensidad

Descripción

ejemplo

B = imresize3(V,scale) devuelve el volumen B que tiene scale veces el tamaño del volumen numérico o categórico 3D V.

B = imresize3(V,[numrows numcols numplanes]) devuelve el volumen B que tiene el número de filas, columnas y planos especificados por el vector de 3 elementos [numrows numcols numplanes].

B = imresize3(___,method) devuelve el volumen B, donde method especifica el método de interpolación utilizado.

B = imresize3(___,Name,Value) devuelve un volumen con el tamaño cambiado, donde los pares Name,Value controlan aspectos de la operación.

Ejemplos

contraer todo

Cargue un volumen de resonancia magnética en el espacio de trabajo.

s = load('mri');
mriVolumeOriginal = squeeze(s.D);
sizeO = size(mriVolumeOriginal);

Visualice el volumen.

figure;
slice(double(mriVolumeOriginal),sizeO(2)/2,sizeO(1)/2,sizeO(3)/2);
shading interp, colormap gray;
title('Original');

Figure contains an axes object. The axes object with title Original contains 3 objects of type surface.

Cambie el tamaño del volumen, reduciendo el tamaño de todas las dimensiones a la mitad. Este ejemplo utiliza el método de interpolación y antialiasing predeterminados.

mriVolumeResized = imresize3(mriVolumeOriginal, 0.5);
sizeR = size(mriVolumeResized);

Visualice el volumen con el tamaño cambiado.

figure;
slice(double(mriVolumeResized),sizeR(2)/2,sizeR(1)/2,sizeR(3)/2);
shading interp, colormap gray;
title('Resized');

Figure contains an axes object. The axes object with title Resized contains 3 objects of type surface.

Argumentos de entrada

contraer todo

Volumen cuyo tamaño se desea cambiar, especificado como un arreglo numérico 3D o un arreglo categórico 3D.

Tipos de datos: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | categorical

Factor escalar, especificado como un escalar numérico.

  • Si scale es menor que 1, la imagen de salida será más pequeña que el volumen de entrada.

  • Si scale es mayor que 1, la imagen de salida será más grande que el volumen de entrada.

imresize3 aplica el factor escalar a cada dimensión del volumen. Para aplicar un factor de cambio de tamaño diferente en cada dimensión utilice el argumento de par nombre-valor Scale.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Tamaño del volumen de salida, especificado como vector de 3 elementos de enteros positivos con la forma [rows columns planes]. Si especifica un valor numérico y los otros dos valores como NaN, imresize3 calcula automáticamente los otros dos elementos para conservar la relación de aspecto.

Tipos de datos: single | double

Método de interpolación, especificado como uno de los valores de la tabla siguiente que identifica un método general o un núcleo de interpolación con nombre.

MétodoDescripción

"nearest"

Interpolación del elemento más cercano.

La interpolación del elemento más cercano es el único método de interpolación compatible con las imágenes categóricas y es el método predeterminado para las imágenes de este tipo.

"linear"

Interpolación lineal

"cubic"

Interpolación cúbica. La interpolación cúbica es la opción predeterminada para los volúmenes numéricos.

Nota

La interpolación cúbica puede producir valores de píxeles que se sitúan fuera del intervalo original.

Núcleo de interpolaciónDescripción
"box"

Núcleo con forma de cuadro.

El núcleo con forma de cuadro es el único núcleo de interpolación compatible con las imágenes categóricas.

"triangle"Núcleo triangular (equivalente a "linear")
"lanczos2"Núcleo de Lanczos-2
"lanczos3"Núcleo de Lanczos-3

Tipos de datos: char | string

Argumentos de par nombre-valor

Especifique pares de argumentos opcionales como Name1=Value1,...,NameN=ValueN, donde Name es el nombre del argumento y Value es el valor correspondiente. Los argumentos de nombre-valor deben aparecer después de otros argumentos. Sin embargo, el orden de los pares no importa.

En las versiones anteriores a la R2021a, utilice comas para separar cada nombre y valor, y encierre Name entre comillas.

Ejemplo: "Antialiasing",false

Realizar antialiasing al reducir un volumen, especificado como true o false.

  • Si method es "nearest", el valor predeterminado de Antialiasing es false.

  • Si el method de interpolación es el núcleo de interpolación "box" y el volumen de entrada es categórico, el valor predeterminado de Antialiasing es false.

  • En el resto de métodos de interpolación, el valor predeterminado de Antialiasing es true.

Tipos de datos: logical

Método de interpolación, especificado como escalar de cadena o vector de caracteres. Para obtener más detalles, consulte method.

Tipos de datos: char | string

Tamaño del volumen de salida, especificado como vector de 3 elementos de enteros positivos con la forma [rows cols planes].

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Cambiar el tamaño del factor escalar, especificado como número positivo o vector de 3 elementos de números positivos. Si especifica un escalar, imresize3 aplica el mismo factor escalar a cada dimensión del volumen. Si especifica un vector de 3 elementos, imresize3 aplica un valor escalar diferente a cada dimensión.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Argumentos de salida

contraer todo

Volumen con tamaño cambiado, devuelto como un arreglo de la misma clase que el volumen de entrada V.

Capacidades ampliadas

Historial de versiones

Introducido en R2017a

expandir todo

Consulte también

| | |