CHAPTER 6: RELIABILITY MODELS
6.2 Reliability Based Rating procedure
En las últimas investigaciones de la tecnología de reconocimiento del entorno se separa el se- guimiento “Tracking” de la creación del mapa de reconocimiento “Mapping”. Esto se debe al largo tiempo empleado por anteriores métodos que utilizaban el EKF “Filtro de Kalman Ex- tendido” y el FastSlamBased para referenciar el mapa de reconocimiento 3d y su covarianza.
El esquema general de funcionamiento es el siguiente:
Proceso de Tracking
La imagen tomada a través de la cámara se procesa obteniendo una imagen en escala de grises que será la utilizada para los posteriores cálculos del tracking mientras que la original es re- servada para ser mostrada en el display. En la mayoría de aplicaciones basadas en la visión por ordenador se hace indispensable obviar las componentes RGB de la imagen debido al alto coste en operaciones que implica su procesado.
Con la imagen generada se crean 4 subimágenes de forma piramidal utilizando diferentes es- calas y se procede a obtener las características o descriptores a cada escala utilizando el algo- ritmo FAST.
cámara donde se asume una velocidad constante en presencia o ausencia de medidas.
Este modelo tiene como única finalidad la asociación de datos pero no es utilizado en el pro- ceso de Tracking y Mapping.
Se extraen las características y se obtiene el valor ajustado de la pose en dos procesos:
1. Se proyectan todos los puntos 3D al 2D para encontrar un subconjunto potencialmente vi- sible.
Entonces se toma un subconjunto de puntos, el autor original recomienda unos 50 puntos, en las escalas más groseras. Se contrastan con los encontrados en la imagen tomada por la cáma- ra y los que son encontrados en ambos son utilizados para corregir los valores de la pose ha- ciendo un ajuste de Gauss-Newton o mínimos cuadrados, realizando hasta 10 iteraciones. 2. Se vuelve a realizar el proceso buscando un ajuste más fino tomando hasta 1000 puntos dentro de todas las escalas de la pirámide. En la elección de los puntos se dará prioridad a los incluidos en las escalas más detalladas completando los faltantes con las más groseras.
En estos ajustes ejecutados para obtener la pose µ ajustada, se busca hacer mínimo el error de reproyección:
Donde p es una medida robusta del error de reproyección ej:
K -> Parámetros de distorsión e intrínsecos de la cámara. µ -> Valores de la pose.
Xj -> Coordenadas de los puntos 3D.
La varianza de la medida σj se asume que es isotrópica (no varía en función de la dirección escogida para la medida) y se tiene que escalar como 22L donde L es el nivel de la pirámide.
En lugar de la ponderación clásica utilizada en el ajuste por mínimo cuadrado, se utiliza el es- timador robusto de Huber M, con un umbral σT:
Donde β se define como β = (ej / σj) y σT se establece como el valor de la desviación están-
dar.
Se debe realizar varias iteraciones hasta un número máximo de 10 para el ajuste grosero y otras 10 para el ajuste fino.
La porción de características encontradas correctamente es monitorizada para proporcionar una medida de la calidad del tracking.
Por otra parte se eligen dos umbrales arbitrarios. Si esta porción de características toma valo- res por debajo del umbral más alto, el tracking continua como antes, pero a los fotogramas se les impide pasar a ser fotogramas clave para el proceso de mapeo “Mapping”, ya que la cali- dad de la imagen es probablemente pobre. En cambio si los valores obtenidos se sitúan por debajo del umbral más bajo, se asume que el tracking ha fallado y se pasa a usar un método de relocalización utilizado para recuperar la posición de la cámara.
Selección de los fotogramas clave
Los fotogramas clave son fotogramas que participan el proceso de creación del mapa de reco- nocimiento. Para obtener este estatus deben cumplir una serie de condiciones:
a) El tracking debe ser considerado exitoso o válido.
b) La cámara debe haberse trasladado una distancia mínima desde la toma del anterior foto- grama clave.
c) Entre un fotograma clave y el siguiente debe haber pasado un intervalo mínimo de 20 foto- gramas.
d) La cola de fotogramas pendientes de procesar tiene que ser menor a 3.
La distancia mínima se basa en la distancia Euclidea entre los fotogramas y la profundidad promedio de los puntos de la escena.
Cada fotograma clave contiene las características extraídas de él y la lista de características encontradas que aparecen simultáneamente en la imagen y en el mapa de puntos, así como la mejor pose estimada obtenida del Tracker.
Creación del Mapa de Reconocimiento
Metaio, empresa de la que se hablará más adelante, proporciona una App gratuita que nos per- mite crear el mapa de reconocimiento de una manera sencilla. El resultado son dos ficheros donde uno contiene la nube de puntos con sus datos asociados y el otro contiene además de la nube de puntos y sus características, una imagen asociada que nos permitirá en el Creator, el software asistente de metaio, ver y situar correctamente el contenido 3D.
Metaio no permite modificar ni ver su algoritmo por lo que el método empleado es una incóg- nita. Sin embargo, su manera de proceder y las restricciones de movimiento hacia el usuario permiten pensar que el trabajo aquí expuesto ofrece una aproximación muy cercana a la forma de actuar del software de Metaio. Un ejemplo de ello, es la necesidad de realizar un movi- miento paralelo de la cámara al empezar la creación del mapa.
En este trabajo se realza el hecho de que la creación del mapa de reconocimiento y el Tra- cking son procesos que corren de forma independiente pero simultáneamente.
El proceso de creación del TrackingMap o mapa de reconocimiento se resume en el siguiente esquema:
Para iniciar el mapa se utiliza un algoritmo basado en 5 puntos para resolver el problema de
los fotogramas, combinado con el algoritmo RANSAC.
** El algoritmo de Nister [35] plantea la relación entre dos conjuntos de puntos imagen, re- presentado cada punto por su vector de 3 dimensiones, q y q', correspondientes a las coorde- nadas (x,y,1) en cada sistema proyectivo. Ambas proyecciones quedan relacionadas mediante la matriz fundamental. Sin embargo, se asume que ambas imágenes están libres de distorsio- nes, por lo que se emplea la matriz esencial(E) en lugar de la fundamental. Obteniendo que q'Eq = 0.
Para la resolución se determinan los coeficientes del polinomio de grado 10 y se descompone para finalmente recuperar los vectores de rotación R y traslación T mediante la descomposi- ción en valores singulares de la matriz E.
Ransac es un algoritmo de estimación robusta que permite hallar un modelo matemático a partir de datos contaminados con numerosos valores que no se ajustan al modelo.
En el caso de la resolución de la posición relativa, se toman un número aleatorio de muestras de dos o tres perspectivas, cada una conteniendo 5 puntos. Se ejecuta el algoritmo de Nister y por tanto, se generan una serie de hipótesis. Entonces se busca la mejor hipótesis de acuerdo a la medida robusta sobre todos los puntos participantes. Finalmente la mejor hipótesis se ajusta por un proceso iterativo.**
El primer punto de vista de cámara es seleccionado por el usuario. Su imagen y lista de carac- terísticas se convierten en el primer fotogramas clave, con pose µ1 = {R,t}1 = {I,0}, siendo R
la rotación y t la traslación. Para este primer fotograma se consideran 0 los giros w, phi y ka- ppa, así como las componentes de traslación Tx, Ty, Tz. De ello resulta que la matriz de rota- ción es igual a la matriz de identidad I.
La cámara entonces se mueve a una nueva posición de pose µ2 = {R,t}2.. Es muy importante
tener cuidado de que las características puedan ser seguidas usando unicamente la imagen. Es aquí donde surge el problema de determinar la posición relativa entre los dos fotogramas que como se ha dicho antes se resuelve utilizando el algoritmo de Nister.
Las características encontradas por el detector FAST en las dos imágenes, son utilizadas para triangular el primer conjunto de puntos 3d Xj de la escena.
El autor asume que la traslación |t2| se situará sobre los 100mm de forma que se pueda aplicar
una escala razonable al modelo. La escala es arbitraria y no afecta a los cálculos posteriores. Habitualmente, muchas de las características 3D iniciales caen sobre el mismo plano, de for- ma que se encuentra un plano dominante en la estructura, y el mapa reorientado de modo que este plano define el plano Z = 0. Este plano no juega ningún papel especial en la estructura re- sultante calculada a partir de los cálculos de movimiento. Es simplemente una convención uti- lizada en las aplicaciones de realidad aumentada.
El tiempo estimado para inicializar el mapa depende del tiempo empleado por el usuario para desplazar la cámara cuidadosamente y seleccionar los fotogramas clave, pero el autor lo sitúa en un tiempo cercano a 2 segundos.
Con el mapa inicializado, se produce el tracking siguiendo el método explicado con anteriori- dad pasando algunos fotogramas claves para ser procesados. A ésta se le extraen las caracte- rísticas o descriptores FAST para cada escala de la pirámide. Después un subgrupo de estas características son contrastadas con las existentes en el mapa y se estima una nueva pose.
cias en el mapa.
Para encontrar la posición 3D de los puntos, se buscan correspondencias en los fotogramas clave espacialmente más cercanos y su posición es triangulada utilizando las poses estimadas de los fotogramas clave.
Se procede entonces a realizar un ajuste de Levenberg-Marquardt para optimizar la posición de todos los puntos 3D Xj contenidos en el mapa, así como de las pose de los fotogramas
{µk.}. La única pose que no interviene en el ajuste es la del primer fotograma que se considera
fijo.
** El algoritmo de Levenberg-Marquardt es una modificación del clásico método de Gauss- Newton añadiendo características del método de gradiente descendente. Presenta una me- jora en la robustez con respecto al método clásico, encontrando una mejor solución incluso si el punto inicial dista mucho del mínimo final. **
Ejemplo de creación de un mapa de reconocimiento.
Arriba: Correspondencia de las características en el escenario. Derecha: Esquema del mapa con todos las características extraídas y los fotogramas clave.
En este ajuste se calculará la posición proyectada estimada dentro del fotograma k del conjun- to de puntos Xj. Su formulación es la siguiente:
Donde el error cometido entre el punto observado en la imagen y el calculado es:
Sabiendo que xjk es el punto medido en la imagen. x es el punto proyectado a partir de los pa-
rámetros intrínsecos y de distorsión de la cámara K, µk la pose del fotograma y Xj el punto a
proyectar.
El parámetro vjk toma posibles valores atendiendo a dos posibles casos:
σjk es el error presumible y σT es el umbral usado por el estimador Turkey M para determinar
p:
Debido a que este proceso se realiza por lotes y los datos son retenidos, se permite al proceso de creación del mapa o mapping retrasar el ajuste hasta que la carga de trabajo lo permita. Así cuando la cámara está explorando y nuevos fotogramas clave deben ser añadidos, se realizan pequeños ajustes en un limitado número de fotogramas clave.