UNIVERSIDAD DE EXTREMADURA. Escuela Politécnica Ingeniería Informática. Proyecto Fin de Carrera
|
|
- Bernardo Segura López
- hace 8 años
- Vistas:
Transcripción
1 UNIVERSIDAD DE EXTREMADURA Escuela Politécnica Ingeniería Informática Proyecto Fin de Carrera Aplicación de la Tecnología Grid al Tratamiento de Imágenes Hiperespectrales Fermín Ayuso Márquez Víctor Manuel Ochoa Sánchez Septiembre, 2008
2 UNIVERSIDAD DE EXTREMADURA Escuela Politécnica Ingeniería Informática Proyecto Fin de Carrera Aplicación de la Tecnología Grid al Tratamiento de Imágenes Hiperespectrales Autores: Fermín Ayuso Márquez Víctor Manuel Ochoa Sánchez Fdo.: Director: Antonio Plaza Miguel Fdo.: Tribunal Calificador Presidente: Pablo Martínez Cobo Fdo: Secretario: David Valencia Corrales Fdo.: Vocal: Javier Plaza Miguel Fdo.: CALIFICACIÓN: FECHA:
3 Índice de contenidos Nota aclaratoria. Reparto del trabajo...6 Motivaciones y objetivos...8 Motivaciones...8 Objetivos...9 Capítulo 1. Antecedentes Concepto de imagen hiperespectral Sensor hiperespectral AVIRIS utilizado en el estudio Necesidad de paralelismo...18 Capítulo 2. Técnicas de procesamiento Técnicas espaciales Técnicas espaciales y espectrales El ángulo espectral (SAM) como medida base para la integración de información espacial y espectral Integración de información espacial y espectral mediante técnicas de ventana deslizante...23 Capítulo 3. Implementación paralela Algoritmo paralelo para el reparto de carga...32 Capítulo 4. Análisis y discusión de resultados Imagen hiperespectral considerada Arquitectura heterogénea considerada Resultados experimentales Estudio de la versión secuencial Estudio de la influencia del tamaño de ventana Estudio del efecto del tamaño de la función de estimación con respecto a la ejecución Estudio de la mejora del rendimiento con respecto a la versión secuencial Discusión de resultados...73 Capítulo 5. Conclusiones y lineas de trabajo futuro...78 Referencias bibliográficas...81 Artículos y Obras...81 Apéndice 1. Manual de Usuario...85 Requisitos...85 Requisitos Hardware...85 Requisitos Software...85 Instalación...86 Librerías...86 Instalación de binarios...87 Ejecución...87 Versión secuencial...87 Versión paralela...87 Mensajes de error...88 Apéndice 2. Manual del Programador...89 Entorno de desarrollo...89 Estructuras de datos...89 Unsigned char *...89 BsqHeader...90 sequential.c...90 parallel.c...93 Apéndice 3. Código fuente...96 Índice de ilustraciones Figura 1: Imagen hiperespectral...13 Figura 2: Proceso de captación de una imagen hiperespectral por parte del sensor AVIRIS
4 de NASA Jet Propulsion Laboratory...14 Figura 3: Presencia de píxeles mezcla en imágenes hiperespectrales...15 Figura 4: Evolución en la relación señal-ruido (SNR) del sensor AVIRIS...17 Figura 5: Ilustración gráfica de una operación de convolución utilizando un kernel de tamaño 3x3 pixels sobre una imagen digital en la que cada píxel tiene asociado un único nivel digital...20 Figura 6: Representación gráfica del ángulo espectral en una imagen con 3 bandas espectrales...23 Figura 7: Ejemplos de uso de la metodología propuesta basada en kernel deslizante...24 Figura 8: Operaciones que integran la información espacial y espectral...26 Figura 9: Tipos de particionamiento de datos hiperespectrales: (a) espectral; (b) espacial; (c) híbrido...28 Figura 10: Necesidad de comunicación en procesamiento por ventana de datos hiperespectrales...30 Figura 11: Introducción de información redundante para evitar comunicaciones en procesamiento por ventana de datos hiperespectrales...31 Figura 12: Banda espectral en la longitud de onda de 903 nm de la imagen original (izquierda) y firmas espectrales asociadas con los principales componentes que constituyen la imagen AVIRIS sobre la región Jasper Ridge (derecha)...36 Figura 13: Tiempos de ejecución con diferentes tamaños de ventana para una función de estimación de 2 líneas y 26 procesadores...41 Figura 14: Balanceo para una función de estimación de carga con 2 lineas...42 Figura 15: Efecto del número de procesadores para una función de estimación con 2 lineas...43 Figura 16: Tiempos de ejecución con diferentes tamaños de ventana para una función de estimación de 5 líneas y 16 procesadores...45 Figura 17: Balanceo para una función de estimación de carga con 5 lineas...45 Figura 18: Efecto de número de procesadores en el tiempo para función benchmark con 20 líneas...50 Figura 19: Balanceo para función benchmark con 20 lineas...51 Figura 20: Tiempos de ejecución con diferentes tamaños de ventana para una función de estimación de 30 líneas y 26 procesadores...52 Figura 21: Balanceo para función benchmark con 30 líneas...53 Figura 22: Balanceo para una función de estimación con 60 líneas...55 Figura 23: Efecto del número de procesadores para una función de estimación con 60 líneas...55 Figura 24: Balanceo para una función de estimación con 120 líneas...60 Figura 25: Efecto del número de procesadores con una función de estimación de 120 lineas...64 Figura 26: Balanceo para una función de estimación de carga de 240 líneas...65 Figura 27: Efecto del número de procesadores sobre el tiempo de ejecución con una función de estimación con 240 líneas...66 Figura 28: Efecto del tamaño de la función de estimación para 4 procesadores...70 Figura 29: Efecto del tamaño de la función de estimación para 26 procesadores...71 Figura 30: Speedup para función de estimación con 2 líneas...72 Figura 31: Speedup para función de estimación con 60 líneas...72 Figura 32: Efecto que tiene el tamaño de la función de estimación con respecto al tiempo de ejecución...75 Índice de tablas Tabla 1: Características de la arquitectura heterogénea del Instituto de Astrofísica de Andalucía...37 Tabla 2: Tiempos de ejecución en serie para cada nodo de la arquitectura heterogénea. Unidades expresadas en segundos...39 Tabla 3: Resultados para una estimación de 2 líneas y 2 procesadores...40 Tabla 4: Resultados finales para una estimación de 2 líneas y 26 procesadores...41 Tabla 5: Resultados para una estimación de 5 líneas y 4 procesadores...44 Tabla 6: Resultados finales para una estimación de 5 líneas y 16 procesadores...44
5 Tabla 7: Resultados para una estimación de 10 líneas y 8 procesadores...47 Tabla 8: Resultados para una estimación de 20 líneas y 2 procesadores...48 Tabla 9: Resultados para una estimación de 20 líneas y 16 procesadores...49 Tabla 10: Resultados para una estimación de 30 líneas y 4 procesadores...51 Tabla 11: Resultados para una estimación de 30 líneas y 26 procesadores...53 Tabla 12: Resultados para una estimación de 60 líneas y 8 procesadores...54 Tabla 13: Resultados para una estimación de 60 líneas y 16 procesadores...56 Tabla 14.1: Resultados para una estimación de 60 líneas y 26 procesadores (del nodo master al octavo nodo)...57 Tabla 15: Resultados para una estimación de 120 líneas y 4 procesadores...59 Tabla 16: Resultados para una estimación de 120 líneas y 16 procesadores...61 Tabla 17.1: Resultados para 120 líneas y 26 procesadores (del master al nodo 14)...62 Tabla 18: Resultados para una estimación de 240 líneas y 2 procesadores...64 Tabla 19: Resultados para una estimación de 240 líneas y 16 procesadores...67 Tabla 20.1: Resultados para una estimación de 240 líneas y 26 procesadores (del nodo master al nodo 15)...68 Tabla 21: Requisitos hardware...85 Tabla 22: Requisitos software...85
6 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales Nota aclaratoria. Reparto del trabajo Uno de los aspectos cruciales a la hora de llegar a buen puerto en un proyecto como el que nos ocupa es la correcta planificación y reparto de la carga de trabajo, en este caso eso no iba a ser menos. En un proyecto como el nuestro, compuesto por sólo 2 personas, es fácil repartir las tareas, sin embargo nos enfrentamos a un problema al comenzar con el proyecto y es que los 2 componentes vivíamos a 400 km. de distancia y teníamos horarios incompatibles por motivos de trabajo. Para solucionar este inconveniente barajamos varias opciones al inicio del proyecto, pero la opción que nos pareció mas acertada (y a la larga se demostró como muy eficiente) fue la de montar un servidor de versiones donde poder colgar todo el trabajo y al que tuviésemos acceso los dos componentes del proyecto. Para resolver el problema del alojamiento llevamos nuestro proyecto a Google Code, donde pudimos montar el servidor de versiones. Mediante subversion pudimos acceder en todo momento al trabajo realizado por nuestro compañero y tener claro en todo momento qué cambios había en el proyecto. Esta opción ha resultado altamente satisfactoria y creemos debería ser una herramienta a tener en cuenta en desarrollos futuros para equipos de varias personas. En cuanto al reparto de carga, la verdad es que es difícil concretar unas cifras por el hecho de tener a nuestra disposición un servidor de versiones. En cualquier momento uno de nosotros realizaba algún cambio o avance, y en cuanto el otro se conectaba podía consultarlo así como intentar arreglar los posibles errores encontrados. Este método de trabajo ha sido la tónica a lo largo de todo el trabajo. Buscamos entre los dos los fallos y entre los dos los solucionamos. Sin embargo dado que siempre es necesario tener referencias numéricas podemos resumir los porcentajes de trabajo brevemente. En la parte de planificación del proyecto claramente es 50/50 ya que la hicimos juntos. En cuanto a la codificación del método secuencial Fermín realizó un mayor esfuerzo y la carga sería 60% Fermín, 40% Víctor. En la parte paralela estuvimos muy parejos y el trabajo sería prácticamente 50% para cada uno. En cuanto a las pruebas, las repartimos entre los dos, sin embargo Víctor se encargó de casi toda la implementación de los scripts de pruebas 6
7 Fermín Ayuso y Víctor Manuel Ochoa por tanto el reparto sería de 55% Víctor, 45% Fermín. Por último, para realizar la documentación repartimos las secciones y los contenidos por lo tanto el porcentaje es de un 50/50. Como vemos son unos resultados muy parejos debido a que en todo momento desarrollamos, documentamos y probamos a la par el proyecto. 7
8 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales Motivaciones y objetivos Motivaciones La realización de este Proyecto Fin de Carrera se encuentra enmarcada en las líneas de investigación actuales del Grupo de Redes Neuronales y Procesamiento de Señales (GRNPS) del Departamento de Tecnología de los Computadores y de las Comunicaciones de la Universidad de Extremadura. El GRNPS empezó su trabajo de investigación desarrollando algoritmos de computación neuronal para la posible cuantificación de espectros. Continuando con esta línea, sus investigaciones se han extendido al análisis de imágenes hiperespectrales de la superficie terrestre, obtenidas de forma remota, a partir de sensores de tipo satélite o aerotransportados. Uno de los problemas que se encuentran asociados a los sistemas automáticos de detección de objetivos es la elevada dimensión de las imágenes a procesar. Generalmente el tiempo de respuesta para estas aplicaciones ha de ser casi real y los resultados deben obtenerse en un corto periodo de tiempo, para, en casos excepcionales, actuar con la mayor rapidez. Otro de los problemas que se manifiestan en el tratamiento de datos hiperespectrales es la elevada complejidad computacional de su tratamiento, que limita su explotación en situaciones en las que los requerimientos espaciales y temporales son altos. En la actualidad, existen muchos métodos para realizar el proceso de análisis de imágenes multiespectrales e hiperespectrales, muchos de ellos ya implementados en paralelo, para funcionar en arquitecturas de tipo cluster, en las que todos lo nodos (ordenadores) conectados tienen características idénticas. Con la intención de crear sistemas informáticos paralelos efectivos específicos para las ciencias de la tierra y el espacio, el Center of Excellence in Space and Data Information Sciencies (CESDIS), locacalizado en el Goddard Space Flight Center en Maryland, desarrolló el concepto de cluster Beowulf. El poder de procesamiento ofrecido por dichos sistemas se ha empleado tradicionalmente en aplicaciones de minería de datos (data mining). Aunque la mayoría de las técnicas paralelas y sistemas para el procesamiento de información de imágenes y minería empleados por la NASA y otras instituciones durante la última década han sido principalmente homogéneos, aparece un tendencia 8
9 Fermín Ayuso y Víctor Manuel Ochoa actual en el diseño de sistemas para el análisis e interpretación de volúmenes masivos de datos, como consecuencia de la ciencia de la tierra y de misiones de exploración planetarias, depende de la utilización plataformas informáticas altamente heterogéneas. La principal motivación de este proyecto fin de carrera ha sido, por tanto, analizar las posibilidades de las arquitecturas heterogéneas para tratar de forma eficiente datos hiperespectrales obtenidos a partir de la superficie terrestre, introduciendo técnicas para el correcto reparto de carga entre nodos de distintas características y haciendo posible, de esta forma, el análisis paralelo de imágenes hiperespectrales aprovechando las ventajas que aportan las arquitecturas de tipo heterogéneo. Para ello, el lenguaje de programación utilizado ha sido C, y para paralelizar, el código MPI [1]. La realización de las pruebas y la comprobación del correcto funcionamiento del código desarrollado ha sido posible gracias al Instituto de Astrofísica de Andalucía (IAA) de Granada, donde se encuentra disponible una arquitectura de tipo Grid a la que se ha obtenido acceso para la realización de dichas pruebas. Objetivos El principal objetivo de este PFC es desarrollar un algoritmo que permita la correcta distribución de carga (cantidad de procesamiento) entre los distintos nodos de una red de ordenadores con arquitectura en Grid que permita que los algoritmos de procesamiento de imágenes hiperespectrales basados en el uso de una ventana móvil (que genera una vecindad espacial alrededor de cada píxel de la imagen) puedan ejecutarse eficientemente en este tipo de arquitecturas. Conviene destacar que en la actualidad existen múltiples algoritmos que utilizan dicha técnica de procesamiento, incluyendo cálculo de medias, matrices de covarianza y correlación, algoritmos morfológicos, algoritmos de selección de patrones de entrenamiento, etc. Por tanto, el desarrollo de esquemas paralelos eficientes para tratar dichos algoritmos en arquitecturas heterogéneas puede suponer ventajas competitivas a la hora de ejecutar dichos algoritmos de forma eficiente. Para poder alcanzar este objetivo, marcado anteriormente como principal, se han planteado y perseguido objetivos más 9
10 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales específicos que se detallan a continuación: 1. Proceso de revisión de la bibliografía existente y exhaustivo estudio de las características principales de las imágenes hiperespectrales, así como de algunos algoritmos de procesamiento de dichas imágenes. 2. Implementación de un algoritmo genérico para el procesamiento de imágenes mediante un método de ventanas en su versión secuencial usando el lenguaje de programación C. 3. Desarrollo de dicho algoritmo en su versión paralela, haciendo uso de la librería MPI (Message Passing Interface) para facilitar el paso de mensajes entre los distintos nodos que existan en la arquitectura y comprobación de su correcto funcionamiento en una arquitectura de tipo cluster, con los nodos homogéneos. 4. Estudio de viabilidad relativo a la aplicación de la metodología diseñada en aplicaciones reales, utilizando para ello imágenes obtenidas por una variedad de sensores hiperespectrales. 5. Implementación y desarrollo de código para estimar el correcto reparto de carga entre nodos heterogéneos. Para realizar esta tarea, las pruebas se han desarrollado en un cluster heterogéneo del Instituto de Astrofísica de Andalucía (IAA). 6. Realización de múltiples pruebas para comprobar distintos tamaños para la función de estimación de carga. 7. Desarrollo de un estudio detallado de los resultados obtenidos en las diferentes ejecuciones del código implementado. Este estudio exhaustivo supone una contribución novedosa con respecto a la literatura existente en el área de estudio considerada. Para una mayor comprensión de esta memoria, procedemos a describir los puntos que se tratarán, estructurando esta en una serie de secciones que se describen a continuación: 1) Antecedentes. En este capítulo introductorio se describen los conceptos fundamentales relacionados con análisis hiperespectral y procesamiento de datos. 10
11 Fermín Ayuso y Víctor Manuel Ochoa 2) Técnicas de procesamiento. En este capítulo se describen las técnicas de procesamiento de datos hiperespectrales basada en ventana deslizante que será paralelizada en apartados sucesivas. 3) Implementación paralela. En este capítulo se describe en primer lugar la técnica llevada a cabo para particionar la imagen hiperespectral en fragmentos que serán asignados a cada procesador, incluyendo la introducción de un nuevo algoritmo paralelo para reparto de carga y los pasos realizados por dicho algoritmo para estimar el reparto de carga entre diferentes procesadores, concluyendo el capítulo con la presentación del algoritmo paralelo completo. 4) Análisis y discusión de resultados. En este capítulo describimos la imagen hiperespectral empleada en la validación y presentamos los resultados de paralelización obtenidos en una arquitectura heterogénea disponible en el Instituto de Astrofísica de Andalucía (IAA), pasando a exponer los resultados obtenidos a continuación. 5) Conclusiones y lineas de trabajo futuro. Este capítulo resume las principales aportaciones realizadas por la presente memoria y muestra las conclusiones derivadas. A parte, sugiere un conjunto de lineas de trabajo que pueden ser abordadas en futuros trabajos. 6) Manuales de usuario y programador: La memoria incluye manuales tanto para los usuarios técnicos como para los usuarios finales de la aplicación desarrollada. 7) Apéndice. En el apéndice de la memoria se detalla la implementación del algoritmo de reparto de carga entre procesadores heterogéneos desarrollado en este PFC. La implementación ha sido desarrollada en el lenguaje de programación C incorporando las llamadas al interfaz estándar de paso de mensajes Message Passing Interface (MPI). 11
12 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales Capítulo 1. Antecedentes En el presente capítulo trataremos de situar al lector en el marco en el que se desarrolla nuestro proyecto, explicando y resumiendo los principales términos que se usarán en el resto del documento. En primer lugar, describimos el concepto de imagen hiperespectral, detallando las particularidades y características propias de este tipo de imágenes. A continuación, describimos las principales características del sensor hiperespectral utilizado para obtener las imágenes que han sido empleadas en las pruebas realizadas. Por último discutiremos brevemente la necesidad de paralelismo en el tratamiento de datos hiperespectrales en aplicaciones que requieren una respuesta en tiempo real o casi real Concepto de imagen hiperespectral Una imagen hiperespectral es un cubo de datos en la que cada punto no viene descrito por un sólo valor de intensidad (como en una imagen en niveles de gris) o por tres componentes de color (como en una imagen RGB de la pantalla del ordenador), sino por un vector de valores espectrales que se corresponden con la contribución de la luz detectada en ese punto a estrechas bandas del espectro, típicamente de entre 1 y 5 nm de ancho (el espectro visible abarca unos 300 nm), un número de bandas de entre las decenas hasta los varios centenares, en muchas ocasiones no limitado estrictamente al visible sino también en el infrarrojo y el ultravioleta (no son raros los sensores que cubren desde los 300 nm hasta los 2500 nm). Por eso se emplean el término "imaging spectroscopy" para referirse a los sensores de imagen hiperespectrales, porque en cierto modo es como si estuviéramos midiendo simultáneamente con multitud de espectrómetros (que sólo miden la luz incidente en un punto) toda una rejilla de puntos en una gran zona geográfica. El concepto de imagen hiperespectral se ha relacionado históricamente con uno de los primeros instrumentos de la NASA para la exploración de la tierra, el sistema Jet Propulsion Laboratory's Airbone Visible-Infrared Imaging Spectrometer (AVIRIS)[2]. El asentamiento de la tecnología hiperespectral en aplicaciones de observación remota de la tierra ha dado como resultado el desarrollo de instrumentos 12
13 Fermín Ayuso y Víctor Manuel Ochoa de medida de muy elevada resolución en los dominios espacial y espectral [3]. Los sensores hiperespectrales adquieren imágenes digitales en una gran cantidad de canales espectrales muy cercanos entre sí, obteniendo, para cada porción de la escena o píxel, una firma espectral característica de cada material [2]. El resultado de la toma de datos por parte de un sensor hiperespectral sobre una determinada escena puede ser representado en forma de cubo de datos, con dos dimensiones para representar la ubicación espacial de un píxel, y una tercera dimensión que representa la singularidad espectral de cada píxel en diferentes longitudes de onda [4]. La Figura 1 muestra la estructura de una imagen hiperespectral donde el eje X es el indicador de las líneas, el eje Y es el indicador de las muestras y el eje Z es el número de bandas, es decir, la longitud de onda de esa banda (canal). Bandas 1-4 ND en banda 4 ND en banda 3 Muestras Pixel en posición (x,y) ND en banda 2 ND en banda 1 Líneas Figura 1: Imagen hiperespectral Como puede apreciarse en la Figura 1, el resultado de la toma de datos por parte de un sensor hiperespectral sobre una determinada escena puede ser representado en forma de cubo de datos, con dos dimensiones para representar la ubicación espacial de un píxel, y una tercera dimensión que representa la singularidad espectral de cada píxel en diferentes longitudes de onda. En concreto, la capacidad de observación de los sensores denominados hiperespectrales permite la 13
14 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales obtención de una firma espectral detallada para cada píxel de la imagen, dada por los valores de reflectancia adquiridos por el sensor en diferentes longitudes de onda, lo cual permite una caracterización muy precisa de la superficie de nuestro planeta [5]. Como ejemplo ilustrativo, la Figura 2 muestra el procedimiento de análisis hiperespectral mediante un sencillo diagrama, en el que se ha considerado como ejemplo el sensor AVIRIS [2], el cual cubre el rango de longitudes de onda entre 0.4 y 2.5 micrómetros utilizando 224 canales y resolución espectral de aproximadamente 10 nm. Como puede apreciarse en la Figura 2, la capacidad de observación de este sensor permite la obtención de una firma espectral detallada para cada píxel de la imagen, dada por los valores de reflectancia adquiridos por el sensor en diferentes longitudes de onda, lo cual permite una caracterización muy precisa de la superficie de nuestro planeta [6]. Sensor hiperespectral Imagen hiperespectral Reflectancia 0.4Longitud de onda (µm) bandas Firma espectral Pixel hiperespectral Figura 2: Proceso de captación de una imagen hiperespectral por parte del sensor AVIRIS de NASA Jet Propulsion Laboratory. Conviene destacar que, en este tipo de imágenes, es habitual la existencia de mezclas a nivel de subpíxel [7], por lo que a grandes rasgos podemos encontrar dos tipos de píxeles en estas imágenes: píxel puros y píxel mezcla [8]. Se puede definir 14
15 Fermín Ayuso y Víctor Manuel Ochoa un píxel mezcla como aquel en el que cohabitan diferentes materiales. Este tipo de píxel son los que constituyen la mayor parte de la imagen hiperespectral, en parte, debido a que este fenómeno es independiente de la escala considerada ya que tiene lugar incluso a niveles microscópicos [5]. La Figura 3 muestra un ejemplo del proceso de adquisición de píxeles puros (a nivel macroscópico) y mezcla en imágenes hiperespectrales Pixel mezcla (suelo + rocas) Reflectancia Long. onda (nm) Pixel puro (agua) Reflectancia Pixel mezcla (vegetación + suelo) Reflectancia Long. onda (nm) Figura 3: Presencia de píxeles mezcla en imágenes hiperespectrales Long. onda (nm) El desarrollo tecnológico introducido por la incorporación de sensores hiperespectrales en plataformas de observación remota de la tierra de última generación ha sido particularmente notable durante los últimos años [9-11]. En este sentido, conviene destacar que dos de las principales plataformas de tipo satélite que se encuentran en funcionamiento en la actualidad: Earth Observing-1 de NASA ( y ENVISAT de la Agencia Espacial Europea ( llevan incorporados sensores de este tipo, permitiendo así la posibilidad de obtener imágenes hiperespectrales de la práctica totalidad del planeta de manera casi continua [12]. A pesar de la gran evolución en los instrumentos de observación remota de la tierra, la evolución en las técnicas de análisis de los datos proporcionados por dichos sensores no ha sido tan notoria [13]. En particular, la obtención de técnicas de análisis hiperespectral avanzadas, capaces de aprovechar 15
16 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales totalmente la gran cantidad de información espacial y espectral presente en imágenes hiperespectrales, constituye un objetivo de gran interés para la comunidad científica [14], en particular, si se pretende obtener resultados de procesamiento en tiempo real o casi real (como resulta necesario en múltiples aplicaciones prácticas). Antes de justificar la necesidad de paralelismo en aplicaciones de análisis de datos hiperespectrales, procedemos a describir con más detalle el sensor AVIRIS utilizado en el presente estudio Sensor hiperespectral AVIRIS utilizado en el estudio Las siglas AVIRIS son un acrónimo de Airborne Visible-InfraRed Imaging Spectrometer [2]. Como su nombre indica, AVIRIS es un sensor hiperespectral aerotransportado con capacidades analíticas en las zonas visible e infrarroja del espectro [3]. El sensor entró en funcionamiento en 1987 como el primer sistema de adquisición de imágenes capaz de obtener información en una gran cantidad de bandas espectrales estrechas y casi contiguas. En realidad, AVIRIS es un instrumento único en el mundo de la teledetección, pues permite obtener información espectral en 224 canales espectrales contiguos, cubriendo un rango de longitudes de onda entre 0.4 y 2.5 µ m, siendo el ancho entre las bandas muy pequeño, aproximadamente 0.01 µ m. A partir de 1989, AVIRIS se convirtió en un instrumento aerotransportado. Desde ese momento, se realizan varias campañas de vuelo cada año con objeto de tomar datos mediante AVIRIS. En concreto, el sensor ha realizado tomas de datos en Estados Unidos, Canadá y Europa, utilizando para ello dos plataformas diferentes [15]: Un avión ER-2 perteneciente a NASA/Jet Propulsion Laboratory. El ER-2 puede volar a un máximo de 20 km sobre el nivel del mar, a una velocidad máxima de aproximadamente 730 km/h. Un avión denominado Twin Otter, capaz de volar a un máximo de 4 km sobre el nivel del mar, a velocidades de 130 km/h. Algunas de las características más relevantes del sensor AVIRIS son las que se detallan a continuación: El sensor utiliza un explorador de barrido (whiskbroom) que permite 16
17 Fermín Ayuso y Víctor Manuel Ochoa obtener un total de 614 pixels por cada oscilación. La cobertura de la parte visible del espectro es realizada por un espectrómetro EFOS- A, compuesto por un array de 32 detectores lineales. La cobertura en el infrarrojo es realizada por los espectrómetros EFOS-B, EFOS-C y EFOS-D, compuestos todos ellos por arrays de 64 detectores lineales. La señal medida por cada detector se amplifica y se codifica utilizando 12 bits. Esta señal se almacena en una memoria intermedia donde es sometida a una etapa de preprocesado, siendo registrada a continuación en una cinta de alta densidad de 10.4 Gb a velocidad de 20.4 Mb/s. El sensor dispone de un sistema de calibración a bordo (on-board calibrator), que utiliza una lámpara halógena de cuarzo que proporciona la radiación de referencia necesaria para comprobar el estado de los diferentes espectrómetros. A lo largo de los últimos años, el sensor ha ido mejorando sus prestaciones en cuanto a la relación señal-ruido (SNR). La Figura 4 muestra una descripción de las prestaciones del sensor en cuanto a la relación SNR a lo largo de los últimos años. Llama la atención el considerable aumento de prestaciones que se ha producido en los últimos años [16]. Figura 4: Evolución en la relación señal-ruido (SNR) del sensor AVIRIS. 17
18 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales 1.3. Necesidad de paralelismo Las técnicas de análisis de datos hiperespectrales, como los proporcionados por el sensor AVIRIS, generalmente se basan en la realización de operaciones repetitivas que resultan muy costosas desde el punto de vista computacional [17]. Sin embargo, el carácter repetitivo de estas operaciones las hace altamente susceptibles de ser implementadas en diferentes tipos de arquitecturas paralelas [18-20], permitiendo así un incremento significativo de su rendimiento en términos computacionales y dotando a dichas técnicas de la capacidad de producir una respuesta en tiempo casi real. Esta tarea es clave para la explotación de dichas técnicas en aplicaciones que requieren una respuesta en tiempo casi real. En concreto, las técnicas de computación paralela han sido ampliamente utilizadas para llevar a cabo tareas de procesamiento de imágenes de gran dimensionalidad [21, 22], facilitando la obtención de tiempos de respuesta muy reducidos. En la actualidad, es posible obtener arquitecturas masivamente paralelas de bajo coste mediante la utilización de sistemas heterogéneos formados por computadores personales (PCs) ubicados en localizaciones geográficas dispersas, con diversas características en cuanto a velocidad y rendimiento computacional, e interconectados entre sí mediante redes de comunicación extensas (en muchas ocasiones, la propia red Internet), y gestionados mediante Sistemas Operativos con elevadas capacidades en cuanto a administración y gestión de redes de computadores. Este tipo de arquitectura de computación paralela, que normalmente utiliza un Sistema Operativo de tipo Linux, se denomina sistema paralelo heterogéneo [23], y constituye la principal arquitectura paralela utilizada en el presente trabajo. Con vistas a lograr el objetivo de implementar de forma computacionalmente eficiente las nuevas técnicas diseñadas en arquitecturas paralelas de bajo coste, proponemos la utilización de un sistema heterogéneo operado por el Instituto de Astrofísica de Andalucía (IAA), el cual será descrito en capítulos posteriores de la presente memoria. Con la utilización de este sistema, proponemos la incorporación de una filosofía basada en software libre al problema que nos ocupa, con vistas a facilitar la estandarización de los modelos de computación propuestos al resto de la comunidad científica dedicada al análisis de datos hiperespectrales. 18
19 Fermín Ayuso y Víctor Manuel Ochoa Capítulo 2. Técnicas de procesamiento En este capítulo introducimos las técnicas de procesamiento de datos hiperespectrales que serán paralelizadas en el presente trabajo. Las técnicas consideradas se basan en integrar la información espacial y espectral [24] presente en la imagen a partir de un tratamiento local alrededor de cada píxel (vector) utilizando información relativa a sus vecinos espaciales, utilizando para ello una ventana o kernel de procesamiento que define la vecindad local alrededor de cada píxel. El capítulo está estructurado de la siguiente forma: en primer lugar describimos las técnicas clásicas de procesamiento espacial de imágenes, para describir a continuación cómo dichas técnicas han sido extendidas al dominio espectral en el presente trabajo Técnicas espaciales La teledetección espacial se plantea desde el punto de vista del análisis e interpretación de una única imagen digital, con una única banda dada por un único nivel digital (ND) asociado a cada píxel de la imagen [25]. Por tanto, las técnicas de análisis de este tipo de datos toman su base en el procesado digital de imágenes. A pesar de que las técnicas espaciales permiten obtener información sobre áreas muy extensas a bajo coste, el uso de un enfoque estrictamente espacial no está exento de algunas limitaciones prácticas. Así, la posibilidad de extraer modelos complejos utilizando exclusivamente información en el dominio espacial puede ser limitada. Este hecho ha propiciado que, en la actualidad, las técnicas que integran información espacial y espectral hayan adquirido un gran protagonismo en el tratamiento de datos hiperespectrales [14]. Dichas técnicas (incluyendo el esquema de integración propuesto en el presente trabajo) serán abordadas en el siguiente apartado de la presente memoria. Teniendo en cuenta las anteriores consideraciones, comenzamos el presente apartado detallando diferentes técnicas de análisis de imágenes digitales, particularizando en las técnicas más ampliamente utilizadas en las aplicaciones que nos ocupan, y las cuales serán extendidas al dominio espectral en el siguiente 19
20 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales apartado. En concreto, una de la técnicas más ampliamente utilizadas en el dominio espacial es el filtrado [26]. Esta técnica se basa en un procesamiento de grupo en el que el ND para el píxel de la imagen resultante (con una única banda) depende del ND del píxel correspondiente en la imagen original y de los ND s de los pixels que lo rodean (es decir, se trata de una operación sensible al contexto). Matemáticamente, un operador de filtrado se puede representar como un operador Ψ que, aplicado a la imagen de entrada, I, da lugar a una función de salida O=Ψ (I). De forma conceptual, podemos distinguir entre dos tipos de filtros espaciales: lineales y no lineales. Los filtros lineales se utilizan de forma habitual debido a su simplicidad. Cuando el filtrado es lineal e invariante frente a desplazamientos espaciales, el operador Ψ se corresponde con la operación de convolución espacial. Kernel de convolución K a b c d e f g h i a = K(-1,-1) b= K(0,-1) c= K(1,-1) d= K(-1,0) e= K(0,0) f = K(1,0) g= K(-1,1) h= K(0,1) i = K(1,1) I a I 1 9 g Operación de convolución ( x 1, y 1) + b I( x, y 1) + c I( x + 1, y 1) + d I( x 1, y) + e I( x, y) + f I( x + 1, y) + ( ) ( ) ( ) I x 1, y h I x, y i I x + 1, y + 1 O I(x,y) O(x,y) Imagen original Imagen resultante Figura 5: Ilustración gráfica de una operación de convolución utilizando un kernel de tamaño 3x3 pixels sobre una imagen digital en la que cada píxel tiene asociado un único nivel digital. La Figura 5 muestra un ejemplo que ilustra una operación de convolución sobre una imagen I. Puede apreciarse cómo el ND del píxel I(x,y) en la imagen 20
21 Fermín Ayuso y Víctor Manuel Ochoa original y los de sus 8 vecinos se multiplican por los correspondientes coeficientes de convolución definidos en una ventana cuadrada (con tamaño de 3x3 pixels) que rodea al píxel. Este tipo de ventanas son características de las técnicas de procesamiento espacial, y aparecen normalmente denominadas como kernels en la literatura [27]. Posteriormente, los resultados obtenidos se suman y el resultado promediado define el valor del píxel O(x,y) en la imagen resultante. El proceso se realiza para cada píxel en la imagen original. El conjunto de coeficientes en la Figura 5 se conoce como kernel de convolución, de forma que dichos coeficientes define los diferentes tipos de filtros espaciales lineales existentes en la literatura, tales como filtros pasa-alta y pasa-baja, filtros de gradiente, filtros de detección de borde, etc. Si suponemos que K denota un kernel de convolución cuadrado de n pixels de alto por n pixels de ancho, podemos formalizar la operación de convolución espacial antes ilustrada mediante la siguiente expresión: O(x, y) 1 = 2 n [ n / 2] [ n / 2] i= j= [ n / 2] I(x + [ n / 2] i, y + j) K(i, j) (1) Como puede apreciarse en la Figura 5, la elección del tamaño de kernel resulta determinante a la hora de realizar el proceso de convolución. A la hora de seleccionar un determinado tamaño de kernel, es preciso analizar en detalle las características espaciales concretas de las formas y objetos de la imagen que se desean caracterizar. Si no se dispone de información previa sobre los rasgos de interés en la imagen, o bien si las características espaciales de los objetos de interés son variables, la utilización de un único tamaño de kernel puede no resultar suficiente para caracterizar la totalidad de los objetos presentes en la imagen [28] Técnicas espaciales y espectrales En este apartado describimos las aproximaciones consideradas a la hora de integrar la información espacial y espectral utilizando como base el esquema descrito en el anterior apartado. Inicialmente, describimos el ángulo espectral o spectral angle mapper (SAM) [29] como medida base para realizar la extensión propuesta. A continuación, describimos algunas de las aplicaciones potenciales de la metodología 21
22 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales propuesta, comentando brevemente sus ventajas y su funcionamiento en diferentes casos de estudio El ángulo espectral (SAM) como medida base para la integración de información espacial y espectral Sean u y v dos firmas espectrales expresadas en forma de dos vectores N- dimensionales asociadas a dos píxeles de la imagen. El coseno del ángulo espectral entre ambos vectores, denotado SAM(u,v), se calcula mediante la siguiente expresión: u, v SAM( u, v) = cos (2) u v 2 2 Esta medida aparece frecuentemente denominada en la literatura simplemente como ángulo espectral (SAM). A continuación, destacamos algunas características interesantes relacionadas con esta medida: El valor de la medida SAM se encuentra siempre entre 0 y 1, puesto que los vectores comparados contienen valores de radiancia o reflectancia, los cuales son siempre positivos. Esta situación aparece ilustrada mediante un ejemplo en la Figura 6, en la que se describe de forma gráfica la medida SAM en el caso simplificado de una imagen con 3 bandas espectrales. Por otra parte, la medida SAM es invariante frente a la multiplicación de los vectores u y v por valores constantes [30]. De este modo, se trata de una medida robusta frente a cambios en la escala de las firmas espectrales debidos a condiciones diferentes de iluminación de la escena, y a divergencias en la orientación angular [23], condiciones que la convierten en una medida muy apropiada para analizar el grado de similitud en cuanto a la forma de dos signaturas espectrales. 22
23 Fermín Ayuso y Víctor Manuel Ochoa z u = (x 0, y 0, z 0 ) θ v = (x 1, y 1, z 1 ) x y Mejor caso SAM: cos (θ) = 1, cuando θ = 0 Peor caso SAM: cos (θ) = 0, cuando θ = π /2 Figura 6: Representación gráfica del ángulo espectral en una imagen con 3 bandas espectrales Integración de información espacial y espectral mediante técnicas de ventana deslizante A la hora de abordar el desarrollo de una metodología para integrar información espacial y espectral [24], el primer aspecto tenido en cuenta fue el modo en que el entorno local alrededor de cada píxel debía ser considerado. Siguiendo una de las aproximaciones más ampliamente utilizadas en la literatura, descrita en el apartado 2.1 de la presente memoria, se optó por utilizar funciones de vecindad o kernels, con determinadas propiedades espaciales en cuanto a forma y tamaño, alrededor de cada píxel. Los kernels inicialmente utilizados se caracterizaron por su simplicidad, y consistieron en ventanas cuadradas de diferente tamaño. La Figura 7 muestra algunos ejemplos obtenidos al aplicar la metodología propuesta a un caso de estudio dado por una sencilla imagen simulada, formada por cuatro regiones en forma de bandas verticales con anchura de 2 pixels y altura de 8 pixels. Las regiones son R V, compuesta por pixels de vegetación; R M, compuesta por mezclas entre vegetación y suelo con aproximadamente la misma contribución; R M', compuesta por mezclas entre vegetación y suelo con mayor contribución de vegetación; y R S, compuesta por pixels de suelo. En la primera prueba, el kernel K 1 23
24 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales (5x5 pixels) abarca una zona en la que se producen mezclas de un elemento espectralmente puro en distintas proporciones, dando lugar a cambios muy sutiles en las firmas espectrales visualizadas. En la segunda prueba, K 2 (3x3 pixels) cubre una zona en la que la variabilidad espectral es menor, con lo que la variabilidad en las firmas espectrales obtenidas es mucho menor. Finalmente, en la tercera prueba se utiliza un kernel (K 3, 2x2 pixels) cuya anchura y forma se asemeja a la distribución espacial de los pixels que componen una de las zonas de la imagen, permitiendo así una caracterización más precisa. Esta circunstancia se traduce en una variabilidad espectral muy reducida en las firmas espectrales visualizadas, la cual puede ser capturada al utilizar el ángulo espectral como medida base para realizar la operación de filtrado o convolución [31]. Primera prueba Segunda prueba Tercera prueba K 3 K 3 K 1 Figura 7: Ejemplos de uso de la metodología propuesta basada en kernel deslizante. A partir de las anteriores aseveraciones, deducimos que la forma y tamaño de la función de vecindad utilizada tiene una gran influencia en la variabilidad espectral observada en las cercanías del píxel estudiado. Esta sencilla experiencia pone de manifiesto la viabilidad de obtener operadores detectores capaces de incorporar propiedades espaciales y espectrales similares a las de los objetos que se desean 24
25 Fermín Ayuso y Víctor Manuel Ochoa identificar en la imagen. Obviamente, el diseño de estos operadores queda supeditado al conocimiento previo de las características de la imagen. Haciendo uso de la información proporcionada por el esquema descrito en el apartado anterior, el siguiente paso consistió en diseñar operadores detectores capaz de identificar objetos en una imagen utilizando de forma combinada la información espacial y espectral. Dicho detector no es más que un pequeño cubo de datos cuya dimensión espectral es la misma que la de la imagen original. El detector considera tanto la información espacial (tamaño y distribución de los elementos que lo componen) como espectral (asociación de una firma espectral a cada elemento). En el proceso de detección, el detector se mueve por todos los pixels de la imagen, calculando un valor de similaridad entre las firmas correspondientes a la zona analizada en un momento dado y las firmas espectrales almacenadas en el detector. Para ello, se calcula la suma de las distancias SAM entre firmas espectrales coincidentes, tal y como se muestra en la siguiente expresión: S= SAM p x,y,k x,y, (3) x,y K donde p(x,y) y k(x,y) denotan, respectivamente, el píxel de la imagen hiperespectral y el píxel del detector en la posición (x,y), y K es el detector utilizado. El valor de similaridad obtenido, S, ofrece una idea de lo bien que se ajusta el detector a la zona estudiada, de forma que, en aquellos casos en los que el operador coincide exactamente con la zona a identificar, se obtiene un valor de S alto, mientras que en los casos en que el operador no coincide, se obtienen valores de S bajos. El proceso de detección aparece ilustrado mediante un sencillo ejemplo en la Figura 8, que toma como ejemplo la misma imagen sintética empleada en la Figura 7. En la primera prueba, todos los pixels del detector coinciden con los correspondientes pixels de la imagen, por lo que el valor de S será alto. En la segunda prueba, solamente la mitad de los pixels del detector coinciden con los de la imagen, por lo que el valor de S será intermedio. Finalmente, en la tercera prueba el valor de S será bajo al no coincidir ninguno de los pixels del detector con los de la imagen. 25
26 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales Primera prueba Segunda prueba Tercera prueba Similaridad alta Similaridad intermedia Similaridad baja Figura 8: Operaciones que integran la información espacial y espectral Para concluir el presente apartado, destacamos que la técnica de ventana de procesamiento implementada en el presente trabajo se basa en una sencilla aproximación basada en recorrer todos los puntos de la imagen y para cada vector calcular la media de los vecinos según el kernel considerado. Es preciso destacar que las operaciones anteriormente descritas representan problemas computacionalmente costosos. Sin embargo, se han realizado pocos esfuerzos en la investigación de diseños de implementaciones paralelas [32]. En particular, algunas técnicas están sujetas a restricciones no publicadas en la literatura debido principalmente a su uso en el campo militar y en aplicaciones de defensa. No obstante, con la reciente explosión de la cantidad y dimensionalidad de las imágenes hiperespectrales, se espera que el procesamiento paralelo se convierta en un requerimiento para cada aplicación de sensores remotos. Por este motivo, en el siguiente capítulo comentamos las aproximaciones consideradas en cuanto al particionamiento de datos hiperespectrales en el presente trabajo. 26
27 Fermín Ayuso y Víctor Manuel Ochoa Capítulo 3. Implementación paralela En el presente capítulo detallamos la implementación paralela realizada de las técnicas descritas en el capítulo anterior. En primer lugar, comentamos los esquemas de particionamiento de datos que pueden aplicarse en imágenes hiperespectrales. A continuación, describimos un algoritmo de particionamiento de datos orientado a balancear la carga en sistemas heterogéneos, el cual ha sido empleado para desarrollar la versión paralela del algoritmo paralelo que constituye la principal contribución de la presente memoria. Dicho algoritmo paralelo será evaluado experimentalmente en el siguiente capítulo.3.1. Técnicas de particionamiento de datos Es importante recalcar que las técnicas de análisis espectrales se centran sobre el análisis de datos basados en las propiedades de las firmas espectrales, es decir, utilizan la información dada por cada píxel vector como un todo. Esta consideración tiene un impacto significativo sobre el diseño de las estrategias de partición de datos para la paralelización [33]. En particular, se ha mostrado en la literatura que el ámbito de las técnicas de descomposición aporta flexibilidad y escalabilidad en el procesamiento paralelo de imágenes. En una imagen hiperespectral, se pueden realizar dos tipos de particiones de datos [31]: 1. Particionamiento espectral. Considera que diferentes procesadores de la arquitectura paralela pueden contener partes no solapadas de una misma firma espectral (píxel). Este esquema tiene la desventaja de que, al considerarse la firma espectral (vector) como unidad mínima de procesamiento para el algoritmo paralelo, se introducirían varias operaciones de comunicación para cada cálculo de la distancia SAM. Dado el enfoque del algoritmo, basado en calcular de forma repetitiva numerosas operaciones de tipo SAM, este tipo de particionamiento resultaría altamente costoso en cuanto a comunicaciones [ver Figura 9(a)]. 2. Particionamiento espacial. Considera que una misma firma espectral (píxel) no puede estar particionada en diferentes unidades de proceso de la arquitectura paralela. La ventaja de este esquema es que las unidades 27
28 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales mínimas de cómputo (cálculos de la distancia SAM) podrían realizarse de forma local en cada procesador, limitando las operaciones de comunicación a sincronizaciones globales entre los diferentes procesadores [ver Figura 9(b)]. 3. Particionamiento híbrido. Por último, el particionamiento de tipo híbrido integra las características de los dos tipos de particionamiento anteriormente descritos, es decir, en este tipo de particionamiento el cubo de datos hiperespectral se encuentra dividido en sub-volúmenes, de forma que cada sub-volumen integra una partición de la imagen en el dominio espacial (es decir, un subconjunto de píxeles ubicados de forma contigua en el dominio espacial) y a su vez la información espectral asociada a un píxel de dicho subvolumen puede encontrarse almacenada en dos o más procesadores [ver Figura 9(c)]. Figura 9: Tipos de particionamiento de datos hiperespectrales: (a) espectral; (b) espacial; (c) híbrido. Con vistas a explotar el paralelismo inherente en los algoritmos de particionamiento de datos desarrollados en la presente memoria, hemos optado por un particionamiento de tipo espacial por los motivos que se describen a continuación: En primer lugar, la partición por el dominio espacial es una aproximación natural para el procesamiento de imágenes de bajo nivel ya que muchas operaciones de procesamiento de imagen requieren que se aplique la misma función a pequeños grupos de elementos alrededor de cada píxel vector completo en el volumen de la imagen. 28
29 Fermín Ayuso y Víctor Manuel Ochoa Otra razón fundamental para seleccionar el particionamiento espacial frente a los particionamientos de tipo espectral e híbrido es el hecho de que el particionamiento espacial permite reducir sensiblemente las comunicaciones entre los procesadores de la arquitectura paralela. Como se ha descrito en la presente memoria, la mayor parte de los algoritmos de análisis hiperespectral consideran la firma espectral (información completa asociada a un píxel de la imagen) como la unidad mínima de procesamiento y, por tanto, los particionamientos espectral e híbrido involucran comunicaciones interprocesador a nivel de píxel, incrementando significativamente el coste total asociado a las comunicaciones lo cual, en términos generales, se traduce en un menor rendimiento paralelo y en problemas de escalabilidad a medida que el número de procesadores aumenta. Una última razón fundamental para seleccionar el particionamiento espacial es la posibilidad de reutilizar código y de mejorar la portabilidad de los algoritmos paralelos desarrollados a diferentes arquitecturas. En la mayor parte de aplicaciones, es altamente deseable poder reutilizar los códigos serie a la hora de desarrollar versiones paralelas dada la complejidad de algunas técnicas de análisis. En este sentido, el particionamiento espacial permite un paralelismo de grano fino al facilitar la aplicación de un algoritmo paralelo a diferentes porciones de datos en las que se retiene toda la información espectral, permitiendo así que la transformación del código serie en código paralelo sea mucho más sencilla que al aplicar un particionamiento espectral o híbrido. Antes de finalizar este apartado, mencionamos algunas consideraciones adicionales sobre la utilización del esquema de particionamiento espacial de forma previa a la aplicación de un algoritmo de procesamiento basado en ventana deslizante. En este caso, sería preciso implementar operaciones de comunicación de información entre procesadores cuando la ventana está centrada en un píxel situado en el borde de una partición local (ver ejemplo en Figura 10, basado en una ventana de tamaño 3x3 píxeles. En este ejemplo, los cálculos efectuados en el procesador #1 en relación a la vecindad del píxel en las coordenadas espaciales (5,3) de la imagen 29
30 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales hiperespectral original necesitan tres píxeles (vectores) localizados en el procesador #2. Por tanto, sería necesario comunicar dichos píxeles del procesador #2 al procesador #1 para finalizar la operación. Figura 10: Necesidad de comunicación en procesamiento por ventana de datos hiperespectrales. No obstante, una alternativa a este envío de información (basado en varios cientos de valores espectrales) a través de la red de comunicación de la arquitectura paralela, con el previsible incremento del coste asociado a las comunicaciones punto a punto, sería introducir información redundante en el procesador #1 para evitar dicha comunicación de información [34]. En este ejemplo, la información redundante correspondería a la primera fila de píxeles en la partición asociada al procesador #2, que se copiaría como la última fila de píxeles en la partición asociada al procesador #1 (ver Figura 11). En este caso, está claro que se introduce información redundante en el sistema ya que la intersección entre ambas particiones no es disjunta, pero al mismo tiempo el rendimiento paralelo del algoritmo puede mejorar al reducirse el coste asociado a las comunicaciones a expensas de introducir una pequeña cantidad de información redundante en el sistema. A la hora de optar por un esquema basado en replicación de información o por un esquema basado en comunicación de información, es preciso valorar las características concretas de la aplicación. En 30
31 Fermín Ayuso y Víctor Manuel Ochoa nuestro caso, al trabajar con vectores N-dimensionales, hemos comprobado experimentalmente que el esquema basado en computación redundante resulta generalmente más apropiado que el basado en comunicación, en particular, cuando el tamaño de las ventanas de procesamiento empleadas es pequeño o puede utilizarse de forma iterativa para considerar una mayor vecindad espacial sin necesidad de aumentar el tamaño en píxeles del kernel de procesamiento. Figura 11: Introducción de información redundante para evitar comunicaciones en procesamiento por ventana de datos hiperespectrales. Teniendo en cuenta las anteriores consideraciones y la posibilidad de obtener un algoritmo de particionamiento sin comunicación entre procesadores mediante la introducción de información redundante, el siguiente apartado describe el algoritmo de particionamiento y distribución de carga empleado en las implementaciones paralelas basadas en particionamiento de datos que serán desarrolladas en apartados sucesivos. Dicho algoritmo se basa en una sencilla operación de particionamiento (realizada en un procesador maestro) a partir de la cual se asignan particiones espaciales a procesadores separados. Tras un procesado local en paralelo en cada uno de dichos procesadores, los resultados intermedios se envían al procesador maestro, el cual combina los resultados parciales y genera un resultado final. 31
32 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales 3.1. Algoritmo paralelo para el reparto de carga Esta sección describe el algoritmo paralelo que ha sido implementado y utilizado para este estudio. Antes de introducir la descripción del algoritmo, vamos a formular un problema general de optimización en el contexto de los sistemas completamente heterogéneos [31]. Asumimos que el procesamiento de elementos en el sistema pueden ser modelados por un conjunto de recursos informáticos P=p i P, donde P es el número total de procesadores en el sistema, y cada i=1 procesador se mide por su velocidad relativa w i [35]. Con el fin de estimar velocidades relativas para los procesadores, utilizamos una función benchmark representativa que hace uso de una computación directamente relacionada con el dominio de la aplicación considerada. También denominamos W a la cantidad de trabajo total que debe realizar un algoritmo para imágenes hiperespetrales. Esta cantidad de trabajo depende del algoritmo que consideremos. Puesto que la mayoría de los algoritmos de procesado en las aplicaciones de imágenes hiperespectrales engloban repetidas operaciones de productos vectoriales, podemos medir la cantidad de trabajo implicada en cada algoritmo en términos de operaciones elementales de multiplicación/acumulación (MAC). Con la anterior fórmula presente, el procesador p i consigue una parte de α i x W del trabajo total ejecutado por un determinado algoritmo, donde α i 0 para 1 i P y P i=1 α i =1. Una visión abstracta del problema puede ser simplemente exponer una arquitectura cliente-servidor [36,37], en la que el nodo servidor es responsable de la distribución de trabajo entre los nodos P, y el nodo cliente opera con las firmas espectrales contenidas en la partición local. Las particiones locales se actualizan localmente y, dependiendo de los algoritmos, los cálculos resultantes pueden también intercambiarse entre los procesadores cliente, o entre los servidores y los clientes. La secuencia general de operaciones ejecutadas se resume como sigue: 1. Generamos la información necesaria, incluyendo el número de procesadores disponibles en el sistema, P, y el número identificativo para cada procesador, 32
33 Fermín Ayuso y Víctor Manuel Ochoa p P i i=1 2. El procesador master obtiene las N primeras lineas de la imagen hiperespectral contenida en el fichero bsq, siendo N el número de lineas que vamos a utilizar para la estimación de carga por parte de cada procesador. 3. Comunicamos a cada procesador, mediante una función de broadcast, estas N lineas leídas por el master. 4. Cada procesador calcula el tiempo que tarda en procesar estas N lineas y se lo comunica al master. Para ello, procesa X veces las N lineas y calcula el tiempo empleado en cada una de las veces. El tiempo que comunica cada procesador al master se calcula de la siguiente forma i= 0 X TimeProccess N donde TimeProcess (N) es el tiempo empleado en procesar N lineas. El proceso a las que son sometidas las N primeras lineas de la imagen es el que se detalla en el segundo capítulo de esta memoria, y se realiza con un tamaño de ventana fijo e igual a 3x3. 5. El tiempo estimado para cada procesador, una vez que el master lo ha recibido, es almacenado por el master en una estructura tipo vector, donde el índice de ese vector indica el identificador del procesador. 6. Una vez que se obtienen los tiempos para todos los procesadores, nos disponemos a estimar el número de lineas que le corresponden a cada procesador, dependiendo de los tiempos calculados en el paso anterior. Para ello, realizamos un reparto inversamente proporcional, consiguiendo así que a los procesadores que han tardado más tiempo en procesar las N lineas se les asigne menos lineas de la imagen hiperespectral a procesar. El reparto se puede resumir en las siguientes fórmulas: NumProcessors NumLines= 1 i= 0 Time K i X, donde K es la constante de proporcionalidad, Time i es el tiempo estimado 33
34 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales para el procesador i, siendo i el identificador de cada procesador y NumLines el número total de las lineas de la imagen hiperespectral a procesar. Si de esta última fórmula despejamos el valor de K, obtendremos el valor de la K= constante de proporcionalidad NumLines NumProcessors i=0 1 Time i que nos servirá a la hora de asignar lineas a cada procesador. 7. Una vez obtenido el valor de la constante de proporcionalidad K, nos disponemos a repartir el número de lineas que le corresponden a cada uno de los procesadores que participan de la siguiente forma: P i = K siendo 0 i P Time i 8. Por último, al tratar con números no enteros, es posible que no se asignen el total de las lineas de la imagen a procesar. Para solucionar este problema, se ordena el vector de tiempos estimados para cada procesador y se van asignando una a una las lineas sobrantes a los procesadores que menos tiempo han tardado en estimar. Siguiendo estos pasos, se ha conseguido un reparto de carga equitativo entre los distintos procesadores que participan en el procesado de la imagen hiperespectral. En las siguiente sección veremos los resultados obtenidos al aplicar esta metodología, eligiendo para cada una de las pruebas un tamaño de N (recuérdese que N es el número de lineas utilizadas para estimar el balanceo) diferente. 34
35 Fermín Ayuso y Víctor Manuel Ochoa Capítulo 4. Análisis y discusión de resultados Este capítulo proporciona una evaluación exhaustiva de la eficiencia del algoritmo paralelo descrito en el capítulo apartado anterior. El capítulo se estructura de la siguiente forma. En primer lugar, describimos la imagen hiperespectral utilizada para la validación experimental desarrollada en el presente estudio, la cual fue obtenida por el sensor AVIRIS sobre la reserva biológica Jasper Ridge en California, Estados Unidos. A continuación, describimos la arquitectura heterogénea en el Instituto de Astrofísica de Andalucía (IAA) en la que se han efectuado los estudios de rendimiento paralelo basados en el procesamiento eficiente de la imagen hiperespectral obtenida sobre Jasper Ridge. Seguidamente, presentamos de forma detallada los resultados obtenidos al evaluar el rendimiento computacional del algoritmo paralelo propuesto al procesar la imagen considerada utilizando la arquitectura heterogénea disponible en el IAA. El capítulo concluye con una detallada discusión de los resultados obtenidos en la que se resumen los aspectos más importantes derivados de los experimentos y se destacan las principales observaciones resultantes de los mismos Imagen hiperespectral considerada La imagen considerada fue obtenida por el sensor AVIRIS, operado por el Jet Propulsion Laboratory de la NASA, sobre la Jasper Ridge Biological Preserve (JRBP) de California. Estos datos están disponibles en unidades de radiancia y pueden ser obtenidos de forma gratuita en la dirección: El conjunto de datos, adquiridos en abril de 1998 consiste en 512 x 614 píxeles y 224 bandas espectrales con una resolución del terreno de 20 metros, una resolución espectral de 10nm, y 16-bits de resolución radiométrica (tamaño total de la imagen: 134 MB). Por motivos ilustrativos, la parte izquierda de la Figura 12 muestra la banda en la longitud de onda de 903 nm de la imagen original, mientras que la parte derecha de la Figura 12 muestra una serie de firmas espectrales en unidades de radiancia asociadas con los principales componentes que constituyen la región JRBP. Las firmas, denotadas 35
36 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales como S 1 (suelo), S 2 (bosques), S 3 (hierba seca), S 4 (vegetación chaparral ) y S 5 (sombra), fueron obtenidas de la escena de la imagen por parte de expertos de la Universidad de California, Davis, usando un método híbrido, combinando inspecciones visuales e información a cerca de la escena. De forma específica el conocimiento del terreno se usó para identificar zonas de vegetación homogénea y áreas de sombra y suelo en la imagen [31]. Figura 12: Banda espectral en la longitud de onda de 903 nm de la imagen original (izquierda) y firmas espectrales asociadas con los principales componentes que constituyen la imagen AVIRIS sobre la región Jasper Ridge (derecha). En particular, en este caso de estudio (cuyo principal objetivo radicó en analizar el estado de la vegetación en la región Jasper Ridge de cara a estudiar a priori la posible propagación de incendios, bastante propensos en la zona) el método de procesamiento de ventana fue empleado como soporte a algoritmos de extracción de referencias puras de cara a estimación de abundancias y estado fenológico de las cubiertas vegetales presentes en la zona, comprobando que la integración de información espacial y espectral proporcionó una fuente adicional de información a la hora de identificar dichas referencias puras de forma automática. Dado que el principal punto de interés del presente proyecto no radica en justificar este tipo de procesamiento, el cual ha sido validado mediante numerosas publicaciones en la literatura, sino en evaluar las mejores estrategias de cara a su paralelización en sistemas heterogéneos, hemos optado por no incluir los resultados preliminares obtenidos sobre extracción de referencias puras en la presente memoria, 36
37 Fermín Ayuso y Víctor Manuel Ochoa centrándonos en una detallada discusión acerca de las propiedades computacionales del algoritmo paralelo heterogéneo, las cuales serán descritas en los dos últimos apartados del presente capítulo (resultados y discusión) Arquitectura heterogénea considerada Para el desarrollo de este trabajo, se ha utilizado una plataforma de computación paralela con arquitectura heterogénea. La Tabla 1 muestra las especificaciones de los nodos de esta arquitectura heterogénea, disponible en el Departamento de Astrofísica Extragaláctica, del Instituto de Astrofísica de Andalucía (CSIC). La arquitectura heterogénea está compuesta por 13 nodos con dos procesadores cada uno y con una velocidad entre 2,73 y 2,92 Ghz por procesador. El sistema operativo utilizado por cada uno de los nodos es Linux mdv(x86). La memoria RAM es idéntica para todos los nodos (1,98 GB) y la memoria de intercambio está entre 977 MB y MB. NOMBRE CPU DISCO LOCAL MEMORIA RAM SWAP hyper03 2 x 2.73 Ghz GB 1.98 GB MB hyper04 2 x 2.73 Ghz GB 1.98 GB MB hyper05 2 x 2.73 Ghz GB 1.98 GB MB hyper06 2 x 2.92 Ghz GB 1.98 GB MB hyper07 2 x 2.92 Ghz GB 1.98 GB MB hyper09 2 x 2.92 Ghz GB 1.98 GB MB hyper10 2 x 2.92 Ghz GB 1.98 GB MB hyper11 2 x 2.73 Ghz GB 1.98 GB MB hyper12 2 x 2.73 Ghz GB 1.98 GB MB hyper13 2 x 2.73 Ghz GB 1.98 GB MB hyper14 2 x 2.73 Ghz GB 1.98 GB MB hyper15 2 x 2.73 Ghz GB 1.98 GB MB hyper16 2 x 2.73 Ghz GB 1.98 GB MB SISTEMA OPERATIVO Linux mdv (x86) Tabla 1: Características de la arquitectura heterogénea del Instituto de Astrofísica de Andalucía. 37
38 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales Los nodos que no aparecen referidos en la Tabla 1, como hyper01, hyper02 e hyper08, existentes en la arquitectura, no se incluyen en este estudio, ya que son nodos exclusivamente dedicados a otras tareas y no han podido ser utilizados en la realización de las pruebas. Es por ello por lo que no se han incluido en este estudio Resultados experimentales Los resultados que se muestran en el presente apartado corresponden a un estudio detallado del comportamiento de la versión paralela desarrollada para una multitud de pruebas detalladas en los siguientes puntos. Hay que tener en cuenta que los tiempos que se muestran son el resultado de haber ejecutado 10 veces cada prueba, mostrando los tiempos medios resultantes. Lo que presentamos como balanceo medio es la media de los balanceos obtenidos en cada una de estas 10 ejecuciones, y la varianza y desviación típica mostradas para cada caso han sido calculadas en referencia a este valor del balanceo. El balanceo global es obtenido de la siguiente forma: Tiempo mayor Tiempo menor. Siendo Tiempo mayor el mayor valor de los tiempos medios de procesamiento de los distintos procesadores y Tiempo menor el menor de ellos. También cabe resaltar que el Tiempo de proceso-total es el tiempo de procesamiento medio. El tiempo que se muestra está medido en segundos. Para todas las pruebas realizadas, se ha tomado el procesador master como uno de los dos procesadores del nodo hyper03, debido a que sus prestaciones son las más parecidas a la media de las prestaciones de todos los equipos en el sistema y, por tanto, su elección como nodo maestro parece razonable en cuanto a la posibilidad de obtener los mejores resultados posibles en cuanto al balanceo de carga. Todas las pruebas realizadas han sido llevadas a cabo variando el número de procesadores entre 2 y 26, que es el máximo permitido por la arquitectura Estudio de la versión secuencial El primer paso llevado a cabo en este estudio ha sido comprobar el comportamiento de la función de procesado de la imagen hiperespectral en un entorno no paralelo, para lo cual se ha realizado una ejecución secuencial del 38
39 Fermín Ayuso y Víctor Manuel Ochoa algoritmo. En dicho experimento, se ha utilizado una versión secuencial del código y se ha calculado el tiempo de ejecución en cada nodo de la arquitectura antes mencionada con el propósito de comprobar el rendimiento de nuestro estudio a la hora de paralelizar el código. La Tabla 2 muestra los tiempos de ejecución de la versión secuencial para cada uno de los nodos y con los diferentes tamaños de ventana escogidos en este estudio. Queda patente a la vista de los resultados que la relación entre el tiempo de ejecución y el tamaño de la ventana de procesado es directamente proporcional, es decir, conforme aumenta el tamaño de ventana, aumenta también el tiempo de ejecución. Respecto a este último, vemos que varía sustancialmente dependiendo del nodo en el que se está ejecutando el código. Tomando como referencia la Tabla 1, podemos agrupar los nodos del sistema en dos grandes grupos, los de velocidad de CPU más rápida (nodos hyper06, hyper07, hyper09, hyper10) y los de velocidad de CPU más lenta (el resto de nodos). En este sentido, la Tabla 2 muestra que, en lo relacionado con el tiempo de ejecución de la versión paralela (que se analizará posteriormente), los nodos pertenecientes al primer grupo tardan menos tiempo en ejecutar el algoritmo que los pertenecientes al segundo grupo. Nodo Ventana 3x3 Ventana 5x5 Ventana 7x7 Ventana 9x9 hyper03 29,66 95,33 237, hyper04 27,66 90,33 227,5 413 hyper05 30, hyper06 18, hyper07 18, hyper09 18, hyper10 18, hyper11 34, hyper hyper13 28, hyper14 29, hyper15 29, hyper16 28, Tabla 2: Tiempos de ejecución en serie para cada nodo de la arquitectura heterogénea. Unidades expresadas en segundos. 39
40 Aplicación de la tecnología Grid al tratamiento de imágenes hiperespectrales A continuación, una vez realizado el estudio del algoritmo de procesado en su versión secuencial, expondremos y comentaremos los resultados obtenidos en las diferentes pruebas realizadas para la versión paralela, en la que se ha incluido el algoritmo que reparte correctamente la carga entre los distintos procesadores. Para ello se han realizado diversas pruebas con un número variable de procesadores, de tamaños de ventana y de tamaños de la función de estimación Estudio de la influencia del tamaño de ventana Las primeras pruebas realizadas han consistido en escoger un tamaño pequeño para la función de estimación, de dos líneas de la imagen original, con la finalidad de realizar un un reparto equitativo de la carga entre distintos números de procesadores. Analizando los resultados de la prueba (Tabla 3) vemos que los tiempos de procesamiento de cada procesador (al igual que en la versión secuencial) aumentan conforme aumenta el tamaño de la ventana; sin embargo, el tiempo empleado por cada nodo para calcular el workload es similar. Esto se debe a que son procesadores con idénticas características. Por otra parte, podemos comprobar que el balanceo es adecuado, ya que está comprendido en una rango aceptable de valores (entre 1 y 1,15, siendo 1 el mejor caso posible de balanceo de carga). Procesadores Ventana 3x3 Ventana 5x5 Ventana 7x7 Ventana 9x9 Tiempo de proceso - Master 9, ,615 68, ,005 T. en calcular Workload - Master 0, ,0371 0,0372 0,037 Tiempo procesar Slave 8, ,893 77,74 126,167 T. en calcular Workload - Slave 0, ,0373 0,0371 0,0373 Tiempo de proceso - Total 9, , , ,702 Balanceo Medio 1,0312 1,0943 1,138 1,044 Varianza 0, , ,0367 0,0008 Desviación típica 0, ,2001 0,192 0,028 Balanceo Global 1,0295 1,088 1,132 1,009 Tabla 3: Resultados para una estimación de 2 líneas y 2 procesadores 40
41 Fermín Ayuso y Víctor Manuel Ochoa Por otra parte, en la Figura 13 y en la Tabla 4 recogemos el tiempo de ejecución que cada nodo invierte en procesar la partición de la imagen que le corresponde y el tiempo que tarda en ejecutar la función workload en el caso que estamos estudiando de 2 líneas para la función de estimación, y de 26 procesadores. Tiempo Nodos (procesadores) Tiempo3x3 Workload3x3 Tiempo5x5 Tiempo7x7 Tiempo9x9 Figura 13: Tiempos de ejecución con diferentes tamaños de ventana para una función de estimación de 2 líneas y 26 procesadores A tenor de los resultados mostrados, tenemos que el tiempo empleado por cada nodo en procesar su porción de la imagen aumenta conforme aumentamos el tamaño de la ventana, manteniéndose siempre el valor del tiempo empleado en la función de estimación. Hacemos notar finalmente que el balanceo se encuentra dentro del rango de valores que se consideran como aceptables. Ventana 3x3 Ventana 5x5 Ventana 7x7 Ventana 9x9 Tiempo de proceso - Total 1,766 3,505 6,461 11,723 Balanceo Medio 1,2413 1,254 1,271 1,33 Varianza 0,0061 0,006 0,0006 0,0015 Desviación típica 0,0783 0,0774 0,0235 0,0386 Balanceo Global 1,154 1,17 1,255 1,317 Tabla 4: Resultados finales para una estimación de 2 líneas y 26 procesadores 41
UNIVERSIDAD DE EXTREMADURA
UNIVERSIDAD DE EXTREMADURA Escuela Politécnica Ingeniería Informática Proyecto Final de Carrera Aplicación de la Tecnología Grid al Tratamiento de Imágenes Hiperespectrales Fermín Ayuso Márquez Víctor
Más detallesOperaciones Morfológicas en Imágenes Binarias
Operaciones Morfológicas en Imágenes Binarias Introducción La morfología matemática es una herramienta muy utilizada en el procesamiento de i- mágenes. Las operaciones morfológicas pueden simplificar los
Más detallesSistemas de Información Geográficos (SIG o GIS)
Sistemas de Información Geográficos (SIG o GIS) 1) Qué es un SIG GIS? 2) Para qué sirven? 3) Tipos de datos 4) Cómo trabaja? 5) Modelos de datos, Diseño Conceptual 6) GeoDataase (GD) 7) Cómo evaluamos
Más detallesUNIVERSIDAD DE SALAMANCA
UNIVERSIDAD DE SALAMANCA FACULTAD DE CIENCIAS INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS Resumen del trabajo práctico realizado para la superación de la asignatura Proyecto Fin de Carrera. TÍTULO SISTEMA
Más detallesIng. Benoît FROMENT MODULO 4 4.2 FOTOGRAFIAS AEREAS
4.2 FOTOGRAFIAS AEREAS 1 - DESARROLLO DE LA FOTOGRAFIA AEREA El hombre, para enfrentar los problemas que le plantea la organización y el desarrollo del medio que habita, se ha visto obligado a crear novedosas
Más detallesLa presente tesis pretende que los estudiantes observen la teoría de las acciones de control
CAPÍTULO V. CONCLUSIONES. La presente tesis pretende que los estudiantes observen la teoría de las acciones de control de forma virtual al mismo tiempo analicen físicamente los sistemas electrónicos cuando
Más detallesColección de Tesis Digitales Universidad de las Américas Puebla. Morales Salcedo, Raúl
1 Colección de Tesis Digitales Universidad de las Américas Puebla Morales Salcedo, Raúl En este último capitulo se hace un recuento de los logros alcanzados durante la elaboración de este proyecto de tesis,
Más detallesCapítulo 5. Cliente-Servidor.
Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor
Más detallesApp para realizar consultas al Sistema de Información Estadística de Castilla y León
App para realizar consultas al Sistema de Información Estadística de Castilla y León Jesús M. Rodríguez Rodríguez rodrodje@jcyl.es Dirección General de Presupuestos y Estadística Consejería de Hacienda
Más detallesLINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN
LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN Tabla de Contenidos LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN... 1 Tabla de Contenidos... 1 General... 2 Uso de los Lineamientos Estándares...
Más detallesIntroducción INTRODUCCIÓN
INTRODUCCIÓN En un entorno económico cada vez más competitivo, como el actual, las empresas necesitan disponer de sistemas de información que constituyan un instrumento útil para controlar su eficiencia
Más detallesby Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true
by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true I. FUNDAMENTOS 3. Representación de la información Introducción a la Informática Curso de Acceso a la Universidad
Más detallesProyecto ACR Cooperativa en Línea
Proyecto ACR Cooperativa en Línea Orion Network Communication, SL. Granada, Noviembre de 2003. Página 1 Índice Índice...2 Introducción...3 Ventajas del Producto...4 Descripción del proyecto ACR-Cooperativa
Más detallesUnidad 1. Fundamentos en Gestión de Riesgos
1.1 Gestión de Proyectos Unidad 1. Fundamentos en Gestión de Riesgos La gestión de proyectos es una disciplina con la cual se integran los procesos propios de la gerencia o administración de proyectos.
Más detallesIntroducción. Metadatos
Introducción La red crece por momentos las necesidades que parecían cubiertas hace relativamente poco tiempo empiezan a quedarse obsoletas. Deben buscarse nuevas soluciones que dinamicen los sistemas de
Más detallesSEWERIN. Pre Localización De Fugas de Agua
SEWERIN Pre Localización De Fugas de Agua Ventajas del sistema La Pre localización de fugas de agua consiste en la escucha de la red en varios puntos. Para ello se utilizan loggers que graban sus sonidos
Más detallesNo se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos.
RAIDS MODO LINEAL Es un tipo de raid que muestra lógicamente un disco pero se compone de 2 o más discos. Solamente llena el disco 0 y cuando este está lleno sigue con el disco 1 y así sucesivamente. Este
Más detallesSERVIDOR WEB PARA ACCESO EN TIEMPO REAL A INFORMACIÓN METEOROLÓGICA DISTRIBUIDA
SERVIDOR WEB PARA ACCESO EN TIEMPO REAL A INFORMACIÓN METEOROLÓGICA DISTRIBUIDA E. SÁEZ, M. ORTIZ, F. QUILES, C. MORENO, L. GÓMEZ Área de Arquitectura y Tecnología de Computadores. Departamento de Arquitectura
Más detallesCAPÍTULO 1 Instrumentación Virtual
CAPÍTULO 1 Instrumentación Virtual 1.1 Qué es Instrumentación Virtual? En las últimas décadas se han incrementado de manera considerable las aplicaciones que corren a través de redes debido al surgimiento
Más detallesModelos de Help Desk
biblioteca foro helpdesk Mejores prácticas Modelos de Help Desk HUGO VILLADA FHD / BIBLIOTECA / MEJORES PRÁCTICAS Pág. 02 Modelos de Help Desk Composición de la demanda En el ambiente informático los problemas
Más detallesFuncionalidades Software PROYECTOS GotelGest.Net Software para la gestión de Proyectos GotelGest.Net
2012 Funcionalidades Software PROYECTOS GotelGest.Net Software para la gestión de Proyectos GotelGest.Net Servinet Sistemas y Comunicación S.L. www.softwaregestionproyectos.com Última Revisión: Febrero
Más detalles1.4.1.2. Resumen... 1.4.2. ÁREA DE FACTURACIÓN::INFORMES::Pedidos...27 1.4.2.1. Detalle... 1.4.2.2. Resumen... 1.4.3. ÁREA DE
MANUAL DE USUARIO DE ABANQ 1 Índice de contenido 1 ÁREA DE FACTURACIÓN......4 1.1 ÁREA DE FACTURACIÓN::PRINCIPAL...4 1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA...4 1.1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA::General...4
Más detallesTema 3. Medidas de tendencia central. 3.1. Introducción. Contenido
Tema 3 Medidas de tendencia central Contenido 31 Introducción 1 32 Media aritmética 2 33 Media ponderada 3 34 Media geométrica 4 35 Mediana 5 351 Cálculo de la mediana para datos agrupados 5 36 Moda 6
Más detalles4. Programación Paralela
4. Programación Paralela La necesidad que surge para resolver problemas que requieren tiempo elevado de cómputo origina lo que hoy se conoce como computación paralela. Mediante el uso concurrente de varios
Más detallesK2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2
K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2 Historia de revisiones Fecha VersiónDescripción Autor 08/10/2009 1.0 Creación del documento.
Más detallesCreado dentro de la línea de sistemas operativos producida por Microsoft Corporation.
WINDOWS Windows, Es un Sistema Operativo. Creado dentro de la línea de sistemas operativos producida por Microsoft Corporation. Dentro de los tipos de Software es un tipo de software de Sistemas. Windows
Más detallesCapítulo 5: METODOLOGÍA APLICABLE A LAS NORMAS NE AI
Capítulo 5: METODOLOGÍA APLICABLE A LAS NORMAS NE AI La segunda fase del NIPE corresponde con la adecuación de las intervenciones de enfermería del sistema de clasificación N.I.C. (Nursing Intervention
Más detallesCapítulo 5: Pruebas y evaluación del sistema. A continuación se muestran una serie de pruebas propuestas para evaluar varias
Capítulo 5: Pruebas y evaluación del sistema 5.1 Definición de pruebas para la aplicación A continuación se muestran una serie de pruebas propuestas para evaluar varias características importantes del
Más detallesCiclo de vida y Metodologías para el desarrollo de SW Definición de la metodología
Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología La metodología para el desarrollo de software es un modo sistemático de realizar, gestionar y administrar un proyecto
Más detallesTEMA 2: Representación de la Información en las computadoras
TEMA 2: Representación de la Información en las computadoras Introducción Una computadora es una máquina que procesa información y ejecuta programas. Para que la computadora ejecute un programa, es necesario
Más detalleswww.gtbi.net soluciones en Fotogrametría Digital El software de análisis más potente basado en objetos de datos geoespaciales. Fotogrametría Digital
soluciones en Fotogrametría Digital El software de análisis más potente basado en objetos de datos geoespaciales. Fotogrametría Digital www.gtbi.net LA MANERA DE ENTENDER EL MUNDO ESTÁ CAMBIANDO El usuario
Más detallesLUIS GALINDO PÉREZ DE AZPILLAGA HÉCTOR JOSÉ GARCÍA FERNÁNDEZ. Instituto Cibernos. Master Sistemas de Información Geográfica de Sevilla
APLICABILIDAD DE UN SISTEMA DE INFORMACIÓN GEOGRÁFICA PARA EL ESTUDIO DE LA IMPLANTACIÓN DE NUEVAS INFRAESTRUCTURAS EN UN ESPACIO INTERIOR DE LA CIUDAD DE SEVILLA. LUIS GALINDO PÉREZ DE AZPILLAGA HÉCTOR
Más detallesGestión de la Configuración
Gestión de la ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 1 ESTUDIO DE VIABILIDAD DEL SISTEMA... 2 ACTIVIDAD EVS-GC 1: DEFINICIÓN DE LOS REQUISITOS DE GESTIÓN DE CONFIGURACIÓN... 2 Tarea EVS-GC 1.1: Definición de
Más detallesCapítulo 6: Conclusiones
Capítulo 6: Conclusiones 6.1 Conclusiones generales Sobre el presente trabajo se obtuvieron varias conclusiones sobre la administración del ancho de banda en una red inalámbrica, basadas en la investigación
Más detallesCAPÍTULO I GENERALIDADES
CAPÍTULO I GENERALIDADES 1.1. INTRODUCCIÓN Debido al acelerado crecimiento en el desarrollo de las tecnologías de telecomunicación, estas se han convertido en una herramienta imprescindible para tener
Más detalles3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)
3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON) 3.1.1 Introducción Este método proporciona un soporte para el diseño creativo de productos de software, inclusive a escala industrial.
Más detallesModificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere.
UNIVERSIDAD DE CARABOBO FACULTAD DE CIENCIA Y TECNOLOGÍA DIRECCION DE EXTENSION COORDINACION DE PASANTIAS Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere. Pasante:
Más detallesCAPÍTUL07 SISTEMAS DE FILOSOFÍA HÍBRIDA EN BIOMEDICINA. Alejandro Pazos, Nieves Pedreira, Ana B. Porto, María D. López-Seijo
CAPÍTUL07 SISTEMAS DE FILOSOFÍA HÍBRIDA EN BIOMEDICINA Alejandro Pazos, Nieves Pedreira, Ana B. Porto, María D. López-Seijo Laboratorio de Redes de Neuronas Artificiales y Sistemas Adaptativos Universidade
Más detallesConclusiones. Particionado Consciente de los Datos
Capítulo 6 Conclusiones Una de las principales conclusiones que se extraen de esta tesis es que para que un algoritmo de ordenación sea el más rápido para cualquier conjunto de datos a ordenar, debe ser
Más detallesUNIDADES DE ALMACENAMIENTO DE DATOS
1.2 MATÉMATICAS DE REDES 1.2.1 REPRESENTACIÓN BINARIA DE DATOS Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS. Los computadores sólo
Más detallesPlataforma inteligente de gestión dinámica de flujos de tráfico. Universidad de Málaga Lynka
Plataforma inteligente de gestión dinámica de flujos de tráfico Universidad de Málaga Lynka 1 2 Plataforma inteligente de gestión dinámica de flujos de tráfico 3 Agencia de Obra Pública de la Junta de
Más detallesREDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS
REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS Servicio DNS - 1 - Servicio DNS...- 3 - Definición... - 3 - Instalación... - 5 - Configuración del Servidor DNS...- 10 - - 2 - Servicio DNS Definición
Más detallesFundamentos del diseño 3ª edición (2002)
Unidades temáticas de Ingeniería del Software Fundamentos del diseño 3ª edición (2002) Facultad de Informática necesidad del diseño Las actividades de diseño afectan al éxito de la realización del software
Más detallesCapítulo 10. Estudio de un caso con parámetros reales: acuífero de Borden
Capítulo 10. Estudio de un caso con parámetros reales: acuífero de Borden Tras la realización de muchos casos sintéticos y un estudio detallado de todos los parámetros que intervienen en el problema y
Más detallesSistemas de numeración
Sistemas de numeración Un sistema de numeración es un conjunto de símbolos y reglas que permiten representar datos numéricos. Los sistemas de numeración actuales son sistemas posicionales, que se caracterizan
Más detallesAnálisis interno de una empresa: diagnóstico de los recursos disponibles
Análisis interno de una empresa: diagnóstico de los recursos disponibles Javier Osorio UNIVERSIDAD DE LAS PALMAS DE GRAN CANARIA Análisis de los recursos internos Las principales investigaciones que sobre
Más detallesFigure 7-1: Phase A: Architecture Vision
Fase A Figure 7-1: Phase A: Architecture Vision Objetivos: Los objetivos de la fase A son: Enfoque: Desarrollar una visión de alto nivel de las capacidades y el valor del negocio para ser entregado como
Más detallesRESUMEN CUADRO DE MANDO
1. Objetivo Los objetivos que pueden alcanzarse, son: RESUMEN CUADRO DE MANDO Disponer eficientemente de la información indispensable y significativa, de modo sintético, conectada con los objetivos. Facilitar
Más detallesDestino Perú. En la búsqueda de nuevas oportunidades. Experiencias de Internacionalización
Destino Perú En la búsqueda de nuevas oportunidades Experiencias de Internacionalización Presentación: Eduardo Sánchez Director Ejecutivo Presentación: 29-02-12 1 Ingeniería de Software ORGANIZACIÓN ORIENTADA
Más detallesMODELOS DE RECUPERACION
RECUPERACIÓN Y ORGANIZACIÓN DE LA INFORMACIÓN INGENIERÍA INFORMÁTICA RECUPERACIÓN Y ACCESO A LA INFORMACIÓN MODELOS DE RECUPERACION AUTOR: Rubén García Broncano NIA 100065530 grupo 81 1 INDICE 1- INTRODUCCIÓN
Más detallesEL MODELO DE DATOS RASTER
EL MODELO DE DATOS RASTER El modelo de datos raster, como señala Bosque (1992), es el modelo de datos complementario al modelo vectorial presentado anteriormente. Tiene como principal característica el
Más detalleshttp://www.nicasoft.com.ni
BSC-RH es un sistema automatizado de planificación estratégica y gestión, utilizado en empresas para direccionar las actividades del negocio a la visión y estrategia de la organización. Mejora la comunicación
Más detallesINTERNET Y WEB (4º ESO)
INTERNET Y WEB (4º ESO) 1. CLASIFICACIÓN DE LAS REDES Internet se define comúnmente como la Red de redes, o la Red global. En cualquier caso, puede considerarse como la unión de entidades más pequeñas
Más detallesAhorro de energía visualizando páginas Web en dispositivos móviles heterogéneos
ROC&C 06 Ahorro de energía visualizando páginas Web en dispositivos móviles heterogéneos Dr. Juan Gabriel González Serna. M.C. Juan Carlos Olivares Rojas. Acapulco, Guerrero, México, 2006. Agenda Introducción
Más detallesLos mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:
SISTEMAS DISTRIBUIDOS DE REDES 1. SISTEMAS DISTRIBUIDOS Introducción y generalidades La computación desde sus inicios ha sufrido muchos cambios, desde los grandes equipos que permitían realizar tareas
Más detallese-mailing Solution La forma más efectiva de llegar a sus clientes.
e-mailing Solution La forma más efectiva de llegar a sus clientes. e-mailing Solution Es muy grato para nosotros presentarles e-mailing Solution, nuestra solución de e-mail Marketing para su empresa. E-Mailing
Más detallesAdelacu Ltda. www.adelacu.com Fono +562-218-4749. Graballo+ Agosto de 2007. Graballo+ - Descripción funcional - 1 -
Graballo+ Agosto de 2007-1 - Índice Índice...2 Introducción...3 Características...4 DESCRIPCIÓN GENERAL...4 COMPONENTES Y CARACTERÍSTICAS DE LA SOLUCIÓN...5 Recepción de requerimientos...5 Atención de
Más detalles5.4. Manual de usuario
5.4. Manual de usuario En esta sección se procederá a explicar cada una de las posibles acciones que puede realizar un usuario, de forma que pueda utilizar todas las funcionalidades del simulador, sin
Más detallesDiseño orientado al flujo de datos
Diseño orientado al flujo de datos Recordemos que el diseño es una actividad que consta de una serie de pasos, en los que partiendo de la especificación del sistema (de los propios requerimientos), obtenemos
Más detallesSISTEMAS DE NUMERACIÓN. Sistema de numeración decimal: 5 10 2 2 10 1 8 10 0 =528 8 10 3 2 10 2 4 10 1 5 10 0 9 10 1 7 10 2 =8245,97
SISTEMAS DE NUMERACIÓN Un sistema de numeración es un conjunto de símbolos y reglas que permiten representar datos numéricos. La norma principal en un sistema de numeración posicional es que un mismo símbolo
Más detalles1.- Introducción y objetivos
1.- Introducción y objetivos El objetivo principal de este proyecto, desarrollado en el Departamento de Tecnología Electrónica de la Universidad de Valladolid (UVA) es realizar un entorno que ayude a los
Más detallesRECONOCIMIENTO E IDENTIFICACIÓN DE LOGOTIPOS EN IMÁGENES CON TRANSFORMADA SIFT
UNIVERSIDAD CARLOS III DE MADRID ESCUELA POLITÉCNICA SUPERIOR INGENIERÍA TÉCNICA DE TELECOMUNICACIÓN (ESPECIALIDAD EN SONIDO E IMAGEN) PROYECTO FIN DE CARRERA RECONOCIMIENTO E IDENTIFICACIÓN DE LOGOTIPOS
Más detallesPráctica 5. Curso 2014-2015
Prácticas de Seguridad Informática Práctica 5 Grado Ingeniería Informática Curso 2014-2015 Universidad de Zaragoza Escuela de Ingeniería y Arquitectura Departamento de Informática e Ingeniería de Sistemas
Más detallesGnu-LinEx. Aplicaciones del Software Libre en Computación de Altas Prestaciones. Sé legal... copia LinEx
Gnu-LinEx Aplicaciones del Software Libre en Computación de Altas Prestaciones Sé legal... copia LinEx Antonio Plaza Miguel Departamento Tecnología Computadores Universidad de Extremadura E-mail: aplaza@unex.es
Más detallesLa Pirámide de Solución de TriActive TRICENTER
Información sobre el Producto de TriActive: Página 1 Documento Informativo La Administración de Sistemas Hecha Simple La Pirámide de Solución de TriActive TRICENTER Información sobre las Soluciones de
Más detallesSistemas de almacenamiento informático
1 Sistemas de almacenamiento informático 1. INTRODUCCIÓN: En informática, uno de los elementos principales es el lugar de almacenamiento de datos informáticos. Estos datos, bien en forma de archivos o
Más detallese-netcamanpr INDICE: Manual de Instalación
INDICE: INTRODUCCIÓN... 4 ELEMENTOS DEL SISTEMA.... 5 SOFTWARE.... 5 ARQUITECTURA DE LA SOLUCIÓN SOFTWARE.... 5 INSTALACIÓN DEL SISTEMA.... 8 CÁMARA.... 8 VELOCIDAD DEL VEHICULO.... 9 MODELO ACONSEJADO....
Más detallesEn la actualidad ASCII es un código de 8 bits, también conocido como ASCII extendido, que aumenta su capacidad con 128 caracteres adicionales
Definición(1) Sistemas numéricos MIA José Rafael Rojano Cáceres Arquitectura de Computadoras I Un sistema de representación numérica es un sistema de lenguaje que consiste en: un conjunto ordenado de símbolos
Más detalles4.4.1 Servicio de Prevención Propio.
1 Si se trata de una empresa entre 250 y 500 trabajadores que desarrolla actividades incluidas en el Anexo I del Reglamento de los Servicios de Prevención, o de una empresa de más de 500 trabajadores con
Más detallesGESTIÓN Y CONTROL DEL DESARROLLO E IMPLANTACIÓN DE APLICACIONES
Ciclo Formativo: Módulo: Desarrollo de Aplicaciones Informáticas Análisis y Diseño Detallado de Aplicaciones Informáticas de Gestión Unidad de Trabajo 10: GESTIÓN Y CONTROL DEL DESARROLLO E IMPLANTACIÓN
Más detalles1. INTRODUCCIÓN 1.1 INGENIERÍA
1. INTRODUCCIÓN 1.1 INGENIERÍA Es difícil dar una explicación de ingeniería en pocas palabras, pues se puede decir que la ingeniería comenzó con el hombre mismo, pero se puede intentar dar un bosquejo
Más detallesEl Mapa de Procesos y Análisis de Procesos Clave Área Temática: Calidad
Proyecto fin de Master Hito 2 Ejercicio Nº 2 El Mapa de Procesos y Análisis de Procesos Clave Área Temática: Calidad Enunciado teórico El Mapa de Procesos Un proceso es un conjunto de actividades y recursos
Más detalles4 Pruebas y análisis del software
4 Pruebas y análisis del software En este capítulo se presentan una serie de simulaciones donde se analiza el desempeño de ambos sistemas programados en cuanto a exactitud con otros softwares que se encuentran
Más detallesTópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN
Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN Proceso de Negocio (Business Process) Conjunto estructurado, medible de actividades para producir un producto.
Más detalles"Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios
"Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios Miguel Alfonso Flores Sánchez 1, Fernando Sandoya Sanchez 2 Resumen En el presente artículo se
Más detallesPropuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA
Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Documento de trabajo elaborado para la Red Temática DocenWeb: Red Temática de Docencia en Control mediante Web (DPI2002-11505-E)
Más detallesPrototipo de un sistema. interactivo de soporte y ayuda a los compradores de un centro. comercial de equipamiento del hogar
Prototipo de un sistema interactivo de soporte y ayuda a los compradores de un centro comercial de equipamiento del hogar Chema Lizano Lacasa. Miguel Ancho Morlans. IPO1-5 INDICE 1.- Descripción general....3
Más detallesPlataforma e-ducativa Aragonesa. Manual de Administración. Bitácora
Plataforma e-ducativa Aragonesa Manual de Administración Bitácora ÍNDICE Acceso a la administración de la Bitácora...3 Interfaz Gráfica...3 Publicaciones...4 Cómo Agregar una Publicación...4 Cómo Modificar
Más detallesMERCADOS FINANCIEROS: LOS FONDOS DE INVERSIÓN II
MERCADOS FINANCIEROS: LOS FONDOS DE INVERSIÓN II 28 febrero de 2012 Javier Marchamalo Martínez Universidad Rey Juan Carlos SABER INTERPRETAR LOS RATIOS SIGNIFICATIVOS EN LA GESTIÓN POR BENCHMARK Ratio
Más detallesARQUITECTURA DE DISTRIBUCIÓN DE DATOS
4 ARQUITECTURA DE DISTRIBUCIÓN DE DATOS Contenido: Arquitectura de Distribución de Datos 4.1. Transparencia 4.1.1 Transparencia de Localización 4.1.2 Transparencia de Fragmentación 4.1.3 Transparencia
Más detallesCovarianza y coeficiente de correlación
Covarianza y coeficiente de correlación Cuando analizábamos las variables unidimensionales considerábamos, entre otras medidas importantes, la media y la varianza. Ahora hemos visto que estas medidas también
Más detallesCentro de Capacitación en Informática
Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.
Más detallesANALIZANDO GRAFICADORES
ANALIZANDO GRAFICADORES María del Carmen Pérez E.N.S.P.A, Avellaneda. Prov. de Buenos Aires Instituto Superior del Profesorado "Dr. Joaquín V. González" Buenos Aires (Argentina) INTRODUCCIÓN En muchos
Más detallesTecnología IP para videovigilancia... Los últimos avances han hecho posible conectar cámaras directamente a una red de ordenadores basada en el
para videovigilancia....... Los últimos avances han hecho posible conectar cámaras directamente a una red de ordenadores basada en el protocolo IP. La tecnología de las cámaras de red permite al usuario
Más detallesDepartamento CERES Área de Tarjetas Inteligentes Manual de Usuario
14 CORREO SEGURO. Hay aplicaciones de correo que permiten enviar y recibir correos cifrados y firmados digitalmente utilizando criptografía. Estas operaciones garantizan el intercambio seguro de información,
Más detallesCapítulo 2. Técnicas de procesamiento digital de imágenes y reconocimiento de patrones.
Capítulo 2. Técnicas de procesamiento digital de imágenes y reconocimiento de patrones. 2.1 Revisión sistema reconocimiento caracteres [9]: Un sistema de reconocimiento típicamente esta conformado por
Más detalles1.- INTRODUCCIÓN 2.- PARÁMETROS
1.- INTRODUCCIÓN Hemos diseñado una aplicación que facilite el envío a las entidades bancarias de las de cobro por domiciliación. La entrada de esta aplicación pueden ser, tanto ficheros cuyos formatos
Más detallesCAPÍTULO I. Sistemas de Control Distribuido (SCD).
1.1 Sistemas de Control. Un sistema es un ente cuya función es la de recibir acciones externas llamadas variables de entrada que a su vez provocan una o varias reacciones como respuesta llamadas variables
Más detallesImplementación de algoritmos genéticos paralelos de grano burdo en redes locales de computadoras. Resumen
Implementación de algoritmos genéticos paralelos de grano burdo en redes locales de computadoras. Arturo Gómez Cortés y Raúl Leal Ascencio ITESO, Guadalajara Resumen El presente trabajo describe una arquitectura
Más detallesElementos requeridos para crearlos (ejemplo: el compilador)
Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción
Más detallesDecisión: Indican puntos en que se toman decisiones: sí o no, o se verifica una actividad del flujo grama.
Diagrama de Flujo La presentación gráfica de un sistema es una forma ampliamente utilizada como herramienta de análisis, ya que permite identificar aspectos relevantes de una manera rápida y simple. El
Más detalles-OPS/CEPIS/01.61(AIRE) Original: español Página 11 5. Estructura del programa de evaluación con personal externo
Página 11 5. Estructura del programa de evaluación con personal externo 5.1 Introducción Esta sección presenta la estructura del programa de evaluación con personal externo. Describe las funciones y responsabilidades
Más detallesCapítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente
Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.
Más detallesAnálisis y Diseño de Aplicaciones
Análisis y Diseño de Aplicaciones Ciclo de Vida Docente: T/RT Gonzalo Martínez CETP EMT Informática 3er Año Introducción En el desarrollo de sistemas, el ciclo de vida son las etapas por las que pasa un
Más detallesResumen de la solución SAP SAP Technology SAP Afaria. Gestión de la movilidad empresarial para mayor ventaja competitiva
de la solución SAP SAP Technology SAP Afaria Gestión de la movilidad empresarial para mayor ventaja competitiva Simplificar la gestión de dispositivos y aplicaciones Simplificar la gestión de dispositivos
Más detalles1. CONTEXTO...3 2. INTRODUCCIÓN Y JUSTIFICACIÓN DE LA UNIDAD...3 3. IDEAS Y CONOCIMIENTOS PREVIOS DE LOS ESTUDIANTES...3 4. OBJETIVOS...
UNIDAD DIDÁCTICA SISTEMAS TELEMÁTICOS Y REDES LOCALES ALEJANDRO TORRES DOMÍNGUEZ PABLO FERNÁNDEZ FERREIRA ROBERTO OTERO ÁLVAREZ ÍNDICE 1. CONTEXTO...3 2. INTRODUCCIÓN Y JUSTIFICACIÓN DE LA UNIDAD...3 3.
Más detallesDETERMINACIÓN DEL VOLUMEN DE PEDIDO.
Lote económico de compra o Lote Optimo DETERMINACIÓN DEL VOLUMEN DE PEDIDO. Concepto que vemos en casi todos libros de aprovisionamiento, habitualmente la decisión de la cantidad a reaprovisionar en las
Más detallesEvaluación del rendimiento de procesadores Intel Nehalem. Modelos x7550, x5670 y x5570
Evaluación del rendimiento de procesadores Intel Nehalem. Modelos x7550, x5670 y x5570 Juan Carlos Fernández Rodríguez. Área de HPC. Centro Informático Científico de Andalucía (CICA) Junta de Andalucía
Más detallesCURSO: APACHE SPARK CAPÍTULO 2: INTRODUCCIÓN A APACHE SPARK. www.formacionhadoop.com
CURSO: APACHE SPARK CAPÍTULO 2: INTRODUCCIÓN A APACHE SPARK www.formacionhadoop.com Índice 1 Qué es Big Data? 2 Problemas con los sistemas tradicionales 3 Qué es Spark? 3.1 Procesamiento de datos distribuido
Más detallesrevista transparencia transparencia y... 3.3. UNIVERSIDADES
revista transparencia transparencia y... 3.3. UNIVERSIDADES 35 revista transparencia Mónica López del Consuelo Documentalista Open Data Universidad de Granada 3.3.1. El filtro básico de la transparencia.
Más detalles