Main Content

affineOutputView

Crear una vista de salida para deformar imágenes

Desde R2019b

Descripción

Rout = affineOutputView(sizeA,tform) toma el tamaño de una imagen de entrada, sizeA, y una transformación geométrica afín, tform, y devuelve un objeto de referencia espacial, Rout. Puede utilizar este objeto como entrada de imwarp para controlar los límites de salida y el espaciado de cuadrícula de una imagen deformada.

ejemplo

Rout = affineOutputView(sizeA,tform,BoundsStyle=style) también especifica restricciones sobre los límites espaciales de la vista de salida, como si la vista de salida debe contener por completo la imagen de salida o si la vista de salida debe coincidir con los límites de entrada.

Ejemplos

contraer todo

Lea y muestre una imagen. Para ver las extensiones espaciales de la imagen, haga visibles los ejes.

A = imread("kobi.png");
A = imresize(A,0.25);
iptsetpref("ImshowAxesVisible","on")
imshow(A)

Figure contains an axes object. The axes object contains an object of type image.

Cree un elemento estructurante afín 2D. Este ejemplo crea una transformación aleatoria que consta de una escala por un factor en el intervalo [1,2, 2,4], una rotación por un ángulo en el intervalo [-45, 45] grados, y una traslación horizontal por una distancia en el intervalo de [100, 200] píxeles.

tform = randomAffine2d("Scale",[1.2,2.4],"XTranslation",[100 200],"Rotation",[-45,45]);

Cree tres vistas de salida diferentes para la imagen y la transformación.

centerOutput = affineOutputView(size(A),tform,"BoundsStyle","CenterOutput");
followOutput = affineOutputView(size(A),tform,"BoundsStyle","FollowOutput");
sameAsInput = affineOutputView(size(A),tform,"BoundsStyle","SameAsInput");

Aplique la transformación a la imagen de entrada utilizando cada uno de los diferentes estilos de vista de salida.

BCenterOutput = imwarp(A,tform,"OutputView",centerOutput);
BFollowOutput = imwarp(A,tform,"OutputView",followOutput);
BSameAsInput = imwarp(A,tform,"OutputView",sameAsInput);

Muestre las imágenes resultantes.

imshow(BCenterOutput)
title("CenterOutput Bounds Style");

Figure contains an axes object. The axes object with title CenterOutput Bounds Style contains an object of type image.

imshow(BFollowOutput)
title("FollowOutput Bounds Style");

Figure contains an axes object. The axes object with title FollowOutput Bounds Style contains an object of type image.

imshow(BSameAsInput)
title("SameAsInput Bounds Style");

Figure contains an axes object. The axes object with title SameAsInput Bounds Style contains an object of type image.

iptsetpref("ImshowAxesVisible","off")

Argumentos de entrada

contraer todo

Tamaño de la imagen de entrada, especificado como vector numérico de 2 elementos para entrada de imágenes 2D o vector numérico de 3 elementos para entrada de imágenes volumétricas 3D.

Transformación geométrica, especificada como un objeto de transformación geométrica que aparece en la tabla.

Objeto de transformación geométricaDescripción
Transformaciones geométricas 2D
transltform2dTransformación de traslación
rigidtform2dTransformación rígida: traslación y rotación
simtform2dTransformación de similitud: traslación, rotación y escalado isotrópico
affinetform2dTransformación afín: traslación, rotación, escalado anisotrópico, reflexión y cizallado
Transformaciones geométricas 3D
transltform3dTransformación de traslación
rigidtform3dTransformación rígida: traslación y rotación
simtform3dTransformación de similitud: traslación, rotación y escalado isotrópico
affinetform3dTransformación afín: traslación, rotación, escalado anisotrópico, reflexión y cizallado

Nota

También puede especificar tform como un objeto affine2d o affine3d. No obstante, estos objetos no están recomendados. Para obtener más información, consulte Consideraciones relativas a la compatibilidad.

Estilo de límites, especificado como uno de los siguientes valores.

EstiloDescripción
"CenterOutput"Centra la vista en el centro de la imagen en el espacio de salida mientras permite que la traslación mueva la imagen de salida fuera de la vista.
"FollowOutput"Establece los límites de la vista de salida para que contengan por completo la imagen de salida.
"SameAsInput"Establece los límites de salida para que sean los mismos que los límites de entrada.

Argumentos de salida

contraer todo

Referencias espaciales, devueltas como objeto imref2d o imref3d. Utilice Rout como el argumento OutputView de la función imwarp para especificar las referencias espaciales de la salida deformada.

Capacidades ampliadas

Historial de versiones

Introducido en R2019b

expandir todo