You are on page 1of 96

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de Informtica y Computacin Computacin Paralela INF - 762

2013
Informe Fase N2 Procesamiento Digital de Imgenes

Acadmico: Oscar Magna Toshiba 20/12/2013

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Tabla de contenido
Resumen ....................................................................................................................................................... 5 Abstract ......................................................................................................................................................... 6 1. 2. Introduccin .......................................................................................................................................... 8 Marco Terico ....................................................................................................................................... 9 2.1. 2.2. 3. 4. Antecedentes fundamentales ....................................................................................................... 9 Etapas para el procesamiento digital de imgenes .................................................................... 14

Descripcin del problema ................................................................................................................... 20 Objetivos ............................................................................................................................................. 21 4.1. 4.2. Objetivo general.......................................................................................................................... 21 Objetivos especficos .................................................................................................................. 21

5. 6.

Alcance del proyecto........................................................................................................................... 21 Metodologa de Trabajo...................................................................................................................... 22 6.1. 6.2. Metodologa Espiral .................................................................................................................... 22 Metodologa XP ........................................................................................................................... 24 Ciclo de vida de la metodologa XP ..................................................................................... 24 Actores y responsabilidades de la metodologa XP ............................................................ 25

6.2.1. 6.2.2. 7.

Herramientas de desarrollo ................................................................................................................ 25 7.1. 7.2. Hardware .................................................................................................................................... 26 Software ...................................................................................................................................... 26

8.

Topologa de la red ............................................................................................................................. 29 8.1. 8.2. 8.3. Especificaciones tcnicas de los nodos ....................................................................................... 29 Especificaciones tcnicas de los Switches................................................................................... 30 Descripcin grfica de la topologa ............................................................................................. 32

9.

Tcnicas de procesamiento digital de imgenes ................................................................................ 33 9.1. 9.2. 9.3. 9.4. 9.5. 9.6. Invertir Colores ........................................................................................................................... 34 Traspuesta de una imagen (90, 180 y 270) ............................................................................ 35 Redimensionar una imagen (interpolaciones NearestNeighbor, Bilineal y Bicubic) .................. 37 Escala de grises ........................................................................................................................... 40 Reflejo o efecto espejo ............................................................................................................... 41 Efecto de brillo ............................................................................................................................ 42 1

Procesamiento Digital de Imgenes

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

9.7. 9.8. 9.9. 9.10. 9.11. 10. 11. 12.

Efecto negativo ........................................................................................................................... 43 Efecto Sepia................................................................................................................................. 44 Efecto RGB .................................................................................................................................. 44 Efecto Invertir una imagen...................................................................................................... 46 Convolucin (con gestin de bordes) ..................................................................................... 47

Descripcin del mdulo procesamiento de imagen (Algoritmo), Modulo plataforma Web .......... 50 Bibliografa ...................................................................................................................................... 54 Conclusiones ................................................................................................................................... 55

Anexo .......................................................................................................................................................... 56 Anexo 1.Configuracin Clster MPI en Ubuntu. ..................................................................................... 56 Anexo 2 Formato BMP ............................................................................................................................ 58 Anexo 3 Formato JPG .............................................................................................................................. 62 Anexo 4 Formato GIF .............................................................................................................................. 64 Anexo 5 Tcnicas de Movimiento ........................................................................................................... 65 Anexo 6 Conceptos Involucrados en el procesamiento de imgenes .................................................... 72 Anexo 7 Minutas de reunin................................................................................................................... 76 Anexo 8 Evaluacin ................................................................................................................................. 77 Evaluacin Final ...................................................................................................................................... 77 Asistencia ............................................................................................................................................ 78 Participacin ....................................................................................................................................... 79 Productividad ...................................................................................................................................... 80 Bonificacin ......................................................................................................................................... 81 Evaluaciones a los jefes ....................................................................................................................... 82 Evaluacin a los integrantes ............................................................................................................... 83 Anexo 9 Tiempos de Medicin con tiempos de latencia y sin tiempos de latencia .............................. 84 Invertir Color ....................................................................................................................................... 84 Escala de grises ................................................................................................................................... 85 Brillo .................................................................................................................................................... 86 Convolucin ........................................................................................................................................ 87 Redimensionar .................................................................................................................................... 88 Sepia .................................................................................................................................................... 89 Procesamiento Digital de Imgenes 2

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

RGB...................................................................................................................................................... 90 Invertir Imagen.................................................................................................................................... 91 Traspuesta ........................................................................................................................................... 92 Espejo .................................................................................................................................................. 93 Anexo 10 Cuantificacin de esfuerzo...................................................................................................... 94

ndice de Ilustracin
Ilustracin 1. Esquema del modelo de difusin turbulenta de tipo gaussiano .......................................... 10 Ilustracin 2. Interferencia en la trayectoria de la columna de humo por un objeto a) delante o b) detrs de la chimenea ............................................................................................................................................ 11 Ilustracin 3. Convolucin en Fluorescencia tridimensional ...................................................................... 13 Ilustracin 4 . Convolucin en Fluorescencia tridimensional con objeto faltante...................................... 13 Ilustracin 5. Convolucin en Fluorescencia tridimensional con objeto y PSF faltantes............................ 14 Ilustracin 6. Etapas de Procesamiento Digital de Imgenes ..................................................................... 14 Ilustracin 7. . Operaciones Matemticas para el Procesamiento de Imgenes Digitales ......................... 15 Ilustracin 8. . Ejemplo aplicacin matriz de Convolucin. ........................................................................ 17 Ilustracin 9. Metodologa Espiral ............................................................................................................ 23 Ilustracin 10. Topologa con 15 nodos principales.................................................................................... 32 Ilustracin 11.Topologa con 17 nodos ....................................................................................................... 33 Ilustracin 12. Seal de entrada vs Seal de salida .................................................................................... 34 Ilustracin 13. Resultado matriz transpuesta ............................................................................................. 35 Ilustracin 14. Concepto de transpuesta en 180 ....................................................................................... 36 Ilustracin 15. Imagen Original ................................................................................................................... 36 Ilustracin 16. Imagen Trapuesta 180 ....................................................................................................... 36 Ilustracin 17. Imagen traspuesta en 90 ................................................................................................... 37 Ilustracin 18. Imagen traspuesta 270 ...................................................................................................... 37 Ilustracin 19. NearestNeighbor ................................................................................................................. 38 Ilustracin 20. Imagen original y sus respectivos resultados aplicando NearestNeighbor ........................ 38 Ilustracin 21. Imagen original y su respectivo resultado aplicando Bilinear ............................................ 39 Ilustracin 22. Imagen original y su respectivo resultado aplicando Bicubic ............................................. 40 Ilustracin 23. . Imagen original y su respectiva imagen en escala de grises. ............................................ 41 Ilustracin 24. Tcnica del efecto espejo de manera horizontal ................................................................ 41 Ilustracin 25. . Imagen original y su respectiva imagen utilizando el efecto espejo ................................ 42 Ilustracin 26. Seal de entrada vs Seal de salida .................................................................................... 42 Ilustracin 27. Ilustracin 37. Imagen original e imagen resultado de la disminucin de brillo ................ 43 Ilustracin 28. . Imagen original y su respectivo negativo .......................................................................... 43 Ilustracin 29. . Imagen original y una copia con efecto sepia ................................................................... 44 Ilustracin 30. Representacin de Pixeles (RGB) ........................................................................................ 45 Procesamiento Digital de Imgenes 3

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 31. Imagen original RGB ............................................................................................................ 45 Ilustracin 32. RGB azul .............................................................................................................................. 45 Ilustracin 33. . RGB rojo ............................................................................................................................ 46 Ilustracin 34. RGB verde............................................................................................................................ 46 Ilustracin 35. Ejemplo intercambio de pxeles .......................................................................................... 47 Ilustracin 36. Imagen original y la respectiva imagen invertida ............................................................... 47 Ilustracin 37. Matriz o arreglo dimensional .............................................................................................. 48 Ilustracin 38. Seccin de imagen en grises ............................................................................................... 48 Ilustracin 39. Imagen con el valor del color de cada pxel ........................................................................ 48 Ilustracin 40. Imagen con el kernel sobre los pxel ................................................................................... 49 Ilustracin 41. Imagen original y el resultado luego de aplicar una matriz de convolucin....................... 49 Ilustracin 42. Mdulo procesamiento de imgenes ................................................................................. 50 Ilustracin 43. Seleccin de imagen............................................................................................................ 50 Ilustracin 44. Seleccin tipo de Procesamiento ........................................................................................ 51 Ilustracin 45. Seleccin Filtro .................................................................................................................... 51 Ilustracin 46. Fotos generadas .................................................................................................................. 51 Ilustracin 47. Mdulo Animacin de imgenes ........................................................................................ 52 Ilustracin 48. Seleccin de imagen............................................................................................................ 52 Ilustracin 49. Seleccin tipo de Procesamiento ........................................................................................ 52 Ilustracin 50. Seleccin Filtro de Animacin ............................................................................................. 53

Procesamiento Digital de Imgenes

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Resumen
Con los grandes volmenes de datos manejados en diversos sistemas informticos, resulta esencial para ciertas reas tener mquinas de alto rendimiento que sean capaces de desarrollar las peticiones que se necesita. La computacin paralela es una forma rpida, fiable y eficaz de solucionar el problema mencionado anteriormente. Adems el costo asociado a la aplicacin de tecnologa paralela es muy bajo si se compara con el gran nivel de cmputo que alcanzan al realizar las tareas. En el siguiente trabajo se ha desarrollado la implementacin de un clster con 15 y 17 nodos respectivamente, ambientados en Linux, el que nos permite aplicar tcnicas para el correcto tratamiento de imgenes digitales. Entre las tcnicas utilizadas se puede encontrar el efecto negativo, sepia, RGB, escala de grises, realce de imagen, brillo, entre otras. Para cada tcnica se desarroll un cdigo secuencial y otro en paralelo, utilizando la librera imagemagick. Esta librera permite realizar animaciones de dichas tcnicas. Finalmente, con las implementaciones de las tcnicas en ambas modalidades, secuencial y paralela, ser posible medir el desempeo del sistema para las distintas soluciones a la problemtica del tratamiento de imgenes, utilizando diferentes mtricas de desempeo, con las que, eventualmente, ser posible determinar que implementacin resulta ms ptima para tratar la problemtica planteada.

Procesamiento Digital de Imgenes

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Abstract
With the large volumes of managed data in computer systems, it turns essential for certain areas to have high performance machines that are capable of developing the needed petitions. Parallel computing is a fast, reliable and effective way to solve the problem like the one mentioned above. Besides, the cost associated with the implementation of parallel technology is very low compared with the high level of computation for reaching tasks. In the following work, it has been developed the implementation of a cluster with 15 nodes and 18, respectively, set in Linux, which allow us to apply techniques for the correct processing of digital images. Between the techniques used it is possible to find the negative effect, sepia, RGB, grayscale, image enhancement, brightness, among others. For each technique was developed a secuencial code and a parallel code, using the imagemagick library. This library allows to perform animations of these techniques. Finally, with the implementation of the techniques in both modalities, secuencial and parallel, it will be possible to measure the performance of the system for the different solutions to the problem of images treatment, using different performance metrics, with which, eventually, it will be possible to determine which implementation is optimal to treat the issues raised.

Procesamiento Digital de Imgenes

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Estructura del documento.


Este documento se divide en dos grandes grupos: El primero corresponde a los fundamentos tericos: Anlisis terico, presentacin y formalizacin del problema, detalle del entorno de trabajo propuesto para la resolucin del problema y especificaciones tcnicas. El segundo grupo, corresponde al desarrollo prctico, e incluye la especificacin de las tareas realizadas, tablas y grficos de los resultados obtenidos, anlisis y conclusiones. Ms precisamente se tiene: Puntos 1 y 2: Se presenta una introduccin y un anlisis del marco terico, en los que se definen los conceptos bsicos que permiten una plena comprensin de los elementos en estudio, y que contienen los principios tericos que se comprobarn experimentalmente. Puntos 3, 4 y 5: Se define y explica el problema planteado, se especifican cules son los objetivos, tanto los generales como los especficos para el desarrollo de este estudio y el estudio Puntos 6: Se enfoca en las metodologas de trabajo a utilizar. Puntos 7: Se explican detalladamente las herramientas. Puntos 8: En este punto se detalla la topologa de la red, las especificaciones tcnicas de los nodos y de los switch. Puntos 9: Se presenta una descripcin detallada de cada de las tcnicas de procesamiento a aplicar Punto 10: En este punto se presenta una descripcin de los mdulos de procesamiento de imgenes. Punto 11, 12, anexo: En los siguientes puntos se presentan las bibliografas, conclusiones y los anexos respectivos.

Procesamiento Digital de Imgenes

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

1.

Introduccin
El procesamiento digital de imgenes es un campo fascinante que forma parte de nuestra vida diaria. En sus inicios el procesamiento de imgenes estaba restringido a campos de investigacin de ciencias de la computacin, matemticas y astronoma. Lo que antes constitua una labor lenta, impredecible y de alto costo, se ha convertido en una disciplina en s misma, con la ayuda de microprocesadores baratos, dispositivos de gran memoria y componentes de procesamiento de seales; volvindose as una herramienta invaluable en diversas aplicaciones, tales como la robtica, control industrial, medicina, telecomunicaciones, entre otras. El procesamiento de imagen por definicin hace referencia al conjunto de tcnicas que se aplican a las imgenes digitales con el objetivo de mejorar la calidad, realizar cambios o facilitar la bsqueda de informacin en ellas. Uno de los problemas ms frecuentes que presenta esta disciplina es el excesivo tiempo de procesamiento que demandan las aplicaciones y por ende los equipos dedicados al tratamiento de las imgenes. Bajo este contexto nuestro equipo de trabajo propone en primera instancia desarrollar una solucin de tipo clster para mejorar los tiempos de procesamiento que llevan las distintas tareas, para posteriormente ahondar un poco ms en el tema enfocndonos en la representacin de imgenes como vectores bidimensionales (matrices), en el que cada elemento de la matriz corresponde a un pixel. Con estos datos veremos qu pasa cuando alteramos las matrices, proponiendo variados escenarios, para finalmente realizar un anlisis de desempeo a cada una de las alternativas propuestas y comprobar si es que la solucin de tipo clster es realmente efectiva para los casos de procesamiento de imgenes.

Procesamiento Digital de Imgenes

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

2.
2.1.

Marco Terico
Antecedentes fundamentales
Transformada de Fourier en tratamiento de imgenes digitales Para el caso de una funcin discreta f(x, y) de dos variables y pixeles cuadrados (N x N) de una imagen, la transformada de Fourier (FT) ser:
( )

Variando u, v= 0 ,1 ,2..., (N-1) y la transformada inversa F-1, (FT-1):


( )

( (
Variando x, y = 0,1,, (N-1)

))

Con lo que volvemos, por dicha F-1 a la funcin origen f(x, y), imagen original. La forma de operar que seguiremos en todos los procesos ser siempre de la forma siguiente: 1. Pasaremos las funciones (imagen y filtro) al dominio de frecuencias por la transformada de Fourier (FT). 2. Operaremos entre dichas transformadas segn las propiedades de la FT. 3. Volveremos al dominio espacial por la transformada inversa (FT-1), obtenindose los procesos de convolucin y laplacianos del dominio espacial Dominio espacial Sabemos que para cada pxel (x, y) -- f(x, y) = ND Siendo, ND = valor de gris. Esta funcin vara a medida que nos separamos del origen. Esta variacin espacial quedar caracterizada por su:

