53
Departamento de Física, Ingeniería de Sistemas y Teoría de la Señal Grupo de Automática, Robótica y Visión Artificial Jorge Pomares Baeza Fernando Torres Medina Grupo de Automática, Robótica y Visión Artificial Seguimiento de Trayectorias empleando Control Visual 2D basado en Flujo de Movimiento

Seguimiento de Trayectorias empleando Control Visual 2D ...dfists.ua.es/controlvisual/ponencias/CV2DFMua.pdf · Departamento de Física, Ingeniería de Sistemas y Teoría de la Señal

Embed Size (px)

Citation preview

Departamento de Física, Ingeniería de Sistemas y Teoría de la SeñalGrupo de Automática, Robótica y Visión Artificial

Jorge Pomares BaezaFernando Torres Medina

Grupo de Automática, Robótica y Visión Artificial

Seguimiento de Trayectorias empleando Control Visual 2D

basado en Flujo de Movimiento

2Automática, Robótica y Visión Artificial

Indice

Trabajos anteriores.Problema a resolver.Control Visual Basado en Imagen.Seguimiento de trayectorias empleando control visual.Control visual 2D basado en flujo de movimiento.

! Generación del flujo de movimiento.! Control visual 2D basado en flujo de movimiento.! Resultados.

Fusión Control Visual-Fuerza.

3Automática, Robótica y Visión Artificial

Trabajos anteriores

Control visual directo:

4Automática, Robótica y Visión Artificial

Trabajos anteriores

Control visual directo:

v1

v2

v3 v4

v1

v2

v3 v4

! Aplicación al seguimiento de objetos.

5Automática, Robótica y Visión Artificial

Trabajos anteriores

Control visual directo.

( ) ( )nynx ii , ( ) ( )nynx ii �,�

Control visual basado en imagen:! Predicción de movimiento.

6Automática, Robótica y Visión Artificial

Trabajos anteriores

Control visual directo.Control visual basado en imagen:

! Predicción de movimiento.! Aplicación a un sistema “eye-in-hand”.

7Automática, Robótica y Visión Artificial

Problema a resolver

Desensamblado automático:! Base de conocimiento.! Modelado del entorno.! Generación de movimientos.

Modelado

Planificador de secuencia

Generador de movimientos

Base de conocimiento

Simulación

Planificador global

Componente a desensamblar

Sistema de visión

artificial

8Automática, Robótica y Visión Artificial

Problema a resolver

Desensamblado automático:! Base de conocimiento.! Modelado del entorno.! Generación de movimientos.

Modelado

Planificador de secuencia

Generador de movimientos

Base de conocimiento

Simulación

Planificador global

Componente a desensamblar

Sistema de visión

artificial

Trayectorias a priori.

Control de trayectoriasVisión artificial.

Control de la interacción.Control de fuerza.

Fusión

9Automática, Robótica y Visión Artificial

Control visual basado en imagen

Control visual basado en imagen:! La información visual es utilizada directamente para estimar el

movimiento del robot. ! No requiere “interpretar” la imagen.! Robustez frente a errores de modelado.

10Automática, Robótica y Visión Artificial

Control visual basado en imagen:! Empleado en aplicaciones punto a punto.! Buen comportamiento cuando las características actuales y las

deseadas se encuentran cercanas .! No es posible especificar la trayectoria del robot en el espacio 3D.

Control visual basado en imagen

11Automática, Robótica y Visión Artificial

Seguimiento de Trayectorias dependientes del tiempo.

Seguimiento de Trayectorias

1f2f

3f4f 5f 6f

7f

8f

9ft1t2

t3

t4 t5t6

t7

t8

t9

! Definición de fd(t).! fd y if deben estar lo

“suficientemente cerca”.! Mantener las restricciones

temporales es excesivamente restrictivo.

" No garantiza buen seguimiento.

" Puede no seguir la trayectoria a costa de mantener las restricciones temporales.

12Automática, Robótica y Visión Artificial

Propiedades:! La tarea se especifica en el espacio de configuraciones de la imagen.! Codificación independiente del tiempo.! Permite controlar la trayectoria durante la tarea.! Precisión y velocidad de seguimiento ajustable.! Aprovecha el buen comportamiento de los c.v. 2D cuando las

características deseadas se encuentran cercanas.! Extensión a trayectorias respecto a objetos en movimiento.

C.V. 2D basado Flujo Movimiento

13Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Generación del flujo de movimiento.! 1. Obtención de la Trayectoria deseada en la

imagen

Trayectoria 3D deseada

Muestras en el espacio cartesiano

3D

Características deseada en la

imagen, kfi

f1

f2f3

f4

Muestreo

Interpolador spline

Proyección

Evolución deseada en la imagen, fdi(τ)

fd:Γ → ℑ

14Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Generación del flujo de movimiento.! 2. Definición Φ: ℑ → Tℑ

E(f, τ)=(Ex,Ey) Ex=(fx(τ)-fxd(τ))Ey=(fy(τ)-fyd(τ))

