Lo estás leyendo muy estrictamente.
No "necesitas" odometría. SLAM es simplemente una forma de fusionar las estimaciones de cualquier sensor en una estimación consistente del estado del robot.
"Basado en características" no significa necesariamente que necesite tener características identificables en todo el entorno.
Primer principio de la fusión de sensores: ¡dos estimaciones son mejores que una!
Ejemplo
No he leído el libro "para tontos", pero si no hacen el siguiente ejemplo numérico, prendería fuego al libro y obtendría uno mejor. Y si lo tiene este ejemplo, entonces me pregunto por qué no lo mencionó!
(Puedes seguir las matemáticas aquí )
Un robot está en la posición y se mueve hacia la derecha (aumentando ). En este mundo perfecto, los modos de dinámica y sensor son lineales. (de lo contrario, use EKF, PF o alguna variante).x = 0X
- Hay una pared en exactamente que el robot puede medir la distancia.x = 10
- El robot tiene un escáner láser para obtener distancia con la varianza del sensorσ2l= .1
- El robot puede medir su distancia recorrida con odómetros utilizando la varianza del sensor . Claramente, el láser es más preciso que el odos.σ2o= .5
Así es como el robot maneja SLAM en este entorno simple. (tenga en cuenta que esto es en realidad una localización ya que no estamos actualizando la posición del muro).
- El robot intenta mover una unidad hacia la derecha.
- La odometría midex = .9
- El escáner láser dice que estás a unidades de la pared. (lo que implica que estás en 1.2)8.8
Pregunta : ¿Dónde estás?
¿Eliges el mejor sensor? En este caso, el láser es el mejor ¿verdad? Entonces obviamente estoy en .x = 1.2
¿Elige el "más cercano" a lo que espera? Bueno, en este caso, creo que deberíamos usar odometría, ya que está más cerca de lo que pretendía, (moviendo una unidad)..9
¿Quizás podrías promediar los dos? Bueno, eso es mejor, pero es susceptible a los valores atípicos.
Los principios brillantes de la fusión de sensores le dicen cómo responder la pregunta de la siguiente manera:
Su estimación mínima cuadrática media de la posición del robot viene dada por:
Xm m s e=σ2lσ2o+σ2l( .9 ) +σ2oσ2o+σ2l( 1.2 )
Xm m s e=.1.6( .9 ) +.5.6( 1.2 )
Xm m s e= 1.15
... a menos que arruine el álgebra en alguna parte. La gente localiza aviones usando matemáticas no mucho más complicadas que eso.