Dentro de las propiedades de la transformada de Fourier (FT) se encuentra: separabilidad, traslacin, periodicidad, simetra conjugada, rotacin, distributibilidad, escalado, pero se resaltar aquellas cuya aplicacin tienen una influencia directa en el filtrado de imgenes, concretamente en los procesos de "convolucin y laplacianos" estudiados en el dominio espacial, facilitando en gran medida su obtencin. Procesamiento Digital de Imgenes 9

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Dispersiones Gaussianas El modelo gaussiano es un modelo de uso comn para el anlisis de problemas de dispersin contaminantes. Bsicamente, se supone que el penacho o pluma que se produce a partir de una fuente puntual, presenta una distribucin de tipo gaussiana de los valores de concentracin en torno al eje de simetra definido por la direccin del viento como se muestra en la figura.

Ilustracin 1. Esquema del modelo de difusin turbulenta de tipo gaussiano

Los modelos gaussianos de dispersin describen, a travs de una frmula simple, el campo de concentraciones generado por una fuente puntual en condiciones meteorolgicas y de emisin estacionaria. A medida que un penacho progresa en la direccin del viento, el modelo supone que el perfil de concentracin, por el proceso de mezcla turbulenta, adquiere una configuracin gaussiana. Si la condicin atmosfrica es neutra, se desarrollar un penacho en forma de cono. La concentracin en la lnea central de la pluma ser mxima en las cercanas de la fuente emisora y disminuir en las posiciones ms alejadas a sotavento. A medida que la distancia viento abajo aumenta, los extremos de la pluma pueden impactar sobre el terreno. La concentracin C de un contaminante en cualquier punto se expresa como se muestra en la ecuacin:

Donde U es la velocidad media, Q es el caudal de gas emitido y G es la curva de Gauss normalizada en el plano, esto es, el plano perpendicular a la direccin del viento, x. En la expresin anterior, se puede considerar a la concentracin en el sentido z como se muestra en la ecuacin:

Procesamiento Digital de Imgenes

10

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Donde c es la concentracin dependiendo de la distancia Xn, z es la altura, Zmax es la posicin donde la concentracin es mxima y n es un nmero entero que representa la posicin de x en un intervalo [x1, x2]. El valor de Zn se obtiene de una curva denominada curva de Pasquill-Gifford-Turner (Henderson et al., 1988). Los diferentes parmetros xn representan las distancias a la fuente de contaminante y por medio de la curva correspondiente a la condicin atmosfrica de trabajo se define un punto, luego se extiende una lnea horizontal hasta cortar el eje de las ordenadas y as obtener Zn. En la figura 1, el origen de coordenadas se ubica en la base de la chimenea, con el eje x alineado en la direccin del viento. La emisin de gas contaminado, que denominaremos columna de humo, penacho o pluma, inicialmente se desplaza verticalmente una altura h, pero luego se nivela para continuar en la direccin x, dispersndose a medida que avanza en las direcciones z e y. Lo normal es que la columna de humo se eleve por encima de la chimenea, ya sea porque la emisin se produce a temperaturas ms elevadas que la atmosfrica, o directamente por la velocidad vertical de salida. La primera hiptesis del modelo es que la columna de humo se emite desde un punto de coordenadas p (0, 0, H), donde H es la altura efectiva de la chimenea. Se supone que la fuente es puntual y la emisin es estacionaria de caudal Q. Finalmente, se considera que el viento sopla en la direccin x a una velocidad constante en forma estacionaria. De esta manera es posible calcular la concentracin C en un punto p (Xn, Zn). La condicin de estabilidad atmosfrica y las propiedades del terreno permiten definir los valores a utilizar en la expresin del modelo. Cabe hacer notar que estos modelos son aptos para estimar efectos locales y que su grado de precisin y acierto es, en general, decreciente en tanto se aplican en localidades con relieves y circulaciones atmosfricas complejas como se muestra en la figura 2

Ilustracin 2. Interferencia en la trayectoria de la columna de humo por un objeto a) delante o b) detrs de la chimenea

Los obstculos colocados delante o despus de la fuente de emisin producen interferencias en la columna de humo afectando el resultado de la ecuacin (2).

Procesamiento Digital de Imgenes

11

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

El trabajo de investigacin desarrollado proporciona una metodologa que articular la ecuacin (2) con el campo de concentracin en un tnel de viento en condiciones de trabajo donde la columna de humo no cumpla con el modelo de Gauss. Se realizan tomas de fotogramas y se utilizan tcnicas de edicin de video semejantes a los realizados en los trabajos de Huber (1988,1989). Se implementa un procedimiento de anlisis que permita medir diferentes procesos de dispersin, transformando un mtodo comnmente cualitativo, como es la visualizacin de procesos turbulentos, en un mtodo cuantitativo que permite obtener los valores que caracterizan el campo de concentracin de contaminantes a lo largo de una pluma de dispersin. Frente a los sistemas de medicin de concentracin que se usan para este tipo de estudios (Wittwer et al., 2007), este procedimiento, si bien es de menor exactitud, permite analizar de forma simultnea el proceso para una determinada extensin de la pluma de dispersin y no solo localizadamente. Convolucin Sabemos que una convolucin en el "dominio espacial" equivale a la multiplicacin de matrices (imagen original y el propio filtro). Utilizando los conceptos anteriores, mediante la FT obtendremos las correspondientes transformadas a la imagen y al filtro. Imagen f(x, y) -> F (u, v) su correspondiente FT Filtro g (u, v) ->G (u, v) su correspondiente FT

Cumplindose por las propiedades de la Transformada de Fourier

Siendo bastante ms sencillo obtener dicha convolucin por la simple multiplicacin de dos transformadas de Fourier y su posterior conversin al dominio espacial por la transformada inversa. Deconvolucin La deconvolucin es una operacin matemtica. Se usa en restauracin de seales para recuperar datos que han sido degradados por un proceso fsico que puede describirse mediante la operacin inversa, una convolucin. Este proceso se describe matemticamente con la ecuacin de convolucin:

Procesamiento Digital de Imgenes

12

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Donde la imagen g surge de la convolucin de las fuentes reales de luz f (el objeto) y la funcin de dispersin del punto (PSF) h. Grficamente, y considerando un corte longitudinal XZ de una imagen de fluorescencia tridimensional, la convolucin acta como sigue:

Ilustracin 3. Convolucin en Fluorescencia tridimensional

Al registrar una imagen, se obtendr solamente la distribucin g. Tambin podemos conocer cmo el microscopio degrada la imagen midiendo su PSF (por ejemplo mediante cuentas de calibracin) o con un clculo terico basado en algunos parmetros del microscopio. Por lo tanto la situacin queda descrita con la siguiente ilustracin:

Ilustracin 4 . Convolucin en Fluorescencia tridimensional con objeto faltante

El objetivo de la restauracin de imgenes es obtener informacin acerca de la distribucin luminosa original (el objeto). Esto se puede lograr mediante deconvolucin. La deconvolucin ciega es un mtodo de deconvolucin que intenta obtener el objeto f y la PSF simultneamente a partir de la imagen g. Por lo tanto, en principio no requiere conocer a priori la PSF.

Procesamiento Digital de Imgenes

13

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 5. Convolucin en Fluorescencia tridimensional con objeto y PSF faltantes

2.2.

Etapas para el procesamiento digital de imgenes


Por lo general las etapas que se aplican al procesamiento digital de imgenes, son una constante para los distintos softwares, y su aplicacin va en funcin del producto deseado, lo que se resume en las siguientes etapas.

Ilustracin 6. Etapas de Procesamiento Digital de Imgenes

Captura: La primera etapa es la adquisicin de las imgenes (captura), para la cual se requieren dos elementos: un sensor y un digitalizador. El proceso como tal se trata de convertir un objeto o un documento, en una representacin apta para ser procesada por una computadora. Tal adquisicin o conversin puede ser realizada por medio de un escner, cmara fotogrfica o de video, y el resultado vara dependiendo del proceso de digitalizacin usado y del mtodo de codificacin. Pre-procesamiento: En esta etapa se engloban una serie de tcnicas que comprenden operaciones cuyo origen es una imagen y cuyo resultado final es otra imagen. El valor del pixel, en la imagen de salida, puede ser funcin del valor que tena en la imagen de entrada, de los valores de sus vecinos o del valor de todos los puntos de la imagen de entrada, en la cual se Procesamiento Digital de Imgenes 14

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

utilizan variadas funciones matemticas como la Transformada Rpida de Fourier, Dispersiones Gaussianas, Convolucin y Deconvolucin.

Ilustracin 7. . Operaciones Matemticas para el Procesamiento de Imgenes Digitales

El objetivo de estos procesos es modificar las imgenes para mejorar su calidad o resaltar los detalles que interesan. Esto comprende filtros de realce y de suavizado, como son: pas bajo y paso alto, con los cuales se mejora la apariencia de la imagen. Durante el procesamiento de la imagen, los procedimientos estn dados en forma de algoritmos, siendo el software el medio por el cual se implementan y ejecutan, por ello, el principal desafo es mejorar la calidad y reducir su costo. El proceso de filtrado, es el conjunto de tcnicas englobadas dentro del pre-procesamiento de imgenes, cuyo objetivo fundamental es obtener, a partir de una imagen origen, otra imagen final, cuyo resultado sea ms adecuado para una aplicacin especfica, mejorando las caractersticas que posibiliten efectuar operaciones del procesado sobre ella. Por tanto, se consideran los filtros como operaciones que se aplican a los pxeles de una imagen digital para: optimizarla, enfatizar cierta informacin o conseguir un efecto especial en ella. Segmentacin: En esta etapa del procesamiento se divide la imagen en regiones o segmentos manipulables. Este paso se desarrolla en ntima relacin con la base terica, es decir, el reconocimiento de la informacin que se desea obtener, separando de la imagen propiedades o regiones con una textura dada. En este paso, se segmenta la imagen en regiones que tienen niveles de gris similares o en regiones donde existen cambios abruptos en los cambios del nivel de gris, detectando las fronteras o bordes de la imagen. Para lograr esto se utilizan operadores diferenciales que detectan los cambios en los gradientes de los niveles de gris. En los procesos autnomos de Procesamiento Digital de Imgenes 15

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

percepcin, una de las tareas con mayor dificultad es justamente la segmentacin, pues requiere ser ejecutada en forma automtica, pudindose obtener grandes beneficios o lograr indeterminados perjuicios a determinados procesos. Extraccin de caractersticas: En esta etapa, la aplicacin de algoritmos permite que lo seleccionado en la segmentacin tome una forma definitiva, como paso previo al anlisis por parte de la computadora. Prcticamente es un procedimiento que se realiza de manera casi obligatoria. El proceso de descripcin se refiere a las tareas de reconocimiento de los elementos seleccionados en la segmentacin, de modo que pueda obtenerse la informacin a partir de reunir dichos elementos u objetos en grupos con caractersticas particulares, tales como: tamao, forma, caractersticas geomtricas, etc., para diferenciarlas de otras que tambin son parte del conjunto. En esta etapa se extraen las caractersticas apropiadas para la identificacin de los objetos deseados. Identificacin de objetos: est bsicamente relacionado a procesos de reconocimiento automatizado. En esta etapa, todo lo hasta ahora desarrollado es capaz de ser comparado con una base de datos o algoritmo de toma de decisiones, provisto por la persona que ejecuta la tarea de procesamiento digital de imgenes. La mquina desarrolla su labor en forma automtica, asignando, al final de la tarea, un significado a lo que es resultado del anlisis. Matriz de Convolucin Una parte muy importante de los procesos de mejora se basan en la aplicacin de funciones, cuyo resultado depende nicamente de los niveles de intensidad de cada pxel de la imagen pero no de la posicin dentro de la imagen (position-invariant), que permiten resaltar determinados elementos de la imagen (como resaltar los contornos de los objetos), mejorar el enfoque o reducir el ruido de fondo. Estas funciones, a las que por analoga con la teora de seales se las denomina comnmente "filtros", se basan en el proceso de convolucin y en las propiedades de la convolucin respecto la transformacin de Fourier, lo que simplifica el clculo matemtico y los tiempos de computacin. Por esto, a muchos de estos filtros, se les sola denominar segn su accin en el espacio de las frecuencias (filtros de baja o alta frecuencia, filtros direccionales). Un filtro de convolucin, para una imagen digital, en el espacio real (X, Y), puede representarse como una matriz cuadrada o rectangular (matriz de convolucin), de dimensiones (M, N) mucho ms pequeas que la de la imagen. La matriz de convolucin se desplaza sobre la imagen de tal forma que el elemento central de la matriz de convolucin coincida con cada uno de los pxeles de la imagen. En cada posicin, se multiplica el valor de cada pxel de la imagen, que coincide en posicin con un elemento de la matriz de convolucin, por el valor de ste. El pxel de la imagen, que coincide con el elemento central de la matriz de convolucin, es substituido por la suma de los productos.

Procesamiento Digital de Imgenes

16

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 8. . Ejemplo aplicacin matriz de Convolucin.

Pertenecen a este grupo: Desenfoque Enfoque Eliminacin de ruido Deteccin de bordes

Segmentacin En la etapa de segmentacin de la imagen se realiza la clasificacin de los pxeles en fondo o seal. Los mtodos de segmentacin de imgenes estn agrupados en cuatro tipos fundamentales: tcnicas basadas en cotas, mtodos basados en bordes, mtodos basados en regiones y tcnicas que combinan los mtodos basados en bordes y regiones [9]. Los mtodos de corte se basan en el postulado de que todos los pxeles cuyo valor de intensidad caiga en un cierto rango pertenecen a una clase determinada [13]. Para ello se usa un valor de corte o umbral que permite definir cuando un pxel pertenece a la seal o al fondo. Los mtodos de bordes se basan en el postulado de que los valores de los pxeles cambian bruscamente alrededor de los bordes de los objetos [6, 7]. Permiten la deteccin de bordes en las imgenes, con una precisin entre el borde detectado y el real dependiente del grado de variabilidad de ciertos parmetros. Los mtodos de regiones se basan en el postulado de que pxeles vecinos dentro de una regin dada tienen valores de intensidad similar [1, 9]. El procedimiento general compara cada pxel con los de cierta regin y si se satisface la condicin de homogeneidad de inters se agrega a la misma. Parte de un conjunto de regiones semillas (representativas de la caracterstica de inters) y a partir de estas comienza el crecimiento mediante la adicin de pxeles [1]. Los mtodos que combinan estos dos ltimos incluyen segmentacin morfolgica [2, 9] y ajuste de superficie. Se aplica la transformada de Watershed [4] al gradiente de la imagen y se analiza la topografa de dicho gradiente con fronteras entre regiones como crestas.

Procesamiento Digital de Imgenes

17

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Mtodos de Segmentacin Implementados Mtodo de Corte: A partir de un valor de intensidad escogido, usualmente dado por un experto, se dice que el pxel es fondo si su valor est por debajo de la cota y es seal si est por encima. Este valor se le denomina cota o valor de corte. La ventaja de este mtodo es que es un mtodo til para realizar inspecciones preliminares sobre la imagen respecto a la determinacin de zonas fluorescentes a partir de un valor de corte dado. Pero depende del criterio de expertos, el cual, sobre todo en las primeras etapas del desarrollo, es imposible definir con exactitud. Mtodo de Canny: Est basado en un proceso de optimizacin de ciertos objetivos tales como: 1. Maximizar la relacin seal-ruido: mediante un filtrado de la imagen, la cual es suavizada usando un filtro Gaussiano. 2. Minimizar la diferencia borde real y borde detectado: para disminuir la diferencia entre uno y otro, y evitar falsas detecciones, se eliminan los puntos que no sean de mximos locales de la imagen filtrada. 3. Identificar bordes usando un conjunto de pxeles con cierta conectividad. Se construyen dos imgenes binarias a partir de ciertas condiciones y se usan complementariamente para encontrar un borde final. Su ventaja principal es que es independe del criterio de expertos, pero en la determinacin del borde final pueden quedar tramos de bordes abiertos. Para solucionar este problema se us la media de los pxeles bordes como valor de corte para definir los pxeles seal y fondo. Algoritmo: Sea f(x,y) la intensidad de un pxel que se encuentra en la posicin (x,y) de la imagen. 1. Aplicar un filtro Gaussiano a la imagen para suavizarla:

2. Calcular el gradiente de g para maximizar la diferencia entre el ruido y la seal:

Procesamiento Digital de Imgenes

18

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

3. Se calcula el modulo y el argumento de la imagen suavizada y filtrada.

4. Y entonces en la direccin del gradiente, se eliminan aquellos pxeles que no sean de mximos locales del mdulo. Ya que el operador gradiente, aplicado a un pxel (x,y), devuelve un vector que indica la direccin de mxima variabilidad de la intensidad luminosa y su nivel de variacin. 5. Se construyen dos imgenes binarias auxiliares: I1 e I2 a partir de dos umbrales T1 < T2, tales que, con T1 habran muchos ms pxeles bordes que con T2.

6. Entonces a partir de pxeles bordes de la imagen I1, se van construyendo bordes, mediante la adicin de pxeles bordes de la imagen I2. 7. Calcular la media (Mb) de los pxeles que definitivamente fueron bordes. 8. Si f(x,y)>Mb, entonces el pxel (x,y) pertenece a la seal, si no pertenece al fondo. Mtodo de crecimiento de regiones por agregacin de pxeles (SRG: Seeded Region Growing): Dado un conjunto de pxeles generadores (semillas) se definen regiones, que crecern agregando otros pxeles con propiedades similares. En nuestro caso la caracterstica a considerar es la intensidad. Los valores de mxima y mnima intensidad se usaron como semilla. El criterio de parada es que todos los pxeles hayan sido ubicados en alguna regin. Este mtodo tambin tiene la ventaja de ser independe del criterio de expertos. Algoritmo: 1. Crear conjuntos A1,, An a los que inicialmente solo se agregaran los pxeles semillas. Cada paso del algoritmo envuelve la adicin de un pxel a alguno de los conjuntos Ai. 2. Definamos el conjunto de todos los pxeles que an no han sido ubicados en ningn Ai y que son vecinos de las semillas: T. 3. Para cada elemento x del conjunto T, definimos una medida (z), que nos dar la mnima diferencia de x con respecto a todas las Ai:

4. Ordenar los pxeles de T, de menor a mayor segn (x). 5. Tomar el primer elemento de T, llammosle z, agregarlo al conjunto Ai ms cercano y eliminarlo de T. Procesamiento Digital de Imgenes 19

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

6. Guardar en T los vecinos de z que an no han sido agregados a ningn conjunto, ni a T. 7. Repetir los pasos del 3 al 6 hasta que ya no queden pxeles en T. En nuestro caso, slo tenemos dos conjuntos: Seal y Fondo. Los pxeles escogidos como semillas son el de mxima y mnima intensidad respectivamente. A partir de ellos comienza el crecimiento de las regiones. Una vez concluido el procedimiento antes descritos quedan definidos los conjuntos de inters.

3.

Descripcin del problema


El procesamiento de imgenes tiene que ver con la adquisicin, transmisin, procesamiento y representacin de las imgenes. Las tcnicas de proceso de imagen se utilizan para mejorar la apariencia visual de stas, para modificarlas a conveniencia del usuario, es por esto que se requiere una mxima eficiencia y rendimiento del programa que realizar dicho procesamiento. Cuando se desea implementar en una imagen de gran tamao, alguna de estas tcnicas, el tiempo de demora es considerable cuando el cdigo realizado es en serie. Se desea disminuir el tiempo de ejecucin, implementando un clster con 15 y 17 nodos en paralelo para mayor efectividad. Aplicando las tcnicas de procesamiento de imgenes, realizar una animacin en formato gif.

Procesamiento Digital de Imgenes

20

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

4.
4.1.

Objetivos
Objetivo general
Conocer, analizar y aplicar tcnicas a imgenes digitales, como realzado, mejora, efectos y animaciones utilizando como plataforma computacional, un ambiente de procesamiento paralelo, sustentado en una implementacin Clster.

4.2.

Objetivos especficos
Implementar un Clster, en primera instancia de 15 nodos, los cuales sern todos de la misma arquitectura (i7). Implementar un Clster agregando a la estructura anterior 3 nodos con caractersticas de hardware inferiores a los mencionados en el punto anterior (Dual core). Implementar una solucin computacional secuencial para el problema planteado. Trabajar sobre imgenes en distintos formatos. Plantear estrategias de paralelizacin para cada una de las tcnicas implementadas. Implementar la solucin computacional paralela. Medir el rendimiento de las soluciones implementadas, tanto secuencial como paralelo. Analizar el comportamiento del algoritmo en paralelo con el Clster de 15 y 18 nodos. Comparar y realizar un anlisis del rendimiento del algoritmo en paralelo respecto al secuencial. Generar un informe con todo lo que implica el desarrollo de un proyecto.

5.

Alcance del proyecto


Los alcances ideados a este proyecto se basan en la implementacin de diversas tcnicas para el tratamiento y procesamiento de imgenes, de las cuales las principales tcnicas para ello se basan en manipulacin de pxeles de una imagen. Con el fin de poder adquirir una coleccin considerable de tcnicas, con el fin de implementarlas en paralelo para actuar sobre imgenes de gran resolucin con el menor tiempo posible. El enfoque principal del proyecto est determinado por poder realizar el tratamiento correspondiente de la imagen con resoluciones de una gran envergadura, donde las tareas a realizar en las facetas de este proyecto destacan:

Procesamiento Digital de Imgenes

21

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Sistema de programacin basado en Clster. Realizar tratamientos de imgenes con distintos formatos (BMP, JPG,GIF.). Realizar operaciones y clculos sobre las distintas informaciones proporcionadas por la imagen. Clculo de mtricas de desempeo entre soluciones seriales y paralelas. Anlisis y conclusiones basadas en la comparacin de las mtricas de la performance empleada.

6.

Metodologa de Trabajo
La metodologa a utilizar se basar en el montaje de un clster tipo Beowulf sobre 18 equipos o nodos corriendo Ubuntu versin 13.04. Entre estos nodos existir un maestro y 17 esclavos, los cuales estarn conectados a una red local mediante un router. Una vez ya instalados y configurados todos los nodos, se proceder a la interconexin de estos por medio de los protocolo SSH y NFS. Finalmente los nodos se comunicarn, ejecutarn y resolvern una problemtica mediante la utilizacin del lenguaje de programacin C. Esta comunicacin se realizar mediante la API OpenMPI.

6.1.

Metodologa Espiral
La metodologa de desarrollo en espiral es una evolucin del mtodo clsico en cascada (Waterfall, top-down) y se considera un mtodo de desarrollo incremental. En l se permite el solapamiento de varias etapas con el objetivo de flexibilizar y compensar el tiempo de desarrollo total y alcanzar resultados funcionales en etapas tempranas. Est considerado como un mtodo de desarrollo rpido y eficiente.

Normalmente el proyecto se divide en mdulos pequeos y a cada uno de ellos se le aplica el siguiente proceso:

Procesamiento Digital de Imgenes

22

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 9. Metodologa Espiral

Anlisis de requerimientos: Durante esta etapa se estudia detalladamente los requerimientos que cada objetivo conlleva. Aqu se establecen todos los detalles funcionales deseados. Diseo del sistema: Con los datos de la etapa anterior, se disea el sistema. Se realiza el diseo de la base de datos (en caso de ser aplicable), interface de usuario, entorno, etc. Etapas de construccin: La etapa de construccin comprende bsicamente la codificacin y test de unidades. Esta etapa es un trabajo de programacin pura. Test y evaluacin: En esta etapa se realiza un test del mdulo completo as como su evaluacin frente al estudio de requerimientos. En muchos casos en esta etapa los usuarios finales participan de manera activa aportando informacin decisiva para la usabilidad del sistema.

Ventajas
Permite el desarrollo de proyectos en donde los objetivos finales estn perfectamente definidos pero todos los detalles no pueden ser completamente establecidos al principio. Es adaptable. Algunos de los requerimientos (no los objetivos) pueden cambiar durante el ciclo de desarrollo Permite la especializacin de los equipos de trabajo. Apela a una gestin de proyecto ordenada. Facilita la distribucin de recursos de desarrollo. Economa. Es posible mantener constantes los recursos de desarrollo. Permite conseguir funcionalidad en etapas tempranas.

Procesamiento Digital de Imgenes

23

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

6.2.

Metodologa XP
La programacin extrema es una metodologa de desarrollo gil basada en una serie de prcticas de buenas maneras, que persigue el objetivo de aumentar la productividad a la hora de desarrollar programas. Este modelo de programacin se basa en una serie de metodologas de desarrollo de software en la que se da prioridad a los trabajos que dan un resultado directo y que reducen la burocracia que hay alrededor de la programacin. El objetivo que se persegua en el momento de crear esta metodologa era la bsqueda de un mtodo que hiciera que los desarrollos fueran ms sencillos. Aplicando el sentido comn.

6.2.1. Ciclo de vida de la metodologa XP Fase de exploracin: En esta fase, los clientes plantean a grandes rasgos las historias de usuario que son de inters para la primera entrega del producto. Al mismo tiempo el equipo de desarrollo se familiariza con las herramientas, tecnologas y prcticas que se utilizarn en el proyecto. Se prueba la tecnologa y se exploran las posibilidades de la arquitectura del sistema construyendo un prototipo. La fase de exploracin toma de pocas semanas a pocos meses, dependiendo del tamao y familiaridad que tengan los programadores con la tecnologa. Fase del planeamiento: Se priorizan las historias de usuario y se acuerda el alcance del relase. Los programadores estiman cunto esfuerzo requiere cada historia y a partir de all se define el cronograma. El cronograma fijado en la etapa de planeamiento se realiza a un nmero de iteraciones, cada una toma de una a cuatro semanas en ejecucin. La primera iteracin crea un sistema con la arquitectura del sistema completo. Esto es alcanzado seleccionando las historias que harn cumplir la construccin de la estructura para el sistema completo. El cliente decide las historias que se seleccionarn para cada iteracin. Las pruebas funcionales creadas por el cliente se ejecutan al final de cada iteracin. Al final de la ltima iteracin el sistema est listo para produccin. Fase de produccin: Requiere prueba y comprobacin extra del funcionamiento del sistema antes de que ste se pueda liberar al cliente. En esta fase, los nuevos cambios pueden todava ser encontrados y debe tomarse la decisin de si se incluyen o no en el release actual. Durante esta fase, las iteraciones pueden ser aceleradas de una a tres semanas. Las ideas y las sugerencias pospuestas se documentan para una puesta en prctica posterior por ejemplo en la fase de mantenimiento. Despus de que se realice el primer release productivo para uso del cliente, el proyecto de Xp debe mantener el funcionamiento del sistema mientras que realiza nuevas iteraciones.

Procesamiento Digital de Imgenes

24

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Fase de mantenimiento: Requiere de un mayor esfuerzo para satisfacer tambin las tareas del cliente. As, la velocidad del desarrollo puede desacelerar despus de que el sistema est en la produccin. La fase de mantenimiento puede requerir la incorporacin de nueva gente y cambiar la estructura del equipo. Fase de muerte: Es cuando el cliente no tiene ms historias para ser incluidas en el sistema. Esto requiere que se satisfagan las necesidades del cliente en otros aspectos como rendimiento y confiabilidad del sistema. Se genera la documentacin final del sistema y no se realizan ms cambios en la arquitectura. La muerte del proyecto tambin ocurre cuando el sistema no genera los beneficios esperados por el cliente o cuando no hay presupuesto para mantenerlo.

6.2.2. Actores y responsabilidades de la metodologa XP Existen diferentes roles (actores) y responsabilidades en Xp para diferentes tareas y propsitos durante el proceso: Programador (Programmer): Responsable de decisiones tcnicas, de construir el sistema No existe distincin entre analistas, diseadores o codificadores. En Xp, los programadores disean, programan y realizan las pruebas Cliente (Customer): Es parte del equipo. Determina qu construir y cundo. Escribe tests funcionales para determinar cundo est completo un determinado aspecto. Entrenador (Coach): Es el lder del equipo, toma las decisiones importantes. Es el principal responsable del proceso. Tiende a estar en un segundo plano a medida que el equipo madura. Rastreador (Tracker): Observa sin molestar y conserva datos histricos. Probador (Tester): Ayuda al cliente con las pruebas funcionales. Se asegura de que los tests funcionales se ejecutan.

7.

Herramientas de desarrollo
A lo largo del desarrollo de la fase 2, cabe destacar que se realiza la utilizacin de distintas herramientas para lograr todos objetivos propuestos en un comienzo, en cuanto a estas herramientas podemos establecer que se presentaron tanto a nivel de hardware como software.

Procesamiento Digital de Imgenes

25

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

7.1.

Hardware
En cuanto al Hardware se utilizarn 18 mquinas con distinta cualidades, estas mquinas cuentan con las siguientes caractersticas: 15 pcs (1 master y 14 nodos): 2 pcs Procesador: Intel Pentium 4 CPU 3.00 @GHz. Memoria RAM: 1GB. Disco duro: 80GB. Tarjeta de video: Intel 945 G. Procesador: Intel i7-3770 CPU @3.40GHz. Memoria RAM: 8GB. Disco duro: 500 GB. Tarjeta de video: 3 Intel Graphics 4000.

7.2.

Software
Por otra parte en lo que concierne al rea de software se utilizaron una variada cantidad de herramientas, esta corresponde a:

Ubuntu

Ubuntu es un sistema operativo basado en Linux y que se distribuye como software libre, el cual incluye su propio entorno de escritorio denominado Unity. Su nombre proviene de la tica Ubuntu, en la que se habla de la existencia de uno mismo como cooperacin de los dems. Est orientado al usuario novel y promedio, con un fuerte enfoque en la facilidad de uso y en mejorar la experiencia de usuario. Est compuesto de mltiple software normalmente distribuido bajo una licencia libre o de cdigo abierto.

OpenMPI 1.3

MPI es capaz de combinar los conocimientos, las tecnologas y los recursos de todas partes de la comunidad de computacin de alto rendimiento con el fin de construir la mejor biblioteca MPI disponible. Abrir MPI ofrece ventajas para el sistema y los proveedores de software, desarrolladores de aplicaciones y los investigadores de informtica. Caractersticas implementadas o en desarrollo a corto plazo para Open MPI incluye:

Procesamiento Digital de Imgenes

