Main Content

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.

affineOutputView

Crear vista de salida para deformar imágenes

Descripción

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

ejemplo

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

Ejemplos

contraer todo

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

A = imread('kobi.png'); iptsetpref('ImshowAxesVisible','on') imshow(A)

Cree una transformación afín 2D. En este ejemplo se crea una transformación aleatoria que consta de escala por un factor en el intervalo [1.2, 2.4], rotación por un ángulo en el rango [-45, 45] grados y traducción horizontal por una distancia en el rango [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);

Visualice las imágenes resultantes.

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

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

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

iptsetpref('ImshowAxesVisible','off')

Argumentos de entrada

contraer todo

Tamaño de imagen de entrada, especificado como un vector numérico de 2 elementos para la entrada de imagen 2D o un vector numérico de 3 elementos para la entrada de imagen volumétrica 3D.

Transformación geométrica afín, especificada como u objeto.affine2daffine3d

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

EstiloDescripción
'CenterOutput'Centre la vista en el centro de la imagen en el espacio de salida mientras permite que la traducción mueva la imagen de salida fuera de la vista.
'FollowOutput'Establezca los límites de la vista de salida para que contengan completamente la imagen de salida.
'SameAsInput'Establezca los límites de salida para que sean los mismos que los límites de entrada.

Argumentos de salida

contraer todo

Referencia espacial, devuelta como u objeto.imref2dimref3d Utilícelo como argumento de la función para especificar la referencia espacial de la salida deformada.RoutOutputViewimwarp

Introducido en R2019b