rumigaculum.com

  • Aumentar tamaño del tipo
  • Tamaño del tipo predeterminado
  • Disminuir tamaño del tipo
Inicio Computación y cálculo numérico Georreferenciación, conversión de coordenadas y cálculo de distancias y azimuts geográficos

Georreferenciación, conversión de coordenadas y cálculo de distancias y azimuts geográficos

E-mail Imprimir PDF

Introducción

La georreferenciación de puntos sobre la superficie terrestre no es asunto baladí. Ya sólo para adquirir un conocimiento meramente superficial (como el que he podido adquirir), es necesario consultar fuentes variadas en Internet, a veces confusas y oscuras cuando no contradictorias entre sí. Este artículo no debe verse como una introducción a la materia en cuestión, sino como un índice de la fuentes de información que, consultadas de una manera ordenada, pueden hilvanar una primera toma de contacto con la georreferenciación de puntos geográficos.

Esta toma de contacto ha sido, por otra parte, más que suficiente para elaborar el proyecto GeoLocation, que nos permitirá manipular coordenadas geográficas (en notación geodésica y UTM), así como medir la distancia entre dos puntos geográficos y los ángulos respecto del norte (o azimuts) del segmento curvo que une tales puntos sobre el elipsoide considerado.

Para el que no tenga ningún conocimiento previo sobre el asunto, el párrafo anterior le ha podido resultar ya demasiado intimidatorio. No debe preocuparse empero: voy a dar las referencias necesarias (más una serie de comentarios que considero aclaratorios) con objeto de que todo lo anterior se entienda suficientemente.

Elipsoides y coordenadas

Un elipsoide es la superficie que resulta de la rotación de una elipse sobre uno de sus ejes (que para nuestros intereses será siempre el eje menor). La forma de un elipsoide se fija con tan sólo dos parámetros, que pueden ser, por ejemplo, las longitudes de los ejes mayor y menor de la elipse generatriz.

El lector debe imaginarse el elipsoide aún como un objeto puramente matemático, sin ligarlo en ningún momento al planeta Tierra o a ninguna otra esfera celeste. Tampoco es el momento de hablar de proyecciones y mapas. Lo anterior es esencial para, de alguna manera, desentrañar la complejidad conceptual del asunto que tenemos entre manos.

Hay una idea clave que, aunque sencilla, no se explicita en las referencias a las que he acudido en Internet: es posible construir un sistema de coordenadas cualquiera (geodésico o UTM, por ejemplo) sobre un elipsoide. Para hacer esto no es necesario ningún planeta, ningún sistema de proyección ni ningún mapa. Dichas coordenadas pueden asignarse directamente a los puntos del elipsoide.

Tomemos para ello nuestro elipsoide y dibujemos en él un ecuador (su circunferencia máxima) y una serie de meridianos. Los conceptos de meridiano y paralelo creo que son claros y los daré por sobrentendidos. Uno de estos meridianos lo elegiremos arbitrariamente como el meridiano cero. Podemos trazar un eje perpendicular al ecuador y que pase por su centro. Dicho eje atravesará al elipsoide en sendos puntos que llamaremos polo norte (imaginémoslo arriba) y polo sur (imaginémoslo abajo). Es importante notar que dichos polos se denominan geodésicos o verdaderos. Por otra parte el ecuador divide al elipsoide en dos casquetes simétricos. El que contiene al polo norte se denomina hemisferio norte; el que contiene al polo sur se denomina hemisferio sur. Las coordenadas geodésicas (latitud / longitud) se construyen inmediatamente para cada punto de la forma siguiente:

  • Latitud: es el ángulo formado por una perpendicular al elipsoide en el punto escogido con respecto al plano ecuatorial. Por convención el ángulo es positivo para puntos situados en el hemisferio norte y negativo para los situados en el hemisferio sur. Es importante hacer notar que la perpendicular a cualquier punto del elipsoide no pasa (de manera general) por el centro de dicho elipsoide.
  • Longitud: es el ángulo que forma el plano del meridiano donde se encuentra el punto escogido respecto del plano del meridiano cero. Por convención el ángulo es positivo para puntos al este (izquierda) del meridiano cero y negativo para los situados al oeste (derecha).

La latitud puede variar en el rango [-90,0º, +90,0º] mientras que la longitud se considera definida en el rango [-180,0º, +180,0º). Vemos que un punto cualquiera del elipsoide queda situado sin ambigüedad dando sus coordenadas geodésicas.

 

Coordenadas geodesicas

Fig. 1 - Coordenadas geodésicas

 

La construcción de las coordenadas UTM es algo más compleja, aunque no demasiado. Si desde un punto cualquiera viajamos a lo largo de su meridiano hasta intersecar el ecuador, la distancia recorrida (normalmente medida en metros) será el norte (o en inglés northing) de dicho punto. Para los puntos situados en el hemisferio norte el northing lo da la referida distancia. Para puntos en el hemisferio sur el northing se calculará como 1E10 m (diez mil millones de metros) menos dicha distancia. Hay entonces pares de puntos (uno en el hemisferio norte y otro en el hemisferio sur) con el mismo valor de northing, por lo que en coordenadas UTM es preceptivo indicar el hemisferio a que pertenece un punto para evitar toda ambigüedad. Aparte del hemisferio y del northing nos hará falta otro par de valores para definir un punto en coordenadas UTM. Dibujemos en nuestro elipsoide los meridianos con longitudes: 0º, 3º, 6º, 9º, ... hasta dar una vuelta completa (es como pintar las rayas de un balón de baloncesto). La región del elipsoide comprendida entre los meridianos de longitud 0º y 6º se denomina huso 31. El meridiano de longitud 3º es el meridiano central de dicho huso. El huso 32 lo delimitan los meridanos 6º y 12º (siendo 9º el meridiano central), y así hasta llegar al huso 60. Inmediatamente más hacia el este comenzaremos la numeración por el huso 1 y así hasta llegar al huso 30 y cubrir por completo el elipsoide. El huso a que pertenece un punto del elipsoide forma parte de las coordenadas UTM de dicho punto. Sólo nos queda una última coordenada para eliminar toda ambigüedad: el este (o en inglés easting) de un punto. Por convención, todo punto situado sobre el meridiano central de un huso tendrá un easting de 5E5 m (quinientos mil metros). Todo punto al este (izquierda) del meridiano central verá incrementado su easting en la distancia, medida a lo largo de su paralelo, hasta intersecar con el meridiano central. Para los puntos situados al oeste (izquierda) del meridiano central, esta distancia será sustraída de 5E5 m para componer su easting correspondiente.

 

Coordenadas UTM

Fig. 2 - Coordenadas UTM

 

Recapitulemos; para dar, fuera de toda ambigüedad, las coordenadas UTM de un punto en un elipsoide deberemos indicar: su huso, su hemisferio, su easting y su northing.

Quizá al lector no le haya resultado inmediato hacer una composición mental de todos los conceptos anteriores pero el éxito radica (aun pecando de pesado) en imaginar dicha composición en un elipsoide, esto es, en un objeto tridimensional, y no en ninguna proyección, plano o mapa. Así, todas las distancias de las que hemos hablado anteriormente son longitudes medidas en segmentos curvos (pues se dibujan sobre el mismo elipsoide).

Distancias y ángulos en elipsoides

Tomemos un punto cualquiera del elipsoide y dibujemos, en un pequeño entorno alrededor, el lugar geométrico de los puntos que comparten el mismo easting con dicho punto. Dibujemos la tangente a dicho lugar geométrico (segmento curvo) en el punto en cuestión. Dicha tangente materializará una dirección en el espacio y un sentido (si la recorremos hacia el norte) que denominaremos norte de cuadrícula (grid north). Idéntico ejercicio podemos hacer con el meridiano que pasa por el punto en estudio. Su tangente materializará una dirección en el espacio y un sentido (si la recorremos hacia el norte) que denominaremos norte geodésico o verdadero (geodetic / true north). El ángulo formado por estas dos tangentes se denominará convergencia de cuadrícula en el punto referido (grid convergence o a veces llamada grid declination, aunque esta última denominación puede llegar a ser ambigua). Aunque no existe un convenio universal sobre el signo de dicho ángulo, nosotros tomaremos el más extendido: se medirá desde el norte geodésico al norte de cuadrícula, con sentido positivo en la dirección de las agujas del reloj.

Es importante hacer notar que la convergencia de cuadrícula es local a cada punto del elipsoide. Invito al lector a realizar un sencillo ejercicio mental para constatar que:

  • Un punto en el hemisferio norte al este del meridiano central de su huso tiene una convergencia de cuadrícula positiva.
  • Un punto en el hemisferio norte al oeste del meridiano central de su huso tiene una convergencia de cuadrícula negativa.
  • Un punto en el hemisferio sur al este del meridiano central de su huso tiene una convergencia de cuadrícula negativa.
  • Un punto en el hemisferio sur al oeste del meridiano central de su huso tiene una convergencia de cuadrícula positiva.

Tomemos ahora dos puntos distintos del elipsoide (que llamaremos P1 y P2). De todos los caminos que sobre el elipsoide unen P1 y P2 habrá uno de mínima distancia. La longitud de dicho segmento curvo definirá la distancia entre los puntos P1 y P2. Consideraremos por otra parte que dicho segmento está orientado, partiendo de P1 y finalizando en P2. Si trazamos la tangente a dicho segmento en el punto P1, podemos materializar los siguientes ángulos:

  • Azimut geodésico (geodetic azimuth o bearing): es el ángulo, medido en sentido de las agujas del reloj, que va desde el norte geodésico (en P1) a la tangente del segmento considerado.
  • Azimut geodésico proyectado (projected geodetic azimuth): es el ángulo, medido en sentido de las agujas del reloj, que va desde el norte de cuadrícula (en P1) a la tangente del segmento considerado. Pese al término proyectado del nombre, este ángulo se dibuja en el propio elipsoide, como los anteriores.

En general el término azimut lo empleamos para referirnos a un ángulo medido desde el norte (geodésico, de cuadrícula u otro). Los azimuts anteriores son locales a cada punto; los hemos tomado en el punto P1, pero igualmente podríamos haberlo hecho en el punto P2 o en cualquier otro punto del segmento, obteniendo resultados distintos.

Es hora de incluir algunos enlaces interesantes. Para el cálculo de la distancia geodésica entre dos puntos de un elipsoide (esto es, de la longitud del menor segmento curvo que los une) se emplea el algoritmo inverso de Thaddeus Vincenty (en inglés). Dicho algoritmo permite además calcular los azimuts geodésicos (bearings) en los puntos inicial y final de dicho segmento.

Por otra parte, dado un punto P1 mediante sus coordenadas geodésicas, un valor de azimut geodésico (bearing) y una distancia geodésica, el algoritmo directo de Thaddeus Vincenty (en inglés) permite encontrar las coordenadas del punto P2 al final del segmento definido.

Si lo que queremos es pasar de coordenadas geodésicas a coordenadas UTM o viceversa, estos enlaces son de muy buena calidad: The Transverse Mercator Projection y New Zealand Geodetic Datum 2000 Projections: version 2 - LINZS25002.

Si estamos interesados en los elipsoides que de manera práctica se usan en georreferenciación,  las siguientes páginas son muy concisas: Constants for Reference Ellipsoids used for Datum Transformations y Reference Ellipsoid Parameters.

La proyección UTM

Ha llegado el momento de proyectar nuestros puntos y segmentos del elipsoide sobre una superficie cilíndrica, para luego abrirla (desarrollarla) y obtener una superficie plana (plano). En el documento Las coordenadas geográficas y la proyección UTM, se explica con suficiente detalle (desde la página 24) cómo se efectúa una proyección UTM (Universal Transverse Mercator). Tenga la precaución el lector de considerar que estamos aún proyectando puntos y líneas dibujados en un elipsoide (no existe por tanto el planeta Tierra ni ningún otro cuerpo celeste).

Una característica esencial de la proyección UTM es que es conforme. En efecto: al dibujar dos segmentos secantes (que se cortan) sobre el elipsoide, forman un ángulo determinado. Al proyectar dichos segmentos sobre el cilindro UTM y desarrollarlo, el ángulo que forman las proyecciones será el mismo. Por contra es una proyección no equivalente. Esto significa que un segmento proyectado no tiene, por regla general, la misma longitud que el segmento original sobre el elipsoide. Un segmento de longitud muy pequeña dL (infinitesimal) que parta de un punto P cualquiera del elipsoide tendrá una longitud, tras ser proyectado, de k(P)dL, donde k(P) es un factor local al cada punto P' proyectado y se denomina factor de escala (scale factor). Obsérvese que el factor de escala es una propiedad del punto P' proyectado sobre el cilindro de proyección.

Imaginemos ahora dos puntos P1 y P2 sobre el elipsoide, siendo S el segmento curvo de mínima longitud que los une. Cada uno de los puntos anteriores tiene intrínsecamente ligado unos valores de coordenadas (ora geodésicas, ora UTM). Al proyectarlos sobre el cilindro de proyección (para inmediatamente desarrollarlo en una superficie plana) dichas coordenadas se trasladan tal cual están; en efecto, las coordenadas son propiedades generadas en el elipsoide, no en el cilindro de proyección.

Aparte de los puntos P1, P2 y el segmento S, podemos proyectar lugares geométricos interesantes, como el de puntos que comparten un mismo easting o un mismo northing. Al actuar así estaremos creando en la superficie plana desarrollada una especie de cuadrícula o reticulado (grid). En cada punto P' proyectado, la línea horizontal y la línea vertical que lo cruzan no forman estrictamente 90º. Dicho ángulo se ve mayorado o minorado por el valor de la convergencia de cuadrícula en la anteproyección P de dicho punto (reflexione el lector por qué).

Al proyectar el segmento S (que deviene en S' sobre la superficie plana desarrollada) el resultado será, de manera general, otro segmento curvo (aunque ahora plano) con distinta longitud a la del antesegmento S original (recuérdese que la proyección es no equivalente). Acontece además un hecho curioso: la línea recta que une los puntos del plano P1' y P2' no se corresponde, de manera general, con el camino más corto entre las anteproyecciones P1 y P2 correspondientes del elipsoide.

Sean Ei y Ni los valores respectivos de easting y northing de un punto Pi del elipsoide (para todos los Pi pertenecientes a un mismo huso). Podemos definir los siguientes conceptos:

  • Distancia de cuadrícula (grid distance) entre los puntos P1' y P2': se calculará como [(E2-E1)2+(N2-N1)2]1/2.
  • Azimut de cuadrícula (grid azimuth) del segmento S': se calcula (medido en radianes) como arctan((E2-E1)/(N2-N1)).

Es de recalcar que ni la distancia ni el azimut anterior son materializables (dibujables) en el elipsoide (al contrario que los conceptos de distancia geodésica, azimut geodésico y azimut geodésico proyectado que hemos visto con anterioridad). Además, dado que el reticulado formado en el plano adolece de deformaciones en longitudes (por ser el factor de escala local a cada punto) y en ángulos (por ser la convergencia de cuadrícula local a cada punto), sucede que:

  • La distancia de cuadrícula no es (estrictamente hablando) la longitud de la recta que une los puntos P1' y P2'.
  • El azimut de cuadrícula no es (estrictamente hablando) el ángulo entre el norte de cuadrícula correspondiente al punto P1' y la recta que une los puntos P1' y P2'.

De lo anterior colegimos que, sensu stricto, los conceptos de distancia de cuadrícula y azimut de cuadrícula no tienen representación geométrica ninguna (ni en el elipsoide ni en la proyección final). Sensu lato, empero, si los puntos P1 y P2 están relativamente cerca uno del otro y ambos relativamente cerca del meridiano central del huso, la distorsión de la cuadrícula, tanto en ángulos como en longitudes, es absolutamente despreciable, por lo que podemos admitir la interpretación geométrica que evidencian las expresiones anteriores.

La distancia y el azimut de cuadrícula tienen la ventaja de que, desde un punto de vista meramente aritmético, son muy fáciles de obtener. Disfrutan además de propiedades interesantes:

  • Para puntos P1 y P2 no muy distantes en el elipsoide, la distancia de cuadrícula aproxima suficientemente bien la distancia geodésica.
  • Para puntos P1 y P2 no muy distantes en el elipsoide, el azimut de cuadrícula aproxima suficientemente bien el azimut geodésico proyectado.

Estas propiedades son muy interesantes, porque como ya hemos podido ver en los algoritmos de Thaddeus Vincenty, la distancia geodésica y el azimut geodésico proyectado son costosos de obtener.

El proyecto GeoLocation

Hasta ahora hemos hablado de elipsoides y proyecciones (ni rastro de la Tierra ni de ningún otro cuerpo celeste)... y de momento vamos a continuar así.

GeoLocation es un proyecto escrito en C++ estándar que permite efectuar todo tipo de cálculos sobre los puntos de un elipsoide y los segmentos que los unen. Consta fundamentalmente de dos clases que albergan casi toda la implementación matemática:

  • Clase GeoLocation: permite la creación de un punto geográfico sobre un elipsoide determinado. Puede crearse mediante coordenadas geodésicas o UTM. Permite la transformación de coordenadas y ofrece datos de interés sobre dicho punto y sobre su proyección (convergencia de cuadrícula, factor de escala, etc.).
  • Clase GeoSegment: permite la creación del segmento curvo de menor longitud entre dos puntos de un elipsoide determinado. Ofrece toda la información relativa a dicho segmento (distancia geodésica, azimut geodésico, azimut geodésico proyectado) así como otros valores no geométricos (distancia de cuadrícula y azimut de cuadrícula). Implementa los algoritmos inverso y directo de Thaddeus Vincenty.

Aparte de las clases anteriores, se ofrecen otras clases intermediarias (UTMLocation, GeodeticLocation, OnePointSegment, TwoPointSegment,...) cuya finalidad consiste en que el costoso proceso de creación de objetos GeoLocation y GeoSegment tenga lugar exclusivamente cuando de veras se necesite recuperar información de dichos objetos. Existe otro surtido de clases que implementan conversiones de coordenadas según varios modelos matemáticos (Bursa-Wolf, Molodensky-Badekas, etc.). Se ha implementado por último el modelo de geoide EGM96, con el que es posible calcular altitudes de puntos geográficos con respecto del nivel medio del mar.

El lector interesado podrá conseguir el código fuente del proyecto GeoLocation en la página de descargas.

¡Por fin, la Tierra!

Si aún después de la perorata anterior el amable lector ha llegado hasta aquí, seguro tendrá dos cosas en la cabeza: la primera una jaqueca considerable y la segunda una pregunta impaciente: ¿pero cómo asigno a la torre de la iglesia de mi pueblo unas coordenadas geodésicas o UTM? Siento contestarle que, en realidad, no lo sé; soy un verdadero lego en la materia...

Hemos hablado hasta ahora y de manera frecuente de elipsoides. Existen muchos distintos. Ya hemos apuntado varias referencias. ¿Pero para qué se usan? Los elipsoides de los que hemos estado hablando son muy grandes, del tamaño de la Tierra. Un elipsoide puede usarse para ajustar la forma de la Tierra de manera más o menos global o de modo regional (un país o continente). La manera como se hace esto me es desconocida, pero lo que resulta claro es que para situar espacialmente dos objetos en el espacio (la Tierra y su elipsoide de ajuste), uno respecto del otro, es necesario dar un conjunto de distancias (entre sus centros, por ejemplo) y una serie de ángulos (entre unos ejes previamente definidos en ambos cuerpos). Al conjunto formado por el elipsoide y las métricas (distancias y ángulos) necesarios para ajustar la posición y orientación del mismo sobre la Tierra se denomina dátum. Un mismo elipsoide puede dar lugar a muchos dátums distintos; basta con querer ajustar una región diferente de la Tierra cada vez. En The Earth as an Ellipsoid se ve de manera muy gráfica todo lo anterior.

Hemos dicho que los elipsoides ajustan la Tierra en su conjunto, o grandes regiones de la superficie terrestre. Esto no es del todo verdad: la Tierra es un astro demasiado irregular y abrupto como para ser ajustado mediante un suave elipsoide. Ni siquiera los océanos son superficies estables, por culpa de las mareas. Aparece entonces el concepto de geoide. En la referencia Geoide y Elipsoide se explica qué es el geoide y cómo los elipsoides tratan de ajustar (en parte o en su totalidad) dicho geoide, y no la superficie terrestre.

Estimado lector: a cierta altura por encima de su cabeza, o a cierta profundidad bajo sus pies pasa el geoide. En un plano distinto pasa el elipsoide WGS 1984 (usado en posicionamiento GPS) y por muchos otros planos pasan todos los elipsoides que podamos imaginar. Las coordenadas geodésicas y UTM ya están dibujadas en cada uno de los puntos de dichos elipsoides; son anteriores al ajuste del geoide. No sé bien de qué manera la torre de la iglesia de su pueblo se hace corresponder (hacia el cielo o hacia el infierno) con un punto en cada uno de esos elipsoides, pero todos esos puntos de correspondencia ya tenían grabadas coordenadas (de manera general) distintas. Éste es un hecho muy importante y que conviene recordar: las coordenadas de un objeto dependen del dátum que haya servido para georreferenciarlo.

Share