26

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Completa conformidad MPI-3 normas Seguridad de los hilos y concurrencia Desove proceso dinmico La tolerancia y la Red de fallo en el proceso Heterogeneidad de la red de apoyo Biblioteca solo soporta todas las redes Instrumentacin en tiempo de ejecucin Muchos planificadores de tareas soportadas. Muchos sistemas operativos soportados (32 y 64 bits) Software de calidad de la produccin Alto rendimiento en todas las plataformas Porttil y fcil de mantener Ajustable por los instaladores y usuarios finales Diseo basado en componentes, API documentadas La lista de correo de respuesta activa Licencia de cdigo abierto basado en la licencia BSD

Lenguaje C

Es un lenguaje de programacin creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell como evolucin del anterior lenguaje B, a su vez basado en BCPL. Al igual que B, es un lenguaje orientado a la implementacin de Sistemas Operativos, concretamente Unix. C es apreciado por la eficiencia del cdigo que produce y es el lenguaje de programacin ms popular para crear software de sistemas, aunque tambin se utiliza para crear aplicaciones. Se trata de un lenguaje de tipos de datos estticos, dbilmente tipificado, de medio nivel pero con muchas caractersticas de bajo nivel. Dispone de las estructuras tpicas de los lenguajes de alto nivel pero, a su vez, dispone de construcciones del lenguaje que permiten un control a muy bajo nivel. Los compiladores suelen ofrecer extensiones al lenguaje que posibilitan mezclar cdigo en ensamblador con cdigo C o acceder directamente a memoria o dispositivos perifricos. PHP

PHP es un lenguaje de programacin de uso general de cdigo del lado del servidor originalmente diseado para el desarrollo web de contenido dinmico. Fue uno de los primeros lenguajes de programacin del lado del servidor que se podan incorporar directamente en el documento HTML en lugar de llamar a un archivo externo que procese los datos. El cdigo es interpretado por un servidor web con un mdulo de procesador de PHP que genera la pgina Web resultante. PHP ha evolucionado por lo que ahora incluye tambin una interfaz de lnea de comandos que puede ser usada en aplicaciones grficas independientes. PHP puede ser usado

Procesamiento Digital de Imgenes

27

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

en la mayora de los servidores web al igual que en casi todos los sistemas operativos y plataformas sin ningn costo. ImageMagick ImageMagick es una suite de software para crear, editar, componer, o convertir imgenes de mapa de bits. Puede leer y escribir imgenes en una variedad de formatos (ms de 100), incluyendo DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PNG, PostScript, SVG, y TIFF. Usar ImageMagick para cambiar el tamao, girar, reflejar, rotar, distorsionar, cortar y transformar las imgenes, ajustar colores de la imagen, aplicar diversos efectos especiales, o dibujar texto, lneas, polgonos, elipses y curvas de Bzier. La funcionalidad de ImageMagick se utiliza tpicamente a partir de la lnea de comandos o puede utilizar las caractersticas de los programas escritos en su idioma preferido. Elija entre estos para PHP (PHP), Imagick (PHP), PythonMagick (Python), RMagick (Ruby), o TclMagick (Tcl / TK). Con una interfaz de lenguaje, utilizar ImageMagick para modificar o crear imgenes de forma dinmica y auto mgicamente. SSH Es el nombre de un protocolo y del programa que lo implementa, y sirve para acceder a mquinas remotas a travs de una red. Permite manejar por completo la computadora mediante un intrprete de comandos, y tambin puede redirigir el trfico de X para poder ejecutar programas grficos si tenemos un Servidor X (en sistemas Unix y Windows) corriendo. NFS Es un protocolo de nivel de aplicacin, segn el Modelo OSI. Es utilizado para sistemas de archivos distribuido en un entorno de red de computadoras de rea local. Posibilita que distintos sistemas conectados a una misma red accedan a ficheros remotos como si se tratara de locales. Originalmente fue desarrollado en 1984 por Sun Microsystems, con el objetivo de que sea independiente de la mquina, el sistema operativo y el protocolo de transporte, esto fue posible gracias a que est implementado sobre los protocolos XDR (presentacin) y ONC RPC (sesin). El protocolo NFS est incluido por defecto en los Sistemas Operativos UNIX y la mayora de distribuciones Linux.

Procesamiento Digital de Imgenes

28

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

8.
8.1.

Topologa de la red
Especificaciones tcnicas de los nodos
Especificaciones de los 15 nodos principales: Fabricante del sistema Modelo del sistema Procesador Memoria instalada (RAM) Disco duro Tarjeta de video Tipo de chip Tipo de DAC Nombre del adaptador Informacin del BIOS Memoria de grficos disponible Memoria dedicada de video Memoria compartida del sistema Hewlett-Packard HP Compaq Pro 6300 SFF Intel Core i7-3770 CPU @ 3,40 GHZ 8,00 GB (7,88 GB utilizable) 1 Tb Intel HD Graphics Family Internal Intel HD Graphics 4000 Intel Video BIOS 1696 MB 0 MB 1632 MB

Especificaciones de los 3 nodos adicionales: Fabricante del sistema Procesador Memoria instalada (RAM) Grficos Tipo de sistema operativo Disco duro Intel Intel Pentium(R) 4 CPU 3.00GHzx2 1 GB Intel 945G Sistema operativo de 64 bits

Procesamiento Digital de Imgenes

29

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

8.2.

Especificaciones tcnicas de los Switches


Especificaciones Switch principal (Rack)

Fabricante del equipo modelo Transmisin de datos Tasa de transferencia (mx.) Velocidad de transferencia de datos Capacidad de conmutacin Red Tamao de la tabla de direcciones Caractersticas de red Puerto espejo Si Adicin de vnculos Jumbo Frames, soporte DHCP, cliente Caractersticas de manejo Tipo de interruptor Administracin de Web-based Calidad de servicio (QoS), soporte Sistema de registro de prueba Protocolos Protocolos de gestin Protocolo de conmutacin Protocolo de trasmisin de datos Conectividad Cantidad de puertos Tecnologa de cableado Tecnologa de conectividad Conectividad Gigabit Ethernet (cobre), cantidad de puertos Ethernet LAN (RJ-45) cantidad de puertos Cantidad de puertos SFP DC-in jack Seguridad Mtodo de autenticacin MAC, filtro de direcciones Control de energa Energa sobre Ethernet (PoE), soporte Requisitos de energa Aprobaciones reguladoras Procesamiento Digital de Imgenes

Cisco SF200-24 24 port 10/100 smart switch 1 Gbit/s 6.55 Mbit/s 8.8 Gbit/s 8000 entradas 10 Base-T, 100 Base-TX, 1000 Base-T Si Si Si Si Administrado Si Si Si SNMP 1, RMON 1, RMON 2, RMON 3, RMON 9, Telnet, SNMP 3, SNMP 2c, HTTP, HTTPS Ethernet Ethernet, Fast Ethernet 26 10 Base-T, 100 Base-TX, 1000 Base-T Con cables 2 24 2 Si RADIUS, MD5 Si No 120/230 V

30

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Cumplimiento de estndares del mercado

Certificados Iluminacin/Alarmas Energa LED Conectividad LEDs

IEEE 802.3, IEEE 802.3u, IEEE 802.3i, IEEE 802.3z, IEEE 802.1D, IEEE 802.1Q, IEEE 802.3ab, IEEE 802.1p, IEEE 802.3af, IEEE 802.3x, IEEE 802.3ad (LACP), IEEE 802.1w, IEEE 802.1x, IEEE 802.1s, IEEE 802.1ab (LLDP) FCC Part15 Class A, CE Class A, UL, cUL, CE mark, CB Si Si

Especificaciones Switch secundario: Fabricante del equipo Modelo Puertas Estndares D-link DES 1016D 16 puertas RJ-45 10/100Mbps IEEE 802.3 10Base-T Ethernet , IEEE 802.3u 100Base-TX Fast Ethernet y ANSI/IEEE 802.3 Nway auto-negotiation Auto MDI-II/MDI-X en todas las puertas Store-and-forward Ethernet: 10Mbps (half-duplex), 20Mbps (fullduplex) Fast Ethernet: 100Mbps (half-uplex), 200Mbps (full-duplex) 10BASE-T: 14,880 pps por Puerta ( halfduplex) 100BASE-TX: 148,800 pps por Puerta (halfduplex) 10BASE-T: 14,880 pps por Puerta (half-duplex) 100BASE-TX: 148,800 pps por Puerta (halfduplex) Actualizacin automtica 8 K por switch CSMA/CD Estrella

Mtodo de transmisin Tasa de transferencia de datos

Packet filtering

Packet forwarding rates

MAC address Filtering address table Mtodo de acceso Topologa

Procesamiento Digital de Imgenes

31

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

8.3.

Descripcin grfica de la topologa

Ilustracin 10. Topologa con 15 nodos principales

Procesamiento Digital de Imgenes

32

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 11.Topologa con 17 nodos

9.

Tcnicas de procesamiento digital de imgenes


Las tcnicas que se utilizaron son las que se detallan a continuacin:

Procesamiento Digital de Imgenes

33

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

9.1.

Invertir Colores
En esta tcnica se invierten todos los colores de los pixeles y los valores de luminosidad de la capa activa. Las reas oscuras se vuelven claras y las claras oscuras. Las tonalidades se reemplazan por sus colores complementarios. El valor ms grande que puede tomar un color es 255 (blanco) y el ms pequeo 0 (negro), por lo tanto si se desea invertir las contribuciones de los diferentes pxeles a la formacin de una imagen, se debe restar su color original a 255 (restar 255 a cada componente de un pixel) y esta diferencia tomarla como la contribucin al color de la nueva imagen. A continuacin se observa una grfica entre la seal de entrada y la de salida en el caso de la inversin:

Ilustracin 12. Seal de entrada vs Seal de salida

Aplicando la tcnica de invertir colores se obtiene el siguiente resultado:

Ilustracin 22. Imagen original y su correspondiente imagen con los colores invertidos

Procesamiento Digital de Imgenes

34

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

9.2.

Traspuesta de una imagen (90, 180 y 270)


Para la rotacin de una imagen se necesita conocer los grados que se desea rotar y respecto a que. En la mayora de los casos ser respecto al centro de la imagen, para ello se deber saber el ancho y alto de esta. En la transpuesta, lo primero que hay que ver es donde quedan las esquinas de las imgenes, dependiendo del ngulo de rotacin de la imagen. Este efecto se consigue cambiando de posicin los pixeles. Transpuesta 90: Lo que hace esta tcnica es tomar la imagen original y aplicarle una transformacin geomtrica que conserva la medida de los lados y de los ngulos de la figura inicial. El proceso realizado para lograr este resultado es obtener la imagen transpuesta, para lo que se debe recordar que la imagen es tratada como matriz. La matriz transpuesta se obtiene de la siguiente forma: Sea una matriz A con m columnas y m filas, su transpuesta denominada At, es la matriz compuesta por n columnas y m filas, es decir, intercambia la filas de una matriz por sus columnas y viceversa.

Ilustracin 13. Resultado matriz transpuesta

Transpuesta 180: Esta modificacin se lleva a cabo moviendo un pixel de la columna i rengln j a la misma columna i rengln Height -(j+1). El movimiento que realizan los pixeles se muestra en la siguiente grfica:

Procesamiento Digital de Imgenes

35

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 14. Concepto de transpuesta en 180

Transpuesta 270: Se suman las 2 tcnicas anteriores y se obtiene una transpuesta de 270 La aplicacin de esta tcnica de procesamiento da como resultado las siguientes imgenes:

Ilustracin 15. Imagen Original

Ilustracin 16. Imagen Traspuesta 180

Procesamiento Digital de Imgenes

36

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 18. Imagen traspuesta 270

Ilustracin 17. Imagen traspuesta en 90

9.3.

Redimensionar una imagen (interpolaciones NearestNeighbor, Bilineal y Bicubic)


Interpolacin: Para incrementar el tamao de una imagen, se utiliza el mtodo de interpolacin. Para esto es necesario aadir pxeles a la imagen para poder magnificarla. Existe una gran variedad de mtodos matemticos o algoritmos para calcular la interpolacin, Entre ellos se destacan los 3 siguientes: NearestNeighbor: es relativamente rpido, pero no produce buenos resultados. Toma el valor del pxel ms cercano para determinar qu color tomar cada pixel nuevo. Funciona en donde existen colores con orillas bien definidas, pero en general no se recomienda para imgenes fotogrficas. Un pxel se convierte en un cuadrado de 2 2 bloques del mismo color, y luego un 4 4, etc., se miden distancias, para hallar las distancias se usa la distancia euclidiana. La principal ventaja de este sistema: no es necesario el clculo, por lo que es veloz.

Procesamiento Digital de Imgenes

37

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 19. NearestNeighbor

El ncleo de interpolacin h(x,y) est definido mediante:

Resultados obtenidos luego de aplicar este algoritmo:

Ilustracin 20. Imagen original y sus respectivos resultados aplicando NearestNeighbor

Procesamiento Digital de Imgenes

38

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Bilineal: Este algoritmo toma los valores de cuatro pxeles de alrededor para determinar de qu color sern los nuevos pxeles. Puede hacer buen trabajo para incrementar el tamao de una imagen, pero en general se utiliza para reducirlo. El ncleo de interpolacin para la interpolacin bilineal est dado por:

Resultados obtenidos luego de aplicar este algoritmo:

Ilustracin 21. Imagen original y su respectivo resultado aplicando Bilineal

Bicubic: Es una extensin de la interpolacin cbica para interpolar los puntos de datos en una de dos dimensiones malla regular. La superficie interpolada es ms suave que las superficies obtenidas por la correspondiente interpolacin bilineal o la interpolacin NearestNeighbor. La interpolacin bicbica se puede lograr ya sea utilizando polinomios de LaGrange, splines cbicos, o convolucin cbica algoritmo. Generalmente produce mejores resultados este filtro. Considera los 16 pxeles ms cercanos al pxel (x,y) a interpolar, lo que se hace es aproximar localmente el nivel de gris en la imagen original mediante una superficie polinmica bicbica.

Podemos notar que el nmero de pxeles considerado aumenta la complejidad del clculo, pero tambin que si se considera un mayor nmero de pxeles, se tendrn mejores resultados. Procesamiento Digital de Imgenes 39

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 22. Imagen original y su respectivo resultado aplicando Bicubic

9.4.

Escala de grises
En el espacio de colores, los vectores en la direccin del vector (1, 1, 1) representan diferentes tonalidades de gris. As, cualquier pxel (r, g, b) de una imagen, proyectado sobre este vector nos dar su contribucin gris a una nueva imagen que formemos con todas las proyecciones de los pixeles originales. Las imgenes representadas de este tipo estn compuestas de sombras de grises, que van desde el negro ms profundo variando gradualmente en intensidad de grises hasta llegar al blanco.

Del lgebra de vectores sabemos que el producto escalar: C.u = (r,g,b) . (1,1,1) = r + g + b = |C| x |u| x cos() Que nos da al calcular las magnitudes de los vectores: r + g + b = (3(r + g + b)) cos() Pero como la proyeccin de C en la direccin de u es: (r + g + b) cos() = Proy Cu Entonces: Proy Cu = (r + g + b) / 3 El mayor valor que puede tomar esta expresin es 255 3 y como debemos cuidar que la magnitud de esta expresin nunca rebase 255 debemos normalizarla multiplicando por 1/ 3As:
Procesamiento Digital de Imgenes 40

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

ProyCun = (r + g + b) / 3 Es la proyeccin normalizada de un pxel en la direccin de los grises.Entonces al aplicar la tcnica nos queda algo como la siguiente foto:

Ilustracin 23. . Imagen original y su respectiva imagen en escala de grises.

