El flujo vectorial de gradiente ( GVF ), un marco de visión por computadora introducido por Chenyang Xu y Jerry L. Prince , [1] [2] es el campo vectorial que se produce mediante un proceso que suaviza y difunde un campo vectorial de entrada. Por lo general, se usa para crear un campo vectorial a partir de imágenes que apunta a los bordes del objeto desde una distancia. Es ampliamente utilizado en aplicaciones de análisis de imágenes y visión por computadora para seguimiento de objetos, reconocimiento de formas, segmentación y detección de bordes . En particular, se usa comúnmente junto con el modelo de contorno activo .
Fondo
Encontrar objetos o regiones homogéneas en imágenes es un proceso conocido como segmentación de imágenes. En muchas aplicaciones, las ubicaciones de los bordes de los objetos se pueden estimar utilizando operadores locales que producen una nueva imagen llamada mapa de bordes. El mapa de bordes se puede usar para guiar un modelo deformable, a veces llamado contorno activo o serpiente, de modo que pase a través del mapa de bordes de manera suave, definiendo así el objeto en sí.
Una forma común de alentar a un modelo deformable a moverse hacia el mapa de bordes es tomar el gradiente espacial del mapa de bordes, produciendo un campo vectorial. Dado que el mapa de bordes tiene sus intensidades más altas directamente en el borde y cae a cero desde el borde, estos vectores de gradiente proporcionan direcciones para que se mueva el contorno activo. Cuando los vectores de gradiente son cero, el contorno activo no se moverá, y este es el comportamiento correcto cuando el contorno descansa sobre el pico del mapa de bordes. Sin embargo, debido a que el borde en sí está definido por operadores locales, estos vectores de gradiente también serán cero lejos del borde y, por lo tanto, el contorno activo no se moverá hacia el borde cuando se inicialice lejos del borde.
El flujo de vector de gradiente (GVF) es el proceso que extiende espacialmente los vectores de gradiente del mapa de bordes, produciendo un nuevo campo vectorial que contiene información sobre la ubicación de los bordes de los objetos en todo el dominio de la imagen. GVF se define como un proceso de difusión que opera sobre los componentes del campo del vector de entrada. Está diseñado para equilibrar la fidelidad del campo vectorial original, por lo que no se modifica demasiado, con una regularización que tiene como objetivo producir un campo suave en su salida.
Aunque GVF se diseñó originalmente con el propósito de segmentar objetos utilizando contornos activos atraídos por los bordes, desde entonces se ha adaptado y utilizado para muchos propósitos alternativos. Algunos propósitos más nuevos incluyen definir una representación continua del eje medial, [3] regularizar algoritmos de difusión anisotrópica de imágenes, [4] encontrar los centros de objetos en forma de cinta, [5] construir gráficos para segmentaciones óptimas de la superficie, [6] crear una forma antes, [7] y mucho más.
Teoría
La teoría de GVF se describió originalmente en. [2] Seaser un mapa de bordes definido en el dominio de la imagen. Para la uniformidad de los resultados, es importante restringir las intensidades del mapa de bordes para que se encuentren entre 0 y 1, y por convenciónadquiere valores mayores (cercanos a 1) en los bordes del objeto. El campo de flujo vectorial de gradiente (GVF) viene dado por el campo vectorial que minimiza la energía funcional
| (1) |
En esta ecuación, los subíndices denotan derivadas parciales y el gradiente del mapa de bordes viene dado por el campo vectorial . La Figura 1 muestra un mapa de bordes, el gradiente del mapa de bordes (ligeramente borroso) y el campo GVF generado al minimizar.
La ecuación 1 es una formulación variacional que tiene un término de datos y un término de regularización. El primer término del integrando es el término de datos. Fomenta la solución coincidir estrechamente con los gradientes del mapa de bordes, ya que eso hará pequeña. Sin embargo, esto solo debe suceder cuando los gradientes del mapa de bordes son grandes, ya quese multiplica por el cuadrado de la longitud de estos gradientes. El segundo término del integrando es un término de regularización. Fomenta que las variaciones espaciales en los componentes de la solución sean pequeñas penalizando la suma de todas las derivadas parciales de. Como es habitual en este tipo de formulaciones variacionales, existe un parámetro de regularizaciónque debe ser especificado por el usuario para compensar la influencia de cada uno de los dos términos. Si es grande, por ejemplo, el campo resultante será muy suave y es posible que no concuerde tan bien con los gradientes de los bordes subyacentes.
Solución teórica. Hallazgo minimizar la ecuación 1 requiere el uso de cálculo de variaciones ya que es una función, no una variable. En consecuencia, las ecuaciones de Euler, que proporcionan las condiciones necesarias para para ser una solución se puede encontrar mediante el cálculo de variaciones, produciendo
(2a)
(2b)
dónde es el operador laplaciano. Es instructivo examinar la forma de las ecuaciones en (2). Cada uno es una ecuación diferencial parcial que los componentes y de debe satisfacer. Si la magnitud del gradiente del borde es pequeña, entonces la solución de cada ecuación está guiada completamente por la ecuación de Laplace, por ejemplo, que producirá un campo escalar uniforme totalmente dependiente de sus condiciones de contorno. Las condiciones de contorno las proporcionan las ubicaciones de la imagen donde la magnitud del gradiente del borde es grande, donde la solución se adapta más a los gradientes del borde.
Soluciones Computacionales. Hay dos formas fundamentales de calcular GVF. Primero, la función energéticaen sí mismo (1) se puede discretizar y minimizar directamente, por ejemplo, mediante el descenso de gradiente. En segundo lugar, las ecuaciones diferenciales parciales en (2) pueden discretizarse y resolverse iterativamente. El artículo original de GVF utilizó un enfoque iterativo, mientras que los artículos posteriores introdujeron implementaciones considerablemente más rápidas, como un método basado en octárbol, [8] un método de múltiples cuadrículas, [9] y un método lagrangiano aumentado. [10] Además, se han desarrollado implementaciones de GPU muy rápidas en [11] [12]
Ampliaciones y Anticipos. GVF se amplía fácilmente a dimensiones superiores. La función de energía se escribe fácilmente en forma vectorial como
| (3) |
que puede resolverse mediante descenso de gradiente o encontrando y resolviendo su ecuación de Euler. La Figura 2 muestra una ilustración de un campo GVF tridimensional en el mapa de bordes de un objeto simple (ver [13] ).
Los datos y términos de regularización en el integrando de la función GVF también se pueden modificar. Una modificación descrita en, [14] llamada flujo vectorial de gradiente generalizado (GGVF) define dos funciones escalares y reformula la energía como
| (4) |
Mientras que las opciones y reducir GGVF a GVF, las opciones alternativas y , por una constante seleccionada por el usuario, puede mejorar la compensación entre el término de los datos y su regularización en algunas aplicaciones.
La formulación de GVF se ha extendido aún más a imágenes con valores vectoriales en [15], donde se utiliza un tensor de estructura ponderada de una imagen con valores vectoriales. En [16] se propuso una extensión GVF ponderada probabilística basada en el aprendizaje para mejorar aún más la segmentación de imágenes con texturas muy desordenadas o altos niveles de ruido.
La formulación variacional de GVF también se ha modificado en Motion GVF (MGVF) para incorporar el movimiento del objeto en una secuencia de imágenes. [17] Mientras que la difusión de vectores GVF de un mapa de bordes convencional actúa de manera isotrópica, la formulación de MGVF incorpora el movimiento esperado del objeto entre cuadros de imagen.
Una alternativa a GVF denominada convolución de campo vectorial (VFC) proporciona muchas de las ventajas de GVF, tiene una robustez de ruido superior y se puede calcular muy rápido. [18] El campo VFC se define como la convolución del mapa de bordes con un kernel de campo vectorial
| (5) |
dónde
| (6) |
El kernel de campo vectorial tiene vectores que siempre apuntan hacia el origen pero sus magnitudes, determinadas en detalle por la función , disminuya a cero al aumentar la distancia desde el origen.
La belleza de VFC es que se puede calcular muy rápidamente usando una transformada rápida de Fourier (FFT), una multiplicación y una FFT inversa. El rango de captura puede ser grande y viene dado explícitamente por el radiodel kernel de campo vectorial. Un posible inconveniente de VFC es que los bordes débiles pueden verse abrumados por bordes fuertes, pero ese problema puede aliviarse mediante el uso de un método híbrido que cambia a fuerzas convencionales cuando la serpiente se acerca al límite.
Propiedades. GVF tiene características que lo han hecho útil en muchas aplicaciones diversas. Ya se ha señalado que su principal propósito original era extender un campo de borde local a lo largo del dominio de la imagen, lejos del borde real en muchos casos. Esta propiedad se ha descrito como una extensión del rango de captura de la fuerza externa de un modelo de contorno activo. También es capaz de mover contornos activos a regiones cóncavas del límite de un objeto. Estas dos propiedades se ilustran en la Figura 3.
Las fuerzas anteriores que se habían utilizado como fuerzas externas (basadas en los gradientes del mapa de bordes y variantes simplemente relacionadas) requerían fuerzas de presión para mover los límites desde grandes distancias hacia regiones cóncavas. Las fuerzas de presión, también llamadas fuerzas de globo, proporcionan una fuerza continua en el límite en una dirección (hacia afuera o hacia adentro) y tienden a tener el efecto de empujar a través de límites débiles. GVF a menudo puede reemplazar las fuerzas de presión y producir un mejor rendimiento en tales situaciones.
Debido a que el proceso de difusión es inherente a la solución GVF, los vectores que apuntan en direcciones opuestas tienden a competir cuando se encuentran en una ubicación central, definiendo así un tipo de característica geométrica que está relacionada con la configuración del límite, pero que no es directamente evidente desde el borde. mapa. Por ejemplo, los bordes perceptivos son espacios en el mapa de bordes que tienden a estar conectados visualmente por la percepción humana. [19] GVF ayuda a conectarlos mediante la difusión de vectores de gradiente de borde opuestos a través del espacio; y aunque no hay un mapa de bordes real, el contorno activo convergerá al borde perceptivo porque los vectores GVF los conducen allí (ver Xu, C .; Prince, JL (2012). "Contornos activos, modelos deformables y flujo vectorial de gradiente " . Recurso en línea que incluye descarga de código.). Esta propiedad se transfiere cuando existen los llamados bordes débiles identificados por regiones de mapas de bordes que tienen valores más bajos.
Los vectores GVF también se encuentran en oposición en las ubicaciones centrales de los objetos, definiendo así un tipo de medialidad. Esta propiedad se ha aprovechado como una definición alternativa del esqueleto de los objetos [20] y también como una forma de inicializar modelos deformables dentro de los objetos de modo que la convergencia al límite sea más probable.
Aplicaciones
La aplicación más fundamental de GVF es como fuerza externa en un modelo deformable. Una aplicación típica considera una imagencon un objeto delineado por la intensidad de su fondo. Por lo tanto, un mapa de bordes adecuado podría ser definido por
| (7) |
dónde es un kernel de desenfoque gaussiano con desviación estándar y es convolución. Esta definición es aplicable en cualquier dimensión y produce un mapa de bordes que cae en el rango. El desenfoque gaussiano se utiliza principalmente para que siempre se pueda calcular un vector de gradiente significativo, perogeneralmente se mantiene bastante pequeño para que las posiciones reales de los bordes no se distorsionen demasiado. Dado este mapa de bordes, el campo vectorial GVF se puede calcular resolviendo (2).
El modelo deformable en sí se puede implementar de diversas formas, incluidos modelos paramétricos como la serpiente original [19] o superficies activas y modelos implícitos que incluyen modelos geométricos deformables. [21] En el caso de modelos paramétricos deformables, el campo vectorial GVFse puede utilizar directamente como fuerzas externas en el modelo. Si el modelo deformable está definido por la evolución del contorno activo (bidimensional), entonces una ecuación de evolución de contorno activa paramétrica simple se puede escribir como
| (8) |
Aquí, los subíndices indican derivadas parciales y y son constantes seleccionadas por el usuario.
En el caso de modelos geométricos deformables, entonces el campo vectorial GVF se proyecta primero contra la dirección normal del frente de onda implícito, lo que define una función de velocidad adicional. En consecuencia, entonces la evolución de la función de distancia firmada definir un contorno deformable geométrico simple se puede escribir como
| (9) |
dónde es la curvatura del contorno y es una constante seleccionada por el usuario.
Se propuso una formulación de modelo deformable más sofisticada que combina el flujo de contorno activo geodésico con fuerzas GVF en. [22] Este documento también muestra cómo aplicar el esquema de división de operadores aditivos [23] para el cálculo rápido de este método de segmentación. La singularidad y la existencia de este modelo combinado fueron probadas en. [24] En [25] se propuso una modificación adicional de este modelo mediante el uso de un término de fuerza externa que minimiza la divergencia GVF para lograr una segmentación aún mejor para imágenes con objetos geométricos complejos.
GVF se ha utilizado para encontrar superficies corticales internas, centrales y centrales en el análisis de imágenes cerebrales, [5] como se muestra en la Figura 4. El proceso primero encuentra la superficie interna utilizando un modelo deformable geométrico tridimensional con fuerzas convencionales. Luego, la superficie central se encuentra explotando la propiedad de tendencia central de GVF. En particular, la función de pertenencia cortical de la corteza cerebral humana, derivada mediante un clasificador difuso, se utiliza para calcular GVF como si en sí misma fuera un mapa de bordes gruesos. Los vectores GVF calculados apuntan hacia el centro de la corteza y luego pueden usarse como fuerzas externas para impulsar la superficie interna hacia la superficie central. Finalmente, se utiliza otro modelo geométrico deformable con fuerzas convencionales para impulsar la superficie central a una posición en la superficie exterior de la corteza.
Varias aplicaciones recientes notables de GVF incluyen la construcción de gráficos para una segmentación de superficie óptima en volúmenes de tomografía de coherencia óptica de dominio espectral, [6] una formulación de contorno activo GVF probabilística basada en el aprendizaje para dar más peso a los objetos de interés en la segmentación de imágenes de ultrasonido, [16] y un contorno activo GVF adaptativo de múltiples funciones para una segmentación mejorada de la imagen de ultrasonido sin parámetros ajustados manualmente. [26]
Conceptos relacionados
Referencias
- ^ Xu, C .; Prince, JL (junio de 1997). "Flujo vectorial de gradiente: una nueva fuerza externa para las serpientes" (PDF) . Proc. Conf. IEEE en Comp. Vis. Patt. Reconocer. (CVPR) . Los Alamitos: Comp. Soc. Prensa. págs. 66–71.
- ^ a b Xu, C .; Prince, JL (1998). "Serpientes, formas y flujo vectorial degradado" (PDF) . Transacciones IEEE sobre procesamiento de imágenes . 7 (3): 359–369.
- ^ Hassouna, MS; Farag, AY (2009). "Esqueletos de curva variacional usando flujo de vector de gradiente". Transacciones IEEE sobre análisis de patrones e inteligencia de máquinas . 31 (12): 2257–2274.
- ^ Yu, H .; Chua, CS (2006). "Modelos de difusión anisotrópica basados en GVF". Transacciones IEEE sobre procesamiento de imágenes . 15 (6): 1517-1524.
- ^ a b Han, X .; Pham, DL; Tosun, D .; Rettmann, ME; Xu, C .; Prince, JL; et al. (2004). "CRUCERO: reconstrucción cortical mediante evolución superficial implícita". NeuroImage . 23 (3): 997–1012.
- ^ a b Miri, MS; Robles, VA; Abràmoff, MD; Kwon, YH; Garvin, MK (2017). "Incorporación de campo de flujo de vector de gradiente en un enfoque teórico de gráficos multimodal para segmentar la membrana limitante interna de volúmenes SD-OCT centrados en la cabeza del nervio óptico glaucomatoso". Imágenes y gráficos médicos computarizados . 55 : 87–94.
- ^ Bai, J .; Shah, A .; Wu, X. (2018). "Segmentación óptima de múltiples objetos con nuevos antecedentes de forma basados en el flujo de vectores de gradiente". Imágenes y gráficos médicos computarizados . Elsevier. 69 : 96-111.
- ^ Esteban, CH; Schmitt, F. (2004). "Fusión de silueta y estéreo para modelado de objetos 3D". Visión por computadora y comprensión de imágenes . Elsevier. 96 (3): 367–392.
- ^ Han, X .; Xu, C .; Prince, JL (2007). "Esquema numérico rápido para el cálculo de flujo de vector de gradiente utilizando un método de redes múltiples". Procesamiento de imágenes IET . 1 (1): 48–55.
- ^ Ren, D .; Zuo, W .; Zhao, X .; Lin, Z .; Zhang, D. (2013). "Cálculo de flujo vectorial de gradiente rápido basado en el método lagrangiano aumentado". Cartas de reconocimiento de patrones . Elsevier. 34 (2): 219–225.
- ^ Smistad, E .; Elster, AC; Lindseth, F. (2015). "Flujo vectorial de gradiente en tiempo real en GPU con OpenCL". Revista de procesamiento de imágenes en tiempo real . Saltador. 10 (1): 67–74.
- ^ Smistad, E .; Lindseth, F. (2016). "Cálculo de flujo vectorial de gradiente de red múltiple en la GPU". Revista de procesamiento de imágenes en tiempo real . Saltador. 12 (3): 593–601.
- ^ Xu, C .; Han, X .; Prince, JL (2008). "Modelos deformables de flujo vectorial degradado". En Isaac Bankman (ed.). Manual de procesamiento y análisis de imágenes médicas (2ª ed.). Prensa académica. págs. 181-194.
- ^ Xu, C .; Prince, JL (1998). "Fuerzas externas de flujo vectorial de gradiente generalizado para contornos activos". Procesamiento de señales . 71 (2): 131-139.
- ^ Jaouen, V .; González, P .; Stute, S .; Guilloteau, D .; Chalon, S .; et al. (2014). "Segmentación variacional de imágenes con valores vectoriales con flujo vectorial de gradiente". Transacciones IEEE sobre procesamiento de imágenes . 23 (11): 4773–4785.
- ^ a b Hafiane, A .; Vieyres, P .; Delbos, A. (2014). "Contorno activo probabilístico basado en fases para la detección de nervios en imágenes de ultrasonido para anestesia regional". Informática en Biología y Medicina . 52 : 88–95.
- ^ Ray, N .; Acton, ST (2004). "Flujo de vector de gradiente de movimiento: una fuerza externa para rastrear leucocitos rodantes con contornos activos restringidos por forma y tamaño". Transacciones IEEE sobre imágenes médicas . 23 (12): 1466–1478.
- ^ Li, B .; Acton, ST (2007). "Fuerza externa de contorno activo usando convolución de campo vectorial para segmentación de imágenes". Transacciones IEEE sobre procesamiento de imágenes . 16 (8): 2096–2106.
- ^ a b Kass, M .; Witkin, A .; Terzopoulos, D. (1988). "Serpientes: modelos de contorno activos". Revista Internacional de Visión por Computador . 1 : 321–331.
- ^ Hassouna, MS; Farag, AY (2009). "Esqueletos de curva variacional usando flujo de vector de gradiente". Transacciones IEEE sobre análisis de patrones e inteligencia de máquinas . 31 (12): 2257–2274.
- ^ Xu, C .; Yezzi, A .; Prince, JL (octubre de 2000). "Sobre la relación entre contornos activos paramétricos y geométricos y sus aplicaciones". 34º Congreso Asilomar de Señales, Sistemas y Computadores . 1 . págs. 483–489.
- ^ Paragios, N .; Mellina-Gottardo, O .; Ramesh, V. (2004). "Contornos activos geométricos rápidos de flujo vectorial degradado". Transacciones IEEE sobre análisis de patrones e inteligencia de máquinas . 26 (3): 402–407.
- ^ Goldenberg, R .; Kimmel, R .; Rivlin, E .; Rudzsky, M. (2001). "Contornos activos geodésicos rápidos". Transacciones IEEE sobre procesamiento de imágenes . {10 (10): 1467–1475.
- ^ Guilot, L .; Bergounioux, M. (2009). "Resultados de existencia y unicidad para el modelo mixto de flujo vectorial de gradiente y contornos activos geodésicos". Comunicaciones sobre análisis puro y aplicado . 8 (4): 1333-1349.
- ^ "Contornos activos impulsados por la divergencia del flujo del vector de gradiente". Procesamiento de señales . Elsevier. 120 : 185-199. 2016.
- ^ Rodtook, A .; Makhanov, SS (2013). "Serpientes de flujo de vector gradiente de múltiples funciones para la segmentación adaptativa de las imágenes de ultrasonido del cáncer de mama". Revista de Comunicación Visual y Representación de Imágenes . Elsevier. 24 (8): 1414-1430.