Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

imabsdiff

La diferencia absoluta de dos imágenes

Descripción

ejemplo

Z = imabsdiff(X,Y) sustrae cada elemento de array del elemento correspondiente de Array y devuelve la diferencia absoluta en el elemento correspondiente de la matriz de salida.YXZ

Opcionalmente, puede calcular la diferencia absoluta de yXY usando una GPU (requiere).Parallel Computing Toolbox™ Para obtener más información, consulte.Procesamiento de imágenes en una GPU

Ejemplos

contraer todo

Leer la imagen en el espacio de trabajo.

I = imread('cameraman.tif');

Filtre la imagen.

J = uint8(filter2(fspecial('gaussian'), I));

Calcule la diferencia absoluta de las dos imágenes.

K = imabsdiff(I,J);

Visualice la imagen de diferencia absoluta.

figure imshow(K,[])

Leer imagen y convertirlo a un.gpuArray

I = gpuArray(imread('cameraman.tif')); 

Filtre la imagen, realizando la operación en una GPU.

J = imgaussfilt(I);

Calcule la diferencia absoluta entre la imagen filtrada y la imagen original.

K = imabsdiff(I,J); 

Visualice la imagen de diferencia absoluta.

figure imshow(K,[]) 

Argumentos de entrada

contraer todo

Imagen de entrada, especificada como una matriz numérica no dispersa real de cualquier dimensión.

Para calcular la diferencia absoluta con una GPU, especifique como un que contiene una matriz numérica.XgpuArray

Ejemplo: x = imread('cameraman.tif');

Ejemplo: X = gpuArray(imread('cameraman.tif'));

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

Imagen de entrada, especificada como una matriz numérica. debe tener el mismo tamaño y clase que.YX

Para calcular la diferencia absoluta con una GPU, especifique como un que contiene una matriz numérica del mismo tamaño y clase que la matriz.YgpuArrayX

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

Argumentos de salida

contraer todo

Imagen de diferencia, devuelta como una matriz numérica. tiene la misma clase y tamaño que y.ZXY Si y son matrices de enteros, a continuación, trunca los elementos de la salida que superan el intervalo del tipo entero.XYimabsdiff

Si la imagen de diferencia se calcula mediante una GPU, a continuación, se devuelve como un que contiene una matriz numérica del mismo tamaño y clase que en y.ZgpuArrayXY

Sugerencias

  • Si es de clase, utilice la expresión en lugar de esta función.Xdoubleabs(X-Y)

  • Si es de clase, utilice la expresión en lugar de esta función.XlogicalXOR(X,Y)

  • Cuando y son de clase, o, a continuación, puede utilizar la optimización de hardware para ejecutarse más rápido.XYuint8int16singleimabsdiff

  • se ejecuta en una GPU si al menos uno de y es s.imabsdiffXYgpuArray No es necesario que ambas entradas sean s.gpuArray

Capacidades ampliadas

Introducido antes de R2006a