9.5.

Reflejo o efecto espejo


Este efecto se consigue al intercambiar los pixeles por columnas, en donde la columna exterior izquierda de la imagen original pasa a ser la columna exterior derecha de la nueva imagen.

Ilustracin 24. Tcnica del efecto espejo de manera horizontal

Al procesar una imagen a color obtendremos una nueva imagen espejo de la original

Procesamiento Digital de Imgenes

41

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 25. . Imagen original y su respectiva imagen utilizando el efecto espejo

9.6.

Efecto de brillo
Aumentar el brillo de una imagen consiste en sumar o restar una constante a los colores que constituyen un pxel, cuidando siempre de nunca rebasar los lmites 0 y 255. Si se observa la siguiente figura, aumentar o disminuir el brillo en una imagen consiste en aumentar o disminuir la ordenada al origen de la lnea recta con pendiente a 45 grados que representa los grises.

Ilustracin 26. Seal de entrada vs Seal de salida

Teniendo esto en mente, se crea un mtodo para recorrer todos los pixeles de una imagen y se genera su correspondiente imagen donde se ha aumentado o disminuido el brillo. Procesando una imagen a color se obtiene una nueva imagen con ms brillo, como la mostrada a continuacin.

Procesamiento Digital de Imgenes

42

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 27. Ilustracin 37. Imagen original e imagen resultado de la disminucin de brillo

9.7.

Efecto negativo
Este filtro es til en distintas aplicaciones, como lo es el revelado de un negativo fotogrfico y la representacin de imgenes mdicas. Este crea una imagen de salida con los colores inversos a la imagen de entrada. Se tiene que x = (r, g, b) es un pxel, entonces el negativo de x se puede hallar simplemente como x = (~r, ~g, ~b) = ( r, g, b), donde = L1 y L=2n. Para completar este proceso se trabaja independientemente con cada pxel, a los cuales se les invierte el color, dando por resultado lo mostrado en la siguiente figura.

Ilustracin 28. . Imagen original y su respectivo negativo

Procesamiento Digital de Imgenes

43

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

9.8.

Efecto Sepia
El color sepia es un color rojo anaranjado oscuro, de tonalidad pardusca, que corresponde a la coloracin del pigmento obtenido de la tinta de la sepia o jibia, un cefalpodo marino similar al calamar. Esta tcnica se ha usado desde los primeros aos de la fotografa para mejorar la calidad esttica de las fotos y tambin para estabilizar las imgenes, retardando su degradacin. Aplicar elefecto sepia una fotografa es un procedimiento que consiste en tomar una fotografa en color, para luego convertirla a blanco y negro y posteriormente sustituir el negro por el color sepia.

Ilustracin 29. . Imagen original y una copia con efecto sepia

9.9.

Efecto RGB
RGB es un modelo de color basado en la sntesis aditiva, con el que es posible representar un color mediante la mezcla por adicin de los tres colores de luz primarios. El modelo de color RGB no define por s mismo lo que significa exactamente rojo, verde o azul, por lo que los mismos valores RGB pueden mostrar colores notablemente diferentes en diferentes dispositivos que usen este modelo de color. Aunque utilicen un mismo modelo de color, sus espacios de color pueden variar considerablemente. Los canales RGB (debido a sus significado dentro del contexto de imgenes digitales), son los canales que contienen los colores primarios, rojo (Red), Verde (Green), Azul (Blue), por lo que cada pixel que contenga una imagen, est compuesta de los 3 colores mencionados y en base a la mezcla de estos se logran colores compuestos, que son los que se encuentran en mayor cantidad en las imgenes.

Procesamiento Digital de Imgenes

44

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 30. Representacin de Pixeles (RGB)

Lo que busca este efecto es eliminar alguna de las 3 componentes de cada pxel, por ejemplo, si solo se quiere tener una imagen en escala de verdes, se deben eliminar los componentes rojo y azul de cada pxel. La aplicacin de esta transformacin requiere que el vector del pxel sea multiplicado por una constante y eliminando el resto de los componentes.

F (x,y ) [ 0, L ] RGB (x,y) = g(f (x,y)) Donde g (z) = z * (1, 0, 0) donde z es el vector que contiene los componentes (RGB).

Ilustracin 31. Imagen original RGB

Ilustracin 32. RGB azul

Procesamiento Digital de Imgenes

45

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 33. . RGB rojo

Ilustracin 34. RGB verde

9.10. Efecto Invertir una imagen


Este es un efecto de movimiento, en donde se intercambian los pxeles por filas, y en donde la ltima fila de la imagen original pasa a ser la primera fila de la nueva imagen. Esta transformacin es una manipulacin de pxeles a nivel de matriz, por lo cual no existe una funcin especfica ms que la opuesta de la imagen, este caso de la matriz. Sea A la matriz que contiene la imagen. Invertir (A) = A-1 De forma ms grfica, esta modificacin se lleva a cabo moviendo un pxel de la fila i columna j, a la misma fila i columna Height - (i+1).

Procesamiento Digital de Imgenes

46

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 35. Ejemplo intercambio de pxeles

Ilustracin 36. Imagen original y la respectiva imagen invertida

9.11. Convolucin (con gestin de bordes)


La Convolucin es una matriz (o arreglo bidimensional) que se aplica a una imagen. Los elementos de este arreglo son valores enteros. El resultado de esta operacin es una imagen nueva que ha sido filtrada. Este resultado depende de la matriz utilizada en cada ocasin. La Convolucin se aplica multiplicando el color de un pixel y el de sus pxeles circundantes por una matriz. Esta matriz se llama el kernel de Convolucin. El kernel se mueve por cada uno de los pxeles de la imagen original y cada pixel que queda bajo la matriz se multiplica por un valor de la matriz, el resultado se suma y divide despus por un valor especfico. El resultado de esta operacin es el nuevo color del pixel que cae en el centro de la matriz. A continuacin se presenta un ejemplo muy sencillo de un kernel de Convolucin. Procesamiento Digital de Imgenes 47

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 37. Matriz o arreglo dimensional

Los kernels pueden tener tamaos arbitrarios, pero los de 3 x 3 son los ms usados en la mayora de las situaciones (tambin debido a que son los ms rpidos), ya que solo toma en consideracin el valor del pixel mismo y el de sus 8 vecinos. Ahora, para aplicar este kernel a una imagen debe colocarse el kernel sobre la imagen y multiplicar los valores de color por 1 o 4. El resultado se suma y divide por 12, en este caso (la suma de los elementos del kernel). A continuacin se presenta una seccin de una imagen en grises, sobre la que se aplicar el kernel de convolucin.

Ilustracin 38. Seccin de imagen en grises

Se ha escogido en grises para facilitar la explicacin, ahora bien sobre cada uno de los pixeles de esta seccin de imagen, colocamos el valor de su color, teniendo como entendido que por ejemplo 150 = (150, 150, 150) en sus componentes rojo, verde y azul.

Ilustracin 39. Imagen con el valor del color de cada pxel

Procesamiento Digital de Imgenes

48

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ahora se coloca el kernel sobre los pixeles de la imagen y el primer pixel que obtenemos es el (2,2), luego al desplazarnos con el kernel a la derecha el siguiente pixel que obtendremos ser el (2,3) y as sucesivamente.

Ilustracin 40. Imagen con el kernel sobre los pxel

Si se trata de una imagen con color, es necesario seguir el procedimiento descrito arriba para cada una de las tres componentes (RGB) que constituyen el pixel, originando 9 multiplicaciones, 8 sumas y una divisin por un factor de tres para cada uno de los pxeles de la imagen que se vaya a procesar. Por ejemplo si contamos con una imagen de 512 x 384 pixeles hay que realizar alrededor de 10,5 millones de operaciones para obtener la imagen filtrada. Si nos fijamos bien, los pxeles de la orilla no pueden ser procesados porque no cuentan con todos sus vecinos para aplicar el algoritmo por lo que se tienen que desechar.

Ilustracin 41. Imagen original y el resultado luego de aplicar una matriz de convolucin.

Procesamiento Digital de Imgenes

49

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

10.

Descripcin del mdulo procesamiento de imagen (Algoritmo), Modulo plataforma Web


La interfaz creada para la utilizacin de las tcnicas de procesamiento consta de una plataforma Web, la cual cuenta, principalmente, con dos mdulos. El primero es utilizado para el procesamiento de las imgenes y el segundo mdulo tiene la funcin de generar la animacin o movimiento en las imgenes. El mdulo de Procesamiento de Imgenes se puede observar en la siguiente imagen.

Ilustracin 42. Mdulo procesamiento de imgenes

Este mdulo consta de una opcin Seleccin de imagen. Dicha seleccin se hace desde una serie de imgenes alojadas en el equipo que est utilizando el usuario que hace uso del sistema. Es necesario seleccionar una imagen para poder continuar con el tratamiento sobre dicha imagen.

Ilustracin 43. Seleccin de imagen

Posteriormente se selecciona el Tipo de procesamiento de la imagen, el cual cuenta con la opcin Secuencial y Paralelo, cabe destacar que en el caso de seleccionar la opcin Paralelo se debe elegir el nmero de nodos con el que se desea trabajar.

Procesamiento Digital de Imgenes

50

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Ilustracin 44. Seleccin tipo de Procesamiento

Luego de tener lista la seleccin del Tipo de procesamiento, se debe seleccionar el Filtro a aplicar en la imagen, esta contiene las opciones de Redimensionar, Escala de Grises, Efecto Reflejo, Efecto Brillo, Invertir Colores, Traspuesta (90), Traspuesta (180), Traspuesta (270), Efecto Negativo, Efecto Sepia, Efecto RGB, Invertir y Convolucin. Al seleccionar el filtro, se debe hacer clic en el botn Aplicar y finalmente se realiza el efecto deseado.

Ilustracin 45. Seleccin Filtro

En la parte derecha del mdulo en cuestin se encuentra la seccin de Fotos Generadas. Aqu se muestran diversas imgenes en las que se aplicaron, anteriormente, los efectos que provee el sistema. Esta seccin sirve de galera, permitindoles a los usuarios ver los resultados de los distintos filtros sin utilizarlos.

Ilustracin 46. Fotos generadas

Procesamiento Digital de Imgenes

51

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

El segundo mdulo es el encargado de generar movimiento o animacin, este mdulo se puede observar en la siguiente imagen.

Ilustracin 47. Mdulo Animacin de imgenes

Para poder trabajar con este mdulo, al igual que con el primer mdulo, primero se debe seleccionar la imagen que se desea procesar, esta imagen est ubicada en el equipo del usuario que est haciendo uso de la plataforma.

Ilustracin 48. Seleccin de imagen

Posteriormente se debe seleccionar el Tipo de Procesamiento, esta seccin despliega dos alternativas: Secuencial y Paralelo, en el caso de seleccionar la opcin Paralelo se pregunta la cantidad de nodos con los que se quiere procesar la imagen.

Ilustracin 49. Seleccin tipo de Procesamiento

Procesamiento Digital de Imgenes

52

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Finalmente se debe seleccionar un Filtro de animacin para que sea aplicado a la imagen, entre los filtros estn las opciones de Desenfoque de Movimiento, Time Lapse, Stop Motion, Bullet Time, HDR, Multiexposicin, Efecto Amenbar, Multienfoque, Panormicas, Gigapan, Fotogrfica Esfrica y Astrofotografa. Una vez elegido el efecto, hacer clic en el botn Aceptar y se procesa la imagen.

Ilustracin 50. Seleccin Filtro de Animacin

En la parte derecha de la plataforma, est la seccin Fotos Generadas, en donde se ven ejemplos de imgenes con diferentes efectos procesados en el sitio. Aqu el usuario visualiza los resultados (galera de imgenes).

Procesamiento Digital de Imgenes

53

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

11.

Bibliografa
http://www.fotonostra.com/digital/jpeg.htm http://www.secyt.frba.utn.edu.ar/gia/introd-al-proc-de-imagenes.PDF http://www.slideshare.net/tecnoeducahoy/tratamiento-digital-de-imgenes http://www.cs.buap.mx/~iolmos/pdi/Sesion4_Operaciones_Punto.pdf http://www.colorcodehex.com/896f5e/ http://eisc.univalle.edu.co/materias/WWW/material/lecturas/xp.pdf http://www.acertasoftware.com/mspiral.html http://ingsoftware072301.obolog.com/metodologia-xp-2012877 http://www.astroyciencia.com/2011/11/28/que-es-la-astrofotografia/ http://es.wikipedia.org/wiki/High_dynamic_range http://commons.wikimedia.org/wiki/File:Basilica_of_Our_Lady_of_the_Pillar_and_the_Ebro_Ri ver,_Zaragoza.jpg http://gigapanes.blogspot.com/2010/01/que-es-gigapan.html http://docs.gimp.org/es/plug-in-mblur.html http://www.jggweb.com/2007/08/27/amenabar-elimina-personas-de-paisajes/

Procesamiento Digital de Imgenes

54

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

12.

Conclusiones
Con el desarrollo del proyecto expuesto en este informe, se pudo poner en prctica el tratamiento de imgenes digitales utilizando tcnicas de desarrollo de software antes no utilizadas por el equipo de desarrollo, ya sea el tratamiento de imgenes tal cual como problema a solucionar y as tambin la utilizacin de algoritmos paralelos para mejorar el procesamiento de una gran cantidad de datos requeridos para imgenes grandes, de alta calidad y en movimiento. Para esto, uno de los desafos ms complicados fue el hecho de modificar distintos algoritmos de tratamiento de imgenes de forma secuencial, la gran mayora utilizando programacin orientada a objetos, y transformarlos a algoritmos paralelizables para una cantidad de 18 nodos que funcionasen en conjunto en un ambiente Clster para el sistema desarrollado logrando sacar el mximo rendimiento a equipos, de los cuales antes el grupo no haba podido experimentar de esta forma. Con esto, fue necesario tomar en tiempo real mtricas de desempeo las cuales fueron graficadas para tener un mayor respaldo y dar respuesta a dudas de los tiempos que ayudaron a comprender cmo estaba trabajando los procesadores en conjunto. Parte del desafo fue lograr que la gran cantidad de estudiantes que cursan la asignatura, pudiesen ser organizados por un grupo lder en el desarrollo del problema, teniendo el deber asignar puestos, deberes y tareas a cada subgrupo o personas en particular, teniendo que cumplir fechas de entrega y siendo calificados a travs de un seguimiento exhaustivo del desempeo de cada integrante del grupo, todo esto coordinado a travs de reuniones semanales para consultar las tareas completadas, en desarrollo y las atrasadas para obtener datos del rendimiento del grupo.

Procesamiento Digital de Imgenes

55

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Anexo
Anexo 1.Configuracin Clster MPI en Ubuntu.

Procesamiento Digital de Imgenes

56

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Procesamiento Digital de Imgenes

57

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Anexo 2 Formato BMP


Windows bitmap (.BMP) es el formato propio del programa, que viene con el sistema operativo Windows. Puede guardar imgenes de 24 bits (16,7 millones de colores), 8 bits (256 colores) y menos. Puede darse a estos archivos una compresin sin prdida de calidad: la compresin RLE (RunLengthencoding).

