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.

images.geotrans.PolynomialTransformation2D

transformación geométrica polinómica 2-D

Descripción

Un objeto encapsula una transformación geométrica polinómica 2-D.PolynomialTransformation2D

Creación

Puede crear un objeto utilizando los métodos siguientes:PolynomialTransformation2D

  • La función, que estima una transformación geométrica que asigna pares de puntos de control entre dos imágenes.fitgeotrans

  • La función descrita aquí.images.geotrans.PolynomialTransformation2D Esta función crea un objeto utilizando coordenadas de puntos fijos y puntos de movimiento, o los coeficientes polinómicos conocidos para la transformación de avance e inverso.PolynomialTransformation2D

Descripción

ejemplo

tform = images.geotrans.PolynomialTransformation2D(movingPoints,fixedPoints,degree) crea un objeto y establece la propiedad.PolynomialTransformation2DDegree La función estima los coeficientes polinómicos y las matrices y define los puntos de control coincidentes en las imágenes en movimiento y fijas, respectivamente.UnBmovingPointsfixedPoints

tform = images.geotrans.PolynomialTransformation2D(a,b) crea un objeto y establece las propiedades.PolynomialTransformation2DUnB

Argumentos de entrada

expandir todo

-y-coordenadas de los puntos de control en la imagen en movimiento, especificado como una matriz de-por-2.xym

Tipos de datos: double | single

-y-coordenadas de los puntos de control en la imagen fija, especificado como una matriz de-por-2.xym

Tipos de datos: double | single

Propiedades

expandir todo

Coeficientes polinómicos utilizados para determinar en la transformación inversa, especificados como un vector de elemento.Un Para los polinomios de grado 2, 3 y 4, es 6, 10 y 15, respectivamente.n

El vector de coeficiente polinómico cuadrático (grado 2) se ordena de la siguiente manera:Un

U = A(1) + A(2).*X + A(3).*Y + A(4).*X.*Y + A(5).*X.^2 + A(6).*Y.^2

El vector de coeficiente polinómico cúbico (grado 3) añade estos términos:

... + A(7).*X.^2.*Y + A(8).*X.*Y.^2 + A(9).*X.^3 + A(10).*Y.^3

El vector de coeficiente polinómico quartic (grado 4) añade estos términos:

... + A(11).*X.^3.*Y + A(12).*X.^2.*Y.^2 + A(12).*X.*Y.^3 + A(14).*X.^3 + A(15).*Y.^4

Tipos de datos: double | single

Coeficientes polinómicos utilizados para determinar en la transformación inversa, especificados como un vector de elemento.Vn Para los polinomios de grado 2, 3 y 4, es 6, 10 y 15, respectivamente.n

El vector de coeficiente polinómico cuadrático (grado 2) se ordena de la siguiente manera:B

V = B(1) + B(2).*X + B(3).*Y + B(4).*X.*Y + B(5).*X.^2 + B(6).*Y.^2

El vector de coeficiente polinómico cúbico (grado 3) añade estos términos:

... + B(7).*X.^2.*Y + B(8).*X.*Y.^2 + B(9).*X.^3 + B(10).*Y.^3

El vector de coeficiente polinómico quartic (grado 4) añade estos términos:

... + B(11).*X.^3.*Y + B(12).*X.^2.*Y.^2 + B(12).*X.*Y.^3 + B(14).*X.^3 + B(15).*Y.^4

Tipos de datos: double | single

Grado de la transformación polinómica, especificado como los valores escalares, o.234

Dimensionalidad de la transformación geométrica para los puntos de entrada y de salida, especificado como el valor.2

Funciones del objeto

outputLimitsEncuentre límites espaciales de salida dados los límites espaciales de entrada
transformPointsInverseAplicar la transformación geométrica inversa

Ejemplos

contraer todo

Ajuste una transformación polinómica de segundo grado a un conjunto de puntos de control fijos y en movimiento que en realidad están relacionados por una transformación afín 2-D.

Cree una transformación afín 2-D.

theta = 10; tformAffine = affine2d([cosd(theta) -sind(theta) 0; sind(theta) cosd(theta) 0; 0 0 1]);

Elija arbitrariamente seis pares de puntos de control. Un polinomio de segundo grado requiere seis pares de puntos de control.

 fixedPoints = [10 20; 10 5; 2 3; 0 5; -5 3; -10 -20];

Aplique la transformación geométrica hacia delante para asignar puntos fijos para obtener el efecto de los puntos fijos y en movimiento que están relacionados por alguna transformación geométrica.

movingPoints = transformPointsForward(tformAffine,fixedPoints); 

Estimar la transformación de segundo grado que encaja y.PolynomialTransformation2DfixedPointsmovingPoints

tformPolynomial = images.geotrans.PolynomialTransformation2D(movingPoints,fixedPoints,2);

Compruebe el ajuste de la transformación en los puntos de control.PolynomialTransformation2D

movingPointsEstimated = transformPointsInverse(tformPolynomial,fixedPoints); errorInFit = hypot(movingPointsEstimated(:,1)-movingPoints(:,1),...                    movingPointsEstimated(:,2)-movingPoints(:,2))

Más acerca de

expandir todo

Introducido en R2013b