EXTENSIONES
DE
LA
SLAM:



 SLAM
Visual


SLAM
Coopera9vo
 Arturo
Gil
([email protected])
 Prof.
Contratado
Doctor
 Univ.
Miguel
Hernández
de
Elche


ÍNDICE
 1.  2.  3.  4.  5.  6.  7. 

INTRODUCCIÓN
 SLAM
visual
 CaracterísOcas
visuales.
Detección.
 Descripción.
 Asociación
de
datos.
 EJEMPLO
 SLAM
CooperaOvo.
 1.  Extensión
de
los
algoritmos
vistos…


1
INTRODUCCIÓN


INTRODUCCIÓN
 •  Diferentes
maneras
de
representar
el
 problema
de
SLAM.
 •  La
elección
del
algoritmo
depende
en
gran
 manera
de
los
Opos
de
datos
de
los
sensores:
 – Láser.
 •  Ocupación.
 •  Landmarks.
 •  SLAM
6D.


– Sonar.
 – Cámaras


2
SLAM
Visual


SLAM
VISUAL
 SLAM
Visual:
Construcción
de
mapas
uOlizando
 únicamente
información
visual
 •  Preguntas:
 – ¿Qué
es
un
mapa?
 – ¿Cómo
se
puede
representar
un
mapa?
 – ¿Cómo
se
puede
representar
un
mapa
de
 información
visual?
 – ¿Cómo
almacena
un
humano
esta
información?


SLAM
visual:
¿por
qué?
 •  Sensor
láser:

 – Pros:
 •  Típicamente
361
medidas
de
distancia
 •  Resolución.
 •  Distancia.
 •  Poco
error.


– Cons:
 •  Un
único
plano
de
medida.
 •  Extensión
al
caso
3D
mediante
brazos
arOculados
o
 sistemas
más
caros.
 •  Peso
y
consumo
altos…
dpicamente.
 •  Algunos
sistemas
más
compactos.


SLAM
visual:
¿por
qué?
 •  Sensor
láser:

 – Pros:
 •  Típicamente
361
medidas
de
distancia
 •  Resolución.
 •  Distancia.
 •  Poco
error.


– Cons:
 •  Un
único
plano
de
medida.
 •  Extensión
al
caso
3D
mediante
brazos
arOculados
o
 sistemas
más
caros.
 •  Peso
y
consumo
altos…
dpicamente.
 •  Algunos
sistemas
más
compactos.


SLAM
visual:
¿por
qué?


SLAM
Visual:
¿por
qué?
 •  Cámaras:
 – Una
cámara.
 •  Se
esOma
la
distancia
con
varias
observaciones
 sucesivas.
 •  Sistemas
omnidireccionales.


– Sistemas
estereo.
 •  Permite
la
esOmación
de
la
distancia
a
parOr
de
una
 observación.
 •  Esta
sujeto
al
problema
de
la
correspondencia
¿qué
 correspondencia
hay
entre
un
punto
en
la
imagen
 izquierda
y
derecha?
Problema
de
la
asociación
de
 datos!!!


SLAM
Visual:
¿Por
qué?
 •  Cámaras:
Comparadas
con
los
Opicos
sistemas
 láser
son:
 – Pros:
 •  Más
baratas.
 •  Más
compactas.
 •  Menor
peso.
 •  Menor
consumo
de
energía.
 •  Permiten
extraer
información
3D.
 •  Gran
canOdad
de
información.
 •  Reconocimiento
de
caras
y
objetos.
 •  Similitud
con
los
humanos.


SLAM
Visual:
¿Por
qué?
 •  Cámaras:
Comparadas
con
los
Opicos
sistemas
 láser
son:
 – Pros:
 •  Más
baratas.
 •  Más
compactas.
 •  Menor
peso.
 •  Menor
consumo
de
energía.
 •  Permiten
extraer
información
3D.
 •  Gran
canOdad
de
información.
 •  Reconocimiento
de
caras
y
objetos.
 •  Similitud
con
los
humanos.


3
CaracterísOcas
visuales.
Detcción.


CaracterísOcas
visuales


SLAM
Visual:
¿Por
qué?
 •  Landmark:
Elemento
disOnOvo
en
el
entorno.
 •  Tipos:

 –  Puntuales.
 –  Bordes.
 –  Regiones.


SLAM
Visual:
¿Por
qué?


Landmarks
visuales


Landmarks
visuales
 •  Cambios
de
escala
 •  Cambios
en
el
punto
de
vista?
 •  Ejemplo


Landmarks
visuales
 •  Cambios
de
punto
de
vista
(ángulo)