Los archivos con extensin .BMP, en los sistemas operativos Windows representan la sigla BitMap (o tambin Bit Mapped Picture), sea mapa de bits. Los archivos de mapas de bits se componen de direcciones asociadas a cdigos de color, uno para cada cuadro en una matriz de pixeles tal como se realiza un esquema de un dibujo para nios pequeos. Normalmente, se caracterizan por ser muy poco eficientes en su uso de espacio en disco, pero pueden mostrar un buen nivel de calidad. A diferencia de los grficos vectoriales, al ser rescatados a un tamao mayor, pierden calidad. Otra desventaja de los archivos BMP es que no son utilizables en pginas web debido a su gran tamao en relacin a su resolucin.

Procesamiento Digital de Imgenes

58

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

El encabezado del archivo proporciona informacin acerca del tipo de archivo (mapa de bits) y su tamao, as como tambin indica dnde comienza realmente la informacin de la imagen.

Procesamiento Digital de Imgenes

59

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Encabezado del archivo El encabezado del archivo proporciona informacin acerca del tipo de archivo (mapa de bits) y su tamao, as como tambin indica dnde comienza realmente la informacin de la imagen. El encabezado comprende cuatro campos: La firma (en 2 bytes), que indica que se trata de un archivo BMP con dos caracteres. BM, 424D en hexadecimal, que indica que se trata de un mapa de bits de Windows. BA que indica que se trata de un mapa de bits OS/2. CI que indica que se trata de un icono de color de OS/2. CP indica que es un puntero de color de OS/2. IC indica que es un icono de OS/2. PT indica que es un puntero de OS/2. El tamao total del archivo en bytes (codificado en 4 bytes) Un campo reservado (en 4 bytes). El desajuste de la imagen (en 4 bytes), es decir, la ubicacin del comienzo de la informacin de la imagen en relacin con el comienzo del archivo.

Encabezado de informacin del mapa de bits El encabezado de informacin del mapa de bits proporciona informacin acerca de la imagen, en especial las dimensiones y los colores. La informacin del mapa de bits comprende cuatro campos: El tamao del encabezado de informacin del mapa de bits en bytes (codificado en 4 bytes). Los siguientes valores hexadecimales son posibles segn el tipo de formato BMP: 1. 28 para Windows 3.1x, 95, NT 2. 0C para OS/2 1.x 3. F0 para OS/2 2.x El ancho de la imagen (en 4 bytes), es decir, el nmero de pxeles contados de forma horizontal La altura de la imagen (en 4 bytes), es decir, el nmero de pxeles contados de forma vertical El nmero de planos (en 2 bytes). Este valor es siempre 1

Procesamiento Digital de Imgenes

60

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

La profundidad del modelo de color (en 2 bytes), es decir, el nmero de bits usados para codificar el

color. Este valor puede ser equivalente a 1, 4, 8, 16, 24 32


El mtodo de compresin (en 4 bytes). Este valor es 0 cuando la imagen no est comprimida o 1, 2 3 segn el tipo de compresin usado: 1 para la codificacin RLE de 8 bits por pxel 2 para la codificacin RLE de 4 bits por pxel 3 para la codificacin de campo de bits, lo que significa que el color fue codificado por una mscara triple representada por la paleta.

El tamao total de la imagen en bytes (en 4 bytes). La resolucin horizontal (en 4 bytes), es decir, el nmero de pxeles por metro contado de forma horizontal. La resolucin vertical (en 4 bytes), es decir, el nmero de pxeles por metro contado de forma vertical. El nmero de colores de la paleta (en 4 bytes). El nmero de colores importantes de la paleta (en 4 bytes). Este campo puede equivaler a cuando todos los colores son importantes. Paleta de imgenes La paleta es opcional. Cuando se define la paleta, sta contiene 4 bytes de forma sucesiva para cada una de las entradas, que representan:

El componente azul (en un byte). El componente verde (en un byte). El componente rojo (en un byte). Un campo reservado (en un byte).

Procesamiento Digital de Imgenes

61

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Codificacin de imgenes La codificacin de imgenes se realiza escribiendo en forma sucesiva los bits que corresponden a cada pxel, lnea por lnea, comenzando por el pxel del extremo inferior izquierdo.

Las imgenes de 2 colores usan 1 bit por pxel, lo que significa que un byte permite codificar 8 pxeles. Las imgenes de 16 colores usan 4 bits por pxel, lo que significa que un byte permite codificar 2 pxeles. Las imgenes de 256 colores usan 8 bits por pxel, lo que significa que se necesita un byte para codificar cada pxel Las imgenes de colores reales usan 24 bits por pxel, lo que significa que se necesitan 3 bytes para codificar cada pxel, respetando la alternancia del orden de los colores para el azul, el verde y el rojo.

Cada lnea de la imagen debe comprender un nmero total de bytes que sea mltiplo de 4; si este esquema no se cumple, la lnea se debe completar con todos los 0 necesarios para respetar el criterio.

Anexo 3 Formato JPG


JPEG es, junto con GIF, uno de los formatos estndares en las pginas web, lo que ha hecho que su uso se haya disparado enormemente. Sus ficheros son vlidos tanto para PC como para MAC, es soportado por los navegadores ms importantes (Internet Explorer y Netscape Navigator) y puede trabajar en Escala de grises, RGB y CMYK.

Este formato de mapa de bits fue desarrollado por el JointPhotographicExpertsGroup, asociacin de fotgrafos profesionales de Estados Unidos que buscaba un formato grfico que permitiera el almacenamiento de imgenes fotogrficas de calidad con unos pesos de fichero configurable y relativamente bajo.

Este objetivo lo consigue usando el algoritmo de compresin con prdidas JPEG, basado en el hecho de que el ojo humano no es perfecto y no es capaz de captar toda la informacin que se puede almacenar en una imagen de 24 bits. El formato JPEG intenta eliminar la informacin que el ojo humano no es capaz de distinguir, consiguiendo con ello factores de compresin cercanos a 20:1 sin prdida apreciable de calidad (puede llegar hasta 100:1 y ms). Este algoritmo es adems configurable, por lo que podemos elegir la cunta compresin queremos dar al fichero. Lgicamente, cuanto ms grande sea sta, menos calidad tendr la imagen final. Procesamiento Digital de Imgenes 62

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

La sobre compresin produce muestras de color borrosas, as como una imprecisin en las zonas de mayor contraste. Un indicador directo de la sobre compresin es la presencia de reas grises alrededor del texto negro sobre fondo blanco. Experimentando con el grado de compresin, podremos llegar a un porcentaje que suponga el mejor compromiso entre calidad y tamao de fichero. Los programas grficos permiten esta optimizacin de forma interactiva, mostrando una simulacin del resultado con cada grado de compresin aplicado. Una desventaja de trabajar con este formato es que las imgenes siempre sufren algn tipo de prdida, por lo que nunca vuelven a tener la calidad original. Por ello es conveniente que una vez escaneada la imagen se almacene una copia en algn formato que permita compresin sin prdidas, como BMP, con lo que dispondremos de la imagen almacenada con su mxima calidad. Si se abre un archivo JPEG, se modifica y luego se guarda de nuevo como JPEG, se producir una nueva compresin del fichero, lo que provocar una apreciable degradacin del archivo. Por esta razn es conveniente realizar las modificaciones necesarias en la imagen original antes de guardarla en formato JPEG. El archivo JPEG se comprime al guardarlo en disco, pero debe ser descomprimido para utilizarlo en una aplicacin. Esto significa que la cantidad de memoria que se necesita para manejar la imagen puede ser mayor que el tamao del archivo guardado en varios rdenes de magnitud. Un archivo JPEG de 1 Mb puede descomprimirse fcilmente en una imagen de 100 Mb. Por eso, al abrir archivos JPEG, se produce una reduccin en las prestaciones debido al tiempo requerido para procesar la compresin y la descompresin. JPEG es un formato especialmente adecuado para imgenes con muchos colores y con gradaciones de tonos (imgenes de tono continuo), como las fotografas o las digitalizaciones de alta calidad. Se usa para almacenar imgenes de tipo vectorial o dibujos sencillos se observar como la compresin disminuye enormemente y las modificaciones hechas sobre la imagen original son apreciables a simple vista.

En el caso de imgenes a color trabaja con profundidades de color de 24 bits separados en tres canales (RGB), por lo que permite casi 16,8 millones de colores (color verdadero). En el caso de imgenes en escala de grises trabaja con un solo canal de 8 bits. No permite el uso de transparencias (no maneja canales alfa) ni animaciones, pero s que permite el uso de compresin progresiva, que muestra la imagen gradualmente, mientras la descarga el explorador Web, utilizando series de lecturas para mostrar versiones cada vez ms detalladas de toda la imagen, hasta que se han descargado todos los datos. Con ello se obtiene un efecto similar al entrelazado de los ficheros GIF.

Procesamiento Digital de Imgenes

63

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Anexo 4 Formato GIF


La estructura de todo fichero GIF est basada en bloques, que pueden contener informacin diversa: una imagen, instrucciones acerca de cmo es exhibida, texto, informacin caracterstica de alguna aplicacin, un marcador que determina el final del archivo, comentarios (con informacin acerca de la imagen en cuestin), etc. Utilizan el modo de color indexado, pudiendo trabajar con dos paletas diferentes, una global y otra local. La paleta global determina los colores de todas las imgenes almacenadas en el GIF (puede haber varias en un mismo fichero), mientras que la local determina especficamente la paleta de cada imagen del GIF (en el caso de haber una sola imagen, la nica paleta disponible ser la global). Se pueden alcanzar los 256 colores como mximo, pudiendo elegir entre los predefinidos (2, 4, 8, 16, 32, 128 256) o personalizados como por ejemplo 12 colores. La limitacin principal que tiene es que tan solo puede manejar 256 colores, lo que hace que una imagen con ms de 256 o con transiciones suaves de colores debe ser reelaborada con una trama de los colores disponibles, con lo que puede perder calidad. Aunque todo depende del tipo de imagen, ya que a veces puede conseguirse un GIF fotogrfico de calidad aceptable (aunque suele tener ms peso que la misma imagen en formato JPG). El formato est especialmente indicado en imgenes con menos de 256 colores en las que muchos puntos consecutivos tengan el mismo color, se repitan secuencias de colores o contengan principalmente textos. Adems, la variante GIF89a, creada en 1989, permite la creacin de imgenes transparentes, de animaciones y de imgenes con entrelazado, elementos grficos muy tiles, sobre todo en la web.

Procesamiento Digital de Imgenes

64

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Anexo 5 Tcnicas de Movimiento


Filtro Desenfoque de movimiento.

El filtro desenfoque de movimiento crea un efecto de movimiento. El filtro puede crear movimientos lineales, radiales y de acercamiento. Cada uno de estos movimientos se pueden ajustar con los parmetros de longitud o ngulo disponibles

Figura 1. Imagen Original

Tipo de desenfoque Lineal Es un desenfoque para dar sensacin de movimiento en una determinada direccin, por ejemplo horizontal. En este caso, longitud significa lo que radio en otros filtros: representa la intensidad del desenfoque. A ms longitud habr un mayor desenfoque. El ngulo determina el ngulo real del movimiento. As, un ngulo de 90 producir un desenfoque vertical, y uno de 0 producir un desenfoque horizontal

Figura 2.Imgen con desenfoque

Procesamiento Digital de Imgenes

65

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Radial Desenfoque de movimiento que crea un movimiento circular. El deslizador de longitud no cuenta para este tipo de desenfoque. El ngulo, en cambio, es el parmetro principal que afectar al desenfoque. Un ngulo mayor producir un mayor desenfoque de movimiento circular. El desenfoque de movimiento radial tiene un efecto similar a un objeto que est girando. El centro de giro en este caso, es el centro de la imagen.

Figura 3. Imagen radial

Acercamiento Produce un desenfoque que se irradia desde el centro de la imagen. El centro de la imagen permanece relativamente quieto, mientras se desenfoca las reas exteriores hacia el centro. Esta opcin del filtro produce una sensacin de movimiento hacia delante. El parmetro longitud es el ajuste principal aqu, y afecta a la cantidad de velocidad, por as decirlo, hacia el centro de la imagen.

Figura 4.Imagen con acercamiento

Procesamiento Digital de Imgenes

66

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Tcnicas de imagen sumando fotos A continuacin se presentan algunas tcnicas que se utilizan sumando y procesando fotografas para llegar a un resultado totalmente distinto, como por ejemplo dar movimiento a stas. Time-lapse El time-lapse es una secuencia de vdeo en la que los sucesos ocurren a una velocidad ms rpida de lo normal. Dependiendo de lapso de tiempo que queramos acelerar podremos utilizar una cmara de vdeo para grabarlo y acelerarlo despus en postproceso o ir tomando fotografas cada cierto tiempo y luego montarlas como un vdeo. El primer mtodo se puede usar para objetos con velocidades ms altas, por ejemplo para personas caminando en una calle, pero para movimientos ms lentos suele usarse el segundo, por ejemplo la evolucin de las nubes o el crecimiento de una planta. Stop motion Es una tcnica de animacin que se utiliza para aparentar el movimiento de objetos inanimados mediante la toma sucesiva de imgenes que al ser pasadas a formato cine, 24 imgenes por segundo, aparenta el movimiento del objeto. Esta tcnica se lleva utilizando en el cine desde sus comienzos.

Figura 5. Imagen utilizando Stop Motion

Procesamiento Digital de Imgenes

67

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Bullet time o efecto bala Tambin llamado efecto Matrix, consiste en ralentizar el tiempo para poder observar movimientos muy rpidos. Esto puede conseguirse mediante la colocacin de varias cmaras fotogrficas apuntando al mismo objeto y que se disparan a la vez o en rpida sucesin. Al montar despus estas imgenes en un vdeo podemos obtener resultados tan espectaculares como los de Matrix.

Figura 6.Imagen utilizando tiempo bala

HDR Las imgenes de alto rango dinmico (HDR) son un conjunto de tcnicas que permiten un mejor rango dinmico de luminancias entre las zonas ms claras y las ms oscuras de una imagen del que las tcnicas de imagen digital estndar o mtodos fotogrficos pueden ofrecer. La fotografa de alto rango dinmico permite obtener imgenes ms acorde a las visualizadas por el ojo humano, que cuando observa el mundo que nos rodea es capaz de distinguir detalles en zonas con una diferencia de iluminacin muy superior a la soportada por otros formatos como la pelcula o los formatos de imgenes comprimidas. Este rango dinmico ms extenso permite a las imgenes HDR representar con ms exactitud el extenso rango de niveles de intensidad encontrados en escenas reales, que van desde luz solar directa hasta la dbil luz de las estrellas.

Procesamiento Digital de Imgenes

68

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Figura 7.Imagen utilizando HDR

Multiexposicin y efecto Amenabar: Multienfoque. Panormicas. Son dos variantes de la misma tcnica. En la multiexposicin se hacen varias tomas desde el mismo lugar variando al sujeto de posicin, luego se mezclan mediante software y se consigue el efecto de que el protagonista est repetido varias veces en la misma imagen. El efecto Amenbar consiste en hacer varias exposiciones del mismo lugar buscando eliminar de la escena elementos que sean molestos, como pueden ser personas o coches de un paisaje. Es el efecto que hizo Amenbar en Abre los ojos cuando se ve al protagonista en la Gran Va madrilea totalmente vaca.

Figura 8.Multiexposicion

Procesamiento Digital de Imgenes

69

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Figura 9.Tcnica Amenabar

Figura 10.Resultado final utilizando Amenabar

