Abtract
The bounds between the real and virtual world are becoming increasingly blurred. Information provided by digital systems is more present each day in our daily activities. A good example of this is the development of Augmented Reality (AR). The present project develops a system based on Augmented Reality (AR) and GPS technologies which is designed to assist the guidance of tractors through agricultural plots. The tractor employed in this project has been equipped with a laptop, LCD monitor, a Web-camera Genius VideoCAM Slim USB2 able to capture 640x480 at 25 fps, and a Novatel Smart Antenna V1 GPS receiver configured to provide positioning data at a frequency of 5 Hz. AR is a versatile technology, which applied to agricultural guidance systems, provides clear and precise information, improving the existing mechanisms. The following chapters explain the main aspects and topics behind the project and offer an account of the conclusions derived from the theoretical and practical studies involved in our research. As the final stage of this project, the new guidance system was tried out in several plots in Aguilar de Bureba (Burgos). The successful testing proves the efficiency and viability of an AR-based guidance system as an inexpensive device which can be quickly and easily implemented. The relevance of the present project can also be judged in terms of its potential of future developments. One possible implementation would be the inclusion of see-through glasses, with an inertial system detecting users’ gaze, as part of the device.
1. Introducción
En los últimos años las comunicaciones interpersonales son cada vez más cercanas. Ejemplos de ello son el uso de 3G en la telefonía móvil o las nuevas redes sociales de internet, que permiten intercambiar texto, sonido y vídeo en tiempo real, facilitando así la interacción entre los distintos usuarios. En el campo de la ingeniería, las nuevas herramientas tienden a ofrecer un entorno de percepción cada vez más inmersa, de manera que la persona pueda comprender e interactuar de forma natural con un entorno inmediato o distante.
Esta inmersión de la persona en la información, muchas veces va más allá de lo que los sentidos pueden percibir por ellos mismos e intentan así aumentar la capacidad de percepción del individuo. Unos prismáticos son un ejemplo sencillo de aumento de la capacidad perceptiva de una persona, un aparato para la sordera o unas gafas graduadas también; pero estos tres ejemplos lo único que hacen es corregir o potenciar unos sentidos de los que el individuo dispone por naturaleza. La tecnología ha permitido también añadir información elaborada a lo que estamos percibiendo. Esta información, no la tendría la persona de forma natural, sino que debería utilizar diferentes aparatos de medida para obtenerla, y crear una asociación mental de lo que está percibiendo con los datos suplementarios. Cuando se presenta a una persona información convencional del mundo real, donde se añaden datos más o menos elaborados, hablamos de que se está haciendo realidad aumentada.
Una definición clásica de RA es la Azuma [Azum97], por ser una de las más concretas, aunque no llega a cubrir al 100% lo que se entiende por RA. Según Azuma, la realidad aumentada es un entorno que incluye elementos de Realidad Virtual y elementos del mundo real. Siguiendo esta definición, entendemos por un sistema de RA aquel que combina mundo real y mundo virtual, es interactivo en tiempo real y se registra en 3 dimensiones.
Así pues, un sistema de RA necesitará un medio de capturar la imagen del mundo real (una cámara de vídeo o una webcam), una máquina capaz de crear imágenes sintéticas y de procesar la imagen real añadiendo esta información (un procesador y software específico para esto) y un medio en el que proyectar la imagen final (una pantalla). En función de la aplicación, existen diferentes maneras de construir y mostrar la realidad aumentada. A veces interesa añadir la información de forma numérica, textual, en forma de líneas, realizando cambios de coloración o bien añadiendo objetos que no estaban presentes en la escena. Cuando lo que se trata es una secuencia de imágenes aparecen las restricciones del tiempo de proceso para la correspondencia y mezcla de la información.
El incremento del número de aplicaciones donde se combina lo real con lo virtual hizo aparecer un concepto más amplio llamado Mixed Reality (realidad mezclada). Paul Milgram, uno de los investigadores más activos en el tema, define un intervalo continuo desde los entornos reales hasta los virtuales [Milg94], donde la RA es una parte del área general de la realidad mezclada. Los sistemas de Realidad Mezclada se encuentran entre los extremos del intervalo continuo, y en ellos los mundos real y virtual se combinan en distintas proporciones y se presentan como un todo unificado, como se ve en la Figura 1-1:

Figura 1-1: Intervalo continuo Realidad-Virtualidad de Milgram.

Figura 1-2: Arquitectura de RA basada en monitor.
Dentro de este espectro, se focalizará el estudio en las aplicaciones de realidad aumentada, donde en un entorno mayoritariamente real se introduce alguna información virtual. Tenemos que hablar ahora de dos procesos: cómo se hace la mezcla de información real y virtual, y cómo se alinean estas informaciones para que el usuario las perciba correctamente. La presentación de la información al usuario se plantea habitualmente con el uso de un casco de realidad virtual del tipo HMD o unas see-through glasses. Para nuestro sistema se ha elegido una arquitectura de RA basada en monitor, en la que a las imágenes capturadas por una videocámara se le añadirá información extra, mostrando el resultado en una pantalla LCD. La arquitectura es similar a la que aparece en la Figura 1-2.
Cuando se desarrolla un sistema mediante RA uno de los problemas que se presentan es el alineamiento entre el mundo real y el mundo virtual, es decir, la correspondencia o en terminología inglesa registration. Consiste básicamente en hacer que la estructura tridimensional del mundo virtual corresponda con la del mundo real para que las informaciones que se aportan se representen en el lugar correcto. También es necesario conocer la posición del observador y hacia dónde está mirando para saber cómo proyectar el mundo virtual. Si el usuario lleva puesto un casco de realidad virtual con un sensor de posición y orientación puede resolver esta necesidad [Polh05], si lleva una cámara se pueden utilizar técnicas de visión por ordenador para resolver la posición y orientación a partir de cierto número de puntos conocidos [Fisc81].
2. Estado del arte en el campo de la RA.
Los sistemas de Realidad Aumentada, como ya vimos, pueden considerarse una variación o ampliación del concepto de Entorno Virtual (EV). En los sistemas de RA, el entorno es real y se complementa o aumenta con elementos virtuales. Pese a que ambos campos tienen una problemática y un origen común, históricamente se han dedicado mayores esfuerzos de investigación a los EV que a la RA. En 1966 Sutherland desarrolló el primer prototipo de casco de visión (Head-Mounted Display, HDM) denominado "Espada de Damocles" por su aparatosidad [Burd03]. Este sistema, a pesar de no registrar explícitamente objetos virtuales 3D con objetos del mundo real, puede considerarse un ejemplo de la combinación real-virtual, ya que utilizaba tecnologías ópticas que permitían captar directamente el entorno circundante.
En la última etapa de los ochenta y principios de los noventa, la investigación en RA experimenta un auge considerable [Azum99]. A finales de los noventa se ponen en marcha conferencias como IEEE International Workshop on Augmented Reality (IWAR) o ACM International Symposium on Mixed Reality (ISMR). Desde el año 2002, ACM e IEEE unen sus conferencias en IEEE-ACM Joint International Symposium on Mixed and Augmented Reality (ISMAR). También a finales de los noventa se fundan consorcios interdisciplinares dedicados al estudio de la RA, como el Laboratorio de Sistemas de Realidad Mixta en Japón y el proyecto ARKIVA en Alemania. En 1997 Azuma publica uno de los primeros estudios que define la RA, plantea sus problemas y resume su desarrollo hasta ese momento [Azum97]. En el año 2002 arranca la primera edición de la conferencia IEEE International Augmented Reality Toolkit Workshop (ART), dedicada específicamente a investigaciones y aplicaciones de Realidad Aumentada desarrolladas utilizando la librería ARToolkit.
Uno de los factores que determina en mayor medida las características de un sistema de RA es el espacio de trabajo en que dicho sistema se va a utilizar. Los sistemas de RA pueden aplicarse tanto en entornos interiores (habitualmente locales cerrados como museos, edificios o laboratorios) como en exteriores (entornos al aire libre). El trabajo en entornos exteriores se dificulta debido a la limitación existente en el uso de herramientas que faciliten la combinación real-virtual. Los entornos interiores pueden prepararse para facilitar la integración de los objetos virtuales, por lo que el diseño de sistemas para este tipo de entornos resulta menos complejo. En interiores, la determinación de la pose (posición y orientación) del usuario o cámara puede realizarse mediante sensores de localización mecánicos, magnéticos, ultrasónicos y ópticos. Este tipo de sensores ofrecen resultados bastante precisos, en gran parte porque el entorno puede ser perfectamente preparado colocando marcas, señales, emisores, etc., que pueden ser detectados de forma fácil y precisa [Reki98], [Moli98], [Foxl03]. Aunque los sistemas de RA para entornos interiores son útiles en un gran número de campos de aplicación (como medicina, educación, comunicaciones, etc.), los esfuerzos de investigación en RA se están dirigiendo a la producción de sistemas que se puedan utilizar en exteriores. Los avances recientes en informática móvil y el desarrollo de nuevos sistemas de seguimiento de gran alcance y precisión facilitan la exploración de entornos exteriores con sistemas de RA.
Los sistemas de RA en exteriores necesitan utilizar sensores de localización de gran alcance, como sensores magnéticos, inerciales, GPS, etc. La precisión que puede alcanzar este tipo de sistemas depende generalmente del costo del hardware y de la ausencia de determinados fenómenos en el entorno que puedan interferir en la medición [Fein97]. Como alternativa, algunos autores plantean la posibilidad de utilizar sensores de bajo coste para la estimación de la pose. El margen de error en este tipo de sensores obliga generalmente a combinarlos con otras técnicas de localización, habitualmente basadas en la incorporación de técnicas de visión por ordenador. Los sistemas híbridos basados en sensores de bajo coste y apoyo en técnicas de visión se han aplicado en trabajos como [Auer00], [Vlah02] o [Piek04].
Actualmente, uno de los retos en la construcción de sistemas de RA es lograr un sistema de RA ideal, portable, lo más ligero, pequeño y potente posible, que permita al usuario explorar libremente cualquier entorno no preparado. Aunque las aplicaciones en exteriores ofrecen posibilidades tentadoras, hasta el momento se han construido pocos prototipos de RA capaces de trabajar en este tipo de entornos de forma precisa. En la mayoría de prototipos funcionales, el usuario debe acarrear una pesada mochila con la CPU y periféricos, un HDM y guantes de interacción [Piek04]. Entre los trabajos publicados que pretenden aumentar la portabilidad de los sistemas de RA podemos destacar aquellos dirigidos a su implantación sobre TabletPC [Zhu03], PDAs o sobre teléfonos móviles [Moeh04]. Estos trabajos están enfocados fundamentalmente a portar tecnologías conocidas, destacando una versión de ARToolkit para sistemas PocketPC presentada por Wagner et al. [Wagn05].
Otros dos puntos a tener muy en cuenta a la hora de desarrollar una aplicación de RA, son las restricciones que existen al registrar el mundo real con el virtual, y la necesidad de un seguimiento preciso de la posición de la cámara o el observador. Muchos esfuerzos de investigación se han dirigido a solucionar problemas de registro [Fuhr99] [Coel04] aunque el problema es difícil de resolver debido al gran número de fuentes de error implicadas en el sistema. Los errores de pequeña magnitud son perceptibles por el usuario, y pocos sistemas de seguimiento comerciales (de los que depende en gran medida el registro) pueden proporcionar la precisión requerida en la mayoría de aplicaciones [Azum99]. En muchas aplicaciones de RA el registro se refuerza localizando objetos de referencia en el entorno. Estos objetos de referencia pueden ser LEDs [Baju95] o marcas. Las técnicas mencionadas se basan en determinar la proyección relativa entre los objetos en el entorno y la cámara de vídeo. El proceso es complejo porque tanto la detección de características como el emparejamiento con los objetos virtuales deben ejecutarse en tiempo real y ser robustos. Habitualmente es necesario utilizar sistemas hardware basados en sensores específicos. Una vez determinada la relación de proyección, pueden aplicarse técnicas de seguimiento visual (visual servoing) para garantizar el registro en tiempo real [Comp03]. En los últimos años se han producido avances significativos en las técnicas de registro, pero estos avances no permiten considerar el registro como un problema resuelto. Muchos sistemas imponen restricciones, como suponer que los puntos de vista o los objetos de la escena permanecen estáticos o son muy conocidos. Aún si el punto de vista o los objetos pueden moverse, suelen imponerse restricciones en las distancias máximas que pueden recorrer. El registro puede realizarse bajo circunstancias controladas, a menudo con un número pequeño de objetos del mundo real o con objetos conocidos para el sistema. La implementación de técnicas de registro se convierte en una tarea ardua debido a la complejidad de los métodos y el hardware adicional requerido [Azum01].
En cuanto a los métodos de seguimiento basado en sensores la localización del observador en un entorno exterior amplio suele basarse en sensores alternativos a los utilizados habitualmente en un Entorno Virtual (sensores mecánicos, ópticos o de ultrasonido). La estimación de la posición suele realizarse mediante unidades GPS o sensores inerciales (acelerómetros), mientras que para la dirección de observación se utilizan sensores magnéticos (compases digitales) o inerciales (giróscopos e inclinómetros). Son numerosas las investigaciones realizadas que utilizan sensores hardware para implementar el sistema de seguimiento. Por ejemplo, en la Universidad de Colombia se han realizado trabajos sobre el uso de interfaces para el diseño de sistemas de RA móviles (MARS) que permitan a los usuarios recorrer libremente un entorno. Como resultado de estas investigaciones se han desarrollado los sistemas Touring Machine, Situated Documentaries [Holl99a] y ARQuake. Por último, en coordinación con investigadores del Laboratorio de Investigación Naval de Washington, se desarrolló el sistema BARS [Juli00b].
Los sistemas de seguimiento basados en técnicas de visión pueden utilizar técnicas de procesamiento de imágenes o técnicas de visión por ordenador para mejorar el registro. Los sistemas de RA basados en vídeo cuentan con una imagen digital del entorno real, lo que permite detectar características en el entorno y utilizarlas para forzar el registro. La incorporación de técnicas de visión por ordenador en el sistema de seguimiento puede realizarse de dos formas distintas: por un lado, es posible mejorar el registro localizando puntos de referencia en el entorno (seguimiento basado en marcas); como alternativa, se pueden utilizar técnicas de reconocimiento de patrones para realizar el registro [Iu96]. De forma general, el seguimiento basado en técnicas de visión por ordenador es preciso pero no fiable debido a problemas de oclusión, sombras y movimientos rápidos. Por otra parte, los algoritmos implicados presentan un coste temporal elevado que, en la mayoría de los casos, no es asumible en aplicaciones que deben ejecutarse en tiempo real. Entre las principales propuestas de marcadores realizadas podemos destacar el sistema TRIP (Target Recognition using Image Processing) [Lope01], el sistema de anillos coloreados multiresolución de Cho, Lee, y Neumann [Cho98], el sistema CyberCode [Reki00] y el propuesto en la librería ARToolkit propuesta por Hirokazu Kato y Mark Billinghurst [Kato00]. Esta librería ha sido utilizada en un gran número de aplicaciones en interiores como el MagicBook [Bill01] o el propuesto por Kalkusch et al. [Kalk02], en el que presentan un sistema de seguimiento basado en ARToolkit y sensores inerciales (Intersense InterTrax2). El sistema permite al usuario seleccionar un destino dentro del edificio, determina el camino más corto y lo guía hasta él mediante señales visuales. Otros ejemplos del uso de esta librería en aplicaciones interiores los tenemos en [Kato99] [Sinc01] [Wagn05], así como en algunas aplicaciones en exteriores en las que esta combinada con otras técnicas para dar lugar a un sistema híbrido.
Existen otras aplicaciones similares a las propuestas Kalkusch et al. [Kalk05], pero presentan limitaciones como la restricción en la cantidad de patrones a utilizar [Reki98], mayores oscilaciones [Moli98], mayor cantidad de marcas dentro del campo de vista de la cámara [Foxl03], etc. Estas técnicas se aplican generalmente en interiores con resultados aceptables, pero resulta difícil extender los sistemas para que funcionen en el exterior. Normalmente, los sistemas para entornos exteriores suelen incorporar sensores hardware para reforzar el seguimiento, dando lugar a sistemas híbridos.
Se han desarrollado distintas técnicas para intentar realizar un seguimiento fiable basado en la detección de objetos conocidos en la escena. En muchos casos, el seguimiento se realiza comparando la imagen actual con un conjunto de imágenes de referencia [Stri01] [Chia02]. Las imágenes se capturan y registran de forma previa utilizando un sistema de seguimiento basado en sensores o en marcas, pudiendo incluirse algoritmos de aprendizaje en el mismo [Genc02].
Algunos autores plantean una aproximación alternativa basada en el seguimiento visual de características. Comport et al. [Comp03] proponen un algoritmo de seguimiento basado en un modelo 3D del entorno real. El algoritmo realiza el seguimiento de la proyección de objetos en movimiento en la escena, incluyendo líneas, circunferencias, cilindros y esferas. La técnica utilizada, denominada virtual visual servoing, se ha aplicado históricamente al guiado de robots [Cork96]. La técnica de seguimiento planteada por Comport et al. ha sido revisada recientemente por distintos autores, combinándola con sensores inerciales y técnicas de filtrado de la señal [Schö04], con cámaras de ojo de pez [Koch05] o añadiendo técnicas de registro manuales en línea [Mari05].
Aunque las técnicas de seguimiento basadas en reconocimiento de características son muy prometedoras, los sistemas actuales no han avanzado lo suficiente para permitir el desarrollo de sistemas de seguimiento explotables. Todos los sistemas presentados precisan la intervención manual previa del usuario, o bien presentan tiempos de proceso que no permiten su ejecución en tiempo real. En la totalidad de sistemas funcionales, las técnicas basadas en visión se integran en soluciones híbridas combinándolas con otras tecnologías.
3. Evolución del guiado agrícola
En aplicaciones de carácter agrícola con elevado ancho de trabajo, como pueden ser la distribución de fertilizantes, la aplicación de herbicidas, mover el terreno (arar y gradar) o la siembra, es de vital importancia para el tractorista mantener la distancia entre las diferentes pasadas. Ahorrando así recursos, tiempo y dinero, y mejorando la producción.
En este trabajo se desarrolla una herramienta software que permite al agricultor guiarse cuando está realizando tareas con un ancho de trabajo elevado. El aspecto más innovador de esta aplicación, es el empleo de RA en tiempo real. Al superponer la información virtual sobre la propia imagen que está viendo el tractorista, se facilita el entendimiento de la situación y la consiguiente actuación del usuario en cada instante. Nuestro trabajo surge como una evolución de los anteriores sistemas de guiado, por lo que a continuación haremos un repaso de los diferentes mecanismos existentes.
3.1 Guiado por aproximación visual, con marcadores mecánicos y con marcadores químicos
En la aproximación visual el tractorista calcula de forma aproximada la distancia desde el centro del tractor al extremo del terreno a trabajar. Según se realiza la pasada, el tractor deja la marca de las rodadas en el terreno, lo que sirve de guía para posteriores pasadas. La Figura 3-1 (arriba izquierda) ilustra cómo se realiza este tipo de guiado. Esta técnica tiene el inconveniente de que es muy poco precisa y no permite trabajar a distancias mayores de 15 metros sin que los errores sean muy significativos.
En el guiado con marcadores mecánicos el tractorista podrá observar las distintas pasadas mediante un surco que los marcadores realizan sobre el terreno. Estos tipos de marcadores se utilizan sobre todo en las labores de la siembra. En Figura 3-1 (arriba derecha) podemos ver un ejemplo.
El guiado con marcadores químicos o de espuma, se hace mediante un par de aplicadores situados en los extremos del apero del vehículo. Se marca el camino que se recorre conforme se realiza una pasada, de modo que, con las marcas, se puede alinear la siguiente pasada. La Figura 3-1 (abajo) muestra cómo se realiza el guiado durante la aplicación de herbicidas.
Estas técnicas tienen varios inconvenientes. Para el uso de marcadores mecánicos el suelo debe tener la suficiente humedad para facilitar el deslizamiento de los marcadores sobre la superficie de trabajo, para evitar el consumo de esfuerzo innecesario. El guiado mediante espuma cuenta con la imposibilidad de interrumpir un trabajo para reanudarlo posteriormente (puesto que la espuma se seca). Además, en ambos casos se hace imposible trabajar en condiciones de poca visibilidad.

Figura 3-1: Arriba izquierda: el tractorista ve las marcas en el terreno que le sirven como
referencia. Arriba derecha: Ejemplos de marcadores mecánicos empleados en la siembra. Abajo:
Guiado mediante marcadores de espuma durante la aplicación de herbicidas.

Figura 3-2: Izquierda: Vista frontal de AGROSAT. Centro: Sistema CenterLine.
Derecha: Sistema GreenStar.

Figura 3-3: Izquierda: sistema AGROGUIA. Centro: Display GreenStar 2600 de John deere .
Derecha: Sistema de guiado Topcom PCS-100.
3.2 Guiado GPS: mediante barra de luces o con pantalla que representa el terreno
El principal destino de estos sistemas es la distribución de fertilizantes y la aplicación de herbicidas en parcelas cerealistas. Actualmente se ofertan en el mercado aproximadamente una docena de estos sistemas, la mayoría de origen estadounidense, y orientados a trabajar en parcelas grandes de geometría regular, indicando al operario el sentido y la magnitud de lo que tiene que mover el volante en cada momento para realizar una pasada paralela a la pasada anterior. Podemos ver algunos de estos sistemas en la Figura 3-2.
Por otro lado, tenemos los sistemas que pintan en pantalla las trazadas realizadas. La principal característica de estos sistemas, es que nos permiten saber en todo momento qué zonas se han tratado y cuáles no, gracias a la representación en una pantalla. Esto es de gran utilidad a la hora de planificar el trabajo de la finca. Muchos de ellos son capaces de medir el área tratada, el área por perímetro y la distancia, permitiéndonos ver los datos en el PC una vez terminado el trabajo. En la Figura 3-3 podemos ver algunos de estos modelos.
4. Diseño del sistema
La aplicación que hemos desarrollado, aparece representada en la Tabla 4-1:
La aplicación consta de 3 módulos fundamentales: el subsistema GPS, que se encarga de todo lo relacionado con la posición actual, el subsistema imagen en el cuál se capturan las imágenes de la cámara y finalmente el bloque principal, que es el encargado de procesar la información y mostrar el resultado al usuario usando los datos de ambos subsistemas.
A continuación, se describe de forma más detallada cada uno de los bloques representados en la Tabla 4-1:

