Implementacion en FPGA usando OpenCL de un filtro espacio espectral de mapas de clasificacion hisperespectrales para deteccion de tumores cerebrales
Segun la Sociedad Espanola de Oncologia Medica (SEOM) el cancer cerebral representa en Espana un 2% de los casos totales de cancer en adultos y un 15% en menores de 15 anos. Existen diferentes metodos de diagnostico como las resonancias magneticas, las tomografias y las biopsias; estas ultimas necesarias para la confirmacion del diagnostico definitivo mediante un analisis microscopico de la muestra tumoral extraida. Una vez diagnosticado el cancer cerebral, el paciente debe someterse a un tratamiento especifico que en la mayoria de los casos tiene como primera etapa la cirugia. Dentro del quirofano, los cirujanos deben extirpar el tejido cerebral danado en base a pruebas realizadas con dias o incluso semanas de antiguedad y, en ultima instancia, guiandose por su propia experiencia e intuicion. En este tipo de intervenciones, la precision a la hora de delimitar la zona o zonas del cerebro afectadas juega un papel determinante en la calidad de vida del paciente a posteriori. Debido a ello, el proyecto europeo HELICoiD (HypErspectraL Imaging Cancer Detection) ha desarrollado una aplicacion capaz de diferenciar el tejido sano del tejido tumoral en tiempo real y con un alto grado de exactitud. Para lograrlo, se hace uso de una camara denominada camara hiperespectral capaz de capturar imagenes en un elevado numero de bandas del espectro electromagnetico. A traves del procesado de estas imagenes hiperespectrales se puede saber con exactitud los materiales que componen el objeto analizado. El presente proyecto se enmarca dentro de esta linea de trabajo. En concreto se ha disenado la ultima etapa de una cadena de procesado de imagenes hiperespectrales. Esta etapa consiste en la implementacion de un filtrado espacio espectral de mapas de clasificacion hiperespectrales. Por su parte, dicho filtrado esta basado en un algoritmo ampliamente utilizado denominado KNN (de sus siglas en ingles, K Nearest Neighbours) Tambien existe la limitacion de procesado en tiempo real, por lo que la aplicacion ha sido desarrollada para ejecutarse en una plataforma aceleradora que cuenta con un microprocesador y una FPGA empotrados en el mismo sistema en chip. Ademas, se ha generado un amplio banco de pruebas con el fin de comparar las diferentes implementaciones realizadas y escoger la mas optima. Para el diseno del sistema se ha utilizado una herramienta de sintesis de alto nivel basada en el estandar OpenCL, utilizado para la programacion paralela de sistemas heterogeneos. Abstract: Spanish Society of Medical Oncology (SEOM) has stated that brain cancer represents a 2% of all cancer cases in adults and 15% in children. There are several diagnose methods, like magnetic resonance, tomography or biopsy, with the last one requiring in order to confirm diagnosis that a microscopic examination of tumor samples is done. When brain cancer is confirmed, patients have to go through different treatments. One of these is, many times as a first step, surgery. Surgeons must remove the damaged brain tissue inside the operating room, guided only by previous medical examinations or, simply, their intuition. When damaged areas of brain are identified, precision in tumor resection is very important for improving patients' quality of life after surgery. HELICoiD (HypErspectraL Imaging Cancer Detection) is a European project that has developed a real time application for the differentiation of cancerous from healthy tissue with a high degree of accuracy. This application uses hyperspectral cameras, which are able to capture information throughout a wide portion of the electromagnetic spectrum, covering from the infrared to the ultraviolet. It is through the processing of these images that it is possible to identify the different materials within the given captured scene. This project is framed within this work line. Specifically, the last step of a hyperspectral image processing chain has been designed, which consists on a hyperspectral imaging spatial spectral classifier based on the KNN (K Nearest Neighbours) algorithm. Furthermore, there is a real time processing requirement, so the application has been specifically developed for a heterogeneous System on Chip platform composed of a microprocessor and an FPGA. Finally, a large test bench has been created in order to compare the different implementations and choose the optimal one. The design of the system has been accomplished with a high level synthesis tool based on the OpenCL standard for parallel programing of heterogeneous systems.