Gigapan. Un gigapan es una fotografa, generalmente panormica, que tiene una resolucin de al menos un gigapixel, o lo que es lo mismo, 1000 megapxeles, una resolucin tan alta no se puede conseguir con ninguna cmara que sea accesible para cualquier aficionado a la fotografa, pero se puede conseguir haciendo muchas fotos con una cmara convencional, no es una idea nueva, pero lo que s que es nuevo es que esto se haya hecho mucho ms fcil y accesible, tanto para tomar las fotografas como para unirlas despus mediante software y la que a mi parecer es el mayor avance, crear una web en la que esas fotografas se pueden visualizar.

Procesamiento Digital de Imgenes

70

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Astrofotografa. La astrofotografa es la aplicacin de la fotografa a la astronoma. Se pueden formar imgenes durante largos perodos sobre una emulsin fotogrfica, revelando estrellas y otros objetos invisibles al ojo, y que son registradas permanentemente, permitiendo medir con precisin sobre la pelcula sus posiciones y brillos. En astrofotografa, se coloca una emulsin fotogrfica en el foco del telescopio, en lugar del ocular. La emulsin puede estar sobre una placa de vidrio o sobre una pelcula. Se requiere un obturador para hacer la exposicin, que puede durar muchos minutos o incluso horas. Durante la exposicin el telescopio debe ser guiado con precisin sobre el objeto que est siendo fotografiado.

Figura 11. Ejemplo utilizando Astrografa

Procesamiento Digital de Imgenes

71

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Anexo 6 Conceptos Involucrados en el procesamiento de imgenes


Imagen: es una representacin visual, que manifiesta la apariencia visual de un objeto real o imaginario. Aunque el trmino suele entenderse como sinnimo de representacin visual, tambin se aplica como extensin para otros tipos de percepcin, como imgenes auditivas, olfativas, tctiles, sinestsicas, etctera.

Imagen Digital: La imagen digital es la representacin bidimensional de una imagen empleando bits, unidad mnima de informacin compuesta por dgitos binarios (1 y 0), que se emplea a instancias de la informtica y cualquier dispositivo de tipo digital.

Imgenes Bitmap: Las imgenes de mapa de bits estn construidas mediante una gran cantidad de cuadraditos, llamados pixel. Cada uno de estos cuadraditos est relleno de un color uniforme, pero la sensacin obtenida es el resultado de integrar visualmente, en la retina, las variaciones de color y luminosidad entre pxeles vecinos

Figura 12. Imagen Bitmap

Las imgenes de mapa de bits, tambin llamadas bitmap, son la alternativa ideal para reproducir objetos sutilmente iluminados y escenas con gran variacin tonal. De hecho, es el tipo de imagen utilizado para la fotografa y el cine. Obviamente, la calidad de la imagen depender de la cantidad de pxeles utilizados para representarla. Las imgenes bitmap no permiten el cambio de escala. Observando, en la imagen siguiente, lo que pasa al hacer zoom sobre las flores de la imagen anterior: los pxeles son evidentes y la representacin es totalmente irreal. Este efecto, que se conoce con el nombre de pixelado se hace ms evidente en las lneas curvas y en las zonas en las que hay cambios bruscos de luminosidad.

Procesamiento Digital de Imgenes

72

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Figura 13.Zoom de la figura anterior

Afortunadamente, existe una alternativa de software libre llamada The Gimp, un programa excelente, potente y profesional, que tiene muy poco que envidiar al costoso Photoshop. Las imgenes en mapa de bits, en cambio, son perfectas cuando la gama de colores cambia sutilmente. En este caso, la imagen debe generarse teniendo muy en cuenta dnde y cmo va a mostrarse, con una cantidad de pxeles y una gama de colores adaptados al soporte en el que va a reproducirse. Una vez hecha, las modificaciones comportarn prdida de calidad Resolucin Podemos definir la resolucin como la capacidad de reproducir fielmente los detalles de una imagen. Utilizaremos esta palabra, lgicamente, al referirnos a la resolucin de una imagen digital, pero tambin, al referirnos a una impresora, un monitor, una cmara o un escner. As pues, se trata de un concepto fundamental, que posee distintas acepciones, segn el contexto en el que lo utilizamos. A partir de ahora nos referiremos a la tecnologa bitmap, que es la ms exigente en lo que concierne a la resolucin. Hay que tener presente este concepto en todas las etapas de la vida de la imagen, desde su captura con una cmara digital o un escner hasta la reproduccin en el soporte elegido. Resolucin de una imagen La resolucin de una imagen es la cantidad de pxeles que la componen. Suele medirse en pxeles por pulgada (ppi)1 o pxeles por centmetro (pcm). Cuanto mayor es la resolucin de una imagen ms calidad tendr su presentacin pero, desgraciadamente, ms espacio ocupar en el disco el archivo grfico que la contiene. Por ejemplo, una imagen con una resolucin de 72 ppi, que es muy comn en las pginas web, necesitar 5184 pxeles en cada pulgada cuadrada, que es un cuadrado de 2,54 centmetros de lado (ya s que es una lata tener que manejar las unidades anglosajonas, pero hay que utilizarlas). Una resolucin de 72 ppi es adecuada para imgenes que se muestran en el monitor de un ordenador. La nitidez de los detalles es suficiente y la reproduccin de las distintas tonalidades es correcta. Sin embargo, podra ser insuficiente para una impresin en papel. Afortunadamente, muchos de los programas de tratamiento de imgenes nos permiten expresarnos en centmetros y milmetros. As que, para poner otro ejemplo, supongamos que queremos hacer una imagen con una resolucin de 30 pixel por centmetro (30 pcm). Cada centmetro cuadrado necesitar Procesamiento Digital de Imgenes 73

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

900 pxeles y, si nuestra imagen es una fotografa de 13 x 18 centmetros, cuya superficie es de 234 cm2, necesitar en total 210600 pxeles. Lgicamente cuanto ms alta es la resolucin de una imagen, ms finamente reproduce los detalles y los cambios sutiles de tonalidad pero, a la vez, ms pesado ser el archivo.

Profundidad de color

Cada uno de los pxeles de una imagen bitmap est coloreado con un color homogneo. As pues, el archivo que contiene los datos de la imagen debe contener la informacin del color de cada uno de los pxeles. Cuntos bits se emplean para albergar esta informacin? Eso es lo que se conoce con el trmino profundidad de color de una imagen. Profundidad de color es el nmero de bits utilizados para describir el color de cada pixel de la imagen. Es obvio que, cuanto mayor sea la profundidad de color de una imagen, ms colores tendr la paleta disponible y, por tanto, la representacin de la realidad podr hacerse con ms matices, con colores ms sutiles. Por ejemplo, si slo disponemos de 1 bit para describir el color de cada pixel, tan slo podremos elegir entre dos colores: un color si el bit tiene el valor 0 (habitualmente negro) y otro color si el bit vale 1 (habitualmente blanco).

Figura 14. Imagen con 1 bit (blanco y negro)

Figura 15.Imagen con 8 bits

Procesamiento Digital de Imgenes

74

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

La primera fotografa tiene con una profundidad de 1 bit, que tiene el aspecto de una fotocopia de mala calidad, en cambio la segunda ya est ms definida con 8 bit con una calidad tonal ms suficiente. Si disponemos de 8 bit para describir el color de cada pixel, podremos elegir entre 256 colores, porque 2^8=256. Esta es una profundidad de color suficiente para las imgenes construidas en el modo denominado escala de grises, porque con 8 bits cada pixel puede adoptar un tono entre 256 valores posibles de gris, entre el negro absoluto (00000000) y el blanco absoluto (11111111).Y as, cuanto mayor sea la profundidad se utilizar una cantidad mayor de colores para describir la imagen. En la tabla siguiente tienes el clculo de los colores disponibles para cada profundidad: Profundidad 1 bit 4 bit 8 bit 16 bit 17 bit Colores 2 16 256 65536 4294967296

Tabla 1. Tabla profundidad color

Procesamiento Digital de Imgenes

75

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Anexo 7 Minutas de reunin


MINUTA DE REUNIN Reunin N: 1 Lugar: Tema: Hora Inicio: Minuta N: 001 Fecha: 19/11/13

Laboratorio N 5 Coordinacin con el curso, disponibilidad de horarios, representantes de cada grupo 9:20 hrs. Hora 10:30 hrs. Trmino:

Reunin N: 2 Lugar: Tema: Hora Inicio:

Minuta N:

002

Fecha:

22/11/13

Laboratorio N 5 Montaje del clster, Configuracin de los nodos, Discusin de la herramienta a utilizar 12:00 hrs. Hora 17:00 hrs. Trmino:

Reunin N: 3 Lugar: Tema: Hora Inicio:

Minuta N:

003

Fecha:

29/11/13

Laboratorio N 5 Designacin de las herramientas a utilizar , desarrollo del informe 12:00 hrs. Hora 15:00 hrs. Trmino:

Reunin N: 4 Lugar: Tema: Hora Inicio:

Minuta 004 Fecha: 06/12/13 N: Laboratorio N 5 Evaluacin de los integrantes, jefes de cada grupo, estructura del informe 10:00 hrs Hora 11:30 hrs Trmino:

Reunin N: 5 Lugar: Tema: Hora Inicio:

Minuta 005 Fecha: 13/12/13 N: Laboratorio N 5 Resumen y detalles faltantes a nivel informe y a nivel codificacin 11:00 hrs Hora 12:30 hrs Trmino:

Procesamiento Digital de Imgenes

76

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Anexo 8 Evaluacin Evaluacin Final

Evaluacion Final Grupo Alumno AsistenciaParticipacionProductividad 0.2 34 46 46 46 46 46 34 46 46 70 46 46 58 70 58 34 46 46 34 22 46 34 46 46 10 10 10 10 0.3 37.8 37.5 45.3 42.7 46.5 44.5 42.2 54.7 42.2 61.2 52.3 52.8 61.5 60.3 48.7 42.0 49.2 44.5 43.2 43.0 49.8 42.3 48.3 44.8 10 10 10 10 0.4 36.7 36.3 44.3 41.8 44.3 44.0 43.3 54.7 43.2 61.3 51.3 51.8 61.5 60.3 48.8 45.0 47.7 45.7 46.2 44.3 52.5 42.2 48.7 46.5 10 10 10 10 60 60 60 / 70 70 70 70 / / 60 60 65 60 70 / 70 70 70 60 60 / 60 60 / 10 10 10 Autoevaluacion 0.1 / / / 53.3 / / / / 51.3 60 / / / / / 51.3 / / / / / 49.5 / / 10 / / / Nota Parcial Bonificacion 0.1 30 30 40 42 43 47 40 62 42 60 52 58 63 60 45 42 50 45 48 44 58 43 45 42 10 10 10 10 Nota Final

Evaluacion a los integrantesProm Evaluacion a los jefes 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5 6 6 6 SG Marco Molina Gonzalo Pradenas Elias Aguila Simon Muoz Nicolas Arratia Catherina Gonzalez Oscar Leon Sebastian Menandez Cristobal Perez Aldo Aguilar Freddy Aravena Gerson Leiva Camilo Torres Manuel Astudillo Natalia Herrera Adrian Gutierrez Jazmin Martinez Roberto Zaartu Gonzalo Zuiga Ronald Verdugo Pablo Barra Italo Miranda Madeleine Opazo Ricardo Soto Claudio Pia Ignacio Briones Sebastian Ceron Jaime Guarda 38.8 41.0 46.5 44.1 47.9 47.2 43.8 54.5 44.2 62.9 51.4 51.8 61.2 62.2 52.7 42.5 50.0 47.8 45.2 41.0 51.2 41.3 49.2 47.3 10 10 10 10 41.8 44.0 50.5 48.3 52.2 51.9 47.8 60.7 48.4 68.9 56.6 57.6 67.5 68.2 57.2 46.7 55.0 52.3 50.0 45.4 57.0 45.6 53.7 51.5 10 10 10 10

Procesamiento Digital de Imgenes

77

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Asistencia

Asistencia Reunion 1 Reunion 2 Reunion 3 Reunion 4 Reunion 5 Prom Final 34 46 46 46 46 46 34 46 46 70 46 46 58 70 58 34 46 46 34 22 46 34 46 46 22 34 46 10

Marco Molina Gonzalo Pradenas Elias Aguila Simon Muoz Nicolas Arratia Catherina Gonzalez Oscar Leon Sebastian Menandez Cristobal Perez Aldo Aguilar Freddy Aravena Gerson Leiva Camilo Torres Manuel Astudillo Natalia Herrera Adrian Gutierrez Jazmin Martinez Roberto Zaartu Gonzales Zuiga Ronald Verdugo Pablo Barra Italo Miranda Madeleine Opazo Ricardo Soto Claudio Pia Ignacio Briones Sebastian Ceron Jaime Guarda

0 0 0 0 1 1 0 1 0 1 0 1 0 1 1 1 0 0 1 0 1 0 1 0 1 0 1 0

0 0 1 1 1 1 0 0 1 1 1 0 1 1 0 0 0 1 0 1 1 1 0 0 0 1 1 0

0 1 1 0 0 0 1 1 0 1 1 1 1 1 1 0 1 1 1 0 1 1 0 1 0 0 1 0

1 1 0 1 0 0 0 0 1 1 1 0 1 1 1 0 1 0 0 0 0 0 1 1 0 1 0 0

1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 1 1 0 0 0 0

Procesamiento Digital de Imgenes

78

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Participacin

Participacin Reunion 1 Reunion 2 Reunion 3 Reunion 4 Reunion 5 Informe / Prom Final Programacio 42 37.8 30 42 37.5 30

Marco Molina Gonzalo Pradenas Elias Aguila Simon Muoz Nicolas Arratia Catherina Gonzalez Oscar Leon Sebastian Menandez Cristobal Perez Aldo Aguilar Freddy Aravena Gerson Leiva Camilo Torres Manuel Astudillo Natalia Herrera Adrian Gutierrez Jazmin Martinez Roberto Zaartu Gonzalo Zuiga Ronald Verdugo Pablo Barra Italo Miranda Madeleine Opazo Ricardo Soto Claudio Pia Ignacio Briones Sebastian Ceron Jaime Guarda

30 30 42 45 44 45 42 46 40 60 48 40 62 62 50 43 50 47 43 35 43 41 45 40 10 10 10 10

40 43 43 42 45 47 46 55 42 65 45 55 63 60 50 41 47 45 45 45 58 45 55 45 10 10 10 10

43 40 45 45 43 43 42 50 45 60 55 56 64 60 45 40 53 45 45 43 55 44 45 48 10 10 10 10

42 40 43 41 47 40 40 57 43 60 56 58 58 58 47 40 50 42 40 45 43 40 50 46 10 10 10 10

49 43 45 45 41 60 42 62 55 55 62 62 50 45 50 42 43 45 55 42 45 47 10 10 10 10

50 40 55 47 42 60 41 60 55 53 60 60 50 43 45 46 43 45 45 42 50 43 10 10 10 10

45.3 42.7 46.5 44.5 42.2 54.7 42.2 61.2 52.3 52.8 61.5 60.3 48.7 42.0 49.2 44.5 43.2 43.0 49.8 42.3 48.3 44.8 10 10 10 10

Procesamiento Digital de Imgenes

79

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Productividad

Productividad Reunion 1 Reunion 2 Reunion 3 Reunion 4 Reunion 5

Marco Molina Gonzalo Pradenas Elias Aguila Simon Muoz Nicolas Arratia Catherina Gonzalez Oscar Leon Sebastian Menandez Cristobal Perez Aldo Aguilar Freddy Aravena Gerson Leiva Camilo Torres Manuel Astudillo Natalia Herrera Adrian Gutierrez Jazmin Martinez Roberto Zaartu Gonzalo Zuiga Ronald Verdugo Pablo Barra Italo Miranda Madeleine Opazo Ricardo Soto Claudio Pia Ignacio Briones Sebastian Ceron Jaime Guarda