Tabla 4-1: Diagrama detallado de la aplicación.
4.1 El receptor GPS
Toda la funcionalidad del sistema se basa en la utilización de la información que recoge un receptor GPS, conectado a la plataforma hardware donde se está ejecutando la aplicación. Este receptor recibirá la señal GPS, y emitirá sentencias NMEA-0183 que nuestra aplicación deberá leer e interpretar, con el fin obtener los datos necesarios para conocer la posición del agricultor en todo momento y poder presentarla en la pantalla.

Figura 4-1: Receptor GPS Novatel Smart Antenna V1, usado en el proyecto.
4.2 Subsistema GPS
El subsistema GPS tiene como objetivo la obtención de la posición y velocidad del tractor en cada momento. Para ello toma la entrada de un receptor GPS a través del puerto serie. Dentro de este subsistema tenemos:
- Reader: se encarga de leer la información de forma continua del puerto serie. El protocolo NMEA es orientado a línea, esto quiere decir que se interpreta línea a línea y, por tanto, es importante procesar adecuadamente la información para que los siguientes pasos sean simples. Además se encarga de que la información se lea en tiempo real aunque la aplicación que use el subsistema GPS no lo sea.
- Parser NMEA: extrae información de las tramas NMEA tales como la posición, velocidad, estado de la señal GPS, etc. De toda la información que se nos suministra desde el receptor, puesto que el guiado que se realiza es fundamentalmente en dos dimensiones, sólo son necesarias las coordenadas de latitud y longitud que determinan la posición en la tierra del móvil (tractor) y el tipo/calidad de la señal, que nos permitirá saber si estamos recibiendo datos válidos. Esto último es importante ya que los receptores tienen un "tiempo de arranque" durante el cual los datos no se pueden considerar válidos. En este caso las tramas GPGGA (Global Positioning System Fix Data) y GPRMC (Recommend Minimum Specific GPS/TRANSIT Data) son usadas para conocer si la señal es válida y cuál es la posición y dirección.
- Proyección UTM: usando el elipsoide WGS84 se proyecta la información de latitud y longitud de las sentencias NMEA, en grados y minutos, en coordenadas UTM. Así conseguimos un espacio de 2D, un plano, en el cual es más adecuado trabajar para realizar una aplicación de guiado agrícola.
- Adaptador: pasa las coordenadas de absolutas a relativas, de forma que en cálculos sucesivos no se produzca pérdida de precisión. Dado que los sistemas de cálculo y representación que se usan realizan operaciones en punto flotante, es preferible tratar con coordenadas relativas a la parcela y no absolutas UTM.
Como salida del subsistema tenemos la posición absoluta, que servirá para hacer representaciones en mapas (entre otras cosas), la posición relativa y la dirección actual del móvil, en este caso el tractor.
4.3 Calibración de la cámara
A fin de poder deducir la posición de un objeto y la orientación de una imagen se necesitan los detalles de la posición de la cámara y la orientación en el espacio relativa a algún sistema de coordenadas de referencia, denominado el sistema de coordenadas mundiales. También es imprescindible conocer la geometría de la cámara y algún proceso para encontrar los parámetros que representen dicha geometría.
Es imprescindible a la hora de considerar la geometría de una cámara saber que las lentes de la misma introducen distorsiones de dos tipos: radiales y tangenciales. Los efectos de la distorsión tangencial son menos significativos que los efectos de la distorsión radial, por lo que se puede no considerar este tipo de distorsiones. Nos quedamos pues con las distorsiones radiales, producidas por un pulido imperfecto de la lente, que se puede corregir a través de diferentes transformaciones mediante el método Tsai de calibración de cámaras.
Asimismo, se considera otro tipo de distorsión no introducida por las lentes propiamente, sino por la no correcta alineación de los centros de curvatura de su superficie óptica. Hablamos de las distorsiones por descentrado que pueden llegar a ser de varios grados. En nuestro trabajo, se ha comprobado que esto errores apenas afectan al resultado final, por lo que podemos hacer la suposición de una perfecta alineación de las lentes y considerar nulas las distorsiones de descentrado, destacando que el error cometido es ínfimo y prácticamente despreciable, ante el elevado grado de dificultad que presenta el determinar la desviación existente entre el punto principal y el centro del elemento sensor CCD.
Para una correcta integración de una imagen de vídeo (la realidad al fin y al cabo) y un modelo virtual creado artificialmente, debemos conocer la relación existente entre lo que pueden ser sus unidades de representación, como son los metros o centímetros para los objetos reales y los pixeles para las imágenes generadas por ordenador. Para ello se hace uso de una imagen o modelo de calibración. Es muy importante conocer la relación de coordenadas dadas en centímetros (u otra unidad del sistema métrico) entre la posición de un punto en el espacio real y lo que sería su representación en pixeles en la pantalla plana del ordenador. Esto nos permitirá crear una equivalencia entre el mundo 3D y el 2D a través de transformaciones matemáticas de los sistemas de referencia y coordenadas de ambos, utilizando parámetros especiales y representativos de cada uno.
Para capturar la figura que hemos elegido, debemos situarla a una distancia de X metros de la lente, sobre el suelo, en nuestro caso han sido 9 metros. La altura del tractor, también conocida, es de 3 metros. Esta es necesaria para poder realizar una proyección sobre la imagen real correcta. También es necesario conocer las dimensiones del elemento, en este caso es 30 x 30 cm (ver Figura 6-2). Además hay que asegurar unas condiciones de iluminación aceptables que nos garanticen un nivel de calidad mínimo en nuestras adquisiciones de imágenes, amén de un enfoque correcto y unas condiciones de estabilidad de todo el conjunto positivas.
Una vez se tiene la imagen registrada en la memoria del ordenador hay que tratarla digitalmente para extraer de ella la información realmente interesante y útil para nuestros fines.
4.4 Subsistema imagen
Este módulo únicamente cumple la misión de recoger imágenes de una cámara y entregarlas en formato BMP. Se ha escogido este formato por no aplicar ningún tipo de compresión, de modo que permite crear una matriz de colores que se puede manipular de forma simple en la aplicación. Dentro de este módulo tenemos:
- Reader: tiene la misma función que en el subsistema GPS, en este caso recoge las imágenes entregadas por la cámara del puerto USB.
- Conversor: transforma las imágenes en tamaño, brillo, color y otros parámetros relativos a la imagen y retorna una imagen en formato BMP.
4.5 Subsistema aplicación
En este subsistema tiene lugar el grueso de la aplicación. Para su diseño nos hemos basado en el modelo MVC (model, view, controller). En nuestra aplicación (ver Tabla 4-1) la parte de model se corresponde con la base de datos, el controller son los tres módulos que se encargan del cálculo, y la view es la representación en el monitor.
A continuación vemos de forma más detallada cada uno de los elementos que conforman el módulo aplicación:
- Base de datos: almacena en memoria, de forma estructurada con Quadtree los datos de posición. También almacena las imágenes, sin embargo, solo se hace con propósitos de reproducción posterior offline (simplemente para ver el trabajo realizado).
- Módulos de cálculo:
- Cálculo guiado: usando las posiciones antiguas, computa cual debería ser la pasada anterior y calcula una línea paralela a la distancia del ancho de trabajo.
- Cálculo cámara: calcula la posición de la cámara dadas las coordenadas de posición y la dirección.
- Cálculo área tratada: usando los datos almacenados, junto con el Quadtree y la información de la cámara, obtiene los rectángulos que representan la zona tratada
- Representación 3D/2D: con los datos de posición de cámara, líneas de guiado y zona tratada, la información es representada en 3D y posteriormente proyectada a 2D (usando los datos de la calibración) para obtener la imagen que se va a superponer sobre la imagen de la cámara (indicada como un sumador en el modelo de la aplicación que aparece en la Tabla 4-1). A este elemento se le ha denominado OpenGL debido a que todo el trabajo lo hacen las librerías de OpenGL usando la tarjeta gráfica de la máquina, y por tanto, es transparente para la aplicación.
5. Implementación del sistema
La aplicación fue desarrollada en lenguaje Python, mediante el uso las siguientes librerías:
- pygps: utilizada en el módulo parser nmea, del subsistema GPS. La librería cuenta con un conjunto de paquetes, usados para la automatización de procesamiento de datos del GPS.
- videocapture: es una extensión de Python para Win32, que permite el acceso a los dispositivos de captura de vídeo (en nuestro caso, la cámara USB).
- pyOpenGL: es una librería que estable el punto de unión entre la plataforma de Python y las API de OpenGL. Usada para establecer un dialogo entre ambas, y permitir el acceso a las API desde Python.
A continuación veremos de forma más detallada los pilares sobre los que se sustenta la aplicación desarrollada.
5.1 Base de datos: Quadtree
Como dijimos, aquí se almacena en memoria, de forma estructurada con Quadtree los datos de posición. También almacena las imágenes, con el propósito de reproducción posterior offline.
Las ventajas que conlleva el uso del Quadtree son especialmente interesantes en el cálculo de los elementos que hay dentro de una determinada área. Gracias a su estructura en árbol (ver Figura 5-1) se ahorra tiempo al descartar las áreas que no interesan en el cálculo y procesar solo el área necesaria. Entre las desventajas se pueden destacar dos: la necesidad de incluir un procesado previo para calcular la estructura del Quadtree y el mayor consumo de memoria debido a las herramientas del Quadtree.

Figura 5-1: Quadtree aplicado en la representación de una imagen.
La principal razón por la cual se ha optado por esta herramienta en el diseño de nuestro proyecto es por su eficiencia en la búsqueda de información. Es habitual la necesidad de saber qué elementos están dentro de un área determinada con el objetivo de representarlos en una pantalla, calcular las colisiones entre los objetos estrictamente necesarios o cualquier otro uso. El Quadtree permite descartar con eficiencia los elementos que están fuera de un área especificada.
5.2 Cálculo del guiado
Este es uno de los tres módulos de cálculo que aparecen en el subsistema aplicación. El algoritmo usado para desempeñar su función está representado en la Figura 5-2. A continuación explicaremos su funcionamiento:
La línea negra representa la trayectoria que el tractor ha seguido, siendo P la posición actual del vehículo. Buscamos el punto más cercano a P, el cual se corresponde con el punto A. Primero debemos descartar N puntos (los que están dentro de los rectángulos azules) porque, lógicamente, estos son los puntos más cercanos a la posición actual del tractor. Son justo las posiciones anteriores y carecen de importancia. En este paso se usa el Quadtree para descartar los puntos muy lejanos y acelerar el algoritmo. A continuación, cogemos M puntos en el tiempo, por delante y por detrás del punto A, los cuales se corresponden con los rectángulos verdes. Para cada uno de estos puntos, se calcula la normal (líneas rojas perpendiculares al camino del vehículo) en dirección al punto P, y con una distancia igual al ancho de trabajo. Finalmente, se unen estos puntos para obtener la línea que debemos seguir, la roja. Esta será la línea supuesta que deberá tomar el vehículo para ir a una distancia igual al ancho de trabajo de la pasada anterior.
Figura 5-2: Diagrama del algoritmo de guiado.
5.3 Cálculo área tratada
El sistema de representación usado para indicar un área de terreno tratado es el rectángulo. Dados dos puntos consecutivos por los cuales ha pasado el móvil (en este proyecto un tractor) y dado un ancho de trabajo es posible aproximar la zona tratada con un rectángulo. Es decir, si disponemos de la posición actual del tractor (Xp, Yp), hemos almacenado la posición anterior que nos proporcionó el GPS (XA, YA) y trabajamos con un ancho de trabajo A, podemos calcular los vértices del rectángulo tratado entre dichos puntos como:

Donde:

De forma gráfica se puede ver en la Figura 5-3:

Con esta aproximación es posible almacenar un tramo de zona tratada de forma eficiente, en cuanto a la memoria usada, cometiendo un error aceptable.
5.4 OpenGL: representación 3D/2D
OpenGL ha sido usada como biblioteca gráfica para la creación de escenas 3D. Tenemos que tener en cuenta que desde el ordenador nos asomamos a ese mundo 3D a través de una ventana en dos dimensiones. Para hacer una aplicación 2D mediante una librería 3D, bastará con usar una proyección.
Para definir la proyección se emplea la función glFrustum, aunque existe otra función de la librería GLU llamada gluPerspective que hace el proceso más sencillo. Se define de la siguiente forma:
Void gluPerspective (angulo, aspecto, znear, zfar);
Los parámetros de gluPerspective son flotantes, y definen las características mostradas en la Figura 5-4: el ángulo para el campo de visión en sentido vertical, el aspecto, que es la relación entre la altura (h) y la anchura (w), y las distancias znear y zfar de los planos que acotan el fustrum.
5.5 Lenguaje de marcado KML
La aplicación al finalizar la tarea genera ficheros de marcado KML (Keyhole Markup Language). KML posee una gramática XML y ha sido usado en nuestra aplicación para mostrar información de las fincas que han sido tratadas.

Figura 5-4: Proyección perspectiva (II).
Mediante Google Earth se procesan los archivos KML de una manera similar a como los navegadores web procesan los archivos HTML y XML. Al igual que los archivos HTML, los KML cuentan con una estructura basada en etiquetas con nombres y atributos utilizados para poder visualizarlos. Por lo tanto, Google Earth actúa como un navegador de archivos KML.
En nuestra estudio el uso de KML nos ha permitido mostrar de forma clara qué tramos han sido tratados, y cuáles no (ver Figura 6-6 y Figura 6-7).
6. Resultados del sistema desarrollado
Para comprobar el funcionamiento del sistema creado se han realizado pruebas en parcelas agrícolas de Aguilar de Bureba (Burgos). Estas pruebas han arrojado resultados satisfactorios que demuestran la eficacia del sistema.
6.1 Instalación del sistema en el tractor
El primer paso ha sido la colocación del receptor GPS y de la cámara. Para ahorrar gastos la base del receptor ha sido creada manualmente. La cámara ha sido fijada en la parte delantera de la cabina del tractor. Como veremos en líneas futuras, la fijación de los dispositivos es uno de los aspectos que deben ser mejorados. Con las vibraciones y traqueteo del tractor, la fijación no es del todo estable, pudiendo llegar a descentrar la cámara. En la Figura 6-1 podemos ver el techo del tractor con los dispositivos instalados.

Figura 6-1: Instalación

Figura 6-2: Imagen de calibración de la cámara
El siguiente paso ha sido la calibración de la cámara. Para ello se ha utilizado una figura cuadrada de 30 x 30 centímetros, la cual se ha puesta a una distancia conocida de 9 metros, fijando el centro de la figura a esta distancia. La altura del tractor también es conocida: 3 metros. Es necesario saber la altura para poder realizar las proyecciones sobre la imagen real de forma correcta (ver Figura 6-2).
Al finalizar la instalación de los elementos Hardware del sistema, y tras calibrar la cámara correctamente, podemos comenzar a utilizar la aplicación. Para ello, nos hemos desplazado con el tractor a una parcela agrícola. El tractor empleado en las pruebas es el de la Figura 6-3, está equipado con un equipo herbicida y cuenta con un apero de 18 metros. Por tanto el ancho de trabajo será de 18 metros, y se corresponderá con la zona tratada en cada pasada. En la Figura 6-4 podemos ver la información mostrada en la pantalla mediante la cual se guiará el tractorista. En dicha pantalla se superpone la imagen capturada por la cámara y la Realidad Aumentada.

Figura 6-3: Tractor usado en las pruebas de campo, equipado con un apero de
18 metros. En la imagen se aprecian 9 metros del apero.

Figura 6-4: Captura de la aplicación en uso. Podemos ver el error que se está
cometiendo, y se nos indica que debemos corregirlo girando hacia la izquierda.
Las zonas tratadas aparecen en verde.
Para recoger gráficamente datos, y poder extraer información de las pruebas realizadas, hemos usado 3 videocámaras. Una interior que capturará la experiencia del tractorista, y dos exteriores que recogerán la trayectoria del vehículo, y sus diversas pasadas. Una de las cámaras exteriores se situó a pie de campo, y la otra a una altura de 5 metros. En la Figura 6-5 podemos ver la posición de las cámaras.

Figura 6-5: Vista de las tres cámaras empleadas para recoger datos. Una interior
en la cabina del tractor, otra en un extremo la parcela, y otra desde un punto
elevado en la pala de un tractor.
Al finalizar la labor agrícola, el sistema genera ficheros KML, con los que se pueden visualizar que zonas hemos tratado, mediante Google Earth. Esta función permite al agricultor planificar sus tareas, y visualizar de forma sencilla el trabajo realizado (ver Figura 6-6 y Figura 6-7).

Figura 6-6: Captura de Google Earth. Se puede ver la finca tratada.

Figura 6-7: Captura de Google Earth. Detalle de las pasadas realizadas en la
parcela.
6.2 Experiencia percibida por el usuario
Una vez puesto en marcha el sistema, pasamos a analizar la información que el tractorista recibe de la aplicación. En la Figura 6-8 podemos ver una captura en la que se ve claramente cómo funciona la aplicación. Viendo esta imagen podemos sacar varios datos:
- La zona tratada se proyecta sobre la imagen real, mediante una capa verde.
- La línea roja central nos indica la trayectoria que debe seguir el tractor. Se corresponde con el centro del vehículo, y por tanto sabiendo que el ancho de la pasada es de 18 metros, estará situada a 9 metros de la pasada anterior. Siempre y cuando no se desplace de su trayectoria.
- El número central, que en esta captura es 0.0, nos indica la desviación instantánea que se está produciendo respecto a una pasada anterior. En caso de desviarse y dejar una zona sin tratar se le indicará como ocurre en la Figura 6-9. En este caso que está dejando una franja de medio metro sin tratar. Si la desviación se produce solapando una trazada anterior se le indicará mediante un valor negativo, como ocurre en la Figura 6-10. En está ocasión el tractorista está metiéndose 2.7 metros por una zona ya tratada.
- Al igual que el número central, en la parte superior de la pantalla se muestra mediante una barra de flechas la corrección que el tractorista debe realizar. Como vemos en la Figura 6-8, la trazada es totalmente paralela a la pasada anterior, por lo que no se deben hacer correcciones en la dirección. No pasa lo mismo en la Figura 6-9 ó Figura 6-10. En la primera se indica que tenemos que girar un poco a la derecha para tratar la zona correctamente, en la segunda se indica que tenemos que girar bastante para salir de la zona ya tratada. Como se puede ver el tamaño de la barra aumenta en función del error que se está cometiendo.
- En la esquina izquierda inferior de la pantalla se incluye una proyección de las trazadas mediante un plano, de forma que el tractorista pueda obtener una visión más global del terreno.

Figura 6-8: Capturado de la aplicación de realidad aumentada cuando el
tractorista realiza la pasada de forma correcta. En la pantalla se indica que el
error es 0.0 metros.

Figura 6-9: Capturado de la aplicación de realidad aumentada cuando el
tractorista realiza la pasada en la que tiene un pequeño error de trazada hacia la
derecha, y deja terreno sin tratar. En la pantalla se indica que el error es 0.5
metros.

Figura 6-10: Capturado de la aplicación de realidad aumentada cuando el
tractorista realiza la pasada en la que tiene un error de trazada hacia la
izquierda, y está pasando por terreno tratado. En la pantalla se indica que el
error es -2.7 metros, al ser negativo nos indica solapamiento entre pasadas.
7. Conclusiones y líneas futuras
La realidad aumentada se está convirtiendo con el paso de los días, en una herramienta cada vez más utilizada por los desarrolladores para realizar sus aplicaciones. A la par de la RA la agricultura de precisión ha supuesto una revolución en la gestión del campo. La razón de su avance es la reducción de tiempos y costes, producido por la mejor utilización de los recursos en las labores agrícolas. Aumentando de esta forma los beneficios.
Los agricultores desean guiarse de forma precisa, y lo más clara posible, cuando están desempeñando su trabajo. En este proyecto se presenta una alternativa de bajo coste, mucho más precisa que métodos tradicionales de guiado tales como la aplicación de espuma o sistemas con marcadores mecánicos. También es más eficaz que los sistemas de guiado mediante GPS, usados en la agricultura de precisión, ya sean sistemas por barras con luces o sistemas con pantalla que representan el terreno.
Como resultado del trabajo realizado se ha conseguido una implementación funcional del sistema, creando una aplicación que ayudará al agricultor a guiarse por las parcelas de trabajo. Podemos establecer una serie de características del sistema:
- Fidedigno y seguro. La información mostrada se ajusta a la imagen real instantánea, viendo los resultados en cada momento superpuestos a la propia realidad. Esto hace que sea un sistema más seguro que el simple pintado en una pantalla (pudiéndonos servir de esta información también).
- Intuitivo.
- Amigable. Más cómodo de usar que otros métodos:
- Marcadores con GPS: por barras de luces o pintado en pantalla.
- Marcador mecánico.
- Marcador químico.
- Aproximación visual.
- Eficiente. Permite al agricultor realizar su trabajo en condiciones de visibilidad reducida:
- Con condiciones climatológicas adversas.
- De noche.
- En campos de cultivo con altura elevada, con cambios de rasante.
- Cómodo. Un dispositivo sirve para cualquier tipo de trabajo independientemente del apero. Se puede intercambiar entre varios vehículos agrícolas.
- Versátil. Una vez finalizado el trabajo en la parcela, el agricultor puede ver el resultado mediante Google Earth. Ya que como vimos, la aplicación genera ficheros KML en los que se recoge la información necesaria para visualizar las trazadas realizadas por el tractor.
- Económico. El sistema tiene un bajo coste en comparación con otras herramientas.
- Extensible. Se ha creado un sistema lo suficientemente flexible y escalable para que sirva de base a proyectos futuros más ambiciosos, que amplíen las características del presente modelo.
La aplicación desarrollada es funcional y cumple con los requisitos necesarios para realizar la asistencia al guiado agrícola. Aún así, durante la fase de análisis, hubo una serie de ideas adicionales que se dejaron fuera del diseño original para poder proporcionar un prototipo funcional en un plazo de tiempo razonable; pero que serían unas líneas de trabajo interesantes en caso de continuar con el desarrollo de la aplicación.
En primer lugar, se pretende crear un sistema de dimensiones reducidas, que pueda ser transportable y económicamente viable. En él se incluirá todo el equipo: GPS, cámara, laptop/PDA, y pantalla de proyección. En este caso la pantalla serán unas gafas del tipo see-through, similares a las de la Figura 7-1.
Figura 7-1: Ejemplo de see-through glasses.
Mediante el uso de estas gafas se podría seguir la trayectoria del tractor de una forma mucha más sencilla, aumentando también las posibilidades que nos puede ofrecer la aplicación. Además de ser útil para el guiado, podría emplearse para mostrar información relacionada con las labores agrícolas. Por ejemplo, podría obtenerse información instantánea de qué, cuándo y dónde se sembró, de dónde y con qué fertilizante se abonó la parcela, etc. Esto sería de utilidad para terrenos que son trabajados por más de una persona. Al usar el equipo se podría conocer de forma inmediata que cambios tuvieron lugar en el terreno, continuando el trabajo si fuese necesario. Un posible resultado de este sistema se puede apreciar en la imagen creada digitalmente de la Figura 7-2.

Figura 7-2: Izquierda: visión que el agricultor tiene del campo, sin el uso de
nuestra aplicación. Derecha: posible visión que el agricultor tiene del campo,
gracias al uso del sistema de RA. Se ven las distintas pasadas que ha realizado
el tractor.
En cuanto al equipo empleado en la ejecución de la aplicación, se pueden tener en cuenta las siguientes mejoras:
- Uso de un soporte adecuado: Durante la realización del trabajo el tractor sufre muchas vibraciones y movimientos bruscos. Esto hace que la sujeción de la cámara no sea del todo correcta, provocando que se pueda descentrar. Para ello se propone usar algún soporte acoplable con facilidad al techo del tractor.
- Creación de un espacio robusto: En la cabina del tractor suele haber polvo y suciedad, también es posible que el equipo sufra golpes debido a la naturaleza del trabajo. Por tanto, se propone la creación de un espacio en la cabina del tractor preparado para amortiguar estos golpes, con el fin de evitar que se sufran daños.
Referencias
[Abad04] F. Abad, E. Camahort,, and R. Vivó. "Camera Calibration Using Two Concentric Circles". In Lecture Notes in Computer Science, Volume 3211 / 2004, pp. 688 - 696, 2004
[Azum97] R. T. Azuma. "A Survey of Augmented Reality. Presence: Teleoperators and Virtual Environments" 6, 4 (August 1997), 355-385.
[Azum99] R. T. Azuma. "The Challenge of Making Augmented Reality Work Outdoors". In Mixed Reality: Merging Real and Virtual Worlds. Yuichi Ohta and Hideyuki Tamura (ed.), Springer-Verlag, 1999. Chp 21 pp. 379-390.
[Behr98] R. Behringer. Improving Registration Precision Through Visual Horizon Silhouette Matching. In 1st Int’l Workshop on Augmented Reality, pp 225-232, San Francisco, Ca, Nov 1998.
[Bill01] M. Billinghurst, H. Kato, and I. Poupyrev, "The Magic-Book Moving Seamlessly between Reality and Virtuality" IEEE Computer Graphics and Applications, vol. 21, no. 3, May/June 2001, pp. 2-4.
[Bish84] G. Bishop, H. Fuchs. "The Self-Tracker: A Smart Optical Sensor on Silicon" Proceedings, Conference on Advanced Research in VLSI at MIT (January 23-25, 1984)." Artech House.
[Bish08] G. Bishop, P. Ghadirian. Integration of augmented reality and GIS: A new approach to realistic landscape visualization. Landscape and Urban Planning. Mayo 2008. Pp. 226-232.
[Burd03] G. Burdea, P. Coiffet. "Virtual Reality Technology, Second Edition", Wiley-IEEE Press, 2003.
[Chia02] K. W. Chia, A. D. Cheok, , and S. J. D. Prince. "Online 6 DOF Augmented Reality Registration from Natural Features". In Int’l Symposium on Mixed and Augmented Reality, pp 305-313, Darmstadt, Germany, Oct 2002.
[Coel04] E. M. Coelho, B. MacIntyre, S. J. Julier. "OSGAR: A Scene Graph with Uncertain Transformations". Third IEEE and ACM International Symposium on Mixed and Augmented Reality (ISMAR’04) 11 02 - 11, pp 6-15, November 02 - 05, 2004.
[Cork96] P.I. Corke. "Visual Control of Robot Manipulators - A Review". Visual Servoing, World Scientific Series in Robotics and Automated Systems, Vol. 7, pag 1-31.
[Ferg97] J. Fergason. "Optical System for Head-Mounted Display using retro-reflector and method of displaying an image". U.S. Patent 5, 621, 572. April 15, 1997.
[Fisc81] Martin A. Fischler, Robert C. Bolles, Random Sample Consensus: A paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography. Communications of the ACM, Juny 1981, número 6, volum 24.
[Foxl03] E. Foxlin, and N. Leonid. "VIS-Tracker: A Wearable Vision-Inertial Self-Tracker". In IEEE Virtual Reality, Los Angeles, Ca, Mar 2003.
[Fuhr99] A. Fuhrmann et al., "Occlusion in Collaborative Augmented Environments," CCC, vol. 23, no. 6, Dec. 1999, pp. 809-819.
[Ghad08]Ghadirian, P., Bishop, I.D.. Integration of augmented reality and GIS: A new approach to realistic landscape visualization. Landscape Landscape and Urban Planning 86, pp. 226-232. May 2008.
[Genc02] Y. Genc, S. Riedel, F. Souvannavong, C. Akmlar and N. Navab. "Marker-less Tracking for AR: A Learning-Based Approach". In Int’l Symposium on Mixed and Augmented Reality, pp 295-304, Darmstadt, Germany, Oct 2002.
[Holl99a]T. Höllerer, S. Feiner, J. Pavlik, "Situated Documentaries: Embedding Multimedia Presentations in the Real World", In: Proceedings. ISWC ’99. Third Int. Symp. On Wearable Computers, San Francisco, CA, October 18-19, 1999, pp. 79-86.
[Iu96] S. Iu, and K. W. Rogovin. "Registering Perspective Contours with 3-D Objects Without Correspondence Using Orthogonal Polynomials". Proceedings of VRAIS ’96 (Santa Clara, CA, 30 March - 3 April 1996), 37-44.
[Juli00b] S. Julier, Y. Baillot, M. Lanzagorta, D. Brown and L. Rosenblum. "BARS: Battlefield Augmented Reality System". In NATO Symposium on Information Processing Techniques for Military Systems, Istanbul, Turkey, October 2000.
[Kari03]T. Karitsuka and K. Sato. "A Wearable Mixed Reality with an On-board Projector". Proceedings of the Second IEEE and ACM International Symposium on Mixed and Augmented Reality (ISMAR ’03).
[Kato99] H. Kato, et al. A Mixed Reality 3D Conferencing Application. (Technical Report R-99-1). Human Interface Technology Laboratory, University of Washington. 1999.
[Kato00] H. Kato, M. Billinghurst, and I. Poupyrev, "ARToolkit, version 2.33 Manual", 2000.
[Klei04] G. Klein, T. Drummond. "Sensor Fusion and Occlusion Re_nement for Tabletbased AR". Third IEEE and ACM International Symposium on Mixed and Augmented Reality (ISMAR’04) November 02 - 05, 2004, pp. 38-47.
[Lope01]D. López de Ipiña, P. R. S. Mendonca, A. Hopper. "TRIP: a Low-Cost Vision-Based Location System for Ubiquitous Computing". In 2001 Workshop on Perceptive User Interfaces. 2001.
[Mari05] D. Marimon i Sanjuan, Y. Abdeljaoued and T. Ebrahimi. "Online Registration Tool and Markerless Tracking for Augmented Reality". In Proceeding of WIAMIS 2005, Montreux, Switzerland.
[Milg94]Paul Milgram, F. Kishino, A Taxonomy of Mixed Reality Visual Displays, IEIC Transactions on Information Systems, Vol E77-D, número.12, pp. 1321-1329 .1994.
[Moeh04]Moehring, M., Lessig, C. and Bimber, O. "Video See-Through AR on Consumer Cell Phones". In proceedings of International Symposium on Augmented and Mixed Reality (ISMAR’04), pp. 252-253, 2004.
[Piek04] W. Piekarski, B. Avery, B. H. Thomas, P. Malbezin. "Integrated Head and Hand Tracking for Indoor and Outdoor Augmented Reality". 2004.
[Reki98] J. Rekimoto, "Matrix: A Realtime Object Identification and Registration Method for Augmented Reality". Proc. of Asia Pacific Computer Human Interaction (APCHI ’98).
[Reki00] J. Rekimoto, and Y. Ayatsuka. "CyberCode: Designing Augmented Reality Environments with Visual Tags". In DARE 2000.
[Schö04] T. Schön and F. Gustafsson. "Integrated Navigation of Cameras for Augmented Reality". 16th IFAC World Congress, Prague, Czech Republic, Jul. 2005.
[Simo00] G. Simon, A. Fitzgibbon, A. Zisserman. "Markerless Tracking using Planar Structures in the Scene". Proceedings of the IEEE International Symposium on Augmented Reality (ISAR), 2000. pp. 120-128.
[Sinc01] P. Sinclair. "Applying hypermedia techniques to augmented reality environments". A thesis submitted for degree of MPhil/Phd Transfer, 2001.
[Stri01] D. Stricker, T. Kettenbach. "Real-time and Makerless Vision-Based Tracking for Outdoor Augmented Reality Applications". IEEE and ACM International Symposium on Augmented Reality (ISAR’01).
[Wagn05]D. Wagner, T. Pintaric, F. Ledermann and D. Schmalstieg. "Towards Massively Multi-User Augmented Reality on Handheld Devices". Third International Conference on Pervasive Computing (Pervasive 2005), May 9-10, Munich, Germany, 2005.