Técnicas de procesamiento de imágenes estereoscópicas.pdf

21
 TÉCNICAS DE PROCESAMIENTO DE IMÁGENES ESTEREOSCÓP ICAS José Miguel Guerrero Hernández, Gonzalo Pajares Martinsanz, María Guijarro Mata-García Departamento de Ingeniería del Software e Inteligencia Artificial Universidad Complutense de Madrid Resumen En los últimos años ha crecido sustancialmente el desarrollo de aplicaciones enfocadas a la tecnología de Visión por Computador, cuyo objetivo principal es proporcionar al sistema de las sensaciones realistas del mundo. Uno de los conceptos que caracteriza la Visión por Computador es la sensación tridimensional que se consigue mediante la obtención de imágenes estereoscópicas generadas por dos cámaras, las cuales adquieren dos imágenes distintas de la misma escena. En este artículo se presenta una revisión de métodos para correspondencia estereoscópica con el fin de tratar de encontrar el mejor de los posibles además de mejorarlo. Se aprovechan las bondades de los algoritmos estudiados para la realización del nuevo método buscado. Se utiliza técnicas de suavizado comunes tales como la media o la mediana junto con un método de enfriamiento simulado y otro de propagación que se ha creado expresamente para este fin. Los resultados de estas dos técnicas se comparan con los métodos clásicos  previamente selecciona dos. Palabras clave: visión estereoscópica, correspondencia, filtro de la media, filtro de la mediana, propagación, enfriamiento simulado. Abstract In recent years developing applications focused on computer vision technology are appearing, and the main objective is supply realistic sensations of the world to the system. One of the concepts that characterize the Computer Vision is the three-dimensional sense obtained by capturing images generated by two stereoscopic cameras, which acquire two images of the same scene. This paper presents a revision of classical methods in stereovision matching. This is intended for selecting the best approach and to improve its performance. It takes advantage of the benefits of the algorithms used to perform a new method to improve outcome. It uses common filtering techniques such as mean or median along a simulated annealing technique and a spread that has been created as a research contribution. The results of these two techniques are compared with classical methods which are previously selected. Key words: stereoscopic vision, average filtering, median filtering, propagation, simulated annealing. 1. Visión estereoscópica La visión estereoscópica constituye un procedimiento para la obtención de la forma de los objetos en la escena. En este caso la forma se determina a través de la distancia de los objetos en relación con un sistema de referencia por lo que se trata de un método para la obtención de la tercera dimensión. Para la obtención de la estructura de la escena, existen dos tipos de métodos: activos y  pasivo s. Los métodos pasivos son aquellos que intervienen externamente sobre la escena, bien iluminándola o bien enviando un haz energético, tales como sensores de ultrasonidos, luz estructurada, triangulación, telémetro de tiempo de vuelo, etc. Por el contrario, los pasivos no actúan sobre la escena, siendo la visión estereoscópica, el principal método que constituye el objetivo final de estudio en este trabajo.

Transcript of Técnicas de procesamiento de imágenes estereoscópicas.pdf

  • TCNICAS DE PROCESAMIENTO DE IMGENES ESTEREOSCPICAS

    Jos Miguel Guerrero Hernndez, Gonzalo Pajares Martinsanz,

    Mara Guijarro Mata-Garca

    Departamento de Ingeniera del Software e Inteligencia Artificial

    Universidad Complutense de Madrid

    Resumen

    En los ltimos aos ha crecido sustancialmente el desarrollo de aplicaciones enfocadas a la tecnologa

    de Visin por Computador, cuyo objetivo principal es proporcionar al sistema de las sensaciones realistas del

    mundo. Uno de los conceptos que caracteriza la Visin por Computador es la sensacin tridimensional que se

    consigue mediante la obtencin de imgenes estereoscpicas generadas por dos cmaras, las cuales adquieren

    dos imgenes distintas de la misma escena.

    En este artculo se presenta una revisin de mtodos para correspondencia estereoscpica con el fin de

    tratar de encontrar el mejor de los posibles adems de mejorarlo. Se aprovechan las bondades de los algoritmos

    estudiados para la realizacin del nuevo mtodo buscado. Se utiliza tcnicas de suavizado comunes tales como la

    media o la mediana junto con un mtodo de enfriamiento simulado y otro de propagacin que se ha creado

    expresamente para este fin. Los resultados de estas dos tcnicas se comparan con los mtodos clsicos

    previamente seleccionados.

    Palabras clave: visin estereoscpica, correspondencia, filtro de la media, filtro de la mediana, propagacin,

    enfriamiento simulado.

    Abstract

    In recent years developing applications focused on computer vision technology are appearing, and the

    main objective is supply realistic sensations of the world to the system. One of the concepts that characterize the

    Computer Vision is the three-dimensional sense obtained by capturing images generated by two stereoscopic

    cameras, which acquire two images of the same scene.

    This paper presents a revision of classical methods in stereovision matching. This is intended for

    selecting the best approach and to improve its performance. It takes advantage of the benefits of the algorithms

    used to perform a new method to improve outcome. It uses common filtering techniques such as mean or median

    along a simulated annealing technique and a spread that has been created as a research contribution. The results

    of these two techniques are compared with classical methods which are previously selected.

    Key words: stereoscopic vision, average filtering, median filtering, propagation, simulated annealing.

    1. Visin estereoscpica La visin estereoscpica constituye un procedimiento para la obtencin de la forma de

    los objetos en la escena. En este caso la forma se determina a travs de la distancia de los

    objetos en relacin con un sistema de referencia por lo que se trata de un mtodo para la

    obtencin de la tercera dimensin.

    Para la obtencin de la estructura de la escena, existen dos tipos de mtodos: activos y

    pasivos. Los mtodos pasivos son aquellos que intervienen externamente sobre la escena, bien

    iluminndola o bien enviando un haz energtico, tales como sensores de ultrasonidos, luz

    estructurada, triangulacin, telmetro de tiempo de vuelo, etc. Por el contrario, los pasivos no

    actan sobre la escena, siendo la visin estereoscpica, el principal mtodo que constituye el

    objetivo final de estudio en este trabajo.

  • La visin estereoscpica toma como referencia el modelo estereoscpico biolgico

    donde el desplazamiento relativo de los ojos permite obtener la profundidad de los objetos o

    tercera dimensin mediante un simple proceso de triangulacin a partir de las dos imgenes

    generadas por el mismo objeto de la escena 3D en cada ojo. Esto se debe al hecho de que los

    ojos estn distanciados, esto hace que las imgenes de los objetos en sendos ojos se muestren

    desplazadas segn la distancia de los objetos a los ojos. Si se solapan las imgenes obtenidas

    en ambos ojos se obtiene la imagen de la Figura 1.1(b) en la que se observa que la separacin

    relativa entre las imgenes de los dos tringulos es menor que la separacin relativa entre las

    imgenes de las estrellas. Este fenmeno se explica por el hecho de que la estrella en la

    escena 3-D se encuentra ms prxima a los ojos que el tringulo. Estas separaciones relativas

    de los objetos en las imgenes obtenidas en cada ojo, es lo que se denomina disparidad y que

    es el centro de estudio de este trabajo.

    a

    b

    Figura 1.1 - (a) Sistema de visin estereoscpica biolgico; (b) Superposicin de las imgenes de ambos ojos, donde se observa la separacin relativa de cada objeto de la escena (a menor distancia,

    ms lejos se encuentra el objeto; a menor distancia, ms cerca est).

    En visin estereoscpica artificial generalmente se utilizan dos cmaras separadas

    entre s una cierta distancia relativa con las que se obtienen las correspondientes imgenes del

    par estreo. El procedimiento consiste en captar dos imgenes de una misma escena, cada

    imagen es capturada desde una posicin de las cmaras ligeramente diferente, por lo que las

    imgenes se presentan tambin ligeramente desplazadas entre s, siendo ste el fundamento

    bsico de la visin estereoscpica, ya que este hecho es el que va a permitir la obtencin de la

    distancia a la que se encuentra un determinado objeto.

    En la Figura 1.2 (a) y (b) se muestra un par de imgenes estereoscpicas originales

    captadas mediante un sistema de visin artificial con dos cmaras alineadas horizontalmente,

    de forma que los objetos en las imgenes slo presentan un desplazamiento horizontal y no

    vertical.

    La captura de las imgenes de la escena se puede obtener por alguno de los dos

    procedimientos siguientes:

    a) Alineando dos cmaras de forma que se siten ligeramente desplazadas en el espacio.

    b) Desplazando una nica cmara una cierta distancia y captando las imgenes en las diferentes posiciones de desplazamiento.

    En ambos casos la geometra del sistema puede disearse de forma que las cmaras

    tengan sus ejes pticos paralelos o convergentes. El modelo ms utilizado en visin artificial

    es el de ejes pticos paralelos.

  • (a) (b)

    Figura 1.2 - (a) Imagen original estereoscpica izquierda; (b) Imagen original estereoscpica derecha. Como se puede observar nicamente aparece un ligero desplazamiento horizontal debido a la posicin

    de las cmaras.

    2. Geometra del sistema estereoscpico

    Un sistema convencional est caracterizado por un par de cmaras con sus ejes pticos

    (ZI y ZD) mutuamente paralelos y separados por una distancia horizontal que se denomina lnea

    base, en la Figura 1.3 se identifica con el parmetro b. Las cmaras tienen sus ejes pticos

    perpendiculares a la lnea base y sus lneas de exploracin o epipolares paralelas a la lnea base.

    Las lneas epipolares son lneas que unen un mismo punto en la escena en las imgenes

    izquierda y derecha.

    Como se puede ver en la Figura 1.3 en este sistema de ejes pticos paralelos el

    desplazamiento entre los centros pticos de las dos cmaras es horizontal, esto se traduce en el

    hecho de que las imgenes de un punto determinado de la escena captado por ambas cmaras

    difiere solamente en la componente horizontal.

    Las Figura 1.3 muestra la geometra de un par de cmaras en estreo, representadas por

    sus modelos puntuales con sus planos imagen, II e ID reflejados sobre sus centros de proyeccin,

    OI y OD, respectivamente.

    El origen del sistema de coordenadas de referencia o del mundo est en O, siendo la

    longitud focal efectiva de cada cmara f, y la lnea base b como ya se ha definido

    anteriormente. Los ejes de coordenadas del mundo X, Y, y Z se sitan entre los ejes de ambas

    cmaras. Como consecuencia de la geometra de la imagen se obtiene la denominada

    restriccin epipolar, que ayuda a limitar el espacio de bsqueda de correspondencias, de

    manera que en el sistema de ejes paralelos convencional todos los planos epipolares originan

    lneas horizontales al cortarse con los planos de las imgenes. En un sistema con la geometra

    anterior se obtiene un valor de disparidad d, para cada par de puntos emparejados PI (xI, yI) y PD(xD, yD) dado por d = xI - xD.

  • P(X,Y,Z)

    Objeto

    Z

    XOI OD

    PI PDII(x,y) ID(x+d,y)f : Distancia focal

    b

    xDxI

    ZI ZD

    Distancia entre las

    lentes de la cmara

    Figura 1.3 - Representacin de la proyeccin estreo. Geometra de dos cmaras en estreo con ejes pticos paralelos desde una perspectiva superior.

    3. Obtencin de la distancia

    Considerando una relacin geomtrica de semejanza de tringulos, las coordenadas del

    punto de la escena P(X,Y,Z) pueden deducirse fcilmente sin ms que observar la Figura 1.3,

    obteniendo los resultados dados por la ecuacin (1.1). Se deduce a partir de la ecuacin (1.1)

    que cuando se utiliza esta geometra, la profundidad Z, es inversamente proporcional a la

    disparidad de la imagen y para una profundidad dada, a mayor b mayor d.

    2

    2

    : 2

    d

    2:

    II I

    I D

    DD

    D

    bX

    Z

    bX

    Z

    x f bO x X

    f Zfb fb

    x x ZZ d

    f bx Xx ZO

    f

    (1.1)

    4. Mtodos de correspondencia

    En visin estereoscpica se pueden distinguir dos grupos de tcnicas para establecer la

    correspondencia a partir de dos imgenes estereoscpicas: basadas en el rea (area-based) y basadas en las caractersticas (feature-based).

    Los mtodos basados en caractersticas restringen la bsqueda a un conjunto disperso

    de caractersticas. Se emplean propiedades simblicas y numricas de las caractersticas,

    obtenidas a partir de los llamados descriptores, los cuales se encargan de procesar y extraer

    caractersticas de una determinada imagen.

  • En los mtodos basados en rea, los elementos a comparar son ventanas de la imagen

    de dimensin fija, y el criterio de semejanza es una medida de la correspondencia entre las

    ventanas de las dos imgenes. El elemento correspondiente queda determinado por la ventana

    que maximiza el criterio de semejanza dentro de la regin de bsqueda. Dentro de este

    segundo grupo se pueden distinguir mtodos como: la suma de diferencias absolutas (Sum of

    Absolute Differences: SAD), la suma de diferencias al cuadrado (Sum of Squared Differences:

    SSD), la correlacin cruzada normalizada (Normalized Cross Correlation: NCC) y el

    coeficiente de correlacin de Pearson (Lpez-Valles y col., 2005; Pajares y Cruz, 2007;

    Kanade y Okutomi, 1994; Okutomi y Kanade, 1993; Matthies y col., 1988, 1989;

    Hirschmller y col., 2002).

    5. Medidas del error

    En este artculo se abordan distintos mtodos y tcnicas de procesamiento de imgenes

    estereoscpicas, en concreto se estudian los mtodos basados en la correlacin de Pearson, as

    como la minimizacin del error global de energa y la correspondencia estreo basada en lnea

    de crecimiento propuestas en Baykant (2008), y la correspondencia estreo basada en la

    segmentacin, estudiada en Klaus y col. (2006) e implementada por Lankton (2010). Adems,

    se estudian distintos tipos de filtrado que pueden ser aplicados a las imgenes obtenidas

    mediante las tcnicas anteriores, con el fin de suavizar los resultados obtenidos.

    Para poder comparar los algoritmos, se ha utilizado el porcentaje de error. Se trata de

    una simple comparacin entre la disparidad obtenida mediante estas tcnicas y la imagen de

    disparidad que se ha considerado como vlida, en base a la informacin proporcionada por los

    suministradores de las mismas, Middlebury (2010). Con ello, se obtiene el porcentaje de error

    que se comete al aplicar cada tcnica, contando el nmero de pxeles divididos entre el

    nmero de pxeles total (ecuacin 5.1)

    1 1 M N

    i j

    e

    M N (5.1)

    donde e es el nmero de errores que cumple: , ,real i j obtenido i j

    Adems de dicha medida de comparacin, se utiliza el Error Cuadrtico Medio. Esta

    funcin proporciona la medida de las diferencias en promedio de los valores obtenidos y los

    observados a partir de las imgenes de disparidad real (ecuacin 5.2). De esta forma no slo

    se puede comparar si son exactamente iguales ambas imgenes, sino que adems da un valor

    del error medio al cuadrado cometido por cada pxel de la imagen. Esto hace que aunque el

    porcentaje de error sea mayor en una determinada tcnica, si su error cuadrtico medio es

    inferior, dicha tcnica pueda ser mejor que aquella que obtiene un porcentaje de error menor y

    mayor error cuadrtico medio.

    2

    1 1

    , ,M N

    i j

    real i j obtenido i j

    M N

    (5.2)

    Por ello, hay que buscar el equilibrio correcto entre en el porcentaje de errores y el

    error cuadrtico medio, intentado que ambos sean lo ms pequeo posible.

  • 6. Correspondencia estereoscpica basada en la segmentacin

    En Klaus y col. (2006) se propone un algoritmo (Segment-based stereo matching) que

    utiliza la segmentacin del color en la imagen de referencia y una coincidencia auto-

    adaptativa del resultado que maximiza el nmero de correspondencias fiables, asignando un

    plano de disparidad a cada segmento en lugar de un valor de disparidad a cada pxel.

    El primer paso consiste en descomponer la imagen de referencia en regiones de color

    homogneo o escala de grises, asumiendo que los valores en esas regiones varan suavemente

    y que las discontinuidades de profundidad slo ocurren en los lmites de cada regin.

    Este mtodo est modelado por un conjunto de planos de disparidad. Un plano est

    definido por tres parmetros 1 2 3, ,c c c que determinan una disparidad d para cada pxel de la

    imagen de referencia 1 2 3d c x c y c .

    Debido a la gran cantidad de planos de disparidad que pueden existir, el nmero de

    stos se reduce a la obtencin de un conjunto representativo. Este procedimiento se realiza

    aplicando correspondencia local en el dominio del pxel seguido de una estimacin del plano

    de disparidad.

    Rectificacin de las lneas epipolares

    en las imgenes de entrada

    Mapa de disparidad

    Extraccin de las

    regiones homogneas en

    la imagen de referencia

    Aplicar correspondencia

    local basada en la ventana

    de vecindad

    Extraer un conjunto de

    planos de disparidad

    Aproximacin ptima del

    plano de disparidad

    asignado

    Figura 6.1 - Esquema del algoritmo de correspondencia estreo basada en segmentos, con imgenes de entrada, intermedias y resultados finales del mtodo propuesto.

  • Para la correspondencia local se define una ventana de agregacin y un resultado de

    correspondencia. En este enfoque se utiliza una medida auto-adaptativa para la disparidad que

    combina la suma de diferencias absolutas de intensidad (SAD) y una medida basada en el

    gradiente (GRAD) (ecuaciones 6.1 y 6.2).

    1 2( , ) ( , )

    , , , ,SADi j N x y

    C x y d I i j I i d j

    (6.1)

    1 2 1 2( , ) ( , ) ( , ) ( , )

    , , , , , ,x y

    GRAD x x y y

    i j N x y i j N x y

    C x y d I i j I i d j I i j I i d j

    (6.2)

    Donde ,N x y es una ventana 3 x 3 abierta alrededor de la posicin ,x y ; ,xN x y es una

    ventana alrededor de la posicin ,x y sin la columna de ms a la derecha; ,yN x y es una

    ventana alrededor de la posicin ,x y sin la fila inferior; x es el gradiente en x hacia la derecha;

    y es el gradiente en y hacia abajo. Las imgenes en color tienen en cuenta la

    suma de la medida de disparidad para todos los canales (R,G,B).

    Opcionalmente se introduce un peso entre SADC y GRADC que determina el nmero

    mximo de correspondencias fiables que son filtradas mediante una prueba de verificacin

    cruzada, eligiendo la disparidad que tiene menor coste de correspondencia. El resultado de la

    diferencia de similitudes viene dado por la ecuacin (6.3).

    , , 1 * , , * , ,SAD GRADC x y d C x y d C x y d (6.3)

    Para aumentar la precisin del plano de disparidad se establece, por repeticin, el

    plano adecuado para regiones agrupadas que estn en el mismo plano de disparidad:

    1) Se calcula el coste de correspondencia para cada asignacin del segmento al plano. Esto se calcula sumando el coste de correspondencia para cada pxel dentro del

    segmento S, ecuacin (6.4).

    ( , )

    , , ,SEGx y S

    C S P C x y d

    (6.4)

    donde P es un plano de disparidad que define la disparidad d.

    2) Se asigna a cada segmento el plano de disparidad con menor coste de correspondencia.

    3) Se agrupan los segmentos que son asignados al plano de disparidad.

    4) Se repite la estimacin del plano para todos los grupos de segmentos.

    En el paso final, se busca la solucin ptima para la asignacin del plano de disparidad

    al segmento. Por lo tanto, la correspondencia estreo se formula como un problema de

    minimizacin de energa para el etiquetado f , que asigna a cada segmento s R el plano

    correspondiente f s D . La energa para un etiquetado f viene dado por la ecuacin (6.5)

    data smoothE f E f E f (6.5)

  • donde

    ( , )data SEGs R

    E f C s f f

    (6.6)

    ( , ) |

    ,

    i j N i j

    smooth disc i j

    s s S f s f s

    E f s s

    (6.7)

    NS representa el conjunto de todos los segmentos adyacentes y ,disc i js s es un factor de penalizacin que incorpora la longitud de los bordes comunes y la media de similitud del

    color como se propone en Bleyer y col. (2005).

    7. Filtrado de imgenes

    Como se quiere un proceso automtico, y asumiendo que los algoritmos de visin

    estereoscpica pueden generar errores en el clculo de la disparidad, es conveniente recurrir a

    filtrados de los mapas de disparidad. Estos filtrados, pretenden reconocer qu valores pueden

    estar mal calculados y les da un valor acorde a su situacin en el mapa.

    7.1. Enfriamiento simulado (Simulated Annealing)

    Se asume que un valor de disparidad que difiere mucho del resto de vecinos en una

    ventana MxN, sigue siendo un valor errneo, por lo que el objetivo sigue siendo tratar de

    modificar estos valores. Este proceso utiliza una funcin de energa para la imagen, ecuacin

    (7.5), de esta manera se quiere minimizar este valor en cada paso del algoritmo. Es a esta

    minimizacin lo que se le llama Enfriamiento Simulado o Simulated Annealing. Esta tcnica ha sido utilizada por Pajares y Cruz (2004) para correspondencia en visin

    estereoscpica, si bien para segmentos de borde, por lo que de ella se toma simplemente la

    idea y la propuesta del algoritmo mostrado en la Figura 7.1, que a su vez se encuentra descrito

    en Duda y col. (2001).

    Acotar la imagen en el intervalo 1,1

    Repetir:

    1 1

    M N

    i ij j

    i j

    l w S

    11ii i

    lS f S

    T k

    Hasta k kmax 1k kE E aumentoEnergia U

    Desacotar la imagen a su intervalo inicial 0,dmax

    Figura 7.1 - Esquema del algoritmo de enfriamiento simulado

  • Los detalles del algoritmo mostrado en la figura 7.1 son los siguientes:

    1) Como entrada recibe el mapa de disparidad previamente calculado.

    2) Por cada pxel se genera un nodo, y ese nodo tendr un valor de estado iS

    correspondiente al valor de la disparidad en ese momento asociada al pxel que le

    corresponde.

    3) Los valores iS deben estar acotados en el intervalo 1,1 por lo que antes de aplicar el algoritmo, es necesario tratar la imagen. Para ello, se transforman los valores de los

    nodos mediante la ecuacin 7.1, que proyecta el rango 0,dmax al rango 1,1 . Siendo dmax el valor mximo de disparidad, que se corresponde con el valor mximo

    de los estados de los nodos de la imagen.

    2 1iiS

    Sdmax

    (7.1)

    4) Para la evaluacin de los pesos ijw se abre una ventana de vecindad MxN alrededor del

    nodo a tratar. Pese a que la imagen se trata como una red neuronal donde todos los

    nodos estn interconectados, nicamente influyen los nodos que pertenecen a la

    ventana de vecindad miN , por lo que para el resto de nodos que no pertenecen, se anula

    su peso.

    Sj = 22 22 22

    22 Si = 65 65

    21 21 21

    wij

    Figura 7.2 - Peso entre dos nodos

    1 11

    0

    k k mi j i

    ij m

    i

    S S j Nw

    j N

    (7.2)

    La ecuacin (7.2), tiene en cuenta la diferencia entre los valores de los estados de dos

    nodos ( iS y jS ), otorgando un valor mayor cuanto ms similares sean, asignando 1 en

    caso de ser exactamente iguales, y -1 en caso contrario, es decir, cuando uno tome el

    valor -1 y el otro 1, o viceversa.

    5) La funcin de temperatura T debe ser una funcin decreciente (ecuacin 7.3), en este caso depende del parmetro K que ser una constante y representa la temperatura

    inicial. Esta constante puede o no suavizar ms la curvatura, a medida que se aumenta

    K, disminuyen los valores y por lo tanto se enfra ms la red. Adems, la temperatura disminuye con las iteraciones k

    log( 2)

    KT k

    k (7.3)

  • 6) La funcin f (ecuacin 7.4) es la encargada de modificar el valor obtenido de dividir

    el sumatorio de los pesos de sus vecinos entre la temperatura actual de la iteracin.

    Esta funcin acota en el intervalo 1.313,1.313 y utiliza como base la tangente hiperblica (tanh). Este valor viene determinado por la necesidad de que

    aumente/disminuya el valor de la operacin de divisin anterior. Tras varias pruebas y

    ensayos, la inversa de la tangente hiperblica de 1 es el valor que mejores resultados

    ha, haciendo que los valores ms bajos disminuyan su valor inicial, y que los valores

    ms altos aumenten, dejando fijos los valores para los cuales se acot la imagen en el

    punto 2. De esta forma, los valores de 0, -1 y 1 mantienen su valor, modificndose

    nicamente los valores comprendidos entre 1,0 y 0,1 .

    tanh( )( ) 1.313 tanh( )

    tanh(1)

    xf x x (7.4)

    7) La funcin de energa (ecuacin 7.5) se emplea como criterio de parada del algoritmo, que bajo el enfoque del enfriamiento simulado debe ser decreciente y adems

    mantenerse por debajo de un cierto valor umbral U, que ha sido fijado a 2 en los

    experimentos. Para todos los nodos i de la red, se calcula la energa de la ventana de

    vecindad, la cual se va acumulando para obtener la energa global de la imagen. Pese a

    que la funcin deber disminuir, en algn momento puede aumentar para salir de un

    mnimo global, pero en caso de que aumente en sucesivas iteraciones, o que al

    disminuir lo haga por debajo de un rango , se detiene el algoritmo. De esta forma se pretende ahorrar tiempo y coste computacional.

    1 1

    1

    2

    M N

    i i ij j

    i j

    E E w S

    (7.5)

    8) La proporcin utilizada entre los vecinos y el propio nodo, indica en qu medida los vecinos del nodo influyen en la decisin final. Este valor pertenece al intervalo

    0,1 , y como lo que se quiere es suavizar, para ello se tiene que asemejar ms a sus vecinos, por lo que dicho valor debe ser superior a 0.5, valor para el cual los vecinos y

    el nodo tienen la misma influencia. El valor que mejores resultados ha obtenido segn

    los experimentos, es 0.8, ya que tiene en cuenta en su mayora a los vecinos, y

    tambin, aunque en menor medida, el propio valor del nodo.

    9) Adems de utilizar la energa como criterio de parada, se utiliza una variable k. Esta variable se utiliza para realizar un nmero mximo de iteraciones kmax, de esta forma

    se controla que la evolucin de la red no sea excesiva.

    10) Una vez se ha procesado la imagen, hay que devolver los valores iS pertenecientes al

    intervalo 1,1 a su rango original de disparidades. Para ello, se transforman los

    valores de los nodos mediante la ecuacin (7.6), que desacota del rango 1,1 al

    rango 0,dmax . Siendo dmax el mismo valor mximo de disparidad correspondiente al valor mximo de los estados de los nodos de la imagen inicial.

    1

    2

    ii

    Sd dmax

    (7.6)

  • 7.2. Propagacin

    Tras el estudio realizado este filtro se ha creado para ser utilizado junto a la propuesta

    estudiada en Klaus y col. (2006) e implementada por Lankton (2010), por lo que representa

    realmente un aporte a la investigacin mejorando los resultados obtenidos con la tcnica de

    correspondencia basada en la segmentacin. Se ha utilizado este algoritmo de

    correspondencia como base, porque obtiene buenos resultados en un tiempo reducido, ya que

    lo que se busca es que esta tcnica pueda ser aplicada en un sistema de tiempo real.

    Se trata de un filtro que tiene en cuenta nicamente aquellos pxeles para los cuales no

    se ha obtenido una buena disparidad mediante la correspondencia basada en la segmentacin.

    A dichos pxeles se les aplica este filtrado, el cual se encarga de propagar los valores de los

    vecinos para determinar la disparidad correspondiente a los pxeles que mediante la

    correspondencia no se ha podido definir su valor. Esto hace que el filtrado sea sencillo, rpido

    y eficiente, adems de poder ser implementado en sistemas reales mejorando los tiempos de

    simulacin obtenidos.

    Un estudio detallado del algoritmo, muestra que la imagen obtenida tras aplicar la

    correspondencia local basada en la ventana de vecindad no difiere en gran medida de la

    imagen que se considera que tiene la disparidad real. Se observa que en promedio, por cada

    pxel se comete un error de 6.3 por lo que se trata de un error relativamente reducido. Con el fin de determinar si se puede tratar la imagen para obtener mejores resultados antes de

    aplicar los filtrados, se obtiene la mediana de las variaciones que sufre cada valor de

    disparidad obtenido con respecto al valor real. Para ello, debido a que mediante este algoritmo

    se asigna un valor desconocido NaN a aquellos pxeles cuya disparidad no se puede hallar mediante esta correspondencia, nicamente se tienen en cuenta aquellos valores para los

    cuales se obtiene un valor de disparidad. De este conjunto de valores se calcula la mediana y

    se observa que en las imgenes de prueba, en su mayora los errores cometidos son +1, lo que

    indica que para la mayora de los pxeles se est cometiendo un exceso de disparidad.

    En vista de los resultados obtenidos, este algoritmo utiliza como base la imagen

    obtenida al aplicar la correspondencia local basada en la ventana de vecindad, donde todava

    no se ha extrado el conjunto de planos de disparidad (paso 3, Figura 6.1).

    Partiendo de dicha imagen, los valores para los cuales no se ha podido definir un valor

    de disparidad aparecen con el valor infinito ( ). nicamente se van a modificar los valores

    de dichos pxeles, al contrario que en los filtros anteriores donde todos los son tratados por

    igual y pueden ver modificado su valor. Para determinar el valor de disparidad, se abre una

    ventana de vecindad MxN alrededor del pxel cuyo valor sea infinito, y para el conjunto de

    valores de vecindad que s tengan una disparidad fija, se obtiene la mediana (ecuacin 7.7), la

    cual ser asignada al pxel de estudio.

    ,, ,..., ; ,...,

    ,2 2 2 2

    Disp a bM M N NDisp a b mediana D a a b b

    D a b (7.7)

    Para realizar el recorrido de la imagen, en un primer momento se realiz de izquierda a

    derecha y de arriba hacia abajo (Direccin 1 de la Figura 7.3). El problema de este recorrido

    es que la mayora de los valores de infinito vienen provocados por la oclusin que aparece en

    las imgenes del par estereoscpico, por lo que no son tenidas en cuenta. Al tratarse de

    oclusiones hay que considerar que un valor errneo puede provocar un fallo irreversible en el

    sistema (por ejemplo, un robot autnomo), y por lo tanto, si no se sabe determinar el valor

    exacto, conviene dar un valor alto para impedir que dicha zona sea accesible. Por ello, en el

  • algoritmo original se asigna un valor de infinito, si bien lo que idealmente se desea es poder

    aproximar un valor que se asemeje ms a la realidad. Por ello, no se realiza un nico recorrido

    de la imagen en la direccin indicada, sino que se realiza un recorrido en 4 direcciones,

    partiendo de cada una de las cuatro esquinas de la imagen (Figura 7.3).

    Una vez se ha realizado la propagacin de los valores en las cuatro direcciones se

    obtienen cuatro mapas de disparidad filtrados, realizando una nueva pasada sobre la imagen

    que se ha utilizado como base y asignando el valor mximo de los cuatro filtrados anteriores

    (ecuacin 7.8), al cual se le debe restar una unidad de disparidad a todos los pxeles. Esta

    disminucin se debe al estudio previo del algoritmo que revel que los valores que se

    obtienen mediante esta tcnica de correlacin, aumentan su disparidad en dicha unidad con

    respecto a las imgenes de las cuales se ha considerado que tienen la disparidad real.

    Direccin 1 Direccin 2

    Direccin 3 Direccin 4 Figura 7.3 - Direcciones del filtrado, siguiendo en cada caso la direccin de la flecha mayor hasta el

    lmite de la imagen y continuando por la direccin de la flecha menor.

    , max 1 , , 2 , , 3 , , 4 , 1Disp a b Dir a b Dir a b Dir a b Dir a b (7.8)

    A continuacin se detallan los pasos del algoritmo propuesto:

    1. Obtener la imagen generada al aplicar la correspondencia local basada en la ventana de vecindad, donde todava no se ha extrado el conjunto de planos de disparidad de la

    propuesta de Klaus y col. (2006) (paso 3, Figura 6.1).

    2. Realizar un recorrido por cada una de las cuatro direcciones de la Figura 7.3 donde para cada valor de disparidad asignado como infinito se abre una ventana de vecindad

    alrededor del pxel, y cada valor de la ventana distinto de infinito se aade a un

    conjunto del cual se obtiene la mediana (ecuacin 7.7).

    3. Una vez obtenidos los filtrados realizados desde las cuatro direcciones, para cada valor de disparidad no definido en la imagen obtenida en el paso 1, se le asigna el mximo

    de los valores obtenidos en el paso 2 al que se le resta 1 unidad de disparidad

    (ecuacin 7.8).

    Una de las principales ventajas de este filtrado es que puede ser paralelizado, al

    tratarse de realizar cuatro filtrados para obtener el resultado final, todos estos filtrados en las

    cuatro direcciones pueden realizarse a la vez, de esta forma se reduce an ms el tiempo de

    ejecucin del proceso de la obtencin del mapa de disparidad.

  • 8. Resultados

    Los mtodos propuestos en este estudio han sido evaluados utilizando imgenes del

    banco de pruebas de Middlebury (2010) que proporcionan Scharstein y Szeliski (2002). En

    concreto se han elegido diez pares de imgenes de dicha base de datos cuyas caractersticas

    esenciales son las que se mencionan a continuacin:

    1) Son imgenes de interior con la iluminacin perfectamente controlada y, donde las tonalidades de color aparecen con una clara nitidez.

    2) No poseen distorsin ni aberraciones debido al sistema ptico.

    3) No poseen desplazamientos verticales, por lo que la bsqueda de correspondencias se puede realizar considerando la componente horizontal.

    4) Con las imgenes originales, se incluye dos imgenes que denominan base de verdad o ground truth correspondindose con la disparidad supuestamente real de cada una de las imgenes estereoscpicas.

    La finalidad de la eleccin de este tipo de imgenes consiste en verificar el

    comportamiento de los algoritmos con el fin de aislar los problemas inherentes a los mismos,

    de tal manera que en el siguiente paso consistente en su aplicacin al mundo real, slo queden

    aquellos problemas derivados de esta naturaleza, tales como: distintos niveles de intensidad

    en las dos imgenes como consecuencia de brillos y otros efectos derivados de la iluminacin

    en entornos no estructurados, distorsiones radiales de las lentes o desplazamientos verticales

    de las cmaras.

    Los resultados que se presentan, se han conseguido calculando el promedio de los

    datos obtenidos del conjunto de diez pares de imgenes elegidas al azar del banco de pruebas

    de Middlebury. En cada algoritmo, se han calculado los datos de dos formas distintas:

    utilizando una disparidad mxima fijada a un valor de 70, y utilizando la mxima obtenida a

    partir de las imgenes base proporcionadas (ver Anexo).

    En cualquier caso, se tienen en cuenta todos los valores de disparidad en la realizacin

    de los clculos, ya que las imgenes de Middlebury contienen valores de disparidad cero, lo

    que significa que la disparidad no es conocida. Estos valores se deben o bien a una oclusin, o

    bien a que el objeto est muy cerca de las cmaras.

    En los algoritmos utilizados, tambin es posible que se obtenga un valor de disparidad

    cero, por ello, siempre que aparezca este valor, o bien en las imagen obtenida, o bien en la que

    se utiliza para realizar la comparacin, si su valor homlogo en la otra imagen del par

    estereoscpico no es cero se considera un error, es decir, los valores de disparidad cero s se

    tienen en cuenta para el clculo del error. Con esto se consigue obtener el mximo error

    posible de disparidad, ya que si se omiten estos valores el error se ver reducido, pero as se

    evita que en algn caso el error pueda aumentar.

    A continuacin se muestra un resumen, Tablas 1 y 2, de los resultados obtenidos por

    los algoritmos anteriores as como el resultado de aplicar los diferentes filtrados a la imagen

    obtenida de la correspondencia basada en la segmentacin justo despus de aplicar la

    correlacin basada en la ventana de vecindad y antes de la extraccin del conjunto de planos

    de disparidad. Adems, en las Figuras 8.1 y 8.2 se muestran grficamente estos mismos

    resultados para una mejor visualizacin.

  • Figura 8.1 - Grfico que muestra el resultado de los algoritmos y filtro con dmax obtenida de la imagen con disparidad real.

    Figura 8.2 - Grfico que muestra el resultado de los algoritmos y filtro con dmax fijo a 70.

    Tiempo

    minutos

    dmax*1

    Tiempo

    segundos

    dmax*2

    % error sin

    recortar*3

    Error

    cuadrtico

    medio sin

    recortar*4

    % error

    recortada*5

    Error

    cuadrtico

    medio

    recortada*6

    Tiempo

    minutos dmax

    lankton +

    filtro*7

    Tiempo

    segundos

    dmax lankton

    + filtro*8

    Correlacin 5,27 316,04 95,38 265,17 94,82 84,67 - -

    Lankton - basada segmentacin 0,45 27,11 88,09 102,76 89,65 68,22 - -

    Mnimo error de energa global 3,84 230,29 - - 41,62 101,67 - -

    Lnea de crecimiento 0,2 12,19 - - 78,49 679,05 - -

    Enfriamiento simulado 0,15 9,18 78,98 148,09 77,52 120,91 0,564 35,106

    Filtro media 0,01 0,44 57,28 213,7 53,31 178,04 0,448 26,758

    Filtro media vecinos 0,01 0,4 97,43 197,89 97,14 162,85 0,448 26,722

    Filtro mediana 0,12 7,53 43,37 229,28 37,95 191,3 0,556 33,94

    Filtro mediana vecinos 0,11 7,25 42,64 211,61 37,15 173,65 0,55 33,5

    Filtro propagacin 0,44 26,97 38,26 119,68 32,91 98,85 0,854 51,468

    FILTRO DE LANKTON ANTES DE EXTRAER EL CONJUNTO DE PLANOS DE DISPARIDAD MODIFICADO

    ALGORITMOS ESTEREO

    Tabla 1 - Promedio de los resultados obtenidos utilizando como disparidad mxima el valor de mximo de la imagen de disparidad real utilizada como base.

  • Tiempo

    minutos

    disparidad fija

    a 70*1

    Tiempo

    segundos

    disparidad fija

    a 70*2

    % error sin

    recortar*3

    Error

    cuadrtico

    medio sin

    recortar*4

    % error

    recortada*5

    Error

    cuadrtico

    medio

    recortada*6

    Tiempo

    minutos fijo a

    70 algoritmo

    lankton +

    filtro*7

    Tiempo

    segundos fijo

    a 70 algoritmo

    lankton +

    filtro*8

    Correlacin 6,11 366,61 95,89 269,86 95,4 86,59 - -

    Lankton - basada segmentacin 0,5 29,69 88,12 102,38 89,86 68,91 - -

    Mnimo error de energa global 4,7 281,95 - - 42,3 107,48 - -

    Lnea de crecimiento 0,2 11,83 - - 78,51 647,25 - -

    Enfriamiento simulado 0,15 9,18 77,47 223,4 75,9 173,61 0,622 37,752

    Filtro media 0,01 0,38 59,33 330,14 55,32 264,26 0,484 29,028

    Filtro media vecinos 0,01 0,39 98,25 313,85 98,02 247,93 0,484 29,03

    Filtro mediana 0,12 7,42 44,33 360,02 38,68 291,61 0,572 36,066

    Filtro mediana vecinos 0,12 7,5 43,58 339,75 37,83 270,08 0,592 36,142

    Filtro propagacin 0,45 27,2 37,9 117,98 32,58 98,25 0,9 54,174

    ALGORITMOS ESTEREO

    FILTRO DE LANKTON ANTES DE EXTRAER EL CONJUNTO DE PLANOS DE DISPARIDAD MODIFICADO

    Tabla 2 - Promedio de los resultados obtenidos utilizando como disparidad mxima un valor fijo de 70.

    9. Conclusiones

    A lo largo del presente trabajo se han estudiado diferentes algoritmos de

    correspondencia estereoscpica con el fin de identificar de entre ellos los ms favorables para

    su aplicacin en entornos reales. En principio, este estudio se ha centrado en la evaluacin de

    los mismos desde el punto de vista de su efectividad en trminos de rendimiento y en tiempos

    de cmputo. La evaluacin se ha hecho sobre imgenes proporcionadas por la base de datos

    mencionada dado que adems de poseer imgenes fiables, se dispone de mapas de disparidad

    de referencia.

    El algoritmo que mejores resultados ha generado es el basado en la combinacin de la

    correspondencia mediante la segmentacin junto con el filtro denominado propagacin de

    disparidad.

    La modificacin realizada a las imgenes junto con el filtrado, permite reducir

    aproximadamente alrededor de un 57% el error obtenido, ello pese a que cada error a nivel de

    pxel que se comete aumenta aproximadamente en un 1.5 , cantidad que resulta asumible debido a la considerable mejora del porcentaje de error, ya que aunque el error aumenta, lo

    hace de forma insignificante al haber menos pxeles errneos.

    Adems, cumple con la condicin de que debe de completarse en un tiempo

    medianamente reducido, ya que a costa de aumentar el tiempo de ejecucin del algoritmo

    unos segundos ms, se obtiene la mejora indicada. Por tanto, sta se perfila como una posible

    solucin para su traslado a sistemas reales.

    En el estudio realizado se ha mostrado la disparidad obtenida asignando un valor fijo

    de 70 y un valor variable al ancho de la ventana de disparidad (dmax) que se determina en

    funcin de la imagen de disparidad real. No obstante, en el futuro cuando se trabaje con

    sistemas reales, este valor ser desconocido por lo que ser necesario establecer algn tipo de

    criterio para fijar dicho valor. Adems, como se ha visto en las diferentes imgenes

    mostradas, existen zonas que por el diseo del algoritmo la disparidad obtenida no es fiable y

    por lo tanto se hace necesario acotar dichas zonas en las imgenes, que tambin depender de

    las condiciones del diseo fsico del sistema.

  • Bibliografa

    Baykant Alagoz, B. (2008). Obtaining Depth Maps From Color Images By Region Based Stereo Matching Algorithms, OncuBilim Algorithm And System Labs. Vol. 08, Art.No:04, Computer Vision and Pattern Recognition.

    Bleyer, M., Gelautz, M. (2005). Graph-based surface reconstruction from stereo pairs using

    image segmentation. In SPIE, pages vol. 5665: 288299, January 2005.

    Duda, R.O., Hart, P.E. and Stork, D.G. (2001). Pattern Classification, Wiley, New York.

    Hirschmller, H., Innocent, Peter R., Garibaldi, Jonathan M. (2002): Real-Time Correlation-Based Stereo Vision with Reduced Border Errors. International Journal of Computer Vision 47(1-3): 229-246

    Kanade, T., Okutomi, M. (1994). A Stereo Matching Algorithm with an Adaptive Window: Theory and Experiment. IEEE Trans. Pattern Anal. Mach. Intell. 16(9): 920-932.

    Klaus, A., Sormann, M., Karner, K. (2006). Segmented-Based Stereo Matching Using Belief Propagation and Self-Adapting Dissimilarity Measure, In: Proc. of 18th Int. Conference on Pattern Recognition, vol. 3, pp. 15-18.

    Lankton, Shawn M. (2010), (http://www.shawnlankton.com/2007/12/3d-vision-with-stereo-

    disparity/, disponible online)

    Lpez Valles, Jos M., Fernndez Caballero, A., Fernndez, Miguel A. (2005). Conceptos y Tcnicas de Estereovisin por Computador. Inteligencia Artificial. Revista Iberoamericana de Inteligencia Artificial, otoo, 35-62.

    Matthies, L., Kanade, T., Szeliski, R. (1989). Kalman filter-based algorithms for estimating depth from image sequences. International Journal of Computer Vision 3(3): 209-238.

    Matthies, L., Szeliski, R. and Kanade, T. (1988). Kalman Filter-based Algorithms for Estimating depth from Image Sequences. Proc. DARPA Image Understanding Workshop, Cambridge, MA, pp. 199-213.

    Middlebury (2010). (http://vision.middlebury.edu/stereo, disponible on-line).

    Okutomi, M., Kanade, T. (1993). A Multiple-Baseline Stereo. IEEE Trans. Pattern Anal. Mach. Intell. 15(4): 353-363.

    Pajares, G., Cruz, J.M. (2007). Visin por Computador: Imgenes digitales y aplicaciones, 2

    ed., RA-MA, Madrid.

    Pajares, G., Cruz, J.M. (2004). On combining support vector machines and simulated

    annealing in stereovision matching, IEEE Trans. Systems Man and Cybernetics, Part

    B, 34(4), 1646-1657.

    Scharstein, D., Szeliski, R. (2002). A taxonomy and evaluation of dense two-frame stereo

    correspondence algorithms, Int. J. Computer Vision, vol. 47(1-3), pp. 742.

  • Notas

    *1: Tiempo del algoritmo en minutos.

    *2: Tiempo del algoritmo en segundos.

    *3: Porcentaje de error del mapa disparidad completo.

    *4: Error cuadrtico medio del mapa disparidad completo.

    *5: Porcentaje de pxeles errneos recortando la zona de disparidad mxima en la cual la disparidad no es fiable

    debido al desplazamiento de las cmaras. *6

    : Error cuadrtico medio recortando la zona de disparidad mxima en la cual la disparidad no es fiable debido

    al desplazamiento de las cmaras. *7

    : Tiempo en minutos que se tarda en aplicar el filtro al mapa de disparidad obtenido mediante el algoritmo de

    lankton. *8

    : Tiempo en segundos que se tarda en aplicar el filtro al mapa de disparidad obtenido mediante el algoritmo de

    lankton.

  • Anexo

    EJEMPLO DE MAPAS DE DISPARIDAD OBTENIDOS MEDIANTE LA

    CORRESPONDENCIA BASADA EN LA SEGMENTACIN Y ERRORES DE LOS MISMOS

    Figura 1 - Imagen izquierda del par estreo.

    Figura 2 - Imagen derecha del par estreo.

    Figura 3 - Disparidad obtenida mediante la

    correspondencia basada en la segmentacin con un

    valor fijo (dmax=70).

    Figura 4 - Disparidad obtenida mediante correspondencia

    basada en la segmentacin con el valor mximo de la

    imagen base (dmax=55).

    Figura 5 - Errores (puntos negros) provocados por la

    correspondencia basada en la segmentacin con dmax

    70 comparada con la imagen base.

    Figura 6 - Errores (puntos negros) provocados por

    correspondencia basada en la segmentacin con dmax

    obtenida de la imagen base con la que se compara.

  • EJEMPLO DE SUAVIZADO UNA VEZ APLICADO ENFRIAMIENTO SIMULADO

    Figura 7 - Resultado de aplicar enfriamiento simulado

    a una imagen con dmax 70.

    Figura 8 - Resultado aplicar enfriamiento simulado a una

    imagen con dmax obtenida de la imagen con disparidad

    real.

    Figura 9 - Resultado de aplicar enfriamiento simulado

    a una imagen con dmax 70 (errores, puntos negros).

    Figura 10 - Resultado de aplicar enfriamiento a una

    imagen con dmax obtenida de la imagen con disparidad

    real (errores, puntos negros).

  • EJEMPLO DE SUAVIZADO UNA VEZ APLICADO PROPAGACIN

    Figura 11 - Resultado de aplicar la propagacin de

    disparidad a una imagen con dmax 70.

    Figura 12 - Resultado aplicar la propagacin de

    disparidad a una imagen con dmax obtenida de la

    imagen con disparidad real.

    Figura 13 - Resultado de aplicar la propagacin de

    disparidad a una imagen con dmax 70 (errores, puntos

    negros) .

    Figura 14 - Resultado de aplicar la propagacin de

    disparidad con dmax obtenida de la imagen con

    disparidad real (errores, puntos negros).