Blog

El Blog de Visión por Computador: Llevando la tecnología a la industria

Biopool

Biopool – Proporcionando búsqueda inteligente por imagen a la comunidad médica.

La plataforma Biopool es un servicio de búsqueda y localización de muestras biológicas en una red de biobancos. Biopool va a permitir compartir las diferentes colecciones de imágenes histológicas, así como la correspondiente información asociada, de las que disponen los biobancos asociados. El uso de esta red de fuentes de información interconectadas ofrece un gran potencial en el campo de investigación médica, la educación y como herramienta de apoyo al diagnóstico.

Actualmente, los investigadores deben contactar varios biobancos hasta encontrar los que les puedan proporcionar las muestras de las enfermedades a analizar, no existiendo ningún mecanismo ágil que facilite estas búsquedas. El objetivo de Biopool es cambiar este procedimiento, proporcionando una herramienta que permitirá buscar muestras biológicas similares a la utilizada como referencia en el buscador, obteniéndose como resultado imágenes de otras muestras, junto a su localización y diagnóstico. De este modo, los investigadores podrán tener un acceso más rápido a muchas más muestras, lo que va a permitir acelerar el tiempo de investigación, además de agilizar diagnóstico y reducir los costes asociados.

La explotación de esta red se va a realizar a través de servicios Web, pudiéndose realizar búsquedas tanto por contenido de imagen como de texto. En el caso de las búsquedas por imagen, de manera adicional, se podrán seleccionar regiones de interés o extraer información patológica de forma automática para algunos tipos de cáncer.

Para que el funcionamiento de la red sea posible, se está llevando a cabo la interconexión de los diferentes biobancos a través protocolos de comunicación estandarizados, de modo que se facilite la adquisición, almacenamiento e intercambio de las imágenes (de las muestras digitalizadas) y sus datos asociados. Por otra parte, se está promoviendo la estandarización de los formatos de imagen que conforman el repositorio de imágenes manejado por la red.

El papel de Tecnalia en este proyecto es doble. Por un lado participa en la definición de la arquitectura del sistema y por otro lado, es responsable de la funcionalidad del buscador que permite realizar búsquedas por imagen.

¿Cómo funciona Biopool?

Los elementos que hacen posible el funcionamiento del sistema Biopool son los siguientes:

  • Infraestructura Software: constituye el esqueleto de la plataforma con un almacenamiento distribuido, los protocolos de comunicación y estandarización a utilizar, un mecanismo único de indexación, y gestiona los servicios Web.
  • Buscadores por imagen y texto: son el cerebro de la plataforma. El sistema de búsqueda por imagen se encarga de obtener un set completo de características de las imágenes que permitan describirlas a diferentes niveles de detalle y ser posteriormente utilizadas para realizar búsquedas por similitud de imagen. En el caso del buscador por texto el objetivo es organizar la información textual para permitir búsquedas relacionales.
  • Interfaz de usuario: Su objetivo es el de permitir a los usuarios acceder a la colección de herramientas ofrecida por Biopool, como son la búsqueda, la visualización y procesado de imágenes,  añadir nuevos datos, etc. Además, es el portal de acceso a los  miembros de la red de biobancos para cargar en el sistema Biopool la información sobre las muestras.

¿Que hace posible la búsqueda por imagen?

Para poder realizar la búsqueda por similitud de imagen, hay que llevar a cabo dos procedimientos diferentes: la indexación/descripción de la imagen y la recuperación para la búsqueda.

La indexación/descripción de la imagen es un proceso complejo que se realiza en varios pasos y que trata de encontrar el mínimo número de características que mejor puedan definir la información que contiene cada imagen. Para ello, se comienza dividiendo la imagen en regiones más pequeñas del mismo tamaño, que van a permitir analizar las características y variaciones en dichas áreas por separado. Una vez hecho esto, se prueban diferentes algoritmos que permitan la extracción de características de la región con el fin de crear los descriptores. Estos algoritmos pueden estar destinados a analizar diversas características de la imagen como son el color, la textura, o los bordes y contornos de los elementos. Para el análisis de las características de color, normalmente se realizan conversiones entre diferentes espacios de color (RGB, Gris, HSI, L*a*b, etc.) y después se pueden calcular valores como la Media, Varianza o el Histograma. Las características de textura pueden ser medidas empleando operadores como el Local Binary Pattern (LBP), matrices de co-ocurrencia o Tamura, que tienen en cuenta la información de los pixeles vecinos al que se quiere calcular, asignándoles diferente peso según el valor que se quiera medir. Por otro lado, el cálculo de características de bordes se puede realizar utilizando operadores como Sobel, Kirch o Canny basados en el gradiente de la imagen, pero también otros basados en funciones u ondas como son Gabor, Haar o Daubechies. Además, existen otras aproximaciones como SIFT o SURF, y variaciones sobre los mismos, que permiten describir la región de forma que sean invariantes a escala, rotación o cambios de iluminación y ruido. En este sentido, cada vez hay más algoritmos presenten en la literatura que buscar resolver esta problemática utilizando menos recursos de computación y concentrando la información lo máximo posible.

Después de realizar pruebas con diferentes tipos de algoritmos, se eligen aquellos que mejor resultados generen para el tipo de imágenes a tratar. Después, está información se utiliza para crear un diccionario de palabras visuales (Bag of Words – BoW), creado a partir de técnicas de agrupamiento (clustering). Finalmente, la información obtenida en el paso anterior es cuantificada haciendo uso de histogramas, que miden la aparición de cada tipo de palabra en cada región de la imagen. Como resultado, cada imagen es descrita utilizando una serie de índices numéricos, que al final se traduce en un vector de N números (indexación).

Figura 2: Proceso de extracción de los descriptores de imagen

El proceso de recuperación se lanza siempre que el usuario quiera realizar una búsqueda por imagen, con el objetivo de obtener como resultado las imágenes que sean más similares a la de referencia. Una buena descripción/indexación de la imagen es clave para generar resultados de búsqueda correctos, ya que el motor de búsqueda trabaja directamente con los índices generados anteriormente. Cuando se realiza una nueva búsqueda, la imagen introducida es analizada de la misma forma que se han hecho las imágenes de la base de datos, obteniéndose una serie de índices numéricos que la describen. Estos vectores que representan a la imagen son entonces comparados con todo el conjunto de vectores de los que se dispone en la base de datos. Para ello, existen numerosas técnicas con diferentes objetivos. La más clásica trata de calcular una distancia (Chi-Square, Mahalanobis, …) a cada una de estas imágenes para poder conocer cuáles son las más cercanas. Esta es una de las mejores aproximaciones ya que hace un análisis exhaustivo de todo el espacio, por lo que puede encontrar las imágenes similares de una forma muy precisa. Adicionalmente, se puede incrementar esta precisión si se realiza una modificación de la métrica utilizada, mediante la técnica denominada Metric LEarning. Este tipo de algoritmos (como por ejemplo ICML) permiten adaptar una métrica genérica de Mahalanobis al caso especial y a los descriptores visuales con los que se está trabajando. Aun así, en este caso y en el anterior la complejidad de la búsqueda es lineal O(n) por lo que no es un sistema muy útil cuando se trata de grandes cantidades de imágenes. En estos casos, otras técnicas como KD-Tree u otras deben ser utilizadas de forma que se realicen este cálculo de distancias de forma aproximada o de una forma más eficiente para que la complejidad del cálculo sea sublineal y por tanto el sistema sea totalmente escalable.

Como se ha mencionado, la imagen de entrada se comparará mediante su descripción matemática contra toda la base de datos para buscar los que tengan valores más aproximados. Cuanto más parecidos sean, más similares van a ser la imágenes entre sí, y por lo tanto serán los resultados que primero se recuperen como resultado de la búsqueda.

Como se ha comprobado, tanto en los descriptores visuales como en la utilización de los mismos es necesario comprender de forma precisa su funcionamiento y ventajas frente a otros, ya que esta es la única forma en la que se puede obtener un sistema de búsqueda por similitud eficaz y eficiente válido para los problemas reales de las empresas. Y en esto, el grupo de Computer Vision en Tecnalia es experto.

NOTA: El proyecto BioPool (grant agreement 296162) se está llevando a cabo bajo la supervisión del séptimo programa marco de la comisión Europea, y con la colaboración de 7 socios pertenecientes a cuatros países diferentes (España, Francia, Reino Unido y los Países Bajos). La página web del proyecto, donde se pueden consultar los últimos progresos, es la siguiente: http://www.biopoolproject.eu →. El proyecto ha comenzado en Septiembre de 2012, y siendo la duración de dos años, la fecha de finalización está prevista para Agosto del 2014.

El Blog de Visión por Computador: Llevando la tecnología a la industria

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR