ALINEAMIENTO DE IMÁGENES TRID · PDF file Se propone un algoritmo mediante el que se...

Click here to load reader

  • date post

    26-Sep-2020
  • Category

    Documents

  • view

    0
  • download

    0

Embed Size (px)

Transcript of ALINEAMIENTO DE IMÁGENES TRID · PDF file Se propone un algoritmo mediante el que se...

  • ALINEAMIENTO DE IMÁGENES TRIDIMENSIONALES

    Alberto Baena Alonso*

    [email protected]es

    Pedro Martín Lerones$

    [email protected]

    Jaime Gómez García-Bermejo*

    [email protected]

    * Universidad de Valladolid- ETSII Paseo del Cauce, s/n

    47011-Valladolid (España)

    $Centro Tecnológico CARTIF Dpto. de Visión Artificial

    Parque Tecnológico de Boecillo, Parcela 205 47151-Boecillo (Valladolid)-España

    Resumen

    Se propone un algoritmo mediante el que se van a alinear dos nubes de puntos tridimensionales, expresadas en distintas referencias y correspondientes a un objeto dado. El objetivo es encontrar la matriz de rotación y el vector de traslación que aplicados a una nube de puntos, nos permitan alinearla con la otra.

    El algoritmo está basado en:

    - El algoritmo ICP, que requiere encontrar el punto más cercano de una nube de puntos a un punto dado de otra nube. El algoritmo ICP siempre converge monótonamente a un mínimo local de una distancia cuadrática media. La tasa de convergencia es rápida durante las primeras iteraciones. Dado un conjunto adecuado de estados iniciales de rotaciones y traslaciones se puede minimizar globalmente la distancia cuadrática media.

    - Muestreo aleatorio. Nos vamos a quedar únicamente con una muestra de una imagen que vamos a alinear con otra imagen. El tomar sólo una muestra nos va a permitir, por un lado, reducir el tiempo empleado en la ejecución del programa y, por otro, hacerlo robusto en presencia de puntos extraños ( outliers ).

    - Se repite el muestreo y se prueba varias veces el algoritmo ICP. El objetivo es minimizar una distancia. Al probar varias veces con distintas muestras nos quedaremos con los siguientes elementos: matriz de rotación y vector de traslación que nos den la mínima distancia de

    todas. Por tanto, el método no necesita ser suavizado, ni que se eliminen los puntos extraños, ya que por probabilidad nos quedaremos con una muestra libre de esos puntos, que se alineará adecuadamente dando la menor distancia.

    Palabras Clave: Alineamiento de imágenes tridimensionales. Estimación del movimiento. Reconstrucción de superficies.

    1 INTRODUCCIÓN

    La construcción de modelos tridimensionales de objetos reales ha ganado un creciente interés. Los campos de aplicación de los modelos 3-D son amplios, desde inspección automática de piezas, diseño de productos industriales o Medicina, hasta creación de museos virtuales e imágenes generadas por computador para películas, multimedia y comercio electrónico.

    El proceso de construcción de una imagen 3-D de un objeto real involucra dos fases [6],[7]: una la medida de la superficie (un escaneado 3-D) y otra, una reconstrucción de los datos adquiridos.

    Se pueden usar distintas técnicas para medir superficies de objetos. Sin embargo la más apropiada es la técnica que emplea triangulación óptica con luz estructurada [6],[7]. Es una técnica de no contacto que permite una rápida, precisa y densa medida. Permite también la adquisición de color.

  • Generalmente para obtener una completa descripción de las superficies de los objetos con este tipo de escaneado es necesario obtener varias imágenes desde diferentes puntos de vista debido al problema de la autooclusión. Estas imágenes tienen regiones de solapamiento. Primeramente todas las nubes de puntos constitutivas de cada imagen deben ser alineadas en el mismo sistema de referencia, y este es el objeto central del presente artículo. Posteriormente se integran las imágenes [3],[9] y se crea un modelo no redundante en el que no hay superficies solapadas.

    Existen también distintas técnicas para conseguir el alineamiento. Podemos clasificarlas en dos grupos: las basadas en el algoritmo ICP descrito por Besl y Mckay [1] y el algoritmo descrito por Chen y Medioni [2]. El primero tiene el inconveniente de que una imagen debe ser un subconjunto de la siguiente y además es necesario conocer una bastante buena aproximación inicial. En caso contrario, el alineamiento podría ser distinto para cada nube de puntos o podría tardar mucho tiempo el ir probando aproximaciones iniciales con objeto de acercarnos a la solución correcta. El segundo grupo de técnicas requiere que se evalúen normales en los puntos de la superficie para hallar intersecciones con la otra superficie que se pretende alinear, aumentando la complejidad.

    En este artículo se va a utilizar la idea de Besl y Mckay [1] como punto de partida, y además la idea del muestreo aleatorio propuesta por Takeshi Masuda y Naokazu Yokoya [6], que llevan a cabo dicho muestreo varias veces con el propósito de que el algoritmo sea robusto en presencia de ruido. El inconveniente de la idea de Masuda y Tokoya, tal como fue planteada, era que no aseguraba la convergencia a la solución correcta incluso en el caso de tomar una muestra libre de ruido, además del elevado tiempo de cálculo.

    En el artículo que nos ocupa se solventa el problema de que cuando se consigue una muestra libre de ruido que converja a la solución correcta, se aumente el tiempo de cálculo, dado que en la comparación de distancias entre las nubes de puntos únicamente tenemos en cuenta la distancia de la muestra de una imagen respecto de la otra, verificándose que se obtienen buenos resultados como posteriormente veremos.

    2 DESCRIPCIÓN DEL ALGORITMO EMPLEADO

    Como punto de partida se tienen dos nubes de puntos RI y RII. Se pretende alinear RI con RII. Para ello es necesario encontrar una matriz de rotación y un vector de traslación, denotando al conjunto como

    TLMS, tal que TLMS(R I) se alinee con RII. El algoritmo

    pretende encontrar iterativamente este valor de TLMS. [1],[6].

    1. Inicialización: TLMS ← T0. El programa permite una inicialización introducida por el usuario si éste así lo desea.

    2. Un conjunto de Ns puntos PRS I es extraído de RI

    de forma aleatoria: PRS I ← RS(RI,Ns) .

    3. Se probarán distintas rotaciones y traslaciones iniciales en este paso, es decir repetir los pasos a), b), c) que seguidamente describimos en el caso de que en el paso 1 no se haya elegido la opción de inicialización. En caso contrario se probará únicamente con la traslación y rotación inicial introducida por el usuario.

    a)- El conjunto de puntos PRS I es usado por

    el algoritmo ICP con la segunda imagen RII

    para estimar los parámetros del movimiento. TICP,n ← ICP(PRSI, TLMS, RII).

    b)- El movimiento estimado es evaluado por dticp(PRS

    I, TICP,n, R II).

    c)-Si dticp(PRS I , TICP,n , R

    II) < dtlms(PRS I,

    TLMS, R II), siendo dtmls la función que nos

    marca un valor para la distancia entre PRS I y

    RII, entonces se sustituye TLMS ← TICP,n. Se observan ventajas en tiempo de ejecución a la hora de comparar en la distancia dticp únicamente la muestra de RI, PRS

    I ,en vez de utilizar toda la imagen RI.

    4. Repetimos los pasos 2-3 tomando n de 1 hasta NT, siendo NT es el número de pruebas.

    El movimiento resultante TLMS satisface dtlms(PRS I ,

    TLMS, R II)=mín dticp(PRS

    I , TICP,n , R II) 1 ≤n≤NT y

    este hecho constituye el resultado de la estimación de movimiento dtlms entre RI y RII.

    2.1 MUESTREO ALEATORIO

    Es una técnica que prueba conseguir una buena estimación empleando una submuestra que contiene solamente inliers (puntos constitutivos de una nube de los mismos).

    Aplicamos esto a la primera vista RI tomando Ns puntos PRS

    I de ella de forma aleatoria.

    Sea ε la tasa de outliers (puntos extraños) tales como ruido y puntos ocluídos.

    La probabilidad de dibujar un inlier en el muestreo aleatorio es 1-ε . La probabilidad de de que cogiendo Ns puntos todos sean inliers es (1-ε )Ns.

    La probabilidad de que al menos una submuestra esté compuesta de únicamente inliers en NT pruebas viene dada por: P(ε ,Ns,NT)=1-(1-(1-ε )Ns)NT.

  • Esta probabilidad aumenta si ε tiende a cero, Ns disminuye, o NT aumenta.

    2.2 APLICACIÓN DEL ALGORITMO ICP

    El conjunto de puntos PRS I seleccionado por el

    muestreo aleatorio y la segunda vista RII , van a seguir el algoritmo ICP [1].

    Cada piI∈ PI es temporalmente emparejado al punto más cercano piII∈ RII, que satisface || piI- piII||= mín|| piI-rII||, con rII∈ RII.

    De este modo determinamos un conjunto de puntos PII={piII} (1 ≤ i ≤ Ns) que denotamos como PII=C(PI , RII).

    Los conjuntos PI y PII son usados para estimar los parámetros del movimiento rígido TICP usando la representación de cuaternios, como veremos en el apdo. 2.3. El conjunto PI es sustituido por TICP(PRS

    I) y estos a su vez son iterados hasta que PI y PII

    convergen.

    El algoritmo ICP (ICP(PRS I, TLMS, R

    II)) se resume como sigue:

    Se inicializa TLMS y se siguen estos pasos:

    1. k ←1, PI ← TLMS(PRSI), d0 ← ∞ . 2. La correspondencia del punto es establecida: PII ← C(PI , RII). 3. El movimiento entre puntos parejos es estimado

    usando la representación de cuaternios. TICP ←Q(PRSI, PII)

    4. Aplicamos el movimiento estimado al conjunto de puntos PI ← TICP(PRSI).

    5. Evaluamos la distancia entre los conjuntos de puntos PI y PII : dk ←d(PI, PII).

    6. Los pasos 2-5 son repetidos, incrementando k ←k+1, hasta que dk-1 y dk

  • Segunda columna:

    2( 1q 2q - 0q 3q )

    20q + 2

    2q - 2

    1q - 2

    3q

    2( 2q 3q + 0q 1q )

    Tercera columna:

    2( 1q 3q + 0q 2q )

    2( 2q 3q - 0q 1q )