Está en la página 1de 14
Computacién y Sistemas Vol. 6 No. 3 pp. 213 - 226 © 2003, CIC IPN. ISSN 1405-5546. Impreso en México Un Nuevo Algoritmo para el Calculo de Flujo Optico ysu Aplicacién al Registro de Imagenes A New Algorithm for Computing Optical Flow and His Application to Image Registration Félix Calderén Solorio! y José Luis Marroquin Zaleta® 'Divisién de Estudios de Posgrado, Facultad de Ingenieria Elgetriea Universidad Michoacana de San Nicolis Hid Santiago Tapia 403, Col. Centro *Centro de Investigacién en Matematicas Callejon Jalisco s/n, Mineral de Valenciana, Guanajuato, México E-mails: calderon@zeus.umich.mnx, jlm@eimatmx, rticulo ecibide en Agosta 22, 2001; aceptada.en Marzo 15, 2003 Resumen Presentamos un algoritmo novedoso para el edlculo de flujo éptico basado en la suma de diferencias al cuadrado de pun- tos correspondientes, con un término de relajacién que per- mite eliminar observaciones erréneas. Este algoritmo sola- mente necesita ir.formacién de un par de cuadros y es robus- to en presencia de ruido. Se presenta también su aplicacion enregistro de imagenes cerebrales de resonancia magnética, con informacion de atlas cerebrales para realizar la segmen- tacién cerebro / no-cerebro de un espécimen dado. Palabras Clave: Flujo Optico FO, Registro de Imagenes RI e Imagenes de Resonancia Magnética IRM. Abstract We present a new algorithm for computing the optical Flow which is based in the sum of squared difference between two points and we add a rest condition in order to eliminate outliers. This algorithm only needs a couple o frames and is very robust in presence of noise. We present his application in the register task of Magnetic Resonance Images of human heads with brain atlas in order to do the head segmentation in brain and no brain, Keywords: Optical Flow OF, Image Registration IR and Magnetic Resonance Images MRI Introduccién El campo de movimiento representa el movimiento real de un objeto que se desplaza en un escenario tridimensional. Pro- yectado sobre un plano, obtenemos un conjunto de vector de velocidad pata cada punto, correspondiente al movimien- to de la imagen que se observa. Esta es Ia cantidad que nos interesa determinar en una secuencia de imagenes. El flujo Optico (FO) se define como el movimiento aparente de un patron de brillo; esto es Jo que realmente observamos cuando un objeto se desplaza, pero también se puede deber al cambio en la condiciones de iluminacién del escenario, por lo que el flujo éptico y el campo de movimiento son iguales solo si el objeto no cambia su irradiancia en el plano de la imagen, mien- tras se mueve sobre la escena. El flujo 6ptico es un campo vectorial bidimensional, que calcularemos para una secuencia de imagenes (por ejemplo una secuencia de video). En la literatura existen muchos mé todos para calcular el flujo éptico, los cuales pueden ser c sificadas en tres grupos principalmente: aquellos basados en derivadas; aquellos basados en energia espaciotemporal y fi- nalmente los basados en suma de diferencias al cuadrado (SSD. Sum of Squared Differences).\ En este articulo revisaremos algunos de estos métodos para finalmente hacer nuestra pro- puesta para calcular ef flujo éptico. Una revision mas com- pleta de métodos para caiculo de FO puede encontrarse en [Barron et al., 1994] Métodos Basados en Derivadas En la literatura tenemos algunos métodos basados en prime- ras derivadas ([Fennema & Thompson, 1979], [Nagel, 1983], y {Horn, 1986}) y otros basados en segundas derivadas ([Nage! 1987], [Tretiak & Pastor, 1984] y [Uras et al., 1988]). Ambos intentan dar un modelo para el calculo del FO y en general utilizan la serie de Taylor; el planteamiento es: Dada una se- cuencia de imagenes g={g/,g2....gNJdefiniremos a gn(vi,y) como el valor de tono de gris del i-esimo punto ri=[ xiyif7 dentro del dominio L, a tiempo =n, La hipotesis es conside- rar que la iluminacién det escenario permanece constante y que el cambio del tono de gris se debe al movimiento aparen- te de los objetos, por lo cual, permanece constante para F. Calderén Solorio, J. L. Merroquin Zaleta: Un Nuevo Algoritmo para el Célculo de Flujo Optico y su Aplicacién al Registro... el punto 1; desplazado por un vector Vj = fui,u]”. gn (rs + Vi) = 9n4a(re) Consideramos que las imagenes fueron muestreadas con periodo T’; en una secuencia de video el valor tipi- ©o del periodo de muestreo es de 1/30 seg., por Io que, considerar que el desplazamiento de los objetos es pequefio es una hipétesis valida. Bajo estas consi- deraciones aplicar la expansién en serie de Taylor para linearizar gq es viable y asf obtener una ecuacién dada por Gals) + DoGn (Tis + DyGn(ra)us +e = gnsi(r) donde e; representa el error de truncamiento el cual despreciaremas y Dz, Dy y Dz son los operadores de derivacién con respecto a 2, y y t. Reduciendo obte- nemos una ecuacidn lineal dada por. Deg (rs) + Dygn(rs)ei + Degnkrs)=0 (A) Esta ecuacién es lamada la ecuacién restrictiva pa- ra flujo éptico, ya que impone una restriccién a las ‘componentes u; y v; de dicho vector. Si trazamos la ecuacién (1) en un espacio con ejes 1; y v4, existe un miimero infinito de soluciones para el flujo dptico del i—esimo punto, sobre la Ifnea recta correspondiente a a ecuacién restrictiva, es decir tenemos un sistema de ecuaciones mal planteado ya que tenemos una ecua- cién y dos variables a determinar para cada punto de la imagen. Restriccién de suavidad de Horn. En (Horn, 1986] se propone un término que penaliza la magnitud del gradiente del vector de desplazamiento [VV], restriccion de suavidad que permite tener tin sistema bien planteado y dar una solucién tinica, a la ecuacién restrictiva (1). Utiliza la ecuaci6n restrictiva como criterio de error; si un punto cumple con esta ecuacién su contribucién al error global sera nula y el problema del calculo del FO, lo traduce en minimizar una ecuacién de energfa dada como Ia suma de los errores al cuadrado para todos los puntos de la imagen més un término de suavidad: UV) =AS7 (Von (ri) Vi + Dig (ri)? (2) ia 1 2 +4 ivl ia donde Vn es el gradiente espacial de la imagen y A es el pardmetro de regularizacién que permite cambiar Jas condiciones de suavidad del campo vectorial dado por wy v, asf pues si \ = 0 tendremos un campo extre- madamente suave (una constante) y por el contrario si A >> 0 el FO sera consistente con la ecuacién res- trictiva. La ecuacién de energia dada por (2), es una funcién unimodal, ya que, nuestro criterio de error es cuadratico. El sistema de ecuaciones a resolver, seré del doble del tamafio de la imagen. La solucién directa es im- posible para las dimensiones de una imagen tipo y en su lugar se propone solucionar utilizando un es- quema iterativo como es el método de Gauss-Seidel [Kelley, 1995]; ft) (k) + Dyn (71) 0” + Degn (rs) 1+ (Degen (rd)? + (Dygn (7i))"] d 1 In (7 41) _ a(k) Degn (rit + Dytin (ri) 8 + Dign (re 14+A[(Degn (ro)? + (Dyn (r)?] wn (Ts) (3) donde a”) y 9") son el promedio de los 4 vecinas del i —esimo punto en la iteracién k. Algoritmos basados en agrupamiento. Considerando que todas las partfculas de un objeto se mueven con el mismo patron de velocidad (condi- cién de cuerpo rfgido), podemos verificar que mas de un pixel de nuestra imagen cumpliré con la misma ecuacién restrictiva ({Fennema & Thompson, 1979), [Schunck, 1989] y [Nesi et al., 1995]). Nuestra tarea consiste en graficar la ecuacién restrictiva sobre un plano cuyos ejes son las componentes del vector de flujo dptico u y v. Los grupos (cluster) los encontra- remos contando para cada punto [u:, vs] del plano de velocidad el ntimero de ecuaciones que lo intersectan. Los grupos que escogemos son aquellos con el mayor niimero de intersecciones. La solucién para estos méto- dos estaré limitada a translaciones y dependeré de la discretizacién que se haga del espacio de velocidades. Métodos basados en Energfa espacio- temporal. Introduciendo el dominio espacio tiempo, tenemos la ventaja de analizar el movimiento usando la transfor mada de Fourier, en un espacio de frecuencia k, w. Co- ‘mo ejemplo consideremos una secuencia de imagenes en Ia cual todo se mueve a velocidad constante, de modo que una secuencia f(r,t) puede ser escrita como F(t) = gar + VE) F. Calderén Solorio, J. L. Marroquin Zateta: Un Nuevo Algoritmo para el Célculo de Flujo Optico y su Aplicacién al Registro ... Ja transformada de Fourier para esta ecuacién es oP [ [ Galt + Vtje~e—™*drdt me be haciendo el cambio de variable # = r + Vt F(kyw) = Feu) = a all [one wale Avigmut yy A GAl®) f pvegwtay (2m) 7 donde G,,(k) es la transformada de Fourier de gq(F) y el término e*Y* tiene como transformada de Fourier (kV —w). Asi que F(k,w) = Gn (K)6 (kV ~ w) (4) De la ecuacién 4 podemos concluir que el espectro de energfa de tna secuencia de imagenes que se desplaza con una velocidad constante, se concentra en una linea. recta dada por kV — w. En trabajos como [Adelson & Bergen, 1986], [Barman et al., 1991], [Bigun et al., 1991), (Haglund, 1992], [Heeger, 1987] y [Jahne, 1987), se hace uso de una familia de filtros de energia espaciotemporales para determinar patrones de movimiento en secuencias de imégenes basados en esta idea. En particular (Heeger, 1987] utiliza un conjunto de 12 filtros de Gabor entonados en dife- rentes frectiencias con el propésito de cubrir todo el espectro de frecuencias. Estos métodos no pueden utilizar un ntimero reducido de marcos, ya que limita la discretizacién del dominio de la frecuencia, Sistema basado en SSD. La Suma de diferencias al cuadrado (SSD), la pode- ‘mos definir como una medida de proximidad re dos imagenes consecutivas de una secuencia de video, en ‘una expresién de la forma: Llati+V)-m ly?) ta SSD(u,v) = En la siguientes subsecciones daremos detalles de al- gunos algoritmos del estado del arte basados en esta ecuacién y en la seccién presentaremos nuestro algo- ritmo, basado también en SSD. ‘Métodos basados en correspondencia de regio- nes. Los métodos —basados~en_—_corresponden- cia [Anadan, 1989], [Burt et al., 1983), [Glazer et al., 1983], [Little et al, 1988) oy encuentran el {u,v} entre dos [Little & Verri, 1989], localmente vector de desplazamiento V = imégenes 91 y gp para una cierta posicién r minimizando la funcién SSD SSDV) = Y w(s) x [m (r+ 8) — 92 (r +8 +V)P ow les) donde w(s) es la funcién de pesos. En esta funcién SSD, Ia suma es llevada a cabo es una ventana de tamafio (2k + 1)? centrada en r = [x,y] y 8 son los puntos dentro de w. Muchos métodos basados en correspondencia reali- zan una biisqueda de un vector de desplazamiento {u,] en un conjunto finito de pares y seleccionan aquel par que minimice la funcién SSD. Este método no tendré problemas con derivadas pero la exactitud del método esta limitada por la discretizacién del espacio de biisqueda. Mfinimos cuadrados Este método es aplicado por [Lucas & Kanade, 1981] y (Tomasi & Kanade, 1991]. El problema consiste en encontrar ol desplazamiento 7 = [2,4] que minimiza el residuo = 5 2 © [om (m+ 7) ~ gnea (rd] a donde W, (W CL) es una pequetia, ventana de la ima- gen, centrada en el punto para el cual deseatnos calc Jar el FO. Aplican expansion en serie de Taylor y ob- tienen wn sistema sobredeterminado Dagn(r1) Dygn (r1) —Degn (11) DzGn n (ra) Dyn (2) | fa —DiGn (72) El-| Dada (m) Dade Fm) Din (rm) en forma matricial cuya solucién es la solucién de mfnimos cuadrados da- do por V=[aTa]' ate (6) Debido al problema de la apertura, cuando se quie- re realizar el seguimiento de un objeto (Traking), no todos los puntos son buenos candidatos. En [Shi & Tomasi, 1994] proponen utilizar la informacién de la matriz. [GTC], conocida también como tensor de estructura para determinar los mejores puntos para. realizar seguimiento. Llaman a Ai y Ao los eigenvalo- res de [G7G} y consideran que un punto es candidato @ representar una caracterfstica para seguimiento si min [A1, 2] > Ac, donde 2, es un umbral, de acuerdo con esto, las esquinas de los objetos en movimiento son. buenos puntos para realizar seguimiento. F Calderon Solorio, J. L. Marroquin Zaleta: Un Nuevo Algoritmo para el Célculo de Flujo Optico y su Aplicacién al Registro... Existirdn algunos casos donde la hipétesis de tras- lacién pura no es suficiente. En tal caso plantean una transformacién afin que tiene la capacidad de manejar escalamiento, cizallamiento, rotacién, etc. modifican- do los pardmetros de una matriz A y traslacién en un vector V en un sistema de la forma DY bon (Are + V) = dna (re)? iow ‘como se presenta en [Tommasini et al., 1998] ‘La solucién de mfnimos cuadrados tiene el incon- veniente de ser sensible a los datos atfpicos (ou- tlier). Una manera de resolver el sistema plan- teado por (6) sin tener problemas con datos atfpi- cos es utilizar métodos como “E] mfnimo de la me- diana de los cuadrados” (Least Median of Squa- res Regression ver [Rousseeuw, 1984] ) como propone [Bab-Hadiashar & Suter, 1996). SSD-Spline En [Szeliski & Coughlan, 1994] utilizan la funcién SSD y un modelo bidimensional de interpolacién (spline) para representar el flujo éptico, la funcién resultan- te la minimizan utilizando el algoritmo de Levenberg- Marquardt [Scales, 1984]. En este esquema solo es ne- cesario resolver para un subconjunto de pixeles a los que denominan puntos de control y la solucién sobre os demas puntos se calcula utilizando funciones de in- terpolacién. SSD-BR, En (Lai & Vemuri, 1998] adicionan un término de re~ gularizacin, a la ecuacién (5), sobre la magnitud del gradiente del vector de velocidad |VVj| (como en [Horn, 1986]) y una heuristica para normalizar las de- rivadas de la imagen respecto al vector de velocidad, dada por: 1 G@rG+9 ° donde _ 1m (re+Vi) , Age (ri)] Gi=5 on Oe, 1 [gi (rs + Vi) , Og2(ri)] eu= 9 [ ay ou | y ces una constante para evitar gradientes inconsi tentes. Consideran que el factor de normalizacién (7) es constante en cada iteracién y lo actualizan con los valores de (u;,2) de la iteracién anterior. Finalmente llegan a un sistema de ecuaciones dado por Dogs (ri + Vi) donde D, = 38; y Dy = 3; . Dicho sistema lo resuelven utilizando Gradient Conjugado no-lineal {Gill et al., 1981]. Bn [Lai & Vemuri, 1998] mnestran experimentalmente, que este algoritmo supera a todos los algoritmos analisados en [Barron et al., 1994] Algoritmo SSD-ARC. Tener precisidn en el calculo de las derivadas numéri- cas resulta imposible debido al ruido o porque se tiene ‘un pequefio mimero de marcos, y utilizar la expansién en serie de ‘Taylor limita a resolver desplazamientos pequefios. En estos casos los métodos basados en de- rivadas son inapropiados y es natural pensar en un método basado en correspondencia de regiones. Pero si lo que queremos es un método que calcule el flujo 6ptico en toda la imagen, resulta impractico limitar a una ventana y a un conjunto finito de valores. Por otro lado los algoritmos basados en Agrupa- miento resuelven tnicamente translaciones y su preci- sién esta limitada por la discretizacién del espacio de biisqueda, al igual que los algoritmos basados en Ener- gia espaciotemporal requeriran de mas de dos marcos de la secuencia. En general los algoritmos SSD son sensibles a ruido; el método de [Lai & Vemuri, 1998] es el estado del arte en algoritmos de FO, ya que la heurfstica que propone Jo hace robusto, sin embargo, esta heuristica dificulta su interpretacién y no esta basado en la minimizacién de una funcién de energfa. En este trabajo proponemos un nuevo algoritmo ro- busto al ruido, que resuelve grandes desplazamiento, utiliza informacién de solo un par de marcos y esta basado en la minimizacién de una funcidn de energfa. En nuestro enfoque hacemos una analogta fisica de la ecuacién (5), suponiendo que representa Ia energia potencial almacenada en un conjunto de resortes, don- de la longitud del resorte representa el error entre dos imagenes 91 (ri + Vi) y ga(rs) para un desplazamicn- to V; = [u,v], y una constante del resorte igual a dos, Nuestro propésito es minimizar la energfa total del sistema dada como la suma de la energia de cada resorte. Cuando tenemos ruido, la contribucién de un solo punto a la energia global puede ser muy grande, asf que, nos interesa tener un indicador para relajar la condicién del resorte y/o climinar su contribucién al error global. Para determinar qué puntos queremos eliminar proponemos usar como criterio una funcién basada en la magnitud del gradiente de las im4genes, ya que esta actiia como detector de bordes y ruido. “Asf pues para el calculo del FO, proponemos utili- zar una funcién de energfa basada en un sistema de F. Calderon Solorio, J. L. Marroquin Zaleta: Un Nuevo Algoritmo para ef Célculo de Flujo Optico y su Aplicacién al Registro... resortes con condicién de reposo adaptable (ARC por la siglas en inglés Adaptive Rest Condition), esta idea esta basada en [Rivera & Marroquin, 2000]. La forma mas general de la funcién de energia SSD- ARC es: Ussp-arc(V,)) = S>[E(Vi) -LHW)P (9) ta Mu 2 +4 Vive +ay re tL ta con AV) = [Van (ri + Va)L y E(V;) = 91 (rs + Vi) — ga (ri) donde E(Vj) es el término de error y depende del vee- tor de desplazamiento Vj y el producto de las funciones H(Vi) y li es la condicin de reposo del resorte, y es puesta de esta manera (como el producto J;H) para tener la posibilidad de controlarla con un pardmetro de regularizacién j1, La constante de regularizacién del gradiente “#, es puesta asf para simplificar la formu- laci6n final Nos interesa encontrar los valores de Vj y I; que mini- micen la funcién de energia Ussp—arc(V,!). Comen- cemos por minimizarla con respecto a 1;. Derivando e igualando a cero obtenemos: [B()) — LH(Y)| [-H (Vi) + a despejando obtenemos una formula cerrada para I; da- da por EW)HM) H+ IP) Ahora minimizamos con respecto a V;. Derivando e igualando a cero obtenemos: (BWV)) — bH(V))[VE(Vi) — LV (Vi) MS vs) GEN sustituyendo ¢l valor de J; en la expresin anterior ra - (2 emo = ii tw, donde V; es el promedio de los Vj para todos los j en la vecindad de i. Es importante notar en este momento que el pri- mer término de la ecuacidn (10), puede ser minimi- zado cuando encontramos los valores de Vj que ha- cen pequefio a (V;) pero si existe ruido en la image- nes g, no serd posible lograrlo. Note que la funcién (1 = ams) toma valores dentro del intervalo (0, 1 lo cual la convierte en una aproximacién a una funcién indicadora, que por supuesto debe tener informacién de los lugares con alto error. Tendremos error en luga- res con ruido y bordes ocluidos por lo que proponemios una funcién H(V;) basada en la magnitud del gradien- te. No es deseable que todas las observaciones sean eliminadas en puntos con gradiente alto por lo que seré importante el parémetro de regularizacién js pa- ra controlar las observaciones que deseamos descartar. Para solucionar el sistema de ecuaciones utilizamos la iteracién de Richardson (ver [Kelley, 1995]) para final- mente tener un esquema iterativo dado por: yee pp 2 BY) ‘ Xp) ve(vs") (11) 1 eo] mV) re vay) [a+] Note que las ecuaciones (8) y (11) son muy similares, pero a diferencia de método de (Lai & Vemuri, 1998] nuestras ecuaciones tienen un término que corrige el ‘campo vectorial utilizando informacién de la magnitud del gradiente de la imagen H(V;). Convergencia Para mejorar la convergencia del SSD-ARC, propone- mos dos estrategias, una basada en ol conocido espacio de escalas y otra-que proponemos y denominamos es- pacio de escalas paramétrico. Espacio de Escalas. Dado la nolinearidad de la funcién SSD se hizo una mo- dificacién al algoritmo SSD-ARC para trabajar en cl espacio de escalas (ver (Romeny, 1994), [Jahne, 1997). Para ilustrar como funciona el espacio de escalas ima- ginemos que el tamaiio de una imagen es 2* x 2% y definamos f() = g,. La representacién de f*) en un nivel grueso f(*—)) es definido por un operador de re- duccién el cual submuestrea la imagen suavizada con un filtro pasa bajas en la escala K. Tendremos que en la escala K ~ 1 la magnitud de los desplazamien- tos es la mitad de Ia magnitud de los desplazamientos en la escala K, condicién que nos permite mejorar el desempetio del algoritmo SSD-ARC ya que en cierto nivel K —m los desplazamientos serén pequefios y cer canos al valor inicial de “no movimiento”. En la figura 27 F.Calderén Solorio, J. L. Marroquin Zaleta: Un Nuevo Algoritmo para el Célculo de Flujo Optico y su Aplicacion al Registro Figura“1: Pirdmides Gaussianas de las dos imagenes que se desean registrar. 1 ilustramos como se leva a cabo el submuestreo de Ja imagen de fino a grueso, lo que en la literatura se conoce como pirémide gaussiana. Los pasos a seguir para aplicar este esquema son: 1- Damos un valor inicial para el FO v(*-m) = 0 y submuestreamos la imagen en una cierta escala m. 2.- Calculamos el FO en la escala m utilizan- do SSD-ARC 3.- Calculamos el valor inicial de FO en la escala m —1 utilizando funciones de interpo- lacién Nj,; (p. e. funciones bilineales) iy uD = a Ni gul—™ 7 of) = 2 gu Vie LE) y yj e Lm) 4 Hacemos m= m~1 y submuestreamos la imagen en esta escala. 5.- Sim =0 terminamos, si no regresamos @ 2 Espacio de escalas paramétrico. Otra posibilidad para calcular el FO es determinar un modelo de baja complejidad, por ejemplo una trans- formaci6n afin [Hearn & Baker, 1997]. El modelo afin permite modelar translaciones, rotaciones, escalamien- tos, cizallamiento y combinaciones de estos para dar modelos de movimiento mas complejos. El objetivo de utilizar una transformacién afin es modelar el FO 218 en toda la imagen. Para encontrar el modelo afin, re- plantemos la suma de diferencias al cuadrado en una ecuacién de energfa dada por: Une7(0) = 191(Mi8) — alr)!” tek (12) donde @ es el vector de pardmetros del modelo afin (seis variables) y M; la matriz. de coordenadas la cual esta dada por _ [aey%1 0 00) Mi = li booe| Para calcular el valor de @ que minimiza la ecua- ion (12) utilizamos el algoritmo de Ganss-Newton [Dennis & Schnabel, 1996] para el cual necesitamos dar las expresiones del gradiente y del Hessiano WU; (8) = [nn Me8) ~ g2(rs)] [MPV or (Mi8)] V?U; (8) = [Vou (Mi0)]” MiM? Voi (Mi0) y la solucién se realiza en un esquema iterativo dado por 0) = 9) Evn0%)| ik. 1 Vv) fa ‘De pruebas numéricas, concluimos que el célculo del FO utilizando un Modelo Paramétrico (MP) es mas ro- busto ante la presencia de ruido que el SSD-ARC. Es- to sugiere replantear el esquema multiescala planteado en la seccién , para pasar a un nuevo esquema donde vayamos de pocos pardmetros a muchos parémetros, lo cual definimos como espacio de escalas paramétri- co. El esquema es muy sencillo: primero calculamos el FO utilizando un modelo affn reducido (translacién pura), luego calculamos el FO con modelo afin, para finalmente refinar con el algoritmo SSD-ARC. El pro- pésito es aprovechar lo robusto del MP y acelerar la convergencia ya que el MP consume menos tiempo que el SSD-ARC. El esquema multiescala seguiré siendo valido en el caso particular de FO, pero en un trabajo de registro resulta mas inteligente aplicar esta nueva propuesta a la cual lamaremos SSD-ARC*. En la seccién , dare- mos algunos ejemplos de aplicacién de este algoritmo y en concreto los pasos son: L.~ Determinamos los parémetros de transla- cién (4,4) del modelo afin. 2.- Damos como valores iniciales a un modelo afin, un vector (1,0, 44,0, 1, 4») y calculamos el modelo afin completo [00,41, 02, 6s, 04,45 F Calderén Solorio, J. L. Marroquin Zaleta: Un Nuevo Algoritmo para ol Célculo de Flujo Optico y su Aplicacién al Registro 3. Finalmente refinamos con SSD-ARC ini- cializando el algoritmo utilizando el vector de pardmetros del modelo afin para calcular un campo vectorial VO ul] [1-6 6: | fx 4 [% || 6, 1-64} Lv] * (66. Aplicacién del SSD-ARC* al cdlculo de FO. Para probar el desempefio del SSD-ARC, creamos un par sintético a partir de una imagen con una. textura y en una pequefia drea de 30 x 30 pixeles se aplico un desplazamiento de 0.3, 0.3] (figura 2a). Los métodos qne comparamos son SSD-ARC (propuesto), SSD-BR. por ser el que da los mejores resultados hasta la fe- cha, y Hom que es uno de los métodos clésicos. Los pardmetros utilizados son Horn_| SSD-ARC* | SSD-BR x=10 | A=12 2 300 | los cuales fueron estimados empiricamente para obte- ner el mejor desempeiio posible en cada caso. La solucién para el flujo éptico, utilizando el méto- do de Horn, SSD-ARC y SSD-BR lo podemos ver la figura 2 (b), (c) y (d) respectivamente. El cuadro que se ve en las figuras corresponde al érea donde se aplico el desplazamiento, fuera de el no hay desplaza- miento alguno. Note que la solucin de Horn no se limita al drea desplazada, mientras que las soluciones del SSD-ARC y SSD-BR si estén limitadas al cuadro de movimiento y son muy similares. En la tabla 1 podemos ver el promedio del error angular (ver [Fleet, 1992], [Barron et al., 1994] y [Lai & Vemuri, 1998]), para los métodos motivo de andlisis, note que el algoritmo SSD-ARC* pre- senta el valor més bajo de error angular. En [Lai & Vemuri, 1998] describen el algoritmo SSD-BR. y lo comparan contra los métodos del estado del arte citados en el trabajo de [Barron et al., 1994), ahi mis- mo, hacen notar que este tiene el mejor desempeiio. Consideramos que al comparar contra el método SSD- BR y ver que tenemos resultados similares la compa- racién contra todos los algoritmos es innecesaria. Un ejemplo con secuencias reales es el dela secuencia, estdndar del Taxi de Hamburgo, de la cual tomamos Jos marcos el 14 y el 15, ya que la solucién es calculada sobre un par de imagenes. Los pardmetros utilizados fueron \ = 12, 4 = 300 y 2 escalas. En la figura 3 ‘tenemos en (a) y (b) los marcos 14 y 15 de la secuencia, en (c) el FO obtenido con el algoritmo SSD-ARC y en (@) ta magnitud del FO. (c) (a) Figura™2: (a) Par sintético, (b) Solucién utilizando Horn, (c) Solucién con SSD-ARC y (d) Solucién utili- zando SSD-BR. error | desviacién Método | promedio | estandar_| | Horn 1.708005° | 3.723422° ) SSD-BR | 0.758651° | 2.004121" SSD-ARC* | 0.731253" | _1.832659° ‘Tabla 1: Error promedio para los métodos de Horn, SSD-BR y SSD-ARC* 219 F alderén Solorio, J. L. Marroquin Zaleta: Un Nuevo Algoritmo para el Célculo de Flujo Optice y su Aplicacién al Registro .. Error | Algoritmo | plar SSD-BR 2.381517 | 2.667920 | SSD-ARC_ | 2.740798 | 2.985091 SSD_ARC* | 2.544793 | 2.966862 Tabla 2: Error angular promedio para la secuencia del arbol divergente Figura”3: Taxi de Hamburg. (a y b) Marcos Id y 15 de la secuencia, (c) campo vectorial de Flujo Optico y (d) Magnitud del FO. Otras secuencia esténdares con las que probamos nuestro algoritmo fueron: la del Arbol divergente (fi- gura 4), Parque Yosemite (figura 5, ) y el jardin de la Flores (figura 6) (la dos primeras secuencias son sintéticas y la tiltima es real). Para cada una de ellas tenemos en en las figuras (a) y (b) dos cuadros de la se- cuencia motivo del andlisis anslisis a los que amamos origen y destino respectivamente, en (c) la reconstrue- cin utilizando la imagen origen y el campo vectorial de FO y en (d) la direccién del campo vectorial FO y/o la magnitnd de este. En todas estas secuencias se utilizaron los siguientes pardmetros \ = 20, 1 = 300 y 3 escalas. Note que todas las recostrucciones (figuras 4-(c), 5-(c) y 6-(c)) utilizando las imagenes origen y el campo vectorial de FO son de muy buena calidad. Para la secuencia del arbol divergente, dado que te- nemos el campo vectorial de finjo pt el error angular promedio y la desviacién estandar pa- ra el algoritmo SSD-BR, SSD-ARC y SSD-ARC* los cuales se presentan en la tabla 2. calculamos Figura“4: Arbol divergente. (a y b) Marcos 20 y 21 de la secuencia, (c) Reconstruccion del Marco 21 uti- lizando la informacién del marco 20 y el campo de FO calculado con SSD-ARC y (d) Campo Vectorial de FO calculado. Figura“5: Secuencia del Parque Yosemite. (a y b) Marcos 9 y 10 de la secuencia, (c) Reconstruccion del Marco 10 utilizando la informacion del marco 9 y cl campo de FO caleulado con SSD-ARC y (d) Campo Vectorial de FO calculado. F Calderén Solorio, J. L. Marroquin Zaleta: Un Nuevo Algoritmo para el Calculo de Flujo Optico y su Aplicacién al Registro ... Figura™6: Secuencia del Jardin de Flores. Marcos 5 y 6 de la secuencia, (c) Reconstruccion de! Marco 6 utilizando la informacién del marco 5 y el campo de FO calculado con SSD-ARC y (d) Magnitud del Campo Vectorial de FO. (ay b) Aplicacién del SSD-ARC* a Registro de Imagenes. El problema del registro es similar al problema de flujo 6ptico cuando se dispone de un solo par de marcos de la secuencia, pero a diferencia de este, cuando se re- gistran imagenes las deformaciones son més grandes. Las imagenes que nos interesan corresponden a tejidos humanos y son obtenidas con equipos de Resonancia ‘Magnética (RM). La captura del par de imdgenes se realiza a intervalos de tiempo que son mucho mayores que el tiempo entre pares de marcos de una secuencia de video; incluso, en muchas ocaciones se trata de re- gistrar imagenes de cerebros de diferentes individuos. Por lo tanto, necesitamos un algoritmo que sea robusto al ruido e inhomogeneidades producidas por el equipo de RM, que estime deformaciones grandes y que ma- neje solo pares de imagenes. El problema de registro consiste en encontrar una, transformaciéa punto a punto, que nos permita su- perponer dptimamente la imagen origen en la imagen destino. Implicitamente esta transformacién nos da el FO entre ambas imagenes, de ahf que consideremos que ambos problemas son similares. Dado lo robusto del algoritmo SSD-ARC* y que es capaz de trabajar Yinicamente con un par de cuadros, utilizaremos este para realizar la tarea de registro. Ejemplo con imagen sintética. Para evaluar el desempefio de los algoritmos de registro SSD-ARC*, SSD-BR y SSD-Spline, y los algoritmos de registro paramétrico con modelo afin (RP-A) y trans- Figura”7: Par sintético. A la izquierda tenemos la imagen origen (cuadro) y a la derecha la imagen des- tino (cireulo). 1200 1200 50 mseg. sO ‘Tabla 3: Tiempos de ejecucién comparativos para di- ferentes algortimos de registro lacién (RP-T), creamos un par sintético que podemos ver en la figura 7. Dado que se trata de una imagen binaria, como me- dida de comparacién no utilizaremos la suma de las diferencias al cuadrado sino una medida de calidad de puntos registrados, la formula para dicho célculo es, _ tRns| = {RUS| R= {ri | g(r) =Ch y $= {8 | gm (ri) =C} donde gp es la imagen destino, gm, es la imagen cal- culada (a partir de g, y V) y C es un atributo (en este caso, nivel de gris). Note que el indice toma va- lores entre cero y uno, cero cuando los conjuntos son disjuntos y uno cuando son iguales. Comparamos el desempeiio de los algoritmos men- cionados cuando se adiciona ruido Gaussiano con me- dia cero y desviacién estandar variable N (0,0). En la figura 8 podemos ver la gréfica del indice de pun- tos registrados contra el nivel de ruido representado por la desviacién estiindar o (a = 0 significa image- nes sin ruido). Note que el algoritmo SSD-ARO* tiene un mejor comportamiento que los métodos motivo de la comparacién especialmente en presencia de ruido. Los tiempos de ejecucidn para estos algoritmos, en una computadora Pentium IIT a 760 MHz los podemos ver en la tabla 3, rT Ejemplo con imégenes reales. ‘Tenemos un par de imagenes correspondientes a un corte de una imagen de resonancia magnética, del ce- rebro de una rata con hidrocefalia. En la figura 9-(a) 221 F. Calderén Solorio, J. L. Marroquin Zaleta: Un Nuevo Algoritmo para el Céilculo de Flujo Optico y su Aplicacién al Registro ... Figura” 8: Indice comparativo de segmentacién contra nivel de ruido, (imagen origen) vemos el cerebro inflamado y en la fi- gura 9-(c) (imagen destino) la imagen del cerebro en condicién normal para el mismo animal. El experimen- to consistié en realizar el registro de estas dos imagenes (figs. a y c) utilizando el algoritmo SSD-ARC* con los siguientes parametros 4 = 1 y = 3000. En la figura 9-(b) vemos la imagen origen deformada con el FO calculado con SSD-ARC* y en la figura 9-(£) el error de registro, el cual resulta de sumar las dife- rencias al cuadrado entre las figuras 9-(b) y 9-(c). El campo de deformaciones puede utilizarse para estudiar el patron de inflamacién del cerebro de la rata, por lo cual, decidimos presentarlo en forma de reticula para mayor comprensién. En las figuras 9-(d) y 9-(e) tene- mos una reticula de referencia y esta misma reticula deformada con el FO calculado. Este experimento de registro se repiti6 pero adicio- nando rnido Gaussiano con media cero y desviacién estandar 50. Los resultados del registro los podemos ver en la figura 10 y la descripcién de la imagenes es similar a la figura 9. ‘También realizamos un experimento de registro de una imagen de resonancia magnética (MRI) de una cabeva humana (a la que demominamos especimen) y una imagen estdndar (atlas o patrén), Ia cual, esta Aisponible en [http:/wwwfil.ion.ucl.ac.uk/spm]. En la figura 11 podemos ver un corte axial de la cabeza con los resultados del registro (los parémetros utilizados son = Ly 4 = 3000). En la figura 11-(a) tenemos la imagen patrén, en la figura 11-(b) la imagen patrén deformado, en 11-(c) la cabeza del espécimen destino, en las imagenes 11-(d) y (¢) la retfcula de referen y el campo de deformaciones aplicado a esta, y final- mente en 11-(f) el error de registro. Podemos utilizar el campo vectorial de deformacio- nes para realizar el “pelado” automtico del cerebro, 22 Figura~9: Bjemplo con cerebro de rata. (a) Imagen origen, (b) imagen destino, (c) reconstruccién utili zando la imagen origen y el campo de FO caleulado con SSD-ARC*, (d) reticula de referencia, (e) reticn- la deformada utilizando el FO calculado y (f) error al restar las imagenes (a) y (c) Figura~10: Ejemplo con cerebro de rata, adicionando ruido con media coro y desviacién estindar 50. (a) Imagen origen, (b) imagen destino, (c) reconstruccién utilizando la imagen origen y el campo de FO calculado con SSD-ARC*, (d) retfcula de referencia, (e) reticula deformada utilizando el FO calculado y (f) error al restar las imagenes (a) y (c). F Calderén Solorio, JL. Marroquin Zaleta: Un Nuevo Algoritmo para of Célculo de Flujo Optico y su Aplicacién al Registro .. Figura“ 11: Ejemplo con cerebro humano. (a) Imagen atlas cerebral (origen), (b) atlas cerebral deformado, (c) especimen a registrar (destino) (d) retfcula de re- ferencia, (e) retfcula deformada utilizando el FO cal- culado y (f) error al restar las imagenes (b) y (c). es decir, separar el cerebro de la estructura ésea, piel, grasa, etc. En la figura 12-(a) tenemos la cabeza pa- trén donde se marcaron manualmente Jas fronteras de la mascara (fig. 12-(c)) que indica la posicién del ce- rebro. La mascara para el espécimen (fig. 12-(d)) es calculada a partir del campo de deformaciones obteni- do del registro entre las dos cabezas. Finalmente en la figura (b) podemos ver las fronteras de esta mascara sobre el espécimen; note como los bordes de la mascara empatan muy bien con los detalles del cerebro. Las ecuaciones (11) correspondientes al algoritmo SSD-ARC, fueron puestas en forma vectorial para me- jor comprensién y facilitar la implementacién de éste en cualquier espacio n-dimensional. En el caso particu- lar de registro de MRI de cabezas humanas se imple- mento el algoritmo en tres dimensiones y en las figuras solo se muestra un corte axial. Conclusiones. Hemos presentado un nuevo algoritmo para el calcul del flujo Optico basado en SSD con una condicién de reposo adaptable. De las pruebas numéricas realizadas con imagenes sintéticas e imagenes reales se puede ver Jo robusto del método ya que se utilizaron los mismos pardmetros y jc en presencia de ruido. En las pruebas lo comparamos con los algoritmos SSD-BR y SSD-spline, los cuales son considerados los mejores del estado del arte para el célculo de FO. () @ Figura~12: Segmentacién del cerebro utilizando la mascara del cerebro patron. (a) Frontera entre cerebro ¥ no cerebro para el atlas, (b) Frontera entre cerebro ¥ no cerebro calculada para el espécimen, (c) mascara pata indicar la posicién del cerebro en el atlas, y (4) ‘Mascara obtenida a partir de (c) y el campo de FO calculado con SSD-ARC* Propusimos al SSD-ARC como algoritmo de registro y la introduccién del espacio de escalas espacial y pa- ramétrico dieron finalmente un algoritmo muy robusto al que lamamos SSD-ARC*. Es importante hacer notar que el algoritmo SSD-BR es similar al SSD-ARC, sin embargo, el SSD-BR. esta basado en una heuristica mientras el SSD-ARC esta basado totalmente en la minimizacién de una funcién de energfa, lo cual permite en principio, utilizar algo- ritmos de minimizacion més eficientes computacional- mente, Estamos satisfechos con los resultados obtenidos pe- ro la restriccién de suavidad tinicamente nos permite calcular campos vectoriales suaves, condicién que li- mita el tipo de flujos épticos que podemos analizar. En investigaciones futuras trataremos de encontrar un nuevo enfoque y/o restriccién que nos permita resolver campos de deformaciones que no sean necesariamente staves. Agradecimientos. Este trabajo fué financiado en parte por el Consejo Nacional de Ciencia y Tegnologia (CONACYT, Mexi- 0), Felix Calderdn fue financiado por la beca 119039 y Jost Luis Marroquin por el proyecto 34575-A Las imagenes de la figura 9 fueron proporcionadas por el Dr. B. C. Vemuri. F. Calderén Solori J. L, Marroguin Zaleta: Un Nuevo Algoritmo para ef Célculo de Flujo Optico y su Aplicacién al Registro ... Bibliografia Adelson, E, H. & Bergen, J. R., 1986. The extraction of spatiotemporal energy in human and machine vision. Proc. IEEE Workshop on Visual Motion, Charleston, pp.151—156. Anadan, P., 1989. A computational framework and an algorithm for the-—s measurement —of visual motion. Intern. J. Comput., 2, 283—310. Bab-Hadiashar, A. & Suter, D., 1996.Robust optic flow estimation using least median of squares. IEEE International Conference on Image Processing ICIP96. Barman, H., Haglund, L., Knutsson, H., & Granlund, G, 1991. Estimation of velocity, acceleration and disparity in time sequences. Proc. IEEE Workshop on Visual Motion, Princeton, pp.44—S1 Barron, J. L., Fleet, D. J., & Beauchemin, S. S., 1994, Performance of optical flow techniques. International Journal of Computer Vision, 12:1, 43-77. Bigua, J., Grandlund, G., & Wiklund, J., 1991 Multidimensional orientation estimation with applications to texture analysis and optical flow. IEEE Trans. Patt. Anal Mach, 13, 775—190. Burt, P. J., Yen, C., & Xu, X., 1983. Multiresolution flow- through motion analysis. Proc. Conf Comput. Vis. Patt. Recog, pp. 246—252 Dennis, J.B. & Schnabel, R.B., (1996). Numerical Methods for Unconstrained Optimization and Nonlinear Equiations. Philadelphia: Society for Industrial and Applied Mathematics, siam. Metodos de Newton en gral. Fennema, C. & Thompson, W., 1979. Velocity determination in scenes containing several moving objects. Comput. Graph. Image Process, 9, 301—3 Fleet, D.J., 1992 Measurement of image velocity. Khower Academic Publishers: Norwell, MA Gill, P. E., Murray, W., & Wright, M. H., 1981. Practical Optimization. London, New York: Academic Press. Glazer, F., Reynolds, G, & Anadan, P., 1983. Scene matching through hierarchical correlation. Proc. Conf: Comput. Vis. Patt, Recog., pp432—411 Haglund, L., 1992. Adaptive Multidimensional Filtering, PhD thesis, Dept. Electrical Engineering Univ. of Linkoping. Hearn, D. & Baker, M. P., 1997. Computer Graphics C Version. Simon and Schuster / A Viacom Upper Saddle River, New Jersey 07458: Prentice Hall, Inc., second edition. Heeger, D.J., 1987. Model for the extraction of image flow J. Opt. Sov. Am. A, 4, 1455—1471, Horn, B. K. P., 1986. Robor Vision. Cambridge, Massachusetts: MIT Press, second edition. Chapter 12. Jahne, B. ,1987. Image secuence analysis of complex physical objects: Nonlinear small water surface waves. Proc. Ist Intern, Conf, Comput. Vis. London, pp. 191200. Jahne, B., 1997. Digital Image Processing. Concepts, Algorithms and Scientific Applications. Berlin Heidelberg Springer-Verlang. Kelley, C. T., 1995. [erative Methods for Linear and Nonlinear Equations, volume 16, Philadelphia. USA: Society for Industrial and Applied Mathematics. SIAM. Iteracion de Richarson, Lai, S.-H. & Vemuri, B.C., 1998, Reliable and efficient computation of optical flow. International Journal of Computer Vision, 29(2), 87—108. Little, J. J., Bulthoff, H. H., & Poggio, T.A., (1988). Parallel optical flow using local voting. Proc. 2nd Inter. Conf. Vis. pp. 454—459. Little, J. J. & Verri, A., 1989. Analysis of differential and matching methods for optical flow. IEEE Workshop on Visual Motion, pp. 173—180. Lucas, B. & Kanade, T,, 1981. An iterative image registration technique with an application to stereo vision. Proc. DARPA. Image Understanding Workshop, pp. 121—130 Nagel, H. H., 1983. Displacement vectors derived from second-order intensity variations in image sequences. Comput. Graph. Image Process, 21, 8517. Nagel, H. H., 1987. On the estimation of optical flow Relations between different approaches and some new results. Artificial Intelligence, 33, 299—~324 F. Calderén Solorio, J. L. Marroquin Zaleta: Un Nuevo Algoritmo para el Célculo de Flujo Optico y su Aplicacién al Registro ... Nesi, P., Bimbo, A. D., & Ben-Tzvi, D., 1995. A roboust algorithm for optical flow estimation. Computer Vision and Image Understanding, 62, 5\—60. Rivera, M. & Marroquin, J. L., 2000. The adaptive res condition spring system: An edge-preserving regularization techique. /EEE Int. Conf. on Image Processing (ICIP-2000) IEEE Signal Processing Society, Vancouver, BC, Canada, Ml, 805807, Romeny, B. M. T. H., 1994, Geometry-Driven Diffusion in Computer Vision, Dordrecht, The Netherlands: Kluwer Academic Publishers. Rousseeuw, P. J., 1984. Least median of squares regression. Journal of the American Statistical Association, 79, 871 — 880. Seales, L. E., 1984, Introduction to Non-Linear Optimization. Liverpool. UK: Department of Computer Seience University of Liverpool Schunck, B. G, 1989. Image flow segmentation and estimation by constraint line clustering, IEEE Trans. Pattern Anal. Mach. Inuell., 11, 10101027. Shi, J. & Tomasi, C., 1994, Good features to track, [EEE Conference on Computer Vision and Pattern Recognition “VPRO4, pp 593600. Szeliski, R. & Coughlan, J., 1994. Spline-Based Image Registration. Technical Report 94/1, Harvard University, Department of Physics, Cambridge, Ma 02138 Tomasi, C. & Kanade, T,, 1991. Detection and Tracking of Point Features. Technical Report CMUS-CS-91-132, Camegie Mellon University, Tommasini, T., Fuiello, A., Trucco, E., & Roberto, V., 1998. Making good features track better, Computer Vision and Pattern Recognition CVPR, pp. 178182 Tretiak, O. & Pastor, L., 1984. Velocity estimation from image sequences with second order differential operators, Proc. 7th Intern, Conf. Patt. Recog. Montreal, pp. 20—22. Uras, S., Girosi, F., Verri, A., & Torre, V., 1988, A ‘computational approach to motion perception. Biol. Cybern, 60, 7997. 225 F Calderén Solorio, J, L. Marroquin Zaleta: Un Nuevo Algoritmo para el Calculo de Flujo Optico y su Aplicacién al Registro Félix Calderon Solorio, es profesor e investigador de ta Divisién de Estudios de Posterado de la Facultad de Ingenieria Eléctrica de la Universidad Michoacana de San Nicolds de Hidalgo, Es profesor de las materias de programacién de computadoras, Procesamiento de Seales y Reconocimiento de Formas. Sus dreas de Interés son. Procesamiento Digital de Imagenes, Caleulo de Flujo Optico y Elementos Finitas. José Luis Marroquin Zaleta, es profesor-imvestigador y coordinador del Area de Ciencias de la Computactén det CIMAT. Sus dreas de interés son: Procesamiento de Imagenes y Fisién Computacional, Optimizacién, Disefto asis- ido por computadora. Trabajo en: Andlisis de Patrones deFranjas: Restauracién y Segmemacién de imdgenes; rofundidad a partir de imagenes estereoscépicas; regularizacién preservando bordes; registro de imagenes; téeni- cas de Monte Carlo con cadenas de Markov y Sistemas entre otras. 226

También podría gustarte