wiki:WikiStart

Extracción de Características con Sensor Láser

Resumen

La percepción del entorno es una de las tareas fundamentales que debe realizar un robot móvil para poder actuar de forma autónoma. Esto incluye recolectar y procesar información de los sensores, además de interpretarla de una forma adecuada al entorno y la tarea a realizar. De los sensores mas utilizados en robótica móvil se encuentra el sensor de barrido o escáner láser. En este tipo de sensor al igual que otros sensores de rango la información se puede procesar principalmente de dos maneras: tomando los datos directamente del sensor o utilizando información de la estructura del entorno extraída a partir de los datos de los sensores.

La información procesada de los sensores se utiliza luego en algoritmos de navegación autónoma como planificación de caminos, localización y/o construcción de mapas.

Se disponen de algunos de los métodos para extraer información de la estructura del entorno; principalmente la extracción de primitivas geométricas como esquinas y líneas, junto con un algoritmo de localización basado en el filtro de Kalman (EKF).


Clustering

Es el proceso de separar un conjunto de datos en subconjuntos (clusters) que tengan cierta característica en común, en la aplicación a un barrido láser también se conoce como detección de Punto de Ruptura o Breakpoint.

El principal objetivo del clustering aplicado a un barrido láser es determinar si existe alguna discontinuidad entre puntos consecutivos de dicho barrido, en tal caso el conjunto de datos se divide en dos clusters.

Si en un barrido láser se detectan los puntos $p_a$ y $p_b$ cuya distancia medida es $\rho_a$ y $\rho_b$, respectivamente, la distancia entre dichos puntos se puede calcular mediante el teorema del coseno como:

$r_{ab} = \sqrt{\rho_a^2 + \rho_b^2 - 2\rho_a\rho_b\cos(\Delta\phi)}$

Si la resolución angular $\Delta\phi$ es muy pequeña se puede simplificar:

$r_{ab} \approx |\rho_a - \rho_b|$

Dependiendo si la distancia umbral varía o no en cada iteración el algoritmo puede ser Adaptivo o No Adaptivo, respectivamente.

Se utilizan algunos de los siguientes criterios en los algoritmos de clustering para fijar el valor del Umbral $(d_{thr})$:

  • Criterio de Dietmayer

La distancia umbral se calcula como:

$d_{thr} = C_0 + C_1 \cdot \min\{\rho_a,\rho_b\}$

Donde $C_1 = \sqrt{2(1-\cos(\Delta\phi))}$, y $C_0$ es un ajuste para el ruido de las mediciones.

  • Criterio de Borges

La distancia umbral se calcula como:

$d_{thr} = \rho_a \frac{\sin(\Delta\phi)}{\sin(\lambda + \Delta\phi)} + 3 \sigma_\rho$

Donde $\lambda$ es el ángulo mínimo a detectar en las mediciones y $\sigma_\rho$ es la incertidumbre en la medición del láser.


Extracción de Esquinas

Las esquinas son las características más simples que se pueden extraer a partir de un barrido de sensor láser, y muy comunes en entornos estructurados como los ambientes de interiores.

Las principales desventajas que tienen este tipo de características es que su extracción resulta muy dependiente del ruido y a los outliers, además este tipo de características tienen poca información estructural del entorno, por lo que son poco útiles para la generación de mapas y se necesita utilizarlas en conjunto con otras, como por ejemplo líneas.

  • Método Sliding Windows

Se basa en tomar los puntos de barrido láser en coordenadas cartesianas y recorrer una ventana de tamaño fijo (número impar de puntos) e ir realizando una verificación del ángulo que forman dos vectores determinados por el punto central de la ventana con los puntos extremos. El tamaño de la ventana se ajusta para un mejor comportamiento frente al ruido.

Si se forman los vectores $\mathbf{v}_i$ y $\mathbf{v}_j$ con el punto central y los extremos de la ventana, se calcula el ángulo entre ellos utilizando la regla del coseno:

$  \theta_c = \cos^{-1} \frac{\mathbf{v}_i \mathbf{v}_j}{\|\mathbf{v}_i\|\|\mathbf{v}_j\|} $

Se determina si existe una esquina o no mediante un umbral del ángulo que puede estar comprendido entre $70^\circ$ y $110^\circ$.

  • Método de la Derivada

Este método utiliza la derivada del rango del sensor láser para obtener puntos de posibles esquinas, cuando la derivada del barrido láser cruza por cero y además es discontinua se corresponde a una esquina en el barrido.

La verificación de una posible esquina (cruce por cero de la derivada), se puede realizar determinando las discontinuidades o bien mediante la geometría de los puntos 2D del escáner láser.


Extracción de Líneas

En la extracción de líneas surgen las siguientes consideraciones:

  • Qué cantidad de líneas hay en el entorno?
  • Qué puntos pertenecen a qué línea?
  • Dado los puntos pertenecientes a una línea, cómo estimar los parámetros del modelo de la línea?

Métodos No Robustos

Métodos Secuenciales

  • Successive Edge Following (SEF)
  • Line Tracking (LT)

Métodos Iterativos

  • Iterative End Point Fit (IEPF)
  • Split and Merge (SM)

Métodos Robustos

  • Transformada de Hough
  • RANSAC