1000 resultados para Imágenes narrativas
Resumo:
ImageJ es un programa informático de tratamiento digital de imagen orientado principalmente hacia el ámbito de las ciencias de la salud. Se trata de un software de dominio público y de código abierto desarrollado en lenguaje Java en las instituciones del National Institutes of Health de Estados Unidos. Incluye por defecto potentes herramientas para editar, procesar y analizar imágenes de casi cualquier tipo y formato. Sin embargo, su mayor virtud reside en su extensibilidad: las funcionalidades de ImageJ pueden ampliarse hasta resolver casi cualquier problema de tratamiento digital de imagen mediante macros, scripts y, especialmente, plugins programables en lenguaje Java gracias a la API que ofrece. Además, ImageJ cuenta con repositorios oficiales en los que es posible obtener de forma gratuita macros, scripts y plugins aplicables en multitud de entornos gracias a la labor de la extensa comunidad de desarrolladores de ImageJ, que los depura, mejora y amplia frecuentemente. Este documento es la memoria de un proyecto que consiste en el análisis detallado de las herramientas de tratamiento digital de imagen que ofrece ImageJ. Tiene por objetivo determinar si ImageJ, a pesar de estar más enfocado a las ciencias de la salud, puede resultar útil en el entorno de la Escuela Técnica Superior de Ingeniería y Sistemas de Telecomunicación de la Universidad Politécnica de Madrid, y en tal caso, resaltar las características que pudieran resultar más beneficiosas en este ámbito y servir además como guía introductoria. En las siguientes páginas se examinan una a una las herramientas de ImageJ (versión 1.48q), su funcionamiento y los mecanismos subyacentes. Se sigue el orden marcado por los menús de la interfaz de usuario: el primer capítulo abarca las herramientas destinadas a la manipulación de imágenes en general (menú Image); el segundo, las herramientas de procesado (menú Process); el tercero, las herramientas de análisis (menú Analyze); y el cuarto y último, las herramientas relacionadas con la extensibilidad de ImageJ (menú Plugins). ABSTRACT. ImageJ is a digital image processing computer program which is mainly focused at the health sciences field. It is a public domain, open source software developed in Java language at the National Institutes of Health of the United States of America. It includes powerful built-in tools to edit, process and analyze almost every type of image in nearly every format. However, its main virtue is its extensibility: ImageJ functionalities can be widened to solve nearly every situation found in digital image processing through macros, scripts and, specially, plugins programmed in Java language thanks to the ImageJ API. In addition, ImageJ has official repositories where it is possible to freely get many different macros, scripts and plugins thanks to the work carried out by the ImageJ developers community, which continuously debug, improve and widen them. This document is a report which explains a detailed analysis of all the digital image processing tools offered by ImageJ. Its final goal is to determine if ImageJ can be useful to the environment of Escuela Tecnica Superior de Ingenierfa y Sistemas de Telecomunicacion of Universidad Politecnica de Madrid, in spite of being focused at the health sciences field. In such a case, it also aims to highlight the characteristics which could be more beneficial in this field, and serve as an introductory guide too. In the following pages, all of the ImageJ tools (version 1.48q) are examined one by one, as well as their work and the underlying mechanics. The document follows the order established by the menus in ImageJ: the first chapter covers all the tools destined to manipulate images in general (menu Image); the second one covers all the processing tools (menu Process); the third one includes analyzing tools (menu Analyze); and finally, the fourth one contains all those tools related to ImageJ extensibility (menu Plugins).
Resumo:
La relación entre la ingeniería y la medicina cada vez se está haciendo más estrecha, y debido a esto se ha creado una nueva disciplina, la bioingeniería, ámbito en el que se centra el proyecto. Este ámbito cobra gran interés debido al rápido desarrollo de nuevas tecnologías que en particular permiten, facilitan y mejoran la obtención de diagnósticos médicos respecto de los métodos tradicionales. Dentro de la bioingeniería, el campo que está teniendo mayor desarrollo es el de la imagen médica, gracias al cual se pueden obtener imágenes del interior del cuerpo humano con métodos no invasivos y sin necesidad de recurrir a la cirugía. Mediante métodos como la resonancia magnética, rayos X, medicina nuclear o ultrasonidos, se pueden obtener imágenes del cuerpo humano para realizar diagnósticos. Para que esas imágenes puedan ser utilizadas con ese fin hay que realizar un correcto tratamiento de éstas mediante técnicas de procesado digital. En ése ámbito del procesado digital de las imágenes médicas es en el que se ha realizado este proyecto. Gracias al desarrollo del tratamiento digital de imágenes con métodos de extracción de información, mejora de la visualización o resaltado de rasgos de interés de las imágenes, se puede facilitar y mejorar el diagnóstico de los especialistas. Por todo esto en una época en la que se quieren automatizar todos los procesos para mejorar la eficacia del trabajo realizado, el automatizar el procesado de las imágenes para extraer información con mayor facilidad, es muy útil. Actualmente una de las herramientas más potentes en el tratamiento de imágenes médicas es Matlab, gracias a su toolbox de procesado de imágenes. Por ello se eligió este software para el desarrollo de la parte práctica de este proyecto, su potencia y versatilidad simplifican la implementación de algoritmos. Este proyecto se estructura en dos partes. En la primera se realiza una descripción general de las diferentes modalidades de obtención de imágenes médicas y se explican los diferentes usos de cada método, dependiendo del campo de aplicación. Posteriormente se hace una descripción de las técnicas más importantes de procesado de imagen digital que han sido utilizadas en el proyecto. En la segunda parte se desarrollan cuatro aplicaciones en Matlab para ejemplificar el desarrollo de algoritmos de procesado de imágenes médicas. Dichas implementaciones demuestran la aplicación y utilidad de los conceptos explicados anteriormente en la parte teórica, como la segmentación y operaciones de filtrado espacial de la imagen, así como otros conceptos específicos. Las aplicaciones ejemplo desarrolladas han sido: obtención del porcentaje de metástasis de un tejido, diagnóstico de las deformidades de la columna vertebral, obtención de la MTF de una cámara de rayos gamma y medida del área de un fibroadenoma de una ecografía de mama. Por último, para cada una de las aplicaciones se detallará su utilidad en el campo de la imagen médica, los resultados obtenidos y su implementación en una interfaz gráfica para facilitar su uso. ABSTRACT. The relationship between medicine and engineering is becoming closer than ever giving birth to a recently appeared science field: bioengineering. This project is focused on this subject. This recent field is becoming more and more important due to the fast development of new technologies that provide tools to improve disease diagnosis, with regard to traditional procedures. In bioengineering the fastest growing field is medical imaging, in which we can obtain images of the inside of the human body without need of surgery. Nowadays by means of the medical modalities of magnetic resonance, X ray, nuclear medicine or ultrasound, we can obtain images to make a more accurate diagnosis. For those images to be useful within the medical field, they should be processed properly with some digital image processing techniques. It is in this field of digital medical image processing where this project is developed. Thanks to the development of digital image processing providing methods for data collection, improved visualization or data highlighting, diagnosis can be eased and facilitated. In an age where automation of processes is much sought, automated digital image processing to ease data collection is extremely useful. One of the most powerful image processing tools is Matlab, together with its image processing toolbox. That is the reason why that software was chosen to develop the practical algorithms in this project. This final project is divided into two main parts. Firstly, the different modalities for obtaining medical images will be described. The different usages of each method according to the application will also be specified. Afterwards we will give a brief description of the most important image processing tools that have been used in the project. Secondly, four algorithms in Matlab are implemented, to provide practical examples of medical image processing algorithms. This implementation shows the usefulness of the concepts previously explained in the first part, such as: segmentation or spatial filtering. The particular applications examples that have been developed are: calculation of the metastasis percentage of a tissue, diagnosis of spinal deformity, approximation to the MTF of a gamma camera, and measurement of the area of a fibroadenoma in an ultrasound image. Finally, for each of the applications developed, we will detail its usefulness within the medical field, the results obtained, and its implementation in a graphical user interface to ensure ease of use.
Resumo:
Ampliación de software dedicado al análisis de imágenes mediante la introducción de nuevas opciones en el procesamiento de video digital, mejoras en la interacción con el usuario. Para ello se ha estudiado el funcionamiento de la aplicación, integrando el lenguaje Python como herramienta de gestión y ejecución de la aplicación. En esta parte de la aplicación se ha integrado: - Traducción de la UI a una versión castellana. - Modificación y eliminación de cualquier filtro añadido para el procesamiento de video, no únicamente el último. - Descripciones de puntero y en la barra de estado de elementos de la aplicación. - Iconos en la barra de herramientas de los filtros añadidos más importantes. Por la otra parte, la del tratamiento digital de video, Avisynth se dispone como el eje de estudio, el cuál ejecuta sobre lenguaje de bajo nivel (C++) las operaciones pertinentes a través de librerías de enlace dinámico o *.dll. Las nuevas funcionalidades son: Convolución matricial, filtro de media adaptativa, DCT, ajustes de video generales, en formato RGB o YUV, rotaciones, cambios de perspectiva y filtrado en frecuencia. ABSTRACT. Improvement about a digital image processing software, creating new options in digital video processing or the user interaction. For this porpuse, we have integrated the application language,Python, as the tool to the application management and execution. In this part of the application has been integrated: - Translation of the UI: Spanish version. - Modifying and removing any added filter for video processing, not just the last. - Descriptions for the pointer and the status bar of the application. - New icons on the toolbar of the most important filters added. On the other hand, Avisynth was used tool for the digital video processing, which runs on low-level language (C ++) for a quickly and to improve the video operations. The new introduced filters are: Matrix Convolution, adaptive median filter, DCT, general video settings on RGB or YUV format, rotations, changes in perspective and frequency filtering.
Resumo:
La importancia de la Biomasa a nivel mundial, ha llevado a que más de 130 países celebren el protocolo de Kioto sobre el cambio climático dictaminando como objetivo la reducción de las emisiones de seis gases de efecto invernadero y tres gases industriales fluorados, así como la incorporación de la fijación del CO2 como un objetivo dentro de los criterios de gestión de bosques. Entre las metodologías no destructivas para estimación de biomasa, aquí desarrolladas se describen tres técnicas que varios autores han propuesto para calcular los valores de biomasa y carbono, tal como el uso de ecuaciones alométricas por medio de la medición de variables dasométricas como el DAP, la aplicación de la teoría de huecos (v.g. DHP, TRAC), y la obtención de biomasa mediante información radar. Las imágenes radar proporcionan una clara ventaja al poder ser adquiridas en cualquier momento del día e independientemente de las condiciones climatológicas. Se han adquirido dos imágenes de sensores diferentes, tal como ALOSPALSAR que trabaja en la banda L y RADARSAT-2 que trabaja en la banda C, se aplica la metodología descrita por Saatchi et al. (2007), desarrollando los algoritmos semiempíricos propuestos para la estimación de biomasa del fuste (Ws) y biomasa de la copa (Wc), obteniendo los coeficientes a partir de información adquirida en campo. ABSTRACT The importance of biomass worldwide has led to more than 130 countries to celebrate the Kyoto Protocol, aimed at reducing emissions of six greenhouse gases and three fluorinated industrial gases, and the incorporation of the fixation of CO2 as an objective within forest management criteria. Among the non-destructive methods for estimating biomass, three techniques were developed. These have been described by some authors, as the use of allometric equations by measuring forest variables such as the DAP, the application of the Gap Theory (e.g. DHP, TRAC), as well as deriving biomass by radar information. The radar images provide a clear advantage since they can be gathered at any time of the day regardless of the weather conditions. For this purpose, two radar products have acquired from different sensors, such as ALOSPALSAR operating on L frequency band and RADARSAT-2 operating on C frequency band. The methodology applied in this work is described in Saatchi et al. (2007), that develop semiempirical algorithms for estimating stem biomass (Ws) and crown biomass (Wc). The corresponding coefficients are determined by means of regression procedures using field information derived from allometric and radiation measurements.
Resumo:
El presente artículo pretende describir el desarrollo de una nueva metodología no invasiva de documentación digital de petroglifos y pinturas rupestres pertenecientes al paleolítico, a través de técnicas y herramientas del tratamiento digital de imágenes para optimizar materiales y tiempos en la obtención de información gráfica, representativa y de precisión. Abstract: This article aims to describe the development of a new non-invasive methodology, through techniques and tools of digital image processing to optimize materials and time in obtaining graphical representative and accurate information from petroglyphs and rock paintings belonging to Paleolithic.
Resumo:
Nuevas tecnologías aplicadas a la arqueología
Resumo:
El presente Proyecto de Fin de Carrera viene motivado por el conocimiento de la existencia de fenómenos erosivos en la zona de Orgaz - Los Yébenes. El objetivo es el estudio de la distribución de procesos erosivos en el área citada y la relación de las zonas en que estos se producen, con las propiedades analíticas del suelo. La pérdida de suelo por erosión inducida por el hombre, supera a la erosión natural en varios órdenes de magnitud, por lo que cabe considerarla como un grave problema ambiental que propicia la pérdida de fertilidad. Esto es debido a que en los ecosistemas agrarios, sobre todo en cultivos de secano,se han aplicado manejos que han acelerado las tasas de erosión naturales. En los cultivos de secano más extendidos, se ha eliminado toda la cubierta vegetal, se ha compactado el suelo y esquilmado la materia orgánica. Como consecuencia de estos manejos poco respetuosos con el suelo, las tasas de erosión son mayores a las tasas de formación y constituyen un poderoso factor de desertificación. La respuesta erosiva de un determinado ambiente o uso del suelo suele ser bastante diferente según la época del año en la que se produzcan las lluvias,su intensidad y duración, el estado de la vegetación, el tiempo en el que el suelo permanece desnudo tras el levantamiento de la cosecha, etc.… Del uso y gestión que se haga del suelo y de la cubierta vegetal dependerá que, con el tiempo, la erosión potencial no se convierta en erosión actual.
Resumo:
El objetivo de este proyecto es evaluar la mejora de rendimiento que aporta la paralelización de algoritmos de procesamiento de imágenes, para su ejecución en una tarjeta gráfica. Para ello, una vez seleccionados los algoritmos a estudio, fueron desarrollados en lenguaje C++ bajo el paradigma secuencial. A continuación, tomando como base estas implementaciones, se paralelizaron siguiendo las directivas de la tecnología CUDA (Compute Unified Device Architecture) desarrollada por NVIDIA. Posteriormente, se desarrolló un interfaz gráfico de usuario en Visual C#, para una utilización más sencilla de la herramienta. Por último, se midió el rendimiento de cada uno de los algoritmos, en términos de tiempo de ejecución paralela y speedup, mediante el procesamiento de una serie de imágenes de distintos tamaños.---ABSTRACT---The aim of this Project is to evaluate the performance improvement provided by the parallelization of image processing algorithms, which will be executed on a graphics processing unit. In order to do this, once the algorithms to study were selected, each of them was developed in C++ under sequential paradigm. Then, based on these implementations, these algorithms were implemented using the compute unified device architecture (CUDA) programming model provided by NVIDIA. After that, a graphical user interface (GUI) was developed to increase application’s usability. Finally, performance of each algorithm was measured in terms of parallel execution time and speedup by processing a set of images of different sizes.
Resumo:
Las nuevas tendencias de compartir archivos multimedia a través de redes abiertas, demanda el uso de mejores técnicas de encriptación que garanticen la integridad, disponibilidad y confidencialidad, manteniendo y/o mejorando la eficiencia del proceso de cifrado sobre estos archivos. Hoy en día es frecuente la transferencia de imágenes a través de medios tecnológicos, siendo necesario la actualización de las técnicas de encriptación existentes y mejor aún, la búsqueda de nuevas alternativas. Actualmente los algoritmos criptográficos clásicos son altamente conocidos en medio de la sociedad informática lo que provoca mayor vulnerabilidad, sin contar los altos tiempos de procesamiento al momento de ser utilizados, elevando la probabilidad de ser descifrados y minimizando la disponibilidad inmediata de los recursos. Para disminuir estas probabilidades, el uso de la teoría de caos surge como una buena opción para ser aplicada en un algoritmo que tome partida del comportamiento caótico de los sistemas dinámicos, y aproveche las propiedades de los mapas logísticos para elevar el nivel de robustez en el cifrado. Es por eso que este trabajo propone la creación de un sistema criptográfico basado sobre una arquitectura dividida en dos etapas de confusión y difusión. Cada una de ellas utiliza una ecuación logística para generar números pseudoaleatorios que permitan desordenar la posición del píxel y cambiar su intensidad en la escala de grises. Este proceso iterativo es determinado por la cantidad total de píxeles de una imagen. Finalmente, toda la lógica de cifrado es ejecutada sobre la tecnología CUDA que permite el procesamiento en paralelo. Como aporte sustancial, se propone una nueva técnica de encriptación vanguardista de alta sensibilidad ante ruidos externos manteniendo no solo la confidencialidad de la imagen, sino también la disponibilidad y la eficiencia en los tiempos de proceso.---ABSTRACT---New trends to share multimedia files over open networks, demand the best use of encryption techniques to ensure the integrity, availability and confidentiality, keeping and/or improving the efficiency of the encryption process on these files. Today it is common to transfer pictures through technological networks, thus, it is necessary to update existing techniques encryption, and even better, the searching of new alternatives. Nowadays, classic cryptographic algorithms are highly known in the midst of the information society which not only causes greater vulnerability, but high processing times when this algorithms are used. It raise the probability of being deciphered and minimizes the immediate availability of resources. To reduce these odds, the use of chaos theory emerged as a good option to be applied on an algorithm that takes advantage of chaotic behavior of dynamic systems, and take logistic maps’ properties to raise the level of robustness in the encryption. That is why this paper proposes the creation of a cryptographic system based on an architecture divided into two stages: confusion and diffusion. Each stage uses a logistic equation to generate pseudorandom numbers that allow mess pixel position and change their intensity in grayscale. This iterative process is determined by the total number of pixels of an image. Finally, the entire encryption logic is executed on the CUDA technology that enables parallel processing. As a substantial contribution, it propose a new encryption technique with high sensitivity on external noise not only keeping the confidentiality of the image, but also the availability and efficiency in processing times.
Resumo:
En este Trabajo de Fin de Grado se diseña, implementa y evalúa un sistema se digitalización de muestras de esputo basado en telefonía móvil e integrable con TuberSpot. Además, se proponen técnicas de procesamiento de imagen para el control de calidad del análisis y se implementa un mecanismo para evaluar la eficiencia de la inteligencia colectiva y la gamificación en este contexto. El sistema de adquisición propuesto utiliza smartphones, adaptadores móvil-microscopio y una aplicación Android. El protocolo de adquisición se ha diseñado conforme a un estudio realizado con personal médico cualificado. El control de calidad se basa en la inserción de bacilos simulados en las imágenes. Para la evaluación de eficiencia de TuberSpot se crea, en colaboración con médicos especialistas, un repositorio de imágenes en las que posición y número de bacilos quedan registrados.
Resumo:
Prefacio: Imágenes de la perspectiva
Resumo:
En el presente documento se presenta una nueva metodología para la caracterización de formaciones de vegetación de ribera y su morfología fluvial asociada. La metodología está basada en la utilización de sensores aerotransportados LiDAR y Cámara Digital multiespectral de gran formato junto a perfiles batimétricos tomados en campo. Este trabajo pone de manifiesto la utilidad de los datos captados por sensores LiDAR y cámaras digitales aerotransportadas en aplicaciones medioambientales.
Resumo:
El análisis de imágenes hiperespectrales permite obtener información con una gran resolución espectral: cientos de bandas repartidas desde el espectro infrarrojo hasta el ultravioleta. El uso de dichas imágenes está teniendo un gran impacto en el campo de la medicina y, en concreto, destaca su utilización en la detección de distintos tipos de cáncer. Dentro de este campo, uno de los principales problemas que existen actualmente es el análisis de dichas imágenes en tiempo real ya que, debido al gran volumen de datos que componen estas imágenes, la capacidad de cómputo requerida es muy elevada. Una de las principales líneas de investigación acerca de la reducción de dicho tiempo de procesado se basa en la idea de repartir su análisis en diversos núcleos trabajando en paralelo. En relación a esta línea de investigación, en el presente trabajo se desarrolla una librería para el lenguaje RVC – CAL – lenguaje que está especialmente pensado para aplicaciones multimedia y que permite realizar la paralelización de una manera intuitiva – donde se recogen las funciones necesarias para implementar el clasificador conocido como Support Vector Machine – SVM. Cabe mencionar que este trabajo complementa el realizado en [1] y [2] donde se desarrollaron las funciones necesarias para implementar una cadena de procesado que utiliza el método unmixing para procesar la imagen hiperespectral. En concreto, este trabajo se encuentra dividido en varias partes. La primera de ellas expone razonadamente los motivos que han llevado a comenzar este Trabajo de Investigación y los objetivos que se pretenden conseguir con él. Tras esto, se hace un amplio estudio del estado del arte actual y, en él, se explican tanto las imágenes hiperespectrales como sus métodos de procesado y, en concreto, se detallará el método que utiliza el clasificador SVM. Una vez expuesta la base teórica, nos centraremos en la explicación del método seguido para convertir una versión en Matlab del clasificador SVM optimizado para analizar imágenes hiperespectrales; un punto importante en este apartado es que se desarrolla la versión secuencial del algoritmo y se asientan las bases para una futura paralelización del clasificador. Tras explicar el método utilizado, se exponen los resultados obtenidos primero comparando ambas versiones y, posteriormente, analizando por etapas la versión adaptada al lenguaje RVC – CAL. Por último, se aportan una serie de conclusiones obtenidas tras analizar las dos versiones del clasificador SVM en cuanto a bondad de resultados y tiempos de procesado y se proponen una serie de posibles líneas de actuación futuras relacionadas con dichos resultados. ABSTRACT. Hyperspectral imaging allows us to collect high resolution spectral information: hundred of bands covering from infrared to ultraviolet spectrum. These images have had strong repercussions in the medical field; in particular, we must highlight its use in cancer detection. In this field, the main problem we have to deal with is the real time analysis, because these images have a great data volume and they require a high computational power. One of the main research lines that deals with this problem is related with the analysis of these images using several cores working at the same time. According to this investigation line, this document describes the development of a RVC – CAL library – this language has been widely used for working with multimedia applications and allows an optimized system parallelization –, which joins all the functions needed to implement the Support Vector Machine – SVM - classifier. This research complements the research conducted in [1] and [2] where the necessary functions to implement the unmixing method to analyze hyperspectral images were developed. The document is divided in several chapters. The first of them introduces the motivation of the Master Thesis and the main objectives to achieve. After that, we study the state of the art of some technologies related with this work, like hyperspectral images, their processing methods and, concretely, the SVM classifier. Once we have exposed the theoretical bases, we will explain the followed methodology to translate a Matlab version of the SVM classifier optimized to process an hyperspectral image to RVC – CAL language; one of the most important issues in this chapter is that a sequential implementation is developed and the bases of a future parallelization of the SVM classifier are set. At this point, we will expose the results obtained in the comparative between versions and then, the results of the different steps that compose the SVM in its RVC – CAL version. Finally, we will extract some conclusions related with algorithm behavior and time processing. In the same way, we propose some future research lines according to the results obtained in this document.
Resumo:
El objetivo general de este trabajo es el correcto funcionamiento de un sistema de reconocimiento facial compuesto de varios módulos, implementados en distintos lenguajes. Uno de dichos módulos está escrito en Python y se encargarí de determinar el género del rostro o rostros que aparecen en una imagen o en un fotograma de una secuencia de vídeo. El otro módulo, escrito en C++, llevará a cabo el reconocimiento de cada una de las partes de la cara (ojos, nariz, boca) y la orientación hacia la que está posicionada (derecha, izquierda). La primera parte de esta memoria corresponde a la reimplementación de todas las partes de un analizador facial, que constituyen el primer módulo antes mencionado. Estas partes son un analizador, compuesto a su vez por un reconocedor (Tracker) y un procesador (Processor), y una clase visor para poder visualizar los resultados. Por un lado, el reconocedor o "Tracker.es el encargado de encontrar la cara y sus partes, que serán pasadas al procesador o Processor, que analizará la cara obtenida por el reconocedor y determinará su género. Este módulo estaba dise~nado completamente en C y OpenCV 1.0, y ha sido reescrito en Python y OpenCV 2.4. Y en la segunda parte, se explica cómo realizar la comunicación entre el primer módulo escrito en Python y el segundo escrito en C++. Además, se analizarán diferentes herramientas para poder ejecutar código C++ desde programas Python. Dichas herramientas son PyBindGen, Cython y Boost. Dependiendo de las necesidades del programador se contará cuál de ellas es más conveniente utilizar en cada caso. Por último, en el apartado de resultados se puede observar el funcionamiento del sistema con la integración de los dos módulos, y cómo se muestran por pantalla los puntos de interés, el género y la orientación del rostro utilizando imágenes tomadas con una cámara web.---ABSTRACT---The main objective of this document is the proper functioning of a facial recognition system composed of two modules, implemented in diferent languages. One of these modules is written in Python, and his purpose is determining the gender of the face or faces in an image or a frame of a video sequence. The other module is written in C ++ and it will perform the recognition of each of the parts of the face (eyes, nose , mouth), and the head pose (right, left).The first part of this document corresponds to the reimplementacion of all components of a facial analyzer , which constitute the first module that I mentioned before. These parts are an analyzer , composed by a tracke) and a processor, and a viewer to display the results. The tracker function is to find and its parts, which will be passed to the processor, which will analyze the face obtained by the tracker. The processor will determine the face's gender. This module was completely written in C and OpenCV 1.0, and it has been rewritten in Python and OpenCV 2.4. And in the second part, it explains how to comunicate two modules, one of them written in Python and the other one written in C++. Furthermore, it talks about some tools to execute C++ code from Python scripts. The tools are PyBindGen, Cython and Boost. It will tell which one of those tools is better to use depend on the situation. Finally, in the results section it is possible to see how the system works with the integration of the two modules, and how the points of interest, the gender an the head pose are displayed on the screen using images taken from a webcam.
Resumo:
La tomografía axial computerizada (TAC) es la modalidad de imagen médica preferente para el estudio de enfermedades pulmonares y el análisis de su vasculatura. La segmentación general de vasos en pulmón ha sido abordada en profundidad a lo largo de los últimos años por la comunidad científica que trabaja en el campo de procesamiento de imagen; sin embargo, la diferenciación entre irrigaciones arterial y venosa es aún un problema abierto. De hecho, la separación automática de arterias y venas está considerado como uno de los grandes retos futuros del procesamiento de imágenes biomédicas. La segmentación arteria-vena (AV) permitiría el estudio de ambas irrigaciones por separado, lo cual tendría importantes consecuencias en diferentes escenarios médicos y múltiples enfermedades pulmonares o estados patológicos. Características como la densidad, geometría, topología y tamaño de los vasos sanguíneos podrían ser analizados en enfermedades que conllevan remodelación de la vasculatura pulmonar, haciendo incluso posible el descubrimiento de nuevos biomarcadores específicos que aún hoy en dípermanecen ocultos. Esta diferenciación entre arterias y venas también podría ayudar a la mejora y el desarrollo de métodos de procesamiento de las distintas estructuras pulmonares. Sin embargo, el estudio del efecto de las enfermedades en los árboles arterial y venoso ha sido inviable hasta ahora a pesar de su indudable utilidad. La extrema complejidad de los árboles vasculares del pulmón hace inabordable una separación manual de ambas estructuras en un tiempo realista, fomentando aún más la necesidad de diseñar herramientas automáticas o semiautomáticas para tal objetivo. Pero la ausencia de casos correctamente segmentados y etiquetados conlleva múltiples limitaciones en el desarrollo de sistemas de separación AV, en los cuales son necesarias imágenes de referencia tanto para entrenar como para validar los algoritmos. Por ello, el diseño de imágenes sintéticas de TAC pulmonar podría superar estas dificultades ofreciendo la posibilidad de acceso a una base de datos de casos pseudoreales bajo un entorno restringido y controlado donde cada parte de la imagen (incluyendo arterias y venas) está unívocamente diferenciada. En esta Tesis Doctoral abordamos ambos problemas, los cuales están fuertemente interrelacionados. Primero se describe el diseño de una estrategia para generar, automáticamente, fantomas computacionales de TAC de pulmón en humanos. Partiendo de conocimientos a priori, tanto biológicos como de características de imagen de CT, acerca de la topología y relación entre las distintas estructuras pulmonares, el sistema desarrollado es capaz de generar vías aéreas, arterias y venas pulmonares sintéticas usando métodos de crecimiento iterativo, que posteriormente se unen para formar un pulmón simulado con características realistas. Estos casos sintéticos, junto a imágenes reales de TAC sin contraste, han sido usados en el desarrollo de un método completamente automático de segmentación/separación AV. La estrategia comprende una primera extracción genérica de vasos pulmonares usando partículas espacio-escala, y una posterior clasificación AV de tales partículas mediante el uso de Graph-Cuts (GC) basados en la similitud con arteria o vena (obtenida con algoritmos de aprendizaje automático) y la inclusión de información de conectividad entre partículas. La validación de los fantomas pulmonares se ha llevado a cabo mediante inspección visual y medidas cuantitativas relacionadas con las distribuciones de intensidad, dispersión de estructuras y relación entre arterias y vías aéreas, los cuales muestran una buena correspondencia entre los pulmones reales y los generados sintéticamente. La evaluación del algoritmo de segmentación AV está basada en distintas estrategias de comprobación de la exactitud en la clasificación de vasos, las cuales revelan una adecuada diferenciación entre arterias y venas tanto en los casos reales como en los sintéticos, abriendo así un amplio abanico de posibilidades en el estudio clínico de enfermedades cardiopulmonares y en el desarrollo de metodologías y nuevos algoritmos para el análisis de imágenes pulmonares. ABSTRACT Computed tomography (CT) is the reference image modality for the study of lung diseases and pulmonary vasculature. Lung vessel segmentation has been widely explored by the biomedical image processing community, however, differentiation of arterial from venous irrigations is still an open problem. Indeed, automatic separation of arterial and venous trees has been considered during last years as one of the main future challenges in the field. Artery-Vein (AV) segmentation would be useful in different medical scenarios and multiple pulmonary diseases or pathological states, allowing the study of arterial and venous irrigations separately. Features such as density, geometry, topology and size of vessels could be analyzed in diseases that imply vasculature remodeling, making even possible the discovery of new specific biomarkers that remain hidden nowadays. Differentiation between arteries and veins could also enhance or improve methods processing pulmonary structures. Nevertheless, AV segmentation has been unfeasible until now in clinical routine despite its objective usefulness. The huge complexity of pulmonary vascular trees makes a manual segmentation of both structures unfeasible in realistic time, encouraging the design of automatic or semiautomatic tools to perform the task. However, this lack of proper labeled cases seriously limits in the development of AV segmentation systems, where reference standards are necessary in both algorithm training and validation stages. For that reason, the design of synthetic CT images of the lung could overcome these difficulties by providing a database of pseudorealistic cases in a constrained and controlled scenario where each part of the image (including arteries and veins) is differentiated unequivocally. In this Ph.D. Thesis we address both interrelated problems. First, the design of a complete framework to automatically generate computational CT phantoms of the human lung is described. Starting from biological and imagebased knowledge about the topology and relationships between structures, the system is able to generate synthetic pulmonary arteries, veins, and airways using iterative growth methods that can be merged into a final simulated lung with realistic features. These synthetic cases, together with labeled real CT datasets, have been used as reference for the development of a fully automatic pulmonary AV segmentation/separation method. The approach comprises a vessel extraction stage using scale-space particles and their posterior artery-vein classification using Graph-Cuts (GC) based on arterial/venous similarity scores obtained with a Machine Learning (ML) pre-classification step and particle connectivity information. Validation of pulmonary phantoms from visual examination and quantitative measurements of intensity distributions, dispersion of structures and relationships between pulmonary air and blood flow systems, show good correspondence between real and synthetic lungs. The evaluation of the Artery-Vein (AV) segmentation algorithm, based on different strategies to assess the accuracy of vessel particles classification, reveal accurate differentiation between arteries and vein in both real and synthetic cases that open a huge range of possibilities in the clinical study of cardiopulmonary diseases and the development of methodological approaches for the analysis of pulmonary images.