40 40 45 40 40 42 42 55 41 63 45 40 60 62 55 45 45 47 50 50 43 42 50 40 10 10 10 10

40 35 43 42 45 45 46 55 43 59 45 58 64 63 50 49 50 45 45 40 45 43 47 47 10 10 10 10

30 30 46 42 46 42 45 53 42 60 55 53 63 60 45 45 45 41 43 40 55 40 50 49 10 10 10 10

40 40 42 43 45 42 43 55 46 63 55 50 60 62 43 43 52 51 45 46 55 43 45 42 10 10 10 10

30 30 47 43 48 47 41 50 45 63 50 50 62 60 48 43 47 43 44 44 60 43 50 45 10 10 10 10

Informe 1 / Programacion 40 43 43 41 42 46 43 60 42 60 58 60 60 55 52 45 47 47 50 46 57 42 50 56 10 10 10 10

Prom Final 36.7 36.3 44.3 41.8 44.3 44.0 43.3 54.7 43.2 61.3 51.3 51.8 61.5 60.3 48.8 45.0 47.7 45.7 46.2 44.3 52.5 42.2 48.7 46.5 10 10 10 10

Procesamiento Digital de Imgenes

80

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Bonificacin

Bonificacin Reuniones Asistencia Perfecta Reuniones extraprogramatic as 0 0 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 0 Programacion Algoritmos & Modulo web Proposicin de ideas 1 1 0 1 1 0 1 1 1 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 Implementacon cumplimiento de de codigos metas 1 1 0 1 0 0 1 1 1 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 1 0 0 1 1 1 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 Correcciones 0 0 1 0 1 1 0 0 0 1 1 1 0 0 1 1 1 1 1 1 0 0 0 1 0 0 0 0 Informe Acotaciones 0 0 1 0 1 1 0 0 0 1 1 1 0 0 1 1 1 1 1 1 0 0 1 0 0 0 0 0 Cumplimento de tareas 0 0 1 0 1 1 0 0 0 1 1 1 0 0 1 1 1 1 1 1 0 0 1 1 0 0 0 0 Aporte a otro modulo 0 0 0 0 0 0 0 0 1 1 0 1 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 Nota de Bonificacion 30 30 40 42 43 47 40 62 42 60 52 58 63 60 45 42 50 45 48 44 58 43 45 42 10 10 10 10

Marco Molina Gonzalo Pradenas Elias Aguila Simon Muoz Nicolas Arratia Catherina Gonzalez Oscar Leon Sebastian Menandez Cristobal Perez Aldo Aguilar Freddy Aravena Gerson Leiva Camilo Torres Manuel Astudillo Natalia Herrera Adrian Gutierrez Jazmin Martinez Roberto Zaartu Gonzalo Zuiga Ronald Verdugo Pablo Barra Italo Miranda Madeleine Opazo Ricardo Soto Claudio Pia Ignacio Briones Sebastian Ceron Jaime Guarda

0 1 0 1 0 0 0 0 1 1 0 1 1 1 1 1 1 0 1 0 1 0 1 1 0 0 0 0

Procesamiento Digital de Imgenes

81

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Evaluaciones a los jefes

Evaluaciones a los jefes de grupo Grupo Jefe de Grupo Integrantes Evaluacin 40 45 45 50 50 45 60 60 60 62 58 50 55 50 50 45 45 50 58 10 10 10 49.5 51.3 60.0 51.3 43.3 Nota Final

1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6

Simon Muoz

Cristobal Perez

Aldo Aguilar

Adrian Gutierrez

Italo Miranda

Claudio Pia

Marco Molina Gonzalo Pradenas Elias Aguila Nicolas Arratia Catherina Gonzalez Oscar Leon Sebastian Menandez Freddy Aravena Gerson Leiva Camilo Torres Manuel Astudillo Natalia Herrera Jazmin Martinez Roberto Zaartu Gonzales Zuiga Ronald Verdugo Pablo Barra Madeleine Opazo Ricardo Soto Ignacio Briones Sebastian Ceron

Procesamiento Digital de Imgenes

82

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Evaluacin a los integrantes

Grupo

Evaluaciones a los jefes de grupo Jefe de Grupo Integrantes

Nota 50 50 55

1 1 1

Simon Muoz

Marco Molina Gonzalo Pradenas Elias Aguila

2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6

Cristobal Perez

Aldo Aguilar

Nicolas Arratia Catherine Gonzalez Oscar Leon Sebastian Menandez Freddy Aravena Gerson Leiva Camilo Torres Manuel Astudillo Natalia Herrera Jazmin Martinez Roberto Zaartu Gonzales Zuiga Ronald Verdugo Pablo Barria Madeleine Opazo Ricardo Soto Ignacio Briones Sebastian Ceron

7 7 7 7 60 60 65 60 7 7 7 7 6 6 6 6 10 10

Adrian Gutierrez

Italo Miranda

Claudio Pia

Procesamiento Digital de Imgenes

83

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Anexo 9 Tiempos de Medicin con tiempos de latencia y sin tiempos de latencia


Invertir Color Con latencia

Tiempos Filtro Invertir Color


250.00 200.00 150.00 100.00 50.00 0.00 2000 x 4000 x 6000 x 8000 x 10000 x 12000 x 14000 x 16000 x 18000 x 20000 x 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000 Mejor Tiempo Serial Mejor Tiempo Paralelo 4P Mejor Tiempo Paralelo 60P Mejor Tiempo Paralelo 64P

Procesamiento Digital de Imgenes

84

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Escala de grises Con latencia

Tiempos Filtro Escala de Grises


250.00

200.00

150.00

100.00

Mejor Tiempo Serial Mejor Tiempo Paralelo 4P Mejor Tiempo Paralelo 60P

50.00

0.00 2000 x 4000 x 6000 x 8000 x 10000 x 12000 x 14000 x 16000 x 18000 x 20000 x 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000

Procesamiento Digital de Imgenes

85

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Brillo Con latencia

Tiempos del Filtro Brillo


250.00 200.00 150.00 100.00 50.00 0.00 2000 x 4000 x 6000 x 8000 x 10000 x 12000 x 14000 x 16000 x 18000 x 20000 x 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000 Mejor Tiempo Secuencial Mejor Tiempo Paralelo 4n Mejor Tiempo Paralelo 60n Mejor Tiempo Paralelo 64n

Procesamiento Digital de Imgenes

86

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Convolucin Con latencia

Tiempos de Filtro Convolucion


450 400 350 300 250 200 150 100 50 0 2000 x 2000 4000 x 4000 6000 x 6000 8000 x 10000 x 12000 x 14000 x 16000 x 18000 x 20000 x 8000 10000 12000 14000 16000 18000 20000

Mejor Tiempo Secuencial Mejor Tiempo Paralelo 4n Mejor Tiempo Paralelo 60n

Procesamiento Digital de Imgenes

87

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Redimensionar Con latencia

Tiempos Filtro Redimensionar


600.00 500.00 400.00 300.00 200.00 100.00 0.00 2000 x 4000 x 6000 x 8000 x 10000 x 12000 x 14000 x 16000 x 18000 x 20000 x 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000 Mejor Tiempo Secuencial Mejor Tiempo Paralelo 4n Mejot Tiempo Paralelo 60n Mejor Tiempo Paralelo 64n

Procesamiento Digital de Imgenes

88

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Sepia Con latencia

Tiempos del Filtro Sepia


250.00 200.00 150.00 100.00 50.00 0.00 2000 x 4000 x 6000 x 8000 x 10000 x 12000 x 14000 x 16000 x 18000 x 20000 x 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000 Mejor Tiempo Secuencial Mejor Tiempo Paralelo 4n Mejor Tiempo Paralelo 60n

Procesamiento Digital de Imgenes

89

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

RGB Con latencia Las mediciones pertenecientes al filtro RGB (RED, GREEN, BLUE) presentan similares tiempos de ejecucin debido a su idntica programacin, por esta razn se presenta solo un grfico pudindose encontrar los 2 restantes en el CD anexo.

Tiempos del Filtro RGB-R


250.00 200.00 150.00 100.00 50.00 0.00 2000 x 4000 x 6000 x 8000 x 10000 x 12000 x 14000 x 16000 x 18000 x 20000 x 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000 Mejor Tiempo Secuencial Mejor Tiempo Paralelo 4n Mejor Tiempo Paralelo 60n Mejor Tiempo Paralelo 64n

Procesamiento Digital de Imgenes

90

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Invertir Imagen Con latencia

Tiempos Filtro Invertir Imagen


160 140 120 100 80 60 40 20 0 2000 x 4000 x 6000 x 8000 x 10000 x 12000 x 14000 x 16000 x 18000 x 20000 x 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000 Mejor Tiempo Secuencial Mejor Tiempo Paralelo 4n Mejor Tiempo Paralelo 60n

Procesamiento Digital de Imgenes

91

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Traspuesta Con latencia Las mediciones pertenecientes al filtro Traspuesta (90,180,270) presentan similares tiempos de ejecucin debido a su idntica programacin, por esta razn se presenta solo un grfico pudindose encontrar los 2 restantes en el CD anexo.

Tiempos del Filtro Traspuesta 90


250.00 200.00 150.00 100.00 50.00 0.00 2000 x 4000 x 6000 x 8000 x 10000 x 12000 x 14000 x 16000 x 18000 x 20000 x 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000

Mejor Tiempo Secuencial Mejor Tiempo Paralelo 4n Mejor Tiempo Paralelo 60n

Procesamiento Digital de Imgenes

92

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Espejo Con latencia

Filtro Espejo

Tiempo (Sec)

secuencial paralelo_4n paralelo_60n paralelo_64n

Dimension

Procesamiento Digital de Imgenes

93

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Anexo 10 Cuantificacin de esfuerzo


Dedicacion en hrs

ACTIVIDAD Gestion de Personal Desarrollo de informe de planificacin. Entrega de informe de planificacin. 1 Reunion Documentacion Formateo de Equipos 2 Reunion Instalacin de Componentes Montaje de Cluster Designacin de Herramientas a utilizar (Desarrollo) Investigacin tcnica de solucin Desarrollo de Informe final. 3 Reunion Desarrollo de aplicacin de tratamiento 4Reunion Pruebas de aplicacin Construccin plantillas HTML Desarrollo de eventos servidor 5Reunion Desarrollo de eventos cliente Pruebas aplicacin web Entrega de informe final Presentacin laboratorio 2 Total

Marco Molina 1 0 0 0 2 0 0 1 3 2 2 0 0 10 0 4 0 0 0 0 0 0 1 26

Gonzalo Elias Pradenas Aguila


1 0 0 0 2 0 0 1 3 2 2 0 0 10 0 4 0 0 4 0 0 0 1 30 1 0 0 4 2 3 4 1 0 0 0 10 0 0 0 0 0 0 4 0 0 1 1 31

Simon Nicolas Catherine Oscar Sebastian Cristobal Aldo Freddy Gerson Camilo Manuel Adrian Natalia Jazmin Roberto Muoz Arratia Gonzalez Leon Menandez Perez Aguilar Aravena Leiva Torres Astudillo Gutierrez Herrera Martinez Zaartu
1 0 0 0 2 0 0 0 0 2 10 0 4 10 4 4 0 0 4 0 0 0 1 42 1 5 1 2 2 2 0 2 3 1 5 5 0 0 2 0 0 0 4 0 0 1 1 37 1 5 1 0 2 1 1 1 0 5 10 10 0 0 0 0 0 0 4 0 0 1 1 43 1 0 1 2 0 4 4 2 3 1 1 0 1 1 0 4 0 0 4 0 0 1 1 31 1 5 1 0 2 0 1 0 0 10 10 0 0 32 0 4 0 0 4 0 0 1 1 72 1 0 1 0 0 4 2 2 3 1 1 0 4 10 3 4 0 0 4 0 0 1 1 42 2 5 1 4 3 2 4 1 3 1 10 15 4 6 4 6 0 0 4 0 6 1 1 83 2 5 0 3 4 2 0 1 2 1 9 11 4 5 4 5 0 0 0 0 5 1 1 65 1 2 0 3 3 1 0 1 2 1 5 10 0 4 4 4 0 0 4 0 4 1 1 51 2 3 0 4 5 2 4 1 3 1 15 8 4 32 4 6 7 5 4 3 5 1 1 120 2 5 0 4 5 2 4 2 3 1 13 13 4 30 4 6 5 6 4 3 5 1 1 123 1 2 1 1.5 2 3 2 1 0.5 1 2 1 1 2 1 1 0 0 2 0 0 2 0 27 1 2 1 1.5 1 2 2 1 0.5 0 0 2 1 0 1 0 0 0 2 0 0 2 0 20 1 2 1 1.5 2 2 2 1 0.5 0 0 2 1 0 1 0 0 0 2 0 0 2 0 21 1 2 1 1.5 2 2 2 1 0.5 1 2 1 1 2 1 1 0 0 2 0 0 2 0 26

Procesamiento Digital de Imgenes

94

Universidad Tecnolgica Metropolitana Facultad de Ingeniera Escuela de informtica y Computacin Computacin Paralela INF-762

Dedicacion en hrs

ACTIVIDAD Gestion de Personal Desarrollo de informe de planificacin. Entrega de informe de planificacin. 1 Reunion Documentacion Formateo de Equipos 2 Reunion Instalacin de Componentes Montaje de Cluster Designacin de Herramientas a utilizar (Desarrollo) Investigacin tcnica de solucin Desarrollo de Informe final. 3 Reunion Desarrollo de aplicacin de tratamiento 4Reunion Pruebas de aplicacin Construccin plantillas HTML Desarrollo de eventos servidor 5Reunion Desarrollo de eventos cliente Pruebas aplicacin web Entrega de informe final Presentacin laboratorio 2 Total

Natalia Herrera
1 0 0

Adrian Gutierrez
1 0 0 0 2 0 0 1 3 2 2 0 0 10 0 4 0 0 4 0 0 0 1 30

Jazmin Martinez
1 0 0 4 2 3 4 1 0 0 0 10 0 0 0 0 0 0 4 0 0 1 1 31

Roberto Zaartu
1 0 0 0 2 0 0 0 0 2 10 0 4 10 4 4 0 0 4 0 0 0 1 42

Gonzalo Zuiga
1 0 0 2 2 2 0 2 3 1 5 5 0 0 2 0 0 0 4 0 0 1 1 31

Ronald Verdugo
1 0 0 0 2 1 1 1 0 5 10 10 0 0 0 0 0 0 4 0 0 1 1 37

Pablo Madeleine Barra Italo Miranda Opazo


1 0 0 2 0 4 4 2 3 1 1 0 1 1 0 4 0 0 4 0 0 1 1 30 1 0 0 0 2 0 1 0 0 10 10 0 0 32 0 4 0 0 4 0 0 1 1 66 1 0 0 0 0 4 2 2 3 1 1 0 4 10 3 4 0 0 4 0 0 1 1 41

Ricardo Soto
1 0 0 4 3 2 4 1 3 1 10 15 4 6 4 6 0 0 4 0 6 1 1 76

Jaime Guarda
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

0 2 0 0 1 3 2 2 0 0 10 0 4 0 0 0 0 0 0 1 26

Procesamiento Digital de Imgenes

95

You might also like