Saltar al contenido

¿Parámetros de cálculo para la transformación QGIS Affine?

Mantén la atención porque en esta crónica encontrarás el resultado que buscas.

Solución:

Primero debe proyectar sus coordenadas geográficas en un sistema de coordenadas cartesianas 2D, ya que las transformaciones afines no se aplican a los sistemas de coordenadas geográficas.

Puede aplicar una transformación afín desde puntos de control o desde parámetros de transformación. El complemento QGIS le solicita parámetros de transformación, pero es mucho más común que un usuario tenga puntos de control.

Desde los puntos de control puede calcular los parámetros de transformación. Para una transformación afín existen 6 parámetros de transformación, por lo que se necesitan al menos 3 puntos de control (cada punto de control implica 4 coordenadas: Xsource, Ysource, Xtarget, Ytarget), pero se recomiendan más puntos de control para tener redundancia y así poder aplicar Mínimos cuadrados, que le daría una estimación de la calidad de la transformación. Recuerde que las transformaciones afines pueden rotar, desplazar, escalar (incluso aplicando diferentes factores en cada eje) y sesgar geometrías.

Los puntos de control deben tener la forma:

X SOURCE: Xs
Y SOURCE: Ys
X TARGET: Xt
Y TARGET: Yt

Los parámetros son:

a: Scale X 
e: Scale Y
d: Rotation X
b: Rotation Y
c: Translation X
f: Translation Y

Y sabemos:

Xt = X*a + Y*b + c
Yt = X*d + Y*e + f

Entonces, necesitas resolver este sistema de ecuaciones (para 3 puntos de control):

¦ Xs1 Ys1 1 0 0 0 ¦ | a ¦   ¦ Xt1 ¦
¦ Xs2 Ys2 1 0 0 0 ¦ ¦ b ¦   ¦ Xt2 ¦ 
¦ Xs3 Ys3 1 0 0 0 ¦ ¦ c ¦ = ¦ Xt3 ¦ 
¦ 0 0 0 Xs1 Ys1 1 ¦ ¦ d ¦   ¦ Yt1 ¦ 
¦ 0 0 0 Xs2 Ys2 1 ¦ ¦ e ¦   ¦ Yt2 ¦ 
¦ 0 0 0 Xs3 Ys3 1 ¦ ¦ f ¦   ¦ Yt3 ¦

Donde los parámetros a, b, c, d, e y f son desconocidos.

Una vez que calcule los parámetros a, b, c, d, e y f (por ejemplo, con este solucionador de ecuaciones en línea), colóquelos en la interfaz del complemento QGIS de esta manera:

X' = a*x + b*y + c
Y' = d*x + e*y + f

o:

Parámetros de transformación afines

Creo que esto resuelve tus dos preguntas.

El uso de OpenJump para calcular los rendimientos de parámetros de transformación afines:

Scale x: 0.02550720529745378
Scale y: 0.025669710194697357
Rotation: -88.6538203230914
Dx: 357101.9 (Translation x)
Dy: 4512814.6 (Translation y)

Estos parámetros, cuando se aplican correctamente, deberían transformar su archivo de forma del CRS local que utiliza a WGS84/UTM Zona 17 Norte (EPSG:32617). En QGIS, los datos transformados podrían luego exportarse (“guardarse como”) a cualquier CRS requerido; Google Mercator o lat/lon, por ejemplo.

La mala noticia es que nunca he podido usar con éxito el complemento afín de QGIS para transformaciones que incluyen rotación. Según algunas cuentas, funciona para otras personas, pero no para mí, por lo que debe ser algo que estoy haciendo mal. Si alguien pudiera decirme que es esto se lo agradeceria.

Había un hilo aquí sobre vectores afines que vale la pena leer. El método que uso para afinar vectores se explica aquí en la parte inferior de la primera página.

Si realmente te atascas, puedes publicar un enlace al archivo de forma y todos podríamos intentar transformarlo.

Una ocurrencia tardía. Si decide probar el método OpenJump, necesitará las coordenadas WGS84/UTM Zona 17 Norte (EPSG:32617) para sus puntos de latitud/longitud:

EPSG:32617: 361154.4 4513930.1
lat/long: 40.764622,-82.645056
shapefile coor: 947.3,1242.8

EPSG:32617: 361152.2 4513850.3
lat/long: 40.763903,-82.645064
shapefile coor: 4050.3,1035.7

EPSG:32617: 361246.5 4513886.7
lat/long: 40.764247,-82.643956
shapefile coor: 2710.5,4765.2

Te invitamos a añadir valor a nuestro contenido informacional aportando tu experiencia en las anotaciones.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *