View
215
Download
0
Category
Preview:
Citation preview
Seguimiento visual por imitación
INAOE Curso: “Robótica Probabilística”
Dr. Luis Enrique Sucar Succar
Apolinar Ramírez S
Julio, 2007
Introducción
El aprendizaje de tareas por imitación, facilitará la programación de los robots por usuarios finales.
Problema a Resolver:
- seguimiento de la trayectoria de una persona frente a un robot móvil dotado de una cámara.
CONTENIDO
1. Algoritmo atencional2. Seguimiento3. Mapeo humano-robot4. Aprendizaje5. RESULTADOS Y CONCLUSIONES
Algoritmo atencional
ADABOOST:
AdaBoost genera un conjunto secuencial de clasificadores
AdaBoost puede emplearse como un sistema ATENCIONAL
por su característica de identificar datos fuera de orden
(outliers).
CONTRIBUCIONES
1) Representación de imágenes: “imagen integral”
2) Algoritmo basado en AdaBoost para la selección de características.
3) Método para combinar clasificadores en cascada para descartar el fondo del objeto a identificar.
Un algoritmo aprox. 15 veces más rápido.
Suma Suma-
Características empleadas
características => reconocimiento
24
24
Imagen “integral”
1 = A2= A+B3= A+C4= A+B+C+D
D= 4 + 1 -(2+3)
Base de Datos
324x288 = 93312 pixs
detector: 28x28 = 576 pixs
93312 / 576 = 162 zonas
162 zonas x 280 = 45396 características
324
288
Algoritmo en base AdaBoost
Freund & Schapire, 1995
Selección de T características
T=10
Base de Datos
La base de datos contiene ejemplos positivos y negativos
Clasificación por capas
2 ... 38
ACEPTAR
RECHAZAR
1
1 10
Ejemplo
./face –cascade=”haarcascade_frontalface_alt.xml”
./mascota1
Seguimiento
CamShift = Continuosly Adaptive Mean Shift, Bradsky,
1998
Imagen color => histograma => backprojection image
(distribución de probabilidad del histograma)
la moda de región de búsqueda, actualizándose
Estableciendo histograma
Seguimiento
Trayectoria,
w0
w1
w2
w3
w4
W(x,y,deltax, deltay)
Modelo cinemático del robot
( 1) ( ) cos
( 1) ( ) sin
( 1) ( )
f
f
x k x k v t
y k y k v t
k k v t
Ecuaciones de movimiento
donde vf = velocidad forward y vθ = velocidad angular
Modelo cinemático del usuario
_ *cos
_ *sinx
y
v v cte
v v cte
Ecuaciones de movimiento
donde vx = velocidad en direción frente al robot y vy = velocidad en dirección perpendicularv_cte = 3 Kms/hr
Políticas
Movimientos posibles en términos de primitivas;
SetSpeed(vel_traslación, vel_rotación)
1) “gira y avanza”
2) “no moverse”
Formalmente,
(x,t,α)= u x= estadot= tiempoα= parámetrosu= acción
Resultados
Se consideraron valores aproximados para el mapeo de coordenadas de la imagen a coordenadas reales (el radio del rostro con un valor fijo de 4.5” a una distancia de un metro)
Camshift no tiene un buen rendimiento en entornos de color similar a la camisa de la persona. Se pierde.
AdaBoost se comporta de manera aceptable.
Conclusiones
Se requiere emplear técnicas de fusión para el seguimiento. Además del color, emplear el movimiento u otra característica que complemente la información
Las primitivas del Pioneer habilitadas en Player/Stage son muy simples para una tarea más compleja.
Las librerías de OpenCV no tienen algunas características deseables en una librería gráfica, por ejemplo, “clipping” de ventana.
Referencias
Paul Viola, Michael Jones; “Rapid object detection using a Boosted Cascade of Simple Features”; 2001
Avilés A. H. “Reconocimiento visual de ademanes aplicado a robots móviles”, Tesis doctoral, 2006
Manuales de OpenCV, Player/Stage
Gracias por su atención
Recommended