Hidden Gauss-Markov random measure field models for efficient image segmentation Mariano Rivera, Omar Ocegueda and José Luis Marroquı́n Abstract— En este trabajo presentamos una aproximación cuadrática del potencial que surge del modelo de campos ocultos la cual es válida si la entropı́a de los distribuciones discretas p(r) es baja. El potencial propuesto es una función cuadrática de las variables pk (r) e incluye un término de control de entropı́a basado en el ı́ndice de Gini. Usando este potencial, es posible utilizar métodos de optimización con restricciones muy eficientes, en particular proponemos un método iterativo de Gauss Seidel que resulta de incorporar parte de las restricciones y manejando aparte el resto. Entre las ventajas del algoritmo final se encuentran la eficiencia, estabilidad, y la posibilidad de ajustar automáticamente los parámetros a partir de los datos de entrada. I. I NTRODUCTION Muchos problemas de visión computacional pueden ser reducidos a un problema de etiquetado que consiste en asignar a cada elemento de un conjunto S un elemento de otro conjunto L, donde S es el conjunto de sitios de la región de interés y L es el conjunto de posibles etiquetas que podemos asignar a los sitios. Cada elemento r de S tiene un conjunto de caracterı́sticas definidas por una o mas imágenes, las cuales representan mediciones del mundo real (brillo en diferentes bandas del espectro electromagnético, calor, distancia a algún objeto, etc.). Debido a la naturaleza de las mismas imágenes, las mediciones hechas en cada sitio no son independientes de las mediciones hechas en el resto de la imagen sino que esperamos que haya relaciones fuertes entre sitios cercanos espacialmente. Esta caracterı́stica hace que los métodos de etiquetado (segmentación) basados en modelos de Campos aleatorios Markovianos resulten superiores, en el contexto de visión computacional, a los métodos que solamente toman en cuenta las caracterı́sticas propias de cada sitio por separado como k-medias o iso-data. Uno de los modelos basados en C.A.M. que ha tenido gran éxito es el modelo de Campos Aleatorios de Medida Markovianos (HMMF) el cual ha sido utilizado en problemas como estimación de la disparidad estereoscópica y segmentación de imágenes de resonancia magnética superando los métodos más sobresalientes de su época. Una caracterı́stica importante de HMMF que lo hace muy atractivo como herramienta de modelación es que está sólidamente fundamentado en la teorı́a de estimación Bayesiana. Por otro lado una desventaja importante es que la función de energı́a resultante es en general difı́cil de optimizar y las restricciones lineales obligan a utilizar métodos de optimización muy pesados, relativamente complejos y sensibles a los parámetros. II. H IDDEN M ARKOV M EASURE F IELD MODEL La estructura del modelo HMMF se compone de un conjunto S de sitios (pixeles de una imagen) y un sistema de vecindades N el cual define un conjunto C de cliques (conjuntos de sitios que son vecinos entre si). La dinámica se compone de dos pasos, el modelo de generación y el modelo de observación. En el modelo de generación suponemos que existe una segmentación verdadera que fue generada mediante el siguiente modelo probabilı́stico (Figura 13): Sea N el numero de sitios en S. Sea SM ⊂ RM tal que ∀x ∈ SM . x ≥0 i = 1, 2, ..., M PM i x = 1 i i=0 N En el primer paso, un campo de probabilidades p ∈ SM es generado con la siguiente probabilidad (distribución de Gibbs) " # X 1 P (p) = exp − WC (p) Z C∈C donde WC son funciones de potencial locales para los cliques C ∈ C y Z es una constante de normalización. Para cada sitio r ∈ S el vector p(r) es una función de densidad discreta donde pk (r) es la probabilidad de que la etiqueta fr ∈ L = {q1 , q2 , ..., qM } del sitio r sea qk . En un segundo paso, el campo de etiquetas f es generado de tal forma que cada etiqueta fr es una muestra independiente con distribución p(r). Fig. 1. Modelo de generación - Observación. Cada una de las M regiones (no necesariamente conexas) está caracterizada por algún rasgo(por ejemplo, el nivel de gris) que modelamos mediante una función paramétrica φi : S → Rm con parámetros θi (una para cada región). Ejemplos de rasgos no escalares son el color y movimiento. Luego asumimos que la imagen verdadera fue generada simplemente evaluando para cada sitio, la función paramétrica correspondiente en el sitio dado. La información con la que contamos para estimar los parámetros {θi } y el campo de probabilidades p es un conjunto de observaciones dado por una imagen g : S → Rd (nótese que g puede ser una imagen multibanda). Denotemos por vk (r) para cada r ∈ S y cada k = 1, 2, ..., M , la probabilidad P (gr | fr = qk ).Notemos que de acuerdo al modelo de generación-observación, el valor de gr es independiente de p dado fr , por lo que la probabilidad condicional conjunta P (g | p) = Y P (gr | p) = r∈S = K YX P (gr | fr = k)P (fr = k) = r∈S k=1 K YX vk (r)pk (r) = r∈S k=1 Y v(r) · p(r) III. Q UADRATIC APPROXIMATION TO HMMF Notemos que si p(r) tiene baja entropı́a entonces log(p(r) · v(r)) ≈ M X k=1 Estamos interesados en una aproximación cuya optimización pueda hacerse de manera eficiente es por esto que elegimos una aproximación cuadrática de la función de energı́a. Las eleccione posibles son n = 1 y n = 2. Experimentalmente, n = 2 es la mejor elección. Para que esta aproximación sea válida, como mencionamos antes, es necesario que cada p(r) sea de baja entropı́a, por lo que requerimos introducir un término que nos permita controlar la entropı́a de estos vectores. Una medida conveniente es el ı́ndice de Gini r∈S G(p(r)) = 1 − Estamos interesados en encontrar una expresión de la distribución a-posteriori P (g | p)P (p) 1 = P (p | g) = P (g) ZP (g) " X M XX −pk (r)2 log(vk (r))+ r∈S k=1 +λ X M X (pk (r) − pk (s))2 − µ <r,s>∈C2 k=1 M XX pk (r)2 r∈S k=1 A. Constrained optimization method WC (p) C∈C Para maximizar esta expresión respecto a p, tomamos el logaritmo natural X X logP (p | g) = c + log(v(r) · p(r)) − WC (p) C∈C lo cual es equivalente a minimizar X X −log(v(r) · p(r)) + WC (p) r∈S U (p, θ) = r∈S r∈S pi (r)2 La función de energı́a es entonces v(r) · p(r) exp(−V (p)) donde V (p) es una función de potencial que define la distribución de Gibbs (a-priori) para p y depende de los cliques asociados al sistema de vecindades V (p) = M X i=1 # Y pk (r)n log(vk (r)) C∈C la minimización del potencial está sujeta a las restricciones lineales PM k=1 pk (r) = 1∀r ∈ S 0 ≤ pk (r) ≤ 1 los autores de este método proponen minimizar U utilizando descenso newtoniano alternadamente sobre p y θ y para manejar las restricciones se propone proyectar los vectores p(r) sobre el simplejo SM . Estos pasos de minimización -proyección tienen un costo computacional muy elevado además de que se requiere ajustar un conjunto de parámetros para la optimización respectoa p y otro conjunto para la optimización respecto a θ. Para acelerar la convergencia, se propone usar “multi-scale approach”. El método comienza a ser cada vez mas complicado debido al término “log(p(r) · v(r))”. El método de los multiplicadores de Lagrange para optimización con restricciones consiste en encontrar un punto crı́tico de la función lagrangiana. Consideremos el problema de optimización con restricciones definido por minx∈Rn f (x) sujeto a ci (x) ≥ 0, i ∈ I ci (x) = 0, i ∈ E donde I es el conjunto de restricciones de desigualdad y E es el conjunto de restricciones de igualdad. La función lagrangiana asociada a este problema es X L[f, c, λ](x) = f (x) − λi ci (x) i∈E∪I Las condiciones de Karush-Kuhn-Tucker, establecen que si x es un mı́nimo local de f en la región factible definida por las restricciones y los gradientes {∇ci (x)} son linealmente independientes, entonces existe un conjunto de multiplicadores de Lagrange {λi } tales que ∇x L[f, c, λ](x) = 0 ci (x) = 0 ci (x) ≥ 0 λi ≥ 0 λi ci (x) = 0 ∀i ∈ E ∀i ∈ I ∀i ∈ I ∀i ∈ I Muchos métodos han sido desarrollados en base a estas condiciones, pero la idea básica detrás de ellos es encontrar de manera eficiente un punto crı́tico de L que las satisfaga. A continuación describimos el método utilizado en este trabajo. La función de energı́a en la que estamos interesados es U (p, θ), donde p es un campo de probabilidades y θ es el conjunto de parámetros de los modelos. Las restricciones son naturalmente, las que definen a p como un campo de medida. Por ahora consideremos únicamente las restricciones de igualdad X pi (r) = 1 ∀r ∈ S (1) i para hacer las cuentas un poco mas limpias usaremos las restricciones de igualdad equivalentes 2ci (x) = 0, es decir P 2 i pi (r) = 2, luego la función Lagrangiana es # "M X X L[U, π](p, θ) = U (p, θ) − 2πr pk (r) − 1 r∈S k=1 donde πr es el multiplicador de Lagrange asociado a la restricción de igualdad para el sitio r. Para encontrar un punto crı́tico de L necesitamos resolver el sistema de ecuaciones dado por (2) por otro lado X ∂U (p, θ) = −2pk (r)(log(vk (r))+µ)+2λ (pk (r)−pk (s)) ∂pk (r) s∈N r sustituyendo en (2) y resolviendo para pk (r), tenemos P πr + λ s∈Nr pk (s) pk (r) = − log vk (r) − µ + λ]Nr (3) donde Nr es el conjunto de sitios s ∈ S que son vecinos de r y ]Nr es su cardinalidad. Sean P nk (r) := λ s∈Nr pk (s) mk (r) := − log vk (r) − µ + λ]Nr Sustituyendo en (1) P ni (r) X πr + nk (r) 1− i m i (r) = 1 ⇒ πr = P 1 mk (r) i m (r) i finalmente, sustituyendo en (3) obtenemos P ni,r 1− M i=1 mi,r nk,r pk (r) = + PM mk,r mk,r i=1 m (4) i,r Hay que recordar que esta expresión es la solución del problema de optimización con restricciones de igualdad (ignoramos las restricciones de desigualdad {0 ≤ pk (r) ≤ 1}). Lo P cual significa que esta solución solamente asegura que i pi (r) = 1∀r ∈ S. Experimentalmente un procedimiento que funciona adecuadamente es proyectar cada variable pk (r) haciendo pk (r) = min{max{pk (r), 0}, 1} Después de esta asignación ya no podemos asegurar que se P cumple la restricción i pi (r) = 1, ası́ que es necesario un segundo paso que consiste en una normalización haciendo pk (r) pk (r) = P i pi (r) gr | (cr = k) = φk (r) + ηr donde cr es la clase a la cual pertenece el sitio r. Recordemos que además del campo de probabilidades p estamos interesados en calcular los parámetros θi de φi , por lo que es deseable que log vk (r) sea fácil de optimizar respecto a θ, es por esto que la elección −(gr − fr )2 1 vk (r) = √ exp 2σ 2 2πσ es muy conveniente, ya que log vk (r) = c − ∂L ∂U = − 2πr = 0 ∂pk (r) ∂pk (r) k Notemos que la expresión (4) está en términos de log vk (r), lo cual sugiere que lo anterior puede ser utilizado en cualquier contexto en el que contemos con dos componentes básicos: un modelo para la imagen verdadera (f ) y un modelo probabilı́stico de la imagen observada (g), es decir {φi } y ηr en el modelo 1 (gr − fr )2 2σ 2 Algunos ejemplos de modelos que podrı́an ser útiles en diferentes problemas de visión computacional de bajo nivel son • φi (r) = µi ∈ R∀r ∈ S, i.e., modelos constantes, útiles en situaciones en las que las imagenes son relativamente sencillas, puede existir alto nivel de ruido pero no son significativas las variaciones espaciales en los modelos debidas a artefactos de iluminación o contraste. Ejemplos de rasgos que se representan con estos modelos (escalares) son el nivel de gris y la disparidad estereoscópica. 2 • φi (r) = µi ∈ R ∀r ∈ S, i.e. modelos constantes bidimensionales que pueden representar desplazamientos en secuencias de imágenes. Esta clase de modelos pueden ser utilizados en segmentación de movimiento o cálculo de flujo óptico en secuencias de imágenes en las que los desplazamientos de interés son relativamente simples como traslaciones. P (i) (i) • φi (r) = j θj Nj (r), donde {Nj } es un conjunto de “funciones base”, como splines de producto tensorial. Esta clase de modelos permiten variaciones espaciales suaves. • φi (r) = fi : R → R, donde {fi } es un conjunto de funciones que podrı́an ser por ejemplo modelos de series de tiempo. Son útiles en situaciones en las que la observación gr es de hecho un conjunto de observaciones (por ejemplo una sucesión de valores tomados en un mismo sitio a lo largo de un periodo de tiempo) En general el paso de estimación de parámetros consiste en resolver para θ el problema de optimización dado por θ∗ = argminθ U (p, θ) (5) IV. E XPERIMENTAL RESULTS En adelante asumiremos que la distribución de ηr es normal. Para mostrar los resultados experimentales comenzaremos con el modelo de φi más sencillo, el de modelos constantes φi (r) = θi ∀r ∈ S. De este modo, la función de potencial es Algorithm 1 Gauss-Seidel (GS) Approach for Marginals Computation with Projection 1: Set the initial model parameters θ0 and initially set p0 = v; 2: Given the tolerance > 0; 3: for i = 1, 2, . . . do 4: for all the pixels r do 5: for all the models k do 6: Compute pikr with (4); 7: Project pikr ← min{max{0, pikr }, 1}; 8: end for all the models {A renormalization of the pir can be performed here} 9: end for all the pixels 10: Update the models θi solving (5) ; 11: if kpi − pi−1 k < then 12: STOP with solution p∗kr = pikr and θ∗ = θi ; 13: end if 14: end for A. Synthetic images A continuación mostramos los resultados obtenidos en la segmentación de imágenes sintéticas. En la figura 2 mostramos una comparación cualitativa de QHMMF, el método original HMMF y Graph cut. Podemos observar que el método propuesto presenta resultados similares al método original de Campos Ocultos, pero es un poco más robusto para niveles altos de ruido. Fig. 2. U (p, θ) = X X (θi − gr )2 √ − µ − log( 2πσ))pi (r2 + ( 2 2σ r∈S i +λ X X i <r,s>∈S Results on synthetic images. La figura 3 muestra una comparación del tiempo de ejecución del método propuesto contra la modelación original de HMMF, en función del número de modelos (constantes). (pi (r) − pi (s))2 El parámetro de la distribución σ puede ser estimado a partir de los datos. Los resultados que mostramos aquı́ fueron obtenidos estimando la varianza local a partir de la imagen original fijando para cada sitio r ∈ S una ventana Wr ⊂ S, cada ventana define una estimación local de la varianza σr2 = X 1 (g(s) − mr )2 kWr k s∈W r Fig. 3. Execution time as a function of the number of (constant) models. donde mr = X 1 g(s) kWr k s∈W r Finalmente dado el conjunto de estimadores locales {σr }, obtenemos un histograma y elegimos como estimador de la varianza la moda de dicho histograma. Este procedimiento resulta ser muy robusto ya que las variaciones en los estimadores σr debidas por ejemplo a los bordes de las imágenes no tienen un efecto importante sobre el estimador elegido (la moda). Para obtener el estimador óptimo de θk , encontramos el punto crı́tico del potencial respecto a cada θk P 2 X (θk − gr ) ∂U 2 r∈S gr pk (r) P = p (r) = 0 ⇒ θ = k k 2 ∂θk σ2 r∈S pk (r) r∈S (6) Una ventaja adicional es el control sobre la entropı́a del campo de probabilidades estimado. Podemos obtener diferentes estimaciones simplemente modificando el parámetro µ. La figura 4 muestra diferentes estimaciones, en cada imagen se grafica, para cada sitio r el valor máximo de p(r). Claramente la mayor incertidumbre se encuentra alrededor de los bordes de la imagen observada. a)µ = 0.005 Fig. 4. b)µ = 0.01 c)µ = 0.02 d)µ = 0.04 Ilustración de la entropı́a para diferentes valores de µ. V. A PPLICATIONS Una aplicación de gran interés es la segmentación de imágenes de resonancia magnética. La tarea es clasificar los voxeles en tres clases: materia blanca, materia gris y lı́quido cefalo-raquı́deo. Mostraremos el desempeño de QHMMF usando tanto imágenes simuladas como reales. La caracterı́stica que define la segmentación en este caso es la intensidad (nivel de gris) de los voxeles. Los voxeles de cada clase no presentan una intensidad constante sino que puede existir cierto nivel de ruido y además puede haber inhomogeneidades espaciales (la intensidad de un modelo varı́a a lo largo de la imágen). Como vimos en la sección anterior QHMMF es muy robusto, por lo que solamente debemos ocuparnos por modelar adecuadamente el efecto de las inhomogeneidades. El modelo que usaremos será el de splines de producto tensorial. A. Splines de producto tensorial El modelo que usaremos está definido por las funciones φk (r) = M X donde < i, j > representa al clique {i, j}, es decir i, j son puntos de control vecinos entre si. Para obtener los parámetros óptimos: ∂U (p, θ) = ∂θk,j =2 X ∂φk X (r)(φk (r) − gr )pk (r)2 + 2η (θk,j − θk,i ) = 0 ∂θk,j r∈S i∈N j donde Nj es el conjunto de puntos de control vecinos del punto de control j. Además ∂φk (r) = Nj (r) ∂θk,j entonces para los parámetros óptimos θ, X X ηθk,j ]Nj + Nj (r) θk,i Ni (r)pk (r)2 = y B(x) = (1.5−2x2 ) 2 (x2 −3|x|+2.25) 2 0 |x| ∈ [0, 0.5) |x| ∈ [0.5, 1.5) |x| ≥ 1.5 Fig. 5. Puntos de control en el modelo de splines de producto tensorial. Notemos que el paso de optimización respecto a p no varı́a con el uso de splines ya que solamente nos interesa log(vk (r)). Lo único que varı́a es el cálculo de los parámetros óptimos de las splines dado el valor de p. El potencial es XX U (p, θ) = ((φk (r) − gr )2 − µ)pk (r)2 + r∈S k XX +λ (pk (r) − pk (s))2 r∈S k Experimentalmente este modelo presenta problemas de inestabilidad debido a que los valores de θk,j no están ligados entre sı́. Este problema puede ser resuelto regularizando los parámetros, es decir modelas los parámetros θk,j como un campo aleatorio Markoviano, sobre el cual introducimos información a priori X =η i∈Nj j=1 x y Nj (x, y) = N0 (x − xj , y − yj ), N0 (x, y) = B( )B( ) δ δ i r∈S θk,j Nj (r) donde P 2 1 exp−η <i,j> (θi −θj ) Zθ P (θ) = θk,i + X Nj (r)gr pk (r)2 r∈S Este es un sistema de ecuaciones lineales que podemos resolver usando cualquier método estándar como eliminación gaussiana o descomposicón LU, o bien podemos aproximar la solución usando métodos iterativos. El paso de actualización de Jacobi es entonces: (t+1) θk,j η = P i∈Nj h i P P (t) θk,i + r∈S Nj (r)pk (r)2 gr − i6=j θk,i Ni (r) P 2 2 r∈S Nj (r) pk (r) + η]Nj Los pasos antes mencionados describen el modelo para una imagen del volumen de datos. Los resultados que mostramos fueron obtenidos segmentando cada imagen por separado. Un detalle importante que hay que cuidar es el de hacer corresponder cada clase de la segmentación a cada clase de interés, en este caso, la clase con nivel de gris más bajo corresponde al LCR y la clase con nivel más alto a la materia blanca, etc. Efectuamos esta correspondencia en cada iteración de los modelos simplemente ordenándolos por nivel de gris para posteriormente hacer la asignación adecuada. B. Harvard real Brain MRI En este conjunto de datos cada voxel corresponde a un volumen de 1x1x3 mm, esto ocasiona que en un mismo voxel haya mezclas de más de un tejido, este fenómeno es conocido como “efecto de volumen parcial”. Debido a esto existen en los datos de Harvard algunos voxeles cuya composición es una mezcla de LCR y MG (Figura 6), si observamos el ground truth, nos damos cuenta de que esta mezcla fue asignada por el experto a la clase MG. Por tanto para realizar esta segmentación es necesario introducir una cuarta clase que corresponde a los voxeles de mezcla cuyo nivel de gris es más cercano al LCR. La segmentación final asigna la clase 0 a la unión del fondo y el LCR de los ventrı́culos (claramente el nivel de gris de éste es muy cercano al fondo, la asignación final se realiza utilizando la “máscara” que separa los datos en “cerebro” y “no cerebro”), las clases 1 y 2 a Materia Gris y la clase 3 a la materia blanca. Como mencionamos en la sección anterior, la segmentación se realiza de manera independiente en cada corte del volumen. Los resultados que mostramos fueron obtenidos usando cortes coronales (estos son los de mayor resolución). a)Coronal slice Fig. 6. b)QHMMF result c)Ground truth Efecto de volumen parcial y comportamiento de QHMMF. variaciones aleatorias. La log-verosimilitud (en un punto r ∈ S) es entonces √ 1 logP (g1 (r) | g0 (r), fr = qk ) = −log( 2πσ)− 2 (g0 (r)−g1 (r+dk ))2 2σ En general los componentes de dk no son necesariamente enteros por lo que podrı́a ocurrir que r + dk ∈ / S y por tanto g1 (r + dk ) puede no estar definido. Para resolver este problema utilizamos interpolación bicúbica de la imagen g1 . Los modelos {dk } se eligen tratando de cubrir lo mejor posible el rango de movimientos presentes en la imagen, pero dado que no contamos con información al respecto simplemente fijamos manualmente un desplazamiento máximo (en magnitud) R y un factor de discretización m. Elegiremos los desplazamientos dentro de la región dada por [−R, R] × R , [−R, R] discretizándola en (2m + 1)2 modelos. Sea δ = m la discretización queda definida por los modelos di,j = (iδ, jδ)T i, j = −m, −(m − 1), ..., 0, 1, ..., m donde el doble subı́ndice (i, j) fue introducido en lugar de k por claridad. Notemos que una vez obtenida la expresión de la logverosimilitud, el cálculo del campo de probabilidades p es idéntico que en los experimentos anteriores. En los siguientes experimentos se muestran los resultados usando modelos constantes de desplazamiento. Además omitimos el paso de estimación de parámetros, es decir los desplazamientos {dk } se mantienen fijos en todo el proceso. Usaremos la secuencia del Taxi de Hamburgo (Figura 9). El potencial a minimizar es el siguiente Fig. 7. Harvard real Brain MRI segmentation results. U (p, d) = K XX (g0 (r) − g1 (r + di ))2 − µ pi (r)2 + r∈S i=1 +λ X K X (pi (r) − pi (s))2 <r,s>∈C2 i=1 Fig. 8. Harvard real Brain MRI segmentation results,18 new samples. La observación importante es que estamos haciendo el mismo procedimiento para el conjunto de los 20 primeros cerebros y los 18 nuevos obteniendo resultados consistentes. C. Optical Flow Estimation Estamos interesados en modelar el movimiento de los objetos en una secuencia de imágenes. Tı́picamente se asume que los objetos conservan su brillo (nivel de gris) a lo largo de su movimiento. Para utilizar QHMMF es necesario elegir un conjunto discreto de posibles direcciones {dk } que pueden seguir los objetos. Un modelo de observación razonable es Fig. 9. Frames 0 and 19 of the Hamburgh Taxi sequence. Una vez calculado el campo de probabilidades podemos elegir diferentes estimadores del flujo óptico. Para cada sitio r tenemos la distribución discreta p(r), por lo que podemos obtener por ejemplo el valor esperado del desplazamiento en r respecto a la distribución p(r), es decir, elegimos como desplazamiento en r el vector g0 (r) = g1 (r + df (r) ) + ηr donde ηr ∼ N (0, σ). Es decir, el brillo de los objetos se conserva a lo largo de su movimiento salvo por pequeñas v(r) = Ep(r) [d] = K X i=1 di pi (r) llamaremos a este estimador el desplazamiento medio en el sitio r. Más en general podemos elegir los estimadores vn (r) = K X di pi (r)n i=1 y por supuesto el estimador MPM que usamos en segmentación: a)MPM. b)Media. c)p2 . d)Máscara. vM P M (r) = dk , k = argmaxi {pi (r)} Un problema común en los métodos de estimación de flujo óptico de este estilo que incluyen términos de regularización del estilo X kp(r) − p(s)k2 Fig. 11. Adaptable. <r,s>∈C2 es el que se observa en la figura (10), el flujo óptico estimado continúa alrededor de los objetos en movimiento. a)MPM. b)Mean. detectadas como regiones con movimiento no nulo, este problema se corregı́a antes con la regularización completa. Todo esto sugiere que lo que requerimos es realizar las segmentaciones (de nivel de gris y de movimiento) simultaneamente. Una opción es simplemente elegir b(r, s) ∈ [0, 1] en lugar de b(r, s) ∈ {0, 1} para lo cual también podemos usar los resultados de QHMMF de la segmentación de g0 por nivel de gris (una medida relacionada con la entropı́a de p podrı́a resultar). Una variante interesante es la de ajustar un flujo afı́n a cada objeto en movimiento. c)p2 . Fig. 10. f)Mask. Estimación directa. Una idea inmediata para tratar de resolver este problema es hacer que los bordes de movimiento coincidan con los bordes de las imágenes. Para hacer esto primero necesitamos encontrar los bordes de las imágenes. Podemos utilizar el mismo modelo aproximado de campos ocultos para segmentar las imágenes (en realidad solamente necesitamos segmentar g0 ), los bordes quedan determinados por la segmentación. El potencial modificado tiene la forma K XX U (p, d) = (logvi (r) − µ)pi (r)2 + a)Rapidez. b)Flujo Óptico. c)Taxi. d)Coche 1. Fig. 12. Flujo óptico estimado mediante el modelo afı́n para cada objeto en movimiento. r∈S i=1 +λ X b(r, s)kp(r) − p(s)k2 <r,s>∈C2 donde b(r, s) = δ(cr − cs ) en la segmentación de g0 , es decir, es igual a 1 si r y s pertenecen a la misma clase (de la segmentación de g0 ) y es igual a 0 si no. Notemos que una vez hecha la segmentación de g0 , las variables b(r, s) son fijas. En la figura (11) mostramos los resultados del método descrito anteriormente. Podemos observar que en estos resultados los bordes de movimiento están muy bien definidos, aunque también se aprecia un problema relacionado con la sobre-segmentación de g0 , hay algunas regiones sin movimiento que son VI. R ELACI ÓN CON G AUSS -M ARKOV M EASURE F IELDS La formulación clásica del problema de segmentación parte del supuesto de que la imagen observada es una versión distorcionada de una imagen original que fue obtenida a partir de una partición que es justamente la que queremos obtener. En la figura (13) se ilustra este modelo de generación - observación. En el primer paso, un campo de etiquetas f , el cual modelamos como un Campo Aleatorio Markoviano es generado con probabilidad P (f ) = 1 exp (−U (f )) Z donde U (f ) = X VC (f ) C∈C para definir el potencial VC para los cliques C ∈ C generalmente se utiliza el potencial de Issing eligiendo el sistema de 4-vecindades. Este potencial, para un cliqué C =< r, s > está dado por 1 si f (r) 6= f (s) V<r,s> (f ) = 0 si f (r) = f (s) En el siguiente paso, para cada sitio r ∈ S evaluamos f˜(r) = φθk (r) tal que f (r) = qk (la etiqueta asociada al sitio r es qk ). Finalmente, la imagen original f˜ es perturbada con ruido aditivo, el cual es modelado mediante las variables aleatorias independientes e idénticamente distribuidas ηr Lo que hace complejo este problema de optimización es que las variables bi (r) solo pueden tomar uno de los valores {0, 1}, es decir, se trata de un problema de optimización combinatoria y para resolverlo aproximadamente es necesario utilizar métodos como ICM o recocido simulado. Lo anterior da como resultado los estimadores MAP b b, θb para b y θ. Mas en general, en el marco de estimación b b, θ). bayesiana, podemos definir una función de costo C(b b, θ, Una clase importante de funciones de costo es de la forma X Cb (b b, b) = Cr (b b(r), b(r)) r∈S se puede probar que si Cr son funciones no negativas, entonces el estimador Bayesiano óptimo para b(r) es b b(r)∗ = argminb(r) g(r) = f˜(r) + ηr M X Cr (b(r), ek )πk (r) k=1 donde πk (r) = X P (b, θ̄ | g) = P (b(r) = ek , θ̄ | g) b:b(r)=ek define la distribución marginal (discreta) a posteriori π(r) en el sitio r. Fig. 13. Modelo de generación - Observación. Entonces el modelo de observación puede expresarse como g(r) = M X bi (r)φθi (r) + ηr i=1 donde bi (r) = 1 0 si si f (r) = qk f (r) 6= qk El problema de segmentación se traduce en encontrar valores “óptimos” para bi (r) y θi , los parámetros de los modelos. Como criterio de optimalidad usamos la distribución a-posteriori: buscamos los valores de bi (r) y θi que maximicen dicha distribución 1 P (g | b, θ)P (b)P (θ) = P (g) "M # ! Y X X = bk (r)vk (r) exp − VC (b) P (θ) P (b, θ | g) = r∈S C∈C k=1 El factor P (θ) puede asumirse constante (distribución uniforme para los parámetros). También es común en algunas aplicaciones modelar θ como un campo aleatorio markoviano y definir su propio potencial como información a priori Fig. 14. Distribuciones marginales a posteriori. Lo anterior muestra que es posible encontrar estimadores Bayesianos óptimos fácilmente para una clase de funciones de costo muy general, con “solo” encontrar las distribuciones marginales π(r). Muchos métodos han sido propuestos para obtener aproximaciones de las marginales, los más precisos están basados en cadenas de Markov: la idea es construir una sucesión de muestras b(1) , b(2) , ..., b(T ) de la distribución a posteriori b(j) = T (b(j−1) ), entonces usamos el teorema ergódico de Birkhoff para aproximar π(r). Para construir la suceción de muestras {b(j) }Tj=1 de la distribución a posteriori se utilizan métodos como Gibbs-Sampler o Metrópolis. Nuestra estimación de las probabilidades marginales π son las marginales empı́ricas p definidas por T 1 X (t+T0 ) b T t=1 1 P (θ) = exp(−W (θ)) Z p= Maximizar esta distribución es equivalente a minimizar el potencial (tomando logaritmo) Por las propiedades anteriores se cumple U (b, θ) = M XX r∈S i=1 −bi (r)logvi (r) + X C∈C VC (b) + W (θ) E[b] = E[p] = π Los métodos basados en MCMC solo toman en cuenta la propiedad E[p] = π. Usando el teorema central del lı́mite, Una familia de funciones de energı́a que cumplen con esta condición de consistencia está dada por U (p) = M XX X −pk (r)2 log(vk (r))+λ r∈S k=1 M X (pk (r)−pk (s))2 − <r,s>∈C2 k=1 µ M XX pk (r)2 r∈S k=1 Fig. 15. MCMC Approach. el último término es el que controla la entropı́a de las distribuciones p(r), se trata de una penalización del coeficiente de Gini G(p(r)) = 1 − podemos aprovechar una propiedad más de las marginales empı́ricas (figura 16). Fig. 16. GMMF Approach. √ −−∞ → N (0, Σ) n(p − π) − n−→ donde Σ = Cov(b) = E[bi bTi ] − E[bi ]E[bTi ] = Diag(π) − ππ T el problema, claro está, es que no conocemos π y por tanto no conocemos Σ. De cualquier forma, sabemos que la función de distribución asintótica de p está dada por QΣ (p) 1 P (p) = √ exp − 2σ 2 2πσ donde QΣ es alguna función cuadrática positiva definida tal que ∇QΣ (π) = 0. La idea en la que se basa el método GMMF es en modelar la función cuadrática QΣ . Para esto se introduce el concepto de “condición de consistencia” que tiene que ver con el hecho de que si no contamos con información a-priori, las muestras b fueron tomadas de la distribución dada por la verosimilitud, por lo que el valor esperado de p es la verosimilitud (normalizada) (la prueba de esto va mas allá del alcance de este artı́culo). En el artı́culo original en el que se presenta el modelo GMMF se propone una familia de funciones de potencial que cumplen con la condición de consistencia. Un problema con esta familia de funciones es que el campo de medida estimado tiende a ser de alta entropı́a, lo cual hace muy difı́cil la estimación de los parámetros. Con la idea de controlar la entropı́a del campo p estimado, relajamos la condición de consistencia requiriendo únicamente que en ausencia de información a-priori, el estimador óptimo p∗ cumple argmaxk p∗k (r) = argmaxk vk (r) ∀r ∈ S M X pk (r)2 k=1 VII. D ISCUSSION El modelo original HMMF ha sido utilizado con éxito en la resolución de diversos problemas de procesamiento dePimágenes, sin embargo, la presencia del término − r log(v(r) · p(r)) hace que sea necesario utilizar métodos de optimización no lineal, lo cual lo vuelve relativamente complejo e ineficiente. Una propiedad importante de la solución que arroja HMMF es que las distribuciones discretas p(r) tienden a ser de baja entropı́a [ref erencia a campos ocultos]. En este trabajo presentamos una aproximación cuadrática de la función de energı́a que resulta del modelo de campos ocultos con un término de control de entropı́a basado en el coeficiente de Gini, el cual permite que la función resultante permanezca cuadrática. Presentamos además un método de optimización con restricciones en el que se tratan independientemente las restricciones de igualdad E y las de desigualdad I. El resultado es un método iterativo de Gauss-Seidel considerablemente más sencillo y eficiente que los métodos estándar de optimización no lineal. En los resultados experimentales mostramos que este método conserva las propiedades del modelo original HMMF presentando incluso un comportamiento más robusto ante altos niveles de ruido. Mostramos además la posibilidad de obtener un método libre de parámetros mediante la estimación de los parámetros del modelo de ruido a partir de los datos (lo ilustramos mediante la estimación de la varianza) y ajustando el término de regularización experimentalmente. Adicionalmente, el término de control de entropı́a permite obtener diferentes estimaciones del campo de medida, simplemente variando uno de los parámetros del modelo. La versatilidad del modelo se ilustra con la aplicación del método en dos problemas de procesamiento de imágenes. Por un lado en la segmentación de imágenes de resonancia magnética del cerebro utilizando el “Harvard Brain Atlas”, mejorando notablemente los resultados reportados en la literatura y resultados consistentes al utilizar las 18 nuevas muestras recientemente disponibles. Por otro lado mostramos la aplicación al problema de estimación de flujo óptico. VIII. R EFERENCES