U:ℜn → ℜ

( )

( )

( ) ( )

∂∂∂∂

⋅−

∂∂

⋅=Φ

11ττττ

y

x

2yd

xd

1 f

f

Gf

f

G U

U

ffFlujo de

movimiento

15Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Generación del flujo de movimiento.! 2. Definición

" Si f evoluciona en la dirección → E no varía." Al aplicar el campo de velocidad se cumple que:" Evolución del error, E:

( )τdf&

Φ⋅= βf&

( )

∂∂∂∂

⋅⋅−=

y

x2

f

fG U

U

fE β&

Convergencia cuando Ex=Ey=0 f → fd

16Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Generación del flujo de movimiento.

! 3. Funciones G1 y G2." G1 controla la velocidad de

progresión de la trayectoria deseada en la imagen.

" G2 controla la “influencia” del gradiente sobre la trayectoria

( ) ( )( )( ) ( )( )( )

∫ −− −−=δ

δν

/τ,

0

111 1

,,/τ,11,,

fE

fEf

U

Udttt

babaG ba

( ) ( )( )( ) ( )( )( )

∫ −− −=δ

δν

/τ,

0

112 1

,,/τ,1,,

fE

fEf

U

Udttt

babaG ba

( )

( )

( ) ( )

∂∂∂∂

⋅−

∂∂

⋅=Φ

11ττττ

y

x

2yd

xd

1 E

E

Gf

f

G U

U

ff

Si U(E(f,τ)>δ → G1=0

a = 0,5 b = 4

a = 2 b = 4a = 4 b = 4

a = 2 b = 0,5

PesoG2

U(E)/δ

17Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Generación del flujo de movimiento.! 4. Función de Potencial, U(E).

" Ejemplo:

1f2f

3f4f 5f 6f

7f

8f

9f

18Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Generación del flujo de movimiento.! 4. Función de Potencial, U(E).

" Ejemplo:

19Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Generación del flujo de movimiento.! 4. Función de Potencial, U(E).

" Ejemplo:

Mapa de distancias

20Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Generación del flujo de movimiento.! 4. Función de Potencial, U(E).

" Ejemplo:

Potencial, U

21Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Generación del flujo de movimiento.! 5. Gradiente y flujo de movimiento.

" Ejemplo:

jf

if yx

rr

∂∂

−∂∂

−=∇−UUU Flujo de movimiento

5=δ

22Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Se pretende determinar la acción de control de forma que se anule progresivamente la siguiente función de error (función de tarea):

( ) ( ) ( )( )τττ d+f

�, fr,fre −= J

t∂∂

+

∂∂

=ev

ree C&A partir de la definición de función de tarea (τ=t):

ee ⋅−= k&Se desea que el error decrezca de manera exponencial:

Con lo que se obtiene la siguiente expresión para la velocidad de la cámara:

∂∂

−−

∂∂

=+

tee

rev

�k

�C

es una estimación del movimiento del objeto en la imagent∂

∂e�

( ) 0� f2

+f ≤

Φ⋅⋅

∂∂

⋅⋅−=∂∂

ββ

JUJiE

G fre( ) 0

2

y

2

x2 ≤

∂∂

+

∂∂

⋅⋅−=ff

G UUfE β&

( ) 0��� f

2+f ≤

Φ⋅

∂∂

⋅−=∂∂ JUJ

ff

re G

23Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

A partir de la velocidad aplicada:

∂∂

−−

∂∂

=+

tee

rev

�k

�C

tt ∂∂

+

∂∂

−−

∂∂

∂∂

=+ eee

re

ree

�k

�&

0�

∂∂

∂∂ +

re

re

El comportamiento de la función de tarea vendrá dado por:

Para asegurarse el decrecimiento de la función de error deberá cumplirse:

0≤ 0≤

24Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Comportamiento de la función de tarea:

tt ∂∂

+

∂∂

−−

∂∂

∂∂

=+ eee

re

ree

�k

�&

Estimación basada en Filtros de Kalman

( ) ( ) ( ) ( ) bb

aam ττττ),( dd ffffff &&& −+−= ηηUFunción de potencial modificada:

),(),(),( mmm ffffff ff&&&

& UUV ∇−−∇=f

fffff ∂∂

=∇),(),( m

m

&& UU

ffffff &

&&

&∂

∂=∇

),(),( mm

UU

25Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Simulación.

f1

f2f3

f4

Visual Servoing Toolbox:

http://sourceforge.net/projects/vstoolbox/

26Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Simulación.

f1

f2f3

f4

27Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Simulación.

f1

f2f3

f4

28Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Simulación.

f1

f2f3

f4

29Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Simulación.

f1

f2f3

f4

30Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Simulación.

f1

f2f3

f4

31Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Simulación.

f1

f2f3

f4

32Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Simulación.

f1

f2f3

f4

33Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Simulación.

f1

f2f3

f4

34Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Simulación.

f1

f2f3

f4

35Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Simulación.

Puntos Iniciales en la trayectoria deseada. Puntos Iniciales fuera de la trayectoria deseada.

36Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Trayectoria real.! Entorno de pruebas.

RobotMitsubishi PA-10

JAI CV-M536

37Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Trayectoria real.! Trayectoria 1.

Trayectoria deseada en la imagen

38Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Trayectoria real.! Trayectoria 1.

Simulación Trayectoria real

39Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Trayectoria real.! Trayectoria 1.

40Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Trayectoria real.! Trayectoria 1. (a=2, b=0,5).

41Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Trayectoria real.! Trayectoria 2.

f1f2

f3

f4

f1

f2

42Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Trayectoria real.! Trayectoria 2.

f1f2

f3

f4

f3

f4

43Automática, Robótica y Visión Artificial

C.V. 2D basado Flujo Movimiento

Resultados. Trayectoria real.! Trayectoria 2.

44Automática, Robótica y Visión Artificial

Fusión control visual-fuerza

Características de la información visual y fuerza:! Miden distintos fenómenos físicos pero complementarios.

Fuerza:! Proporciona información acerca de la geometría del contacto.! Control del movimiento determinando las fuerzas de contacto.

Visión:! Proporciona información global del entorno.! No es adecuado para controlar la interacción del robot con el entorno.

45Automática, Robótica y Visión Artificial

Fusión control visual-fuerza

Características de la información visual y fuerza.Aproximaciones para control de movimiento utilizando visión y fuerza:

Control de impedancia:! Especifica la relación dinámica entre fuerza y movimiento.

Control híbrido:! Divide el espacio de control en:

! Direcciones controladas por fuerza.! Direcciones controladas por visión.

! Se especifica la tarea atendiendo a un conocimiento geométrico previo.

46Automática, Robótica y Visión Artificial

Fusión control visual-fuerza

Características de la información visual y fuerza.Aproximaciones para control de movimiento utilizando visión y fuerza.

! Control híbrido:! Control simultáneo de distintas direcciones por visión y fuerza.

! Control alternado:! Una dirección es controlada alternativamente por visión y fuerza.

! Control compartido:! Control simultáneo de la misma dirección con visión y fuerza.

Niveles en la integración de fuerza y visión:

47Automática, Robótica y Visión Artificial

Fusión control visual-fuerza

! Se dispone de n sensores, de los cuales se obtiene una señal fi.

48Automática, Robótica y Visión Artificial

Fusión control visual-fuerza

! Se dispone de n sensores, de los cuales se obtiene una señal fi.

( ) [ ] ( )d

Mn

1iidi

+i

1-ii -��-�� ffffp LWLW ==∑

=

e! Se considera la función de error:donde: ∑

=

=n

1ii 1p

! Considerando la función de tarea: Evefe ⋅⋅⋅=⇒⋅= WLCC &&&

ee k−=&! Imponiendo un decrecimiento exponencial de la función de error:[ ] ee-v k����k

1ME −=⋅

⋅⋅⋅=

WLLW

! Comportamiento de la función de tarea:

[ ] ( ) ee ⋅−= LWLWM��k&

0��n

1iii

+i

1-ii >∑

=

WLLWp>0

Evf ⋅⋅= WL&

donde W convierte las velocidades al sistema del extremo del robot.! A partir de la definición de matriz de interacción:

49Automática, Robótica y Visión Artificial

Fusión control visual-fuerza

! Arquitectura globlal del sistema.

Sensor de fuerza JR3 67M25A-I40

Mesa giratoria ESHED ROBOTEC

JAI-M536Par estéro externo

EVI D-31

MitsubishiPA10

50Automática, Robótica y Visión Artificial

Fusión control visual-fuerza

! Arquitectura globlal del sistema.! Sistema de visión:

! Fase 1: Utilización del sistema de visión externo para obtener la localización aproximada del objeto.

! Fase 2: Funcionamiento conjunto de ambos sistemas de visión.

51Automática, Robótica y Visión Artificial

Fusión control visual-fuerza

! Arquitectura globlal del sistema.! Sistema de visión.! Sistema de fuerza. Resultados.

-60

-50

-40

-30

-20

-10

0

10

1 11 21 31 41 51 61 71 81 91 101 111 121 131

Iterations

Fx

Fy

Fz

Fuerza en N

-1-0,8-0,6-0,4-0,2

00,20,40,60,8

1

1 13 25 37 49 61 73 85 97 109 121 133

Iteraciones

Fuerza en N

FxFyFz

-14-12-10

-8-6-4-202

1 72 143 214 285 356 427 498 569 640 711

Fx

Fy

Fz-20

-15

-10

-5

0

5

1 79 157 235 313 391 469 547 625 703 781

FxFy

Fz

52Automática, Robótica y Visión Artificial

Fusión control visual-fuerza

! Arquitectura globlal del sistema.! Sistema de visión.! Sistema de fuerza. Resultados.

© Grupo de Automática, Robótica y Visión Artificial

http://www.dfists.ua.es/aurova