Landmarks
visuales
 •  Cambios
de
escala
(tamaño)


Landmarks
visuales
 •  Detectores
uOlizado
en
SLAM
visual.


Esquinas
 • 


Esquinas:
 –  Elementos
en
el
espacio
que
pueden
ser
detectados
fácilmente
desde
diferentes
 puntos
de
vista.
 –  En
un
borde
la
variación
de
f(x,y)
es
grande
en
una
dirección
y
pequeña
en
la
dirección
 ortogonal.
 –  En
una
esquina
esta
variación
será
grande
en
las
dos
direcciones.


• 

UOlidad:
 –  Visión
estéreo
 –  EsOmación
del
movimiento
de
la
cámara
a
parOr
de
imágenes
 –  Reconocimiento
de
objetos
 Diferentes
métodos:
 –  Kitchen
Rosenfeld
 –  Beaudet
 –  Harris


• 

Harris
corner
detector
 •  Se fundamenta en la siguiente matriz, calculada en un entorno pxq del punto.

•  Si diagonalizamos C:

•  Los valores λ1 y λ2 nos indican la magnitud del cambio en la dirección de los autovectores. Dirección de mínimo cambio

λmin

λmax

Dirección de máximo cambio

Harris
corner
detector
 •  En una esquina los valores λ1 y λ2 deben ser grandes. •  Encontramos los máximos de R que superen un valoresquinas (k=0.04-0.06).

Clasificación de puntos λ2

λ1 y λ2 pequeños

“Borde” λ2 >> λ1

Región cte

“Esquina” λ1 y λ2 grandes, λ1 ~ λ2;

“Borde” λ1 >> λ2 λ1

Harris
corner
detector


Extracción
de
puntos
de
interés:
SIFT
(Scale
Invariant
Feature
Transform)
 •  Se puede entender como una generalización de la extracción de bordes/esquinas. •  Se añade información que permite distinguir al punto en una etapa posterior. •  Etapas: •  Detección de puntos en el espacio de escalas. •  Asignación de una orientación. •  Generación de un descriptor.

•  Detección de puntos: •  Se convoluciona la imagen con un filtro DoG (Diferencia de Gaussianas). Es una aproximación de la laplaciana de la Gaussiana.

•  Es equivalente a:

Scale
Invariant
feature
transform


•  • 

• 

Se realiza un muestreo con interpolación bilineal y se continúa con el proceso. Los puntos significativos se extraen como máximos y minimos entre imágenes DoG consecutivas. Se compara el píxel con sus 8 vecinos y con los 9 vecinos superiores e inferiores. Si el píxel es un máximo o un mínimo se selecciona. Permite detectar puntos de forma estable ante: •  • 

Escalados, rotaciones y diferentes puntos de vista. Cambios de iluminación.

SIFT


•  Reconocimiento del punto en una etapa posterior. Requiere: •  Asignación de una orientación. •  Generación de un descriptor.

SIFT:
Aplicaciones


4
Descripción


Descripción


Descripción
 •  Descriptores
uOlizados
en
SLAM
visual.


Comparación
de
detectores
y
 descriptores


Evaluación
de
detectores
y
descriptores


Evaluación
de
detectores
y
descriptores


Evaluación
de
detectores
y
descriptores


Evaluación
de
detectores
y
descriptores


Evaluación
de
detectores
y
descriptores


Evaluación
de
detectores
y
descriptores


Evaluación
de
detectores
y
descriptores


Evaluación
de
detectores
y
descriptores


Evaluación
de
detectores
y
descriptores


5
Asociación
de
datos


La
asociación
de
datos


Asociación
de
datos


EJEMPLOS
DE
SLAM
VISUAL


Descripción
 •  SLAM
Visual
uOlizando
Harris,
SURF,
y
 FastSLAM.
 •  Vídeo


Descripción
 •  SLAM
Visual
uOlizando
Harris,
Ventana
de
 grises,
EKF,
y
una
única
cámara.
 •  Vídeo


SLAM
monocular
 •  SLAM
usando
ángulos,
no
distancias…
 •  Complejo.
 •  En
el
caso
de
una
cámara:


SLAM
monocular


6
SLAM
CooperaOvo


FastSLAM
 •  Filtro
de
Kalman:
 – Crece
en
complejidad
con
el
número
de
landmarks
 que
presente
el
mapa

 – Muy
sensible
a
medidas
erróneas
de
las
 landmarks


•  FastSLAM
(Montemerlo
2003):
 – Desacopla
los
dos
aspectos
del
SLAM
 •  EsOmación
de
la
trayectoria
del
robot
en
el
espacio
 •  EsOmación
del
mapa
 Oscar
Reinoso
García


52


MúlOples
robots
cooperaOvos
 •  ObjeOvo:
 – Un
equipo
formado
por
K
robots
deben
explorar
y
 construir
un
entorno



•  CaracterísOcas:
 – Los
robots
son
capaces
de
detectar
un
conjunto
de
 marcas
visuales
 – Los
robots
comparten
las
observaciones
realizadas
 sobre
las
landmarks
y
generan
un
mapa
común
del
 entorno
 – Los
robots
Oenen
capacidad
de
comunicación
 Oscar
Reinoso
García
 53
 entre
sí
o
bien
con
un
PC
central


MúlOples
robots
cooperaOvos
 Notación Pose del robot ‘k’ en el instante ‘t’ Conjunto de poses del robot i hasta el instante ‘t’ Conjunto de caminos del equipo de robots Conjunto de acciones del equipo de robots Conjunto de observaciones del equipo de robots

Conjunto de asociaciones del equipo de robots

Oscar
Reinoso
García


54


MúlOples
robots
cooperaOvos
 Localización y Reconocimiento MULTIROBOT

Se estiman de forma conjunta un conjunto de K caminos y un mapa condicionados a los movimientos (u) de cada robot, las medidas efectuadas por cada uno (z) y las asociaciones de datos (n).

Filtro de partículas

Conjunto de N estimaciones independientes condicionadas a los caminos

Oscar
Reinoso
García


55


MúlOples
robots
cooperaOvos
 ALTERNATIVAS Constituir K filtros de partículas, uno por cada uno de los robots que forman el equipo: • Número de partículas K M • Número de mapas K M (cada partícula lleva su mapa asociado) • Cada partícula cuenta con N estimadores independientes (una por cada landmark) -> NKM Filtros de Kalman Constituir un filtro de partículas con un total de M partículas: • Cada partícula lleva asociada la pose de cada uno de los K robots del equipo • Todos los robots comparten el mismo mapa. Existe un mapa por partícula (M) • Cada partícula cuenta con N estimadores independientes (una por cada landmark) -> NM Filtros de Kalman Oscar
Reinoso
García


56


MúlOples
robots
cooperaOvos
 Etapas del Algoritmo

1.  Generación
de
un
nuevo
conjunto
de
 pardculas
 2.  Actualización
de
las
landmarks
con
las
 nuevas
observaciones
 3.  Asignación
de
pesos
a
pardculas
 4.  Muestreo
con
reposición
en
función
del
 peso
 Oscar
Reinoso
García


57


Generación
de
un
Nuevo
Conjunto
de
Pardculas


Se genera nuevas poses para cada una de las K poses de la partícula Graficamente la partícula no representa la pose de un robot sino la pose de cada robot del equipo





Partícula i %"

$!

&#

&$

&#

&#

&$

&$

&#

&#

$"

&$

&$

&#

+&()*

&$ &# &$

&#

&#

&#

&#

&#

&#

&$

&$

&$

&$

&$

&$

&# &$ &$

&#

#!

&# &$ &$

&#

&# &$

#"

&$

&# &$ &$

! &$

&#

&#

&#

&$

&$

&$

&#

&#

&#&$

&$

&$

&#

&#

&#

&#

" !!

&# &$

"

!

#"

#!

$"

$!

%"

'&()* Oscar
Reinoso
García


58


Actualización
de
las
landmarks
con
las
nuevas
observaciones


• La actualización de la landmark se realiza teniendo en cuenta la pose del robot , que realizó la observación. • Cada robot (que se encontrará en una posición del entorno) reconoce un conjunto de landmarks que puede ser diferente a las de otro robot • La estimación de todos los caminos se debe hacer de forma conjunta dado que todos los robots comparten el mismo mapa

Oscar
Reinoso
García


59


Asignación
de
un
peso
a
cada
 pardcula
 •  El
peso
dependerá
de
las
medidas
realizadas
y
de
las
 asociaciones
efectuadas:


•  Dado
que
se
realiza
una
esOmación
conjunta
sobre
el
 espacio
de
las
poses
de
todos
los
robots,
se
calcula
el
peso
 asociado
a
cada
pardcula,
teniendo
en
cuenta
los
K
pesos
 calculados


Oscar
Reinoso
García


60


Muestreo
con
reposición
 •  El
muestreo
con
reposición
es
similar
al
caso
de
un
único
 robot,
dado
que
según
la
opción
considerada,
cada
 pardcula
lleva
asociada
un
peso
 •  
Mejor
pose
y
mapa:
 –  
Las
asociadas
a
la
pardcula
con
mayor
peso
logarítmico
 acumulado
hasta
ese
instante


Oscar
Reinoso
García


61


Contenido
General
 •  JusOficación
y
Contexto
 •  Localización
y
reconocimiento
en
entornos
 con
caracterísOcas
visuales
mediante
el
uso
 coordinado
de
múlOples
robots
 – Localización
 – FastSLAM
 – Análisis
y
modificaciones
del
modelo
 – Localización
y
reconocimiento
con
múlOples
 robots
cooperaOvos
 – Resultados
simulación
mulOrobot


•  Conclusiones


Oscar
Reinoso
García


62


Resultados
simulación
mulOrobot
 •  •  •  • 

Entorno
idénOco
30x30x2m
 Conjunto
de
landmarks
tridimensionales
 Asociado
a
cada
landmark
existe
un
descriptor
SIFT
de
ésta
 Se
realiza
una
simulación
con
dos
robots
 –  Estos
robots
realizan
un
movimiento
diferente
sobre
el
mismo
entorno
 tridimensional


•  Se
generan
un
conjunto
de
hipótesis
(M)
sobre
la
pose
de
 todos
los
robots
 •  El
conjunto
de
robots
comparte
totalmente
el
mapa
del
 entorno
 •  Vídeo
 Oscar
Reinoso
García


63


Resultados
simulación
mulOrobot
 %!

%!

%"

%"

$!

&#

&# &#

&#

&#

&#

&#

&#

&#

$!

&# &#

$"

&# &# &# &#

#"

#"

&#&#

!

!! !!

&$

&#

&#

&#

&#

&#

&#

&#

!

#"

#!

'&()*

$"

$!

&$ &$

%"

!! %! !!

&$

&$ &$

"

&$

&$

&$

!

&#

&$

&$

&$

&$ &#

"

&# &$

&$

&#

"

&$

&$

#!

&#

&#

&$

&$

'&()*

&#

#!

&$

&$

&#

$"

+&()*

&$

&$ &$

&$

&$

&$

&$ &$

&$

&# &$

"

!

#"

#!

$"

$!

+&()*

Oscar
Reinoso
García


64


%"

%!

2

Z (m)

Z (m)

Resultados
simulación
mulOrobot
 1 0

30

1

1

1 1

1

1

1

1

1

0 30

10 1

1

1

1

1

1

1

0

20

10

2 2 2 2

1

Y (m)

2 2

2 2 2

10

2

2

2

1 2

0

2

2

20

1 1

2

2

1 11

1 2

2

2

1

1

2

2

2

1

1

Y (m)

1

1 1

1

1

20

2

Oscar
Reinoso
García


2

2 2

2

30

1 2

30

X (m)

2

2

2

20

0

10 0

X (m)

65


Resultados
simulación
mulOrobot
 %" &$

&$ &$ HIPÓTESIS REALIZADAS SOBRE AMBOS ROBOTS &$

$!

&#

&$

&$

&#

&#

&#

&#

&#

&# &$

&#

&#

&$

&$

&#

&#

$"

&$

&$

&#

+&()*

+ Odometría del robot o Pose real  Pose estimada

&#

&$

&$

&# &$ &$

&#

#!

&# &$ &$

&#

&# &$

#"

&$

&# &$ &$

! &$

&$

&$

&#

&#

&#

&$

&$

&#

&#

&#&$

&$

&#

&#

&#

&#

" !!

&# &$

"

!

#"

#!

$"

$!

'&()* Oscar
Reinoso
García


66


%"

Resultados
simulación
mulOrobot
 4.5

error medio de posición

4 3.5 3

2.5 2

1.5 1

0.5 0

0

1

2

3

log(M)

4

5

/01234503678903673:36;83)!73:368120739*6,7.

Variación del número (M de partículas #

'

&

%

$

! 7 6 !!"#

!

!"#

$

$"#

%

%"#

&

)*+,-.

Al aumentar el número de partículas la representación es más exacta Oscar
Reinoso
García


67


&"#

Resultados
simulación
mulOrobot
 4.5

Error medio de posición

Variación de 4la distancia máxima de observación 3.5 3

2.5 2

1.5 1

0.5 0 0

5

10

15

20

25

30

35

Dmax Si la distancia es pequeña el error es grande (siempre hay nuevas landmarks) Oscar
Reinoso
García


68


SLAM-VISUAL-SLAM-Cooperativo-Sesión9.pdf

There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item.

9MB Sizes 0 Downloads 82 Views

Recommend Documents

No documents