realidad aumentada - modulo 3 fundamentos

185
Realidad Aumentada | María José Abásolo | Facultad Informática U NLP | noviembre 2013 REALIDAD AUMENTADA Profesora: María José Abásolo Universidad Nacional de La Plata

Upload: maria-jose-abasolo-guerrero

Post on 12-Jun-2015

498 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

REALIDAD AUMENTADA

Profesora:

María José AbásoloUniversidad Nacional de La Plata

Page 2: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

MÓDULO 1 Introducción a Realidad Aumentada (RA) MÓDULO 2Dispositivos de entrada y salida MÓDULO 3Fundamentos teóricos MÓDULO 4Librerías y authoring de RA

Contenidos

Page 3: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

MÓDULO 1 Introducción a Realidad Aumentada (RA) MÓDULO 2Dispositivos de entrada y salida MÓDULO 3Fundamentos teóricos MÓDULO 4Librerías y authoring de RA

Contenidos

Page 4: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

M3- Fundamentos teóricos

Formación de imágenes Tracking basado en visión Calibración de cámara

Page 5: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

M3- Fundamentos teóricos

Formación de imágenes Tracking basado en visión Calibración de cámara

Page 6: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

M3- Fundamentos teóricos

Formación de imágenes Sistemas de referencia Transformaciones geométricas Transformación de proyección Proceso de formación de imágenes

Page 7: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes

El proceso de formación una imagen a partir de un objeto 3D convierte cada punto 3D en un píxel de la imagen 2D

La formación de una imagen 2D a partir de un objeto 3D puede expresarse matemáticamente

Es válido para representar el proceso de sacar una foto en la realidad el proceso de obtener una vista determinada del

mundo virtual

M3- Fundamentos teóricos

Page 8: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes

En RA se tiene El mundo real en el que situamos un sistema de

coordenadas 3D Un modelo sintético 3D que debe estar referenciado en el

sistema de coordenadas 3D del mundo real Según la posición y orientación del usuario en relación al

sistema de coordenadas 3D, se debe generar una imagen sintética que se combinará con la escena real La imagen sintética es el resultado de tomar una vista

(como sacar una foto) del modelo 3D desde la posición y orientación del usuario

M3- Fundamentos teóricos

Page 9: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Diagrama conceptual de RA

trackingcaptura

generador de escena virtual

Posición y orientación Video o visión directadel mundo real

Imagen real + objetos virtuales registrados

Proyección dela escena virtual (gráficos 3d) y otros elementos

combinador

M3- Fundamentos teóricos

Formación de imágenes

Proceso deformación de imágenes

Page 10: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes

Mundo 3D

M3- Fundamentos teóricos

El mundo 3Destá compuestopor objetossituados en ciertas posicionesy orientaciones.Puede serreal o sintético.

Page 11: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes

Cámara

M3- Fundamentos teóricos

La cámara captura la escena desdeuna ciertaposición y orientación.Puede ser una cámara real en caso de estarsacando una foto.Puede ser una cámarasintética en caso de estar visualizando unmodelo virtual.

Page 12: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes

Imagen formada

M3- Fundamentos teóricos

La imagenes el resultadode una proyecciónque realiza lacámara.La imagen se forma en el planode proyección

Page 13: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes

Imagen con cámara real

M3- Fundamentos teóricos

En una cámara real, la imagenformada en elplano de proyecciónestá “invertida”

centro de proyección

Page 14: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes

Imagen concámara sintética

M3- Fundamentos teóricos

En fotos sintéticasse elige tener en cuenta la imagen que se formaen un plano situadodelante de la cámara

Page 15: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

M3- Fundamentos teóricos

Formación de imágenes Sistemas de referencia Transformaciones geométricas Transformación de proyección Proceso de formación de imágenes

Page 16: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenesSistemas de referencia

Se dijo que el mundo 3D está compuesto por objetos situados en diferentes posiciones y orientaciones

También la cámara está situada en cierta posición y orientación

Cuando se habla de posiciones y orientaciones es necesario establecer en relación a QUÉ nos referimos: se necesita un sistema de referencia

M3- Fundamentos teóricos

Page 17: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Sistema deCoordenadasMundo 3D

La posición yorientación delos objetosreales o sintéticossuele expresarseen relación a un sistema de coordenadas 3Dsituado en algúnlugar del mundo

Formación de imágenesSistemas de referencia

M3- Fundamentos teóricos

Page 18: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Sistema de CoordenadasCámara 3D

El sistemade coordenadascámara 3Dtiene el origenen el centroóptico y eleje Z alineadocon el ejede proyección

Formación de imágenesSistemas de referencia

M3- Fundamentos teóricos

Page 19: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Sistema de coordenadas Imagen 2D

Los puntos de la imagen seexpresan en relación a un sistema de coordenadas 2D con los ejesalineados con los bordes de laimagen y elcentro en unaesquina o en el centro de la imagen

Formación de imágenesSistemas de referencia

M3- Fundamentos teóricos

Page 20: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Sistemas de referencia Transformaciones geométricas Transformación de proyección

M3- Fundamentos teóricos

Page 21: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Sistema deCoordenadaslocal

M3- Fundamentos teóricos

Cada objeto puede tener unsistema de coordenadas Local.Por ejemplo, para modelar unobjeto virtual sepuede usar un sistema de coordenadaslocal situado en el centro del objeto

Page 22: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Sistema deCoordenadasMundo 3D

Las transformacionesgeométricas son traslaciones, rotaciones y escalado

Al componer una escena con varios objetos, la ubicación de los mismos en la escena sehace en relación a un único sistema de coordenadas mundo, mediante transformaciones geométricas

M3- Fundamentos teóricos

Page 23: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Sistema deCoordenadasMundo 3D

El sistema de coordenadasmundo 3D puede expresarseen relación al sistema decoordenadas cámara 3D mediantetransformaciones geométricas

Sistema de CoordenadasCámara 3D

M3- Fundamentos teóricos

Page 24: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

En computación gráfica tienen especial importancia las transformaciones afines Es una transformación lineal

f() es lineal si f(α p + β q) = α f(p) + β f(q) Las transformaciones de las combinaciones lineales de los

vértices pueden obtenerse mediante la combinación lineal de las transformaciones de los vértices

Por ejemplo para transformar todos los puntos de un segmento basta con transformar los extremos y luego trazar el segmento transformado uniendo estos extremos transformados

Las siguientes transformaciones geométricas son transformaciones afines: traslación, rotación y escalado

M3- Fundamentos teóricos

Page 25: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Traslación: Especificar vector Desplaza los puntos una distancia fija en una

dirección P’ = P + d xx

yyzz11

x’y’y’z’z’11

=dx

dy

dz

0

+

M3- Fundamentos teóricos

Page 26: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Rotación Especificar: punto, ángulo y vector Ejemplo simple: rotar puntos alrededor de origen (2D) En coordenadas polares:

x = r cos f , y = r sin f, x’ = r cos (f +υ), y’ = r sin (f +υ) x’ = r (cos f . cos υ - sin f . sin υ)= x cos υ – y sin υ y’ = r (cos f . sin υ + sin f . cos υ) = x sin υ + y cos υ

Rotación 2D

cos cos υυ –sin –sin υυ sin sin υυ cos cos υυ

x’y’y’ =

xyy

(x’,y’)

M3- Fundamentos teóricos

Page 27: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Rotación Especificar: punto fijo, ángulo y vector

Rotación 3D

M3- Fundamentos teóricos

Page 28: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Rotación Si el punto fijo es el origen y el vector z:

x’ = x cos υ – y sin υ y’ = x sin υ + y cos υ z’ = z

xxyyzz

= cos cos υυ -sin υυ 0 sin υυ cos cos υυ 0 0 0 1

Matriz de rotación Rz(υυ )

x’y’y’z’z’

M3- Fundamentos teóricos

Page 29: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Rotación Si el punto fijo es el origen y el vector x:

x’ = x y’ = y cos υ – z sin υ z’ = y sin υ + z cos υ

xxyyzz

x’y’y’z’z’

= 1 0 0 1 0 0 0 cos 0 cos υυ -sin υυ 0 sin υυ cos cos υυ

Matriz de rotación Rx(υυ )

M3- Fundamentos teóricos

Page 30: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Rotación Si el punto fijo es el origen y el vector y:

x’ = x cos υ + z sin υ y’ = y z’ = -x sin υ + z cos υ

xxyyzz

x’y’y’z’z’

= cos cos υυ 0 0 sin υυ 0 1 00 1 0 -sin υυ 0 cos cos υυ

Matriz de rotación Ry(υυ )

HAY UN CAMBIO DE SIGNO DEL SIN (REGLA DE LA MANO DERECHA)

M3- Fundamentos teóricos

Page 31: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Rotación general

xxyyzz

x’y’y’z’z’

= r11 r12 r13r11 r12 r13r21 r22 r23r21 r22 r23r31 r32 r33r31 r32 r33

M3- Fundamentos teóricos

Page 32: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Escalado uniforme y no uniforme

M3- Fundamentos teóricos

Page 33: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Escalado Especificar: factor de escala β, punto fijo y vector (escalado

en dirección al vector)

β > 1 alarga objeto en dirección del vector > 1 alarga objeto en dirección del vector

0 ≤ β < 1 acorta objeto en dirección del vector < 1 acorta objeto en dirección del vector

Si el escalado es en relación al origeny en dirección a ejes principales:

β < 0 dan lugar a la reflexión< 0 dan lugar a la reflexión

xxyyzz

x’y’y’z’z’

=ββx 0 0 0 ββy 0 0 0 ββz

M3- Fundamentos teóricos

Page 34: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Hasta ahora hemos expresado la traslación como una suma, y la rotación y el escalado como una multiplicación: la representación no es homogénea

xxyyzz11

x’y’y’z’z’11

=dx

dy

dz

0

traslación

xxyyzz

x’y’y’z’z’

= r11 r12 r13r11 r12 r13r21 r22 r23r21 r22 r23r31 r32 r33r31 r32 r33

xxyyzz

x’y’y’z’z’

=ββx 0 0 0 ββy 0 0 0 ββz

rotación

escalado

M3- Fundamentos teóricos

Page 35: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Por cuestiones de eficiencia en la implementación computaciones de la concatenación de transformaciones se necesita una representación homogénea de la traslación, la rotación y el escalado

M3- Fundamentos teóricos

Page 36: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Representación homogénea Permite expresar uniformemente en forma

matricial tanto la rotación y el escalado como la traslación Cada transformación afín 3D se representa por

una matriz de 4x4

M3- Fundamentos teóricos

Page 37: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Representación homogénea Puntos y vectores 3D se representan con 4

dimensiones Vector (x,y,z) es (x,y,z,0) Punto (x,y,z) es (x,y,z,1)

M3- Fundamentos teóricos

Page 38: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Traslación P’ = P + d

xxyyzz11

x’y’y’z’z’11

=dx

dy

dz

0

+ Esta forma no es general: adición

xxyyzz11

x’y’y’z’z’11

=1 0 0 dx

0 1 0 dy

0 0 1 dz

0 0 0 1

Forma más general:Multiplicación de matrices

Matriz de traslación T(d)

M3- Fundamentos teóricos

Page 39: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Rotación Si el punto fijo es el origen y el vector z:

xxyyzz11

x’y’y’z’z’11

= cos cos υυ -sin υυ 0 0sin υυ cos cos υυ 0 0 0 0 1 00 0 0 1Matriz de rotación Rz(υυ ) en coordenadas homogéneas

xxyyzz

= cos cos υυ -sin υυ 0 sin υυ cos cos υυ 0 0 0 1

x’y’y’z’z’

===

M3- Fundamentos teóricos

Page 40: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Rotación Si el punto fijo es el origen y el vector x:

xxyyzz11

x’y’y’z’z’11

=1 0 0 1 0 0 000 cos 0 cos υυ -sin υυ 00 0 sin υυ cos cos υυ 0 0 0 0 1Matriz de rotación Rx(υυ ) en coordenadas homogéneas

xxyyzz

x’y’y’z’z’

= 1 0 0 1 0 0 0 cos 0 cos υυ -sin υυ 0 sin υυ cos cos υυ

M3- Fundamentos teóricos

Page 41: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Rotación Si el punto fijo es el origen y el vector y:

xxyyzz11

x’y’y’z’z’11

=cos cos υυ 0 0 sin υυ 000 1 00 1 0 0 -sin υυ 0 cos cos υυ 0 0 0 0 1Matriz de rotación Ry(υυ ) en coordenadas homogéneas

xxyyzz

x’y’y’z’z’

= cos cos υυ 0 0 sin υυ 0 1 00 1 0 -sin υυ 0 cos cos υυ

M3- Fundamentos teóricos

Page 42: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Rotación Rotación general

xxyyzz11

x’y’y’z’z’11

=r11 r12 r13 r11 r12 r13 00r21 r22 r23r21 r22 r23 0 r31 r32 r33r31 r32 r33 0 0 0 0 1

Matriz de rotación general

xxyyzz

x’y’y’z’z’

= r11 r12 r13r11 r12 r13r21 r22 r23r21 r22 r23r31 r32 r33r31 r32 r33

M3- Fundamentos teóricos

Page 43: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Escalado Si el punto fijo es el origen:

xxyyzz11

x’y’y’z’z’11

=ββx 0 0 00 ββy 0 00 0 ββz 00 0 0 1

Matriz de escalado (ββ) ) en coordenadas homogéneasen coordenadas homogéneas

xxyyzz

x’y’y’z’z’

=ββx 0 0 0 ββy 0 0 0 ββz

M3- Fundamentos teóricos

Page 44: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

La forma matricial uniforme permite la implementación eficiente de transformaciones sucesivas mediante la multiplicación de matrices

M3- Fundamentos teóricos

Page 45: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Si cada transformación está expresada como una matriz de 4x4, se pueden llevar a cabo sucesivas transformaciones con multiplicaciones sucesivas de matrices de 4x4

Por ejemplo: primero rotar u grados con respecto al eje Z y luego trasladar (vector d)

P’ = Td Rz P

xxyyzz11

x’y’y’z’z’11

= 1 0 0 dx

0 1 0 dy

0 0 1 dz

0 0 0 1

xxyyzz11

= cos cos υυ -sin υυ 0 dx sin υυ cos cos υυ 0 dy 0 0 1 dz

0 0 0 1

cos cos υυ -sin υυ 0 0sin υυ cos cos υυ 0 0 0 0 1 00 0 0 1

M3- Fundamentos teóricos

Page 46: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Se debe cuidar el orden en que se multiplican las matrices ya que muchas combinaciones de transformaciones no son conmutativas

M3- Fundamentos teóricos

Page 47: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformaciones geométricas

Sistema de CoordenadasCámara 3D

Un punto Pm en relación al sistema de coordenadas mundo puede expresarse en el sistema de coordenadas cámara como Pc = Tcc PmTcc: matriz de 4x4 que expresa las transformaciones geométricas

M3- Fundamentos teóricos

Page 48: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Sistemas de referencia Transformaciones geométricas Transformación de proyección Proceso de formación de imágenes

M3- Fundamentos teóricos

Page 49: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

Sistema de CoordenadasCámara 3D

Sistema de coordenadas Imagen 2D

Cada punto Pc del mundo 3D(en coord. cámara)se proyecta según el modelo de la cámara y tiene su correspondiente pi en la imagenproyectada 2D

M3- Fundamentos teóricos

Page 50: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

Perspectiva Paralela

Proyecciones perspectiva y paralela

M3- Fundamentos teóricos

Page 51: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

Proyección perspectiva: Modelo de Pinhole

Eje principal

Plano imagen Centro de proyección

Punto principal

f:distanciafocal

Pc: punto del mundo en coordcámara

pi: punto de la imagen

(Xc,Yc,Zc)

M3- Fundamentos teóricos

Page 52: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

y / Yc = f / Zc

x / Xc = f / Zc

Proyección perspectiva: Modelo de Pinhole (2D)

f:distanciafocal

M3- Fundamentos teóricos

Por similitud de tríángulos se deduce

pi: punto de la imagen

Pc: punto del mundo en coordcámara

(Xc,Yc,Zc)

Page 53: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

• Al dividir por Zc la ecuación es NO LINEAL:la proyección no es una transformación AFIN

• Es además IRREVERSIBLE: a partir de un punto p en una imagen no puede deducirse el punto en el espacio Pc

Proyección perspectiva: Modelo de Pinhole (2D)

y = Yc . f / Zcx = Xc . f / Zc

• Mapeo del punto del modelo Pc al punto pi en el plano imagen

M3- Fundamentos teóricos

Page 54: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

• Pese a no ser transformación AFIN, puede expresarse en coordenadas homogéneas como matriz de 4x4

• Esto es una ventaja ya que resulta muy eficiente en la implementación utilizar la multiplicación de matrices al igual que se hizo con las transformaciones geométricas

Proyección perspectiva: Modelo de Pinhole (2D)

M3- Fundamentos teóricos

Page 55: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

Proyección perspectiva: Modelo de Pinhole (2D)

Zc y = Yc f

Zc x = Xc f

Zc z = Zc f

•Para expresar matricialmente las ecuaciones las expresamosde la siguiente forma:

M3- Fundamentos teóricos

Page 56: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

XXcc

YYcc

ZZcc

11

ZZccxZZccyyZZcczzZZcc

= f 0 0 00 f 0 00 0 f 00 0 1 0

• A continuación el punto P=(Zc x, Zc y, Zc z, Zc) que es (f Xc, f Yc, f Zc, Zc) debe dividirse por Zc para obtener el punto proyectado pi= (Xc f/Zc, Yc f/Zc, f, 1)

Proyección perspectiva: Modelo de Pinhole (2D)

M3- Fundamentos teóricos

Page 57: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

XXcc

YYcc

ZZcc

11

ZZccxZZccyyZZcczzZZcc

= f 0 0 00 f 0 00 0 f 00 0 1 0

• Dado que se trata de una imagen puede ignorarse la componente Z que siempre es igual a la distancia focal f, o distancia del plano donde se forma la imagen

Proyección perspectiva: Modelo de Pinhole (2D)

M3- Fundamentos teóricos

Page 58: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

• Entonces puede escribirse utilizando una matriz de 3 x 4

=f 0 0 00 f 0 00 0 1 0

Proyección perspectiva: Modelo de Pinhole (2D)

XXcc

YYcc

ZZcc

11

ZZccxZZccyyZZcc

M3- Fundamentos teóricos

Page 59: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

El modelo de cámara de Pinhole solo considera como parámetro f distancia focal

M3- Fundamentos teóricos

Page 60: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

La matriz de proyección completa considera los siguientes parámetros intrínsecos de la cámara: f distancia focal (ox,oy): coordenadas del centro de la

imagen mx,my escalas para mapeo a pixeles

M3- Fundamentos teóricos

Page 61: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

Coordenadas del centro El origen de coordenadas en el plano de la imagen

puede no estar en el centro Sea O = (ox,oy) las coordenadas del punto principal

Para escribir la matriz de proyección se reescribe:

Proyección perspectiva: cámara proyectiva finita

y = Yc . f / Zc + oy

x = Xc . f / Zc + ox

Zc y = Yc . f + Zc oy

Zc x = Xc . f + Zc ox

M3- Fundamentos teóricos

Page 62: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

Coordenadas del centro De forma matricial:

Proyección perspectiva: cámara proyectiva finita

f 0 ox 00 f oy 00 0 1 0

=XXcc

YYcc

ZZcc

11

ZZccxZZccyyZZcc

M3- Fundamentos teóricos

Page 63: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

Diferente escala en ejes X e Y de la imagen Las cámaras CCD puede producir pixels no cuadrados Sea mx y my el número de pixels por unidad de distancia

en coordenadas imagen en los ejes X e Y

Para escribir la matriz de proyección se reescribe:

Proyección perspectiva: cámara proyectiva finita

y = Yc . f . my / Zc + oy

x = Xc . f . mx / Zc + ox

Zc y = Yc . f . my + oy Zc

Zc x = Xc . f . mx + ox Zc

M3- Fundamentos teóricos

Page 64: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

Diferente escala en ejes X e Y de la imagen De forma matricial:

Proyección perspectiva: cámara proyectiva finita

f.mx 0 ox 00 f.my oy 00 0 1 0

=XXcc

YYcc

ZZcc

11

ZZccxZZccyyZZcc

M3- Fundamentos teóricos

Page 65: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Transformación de proyección

Los parámetros intrínsecos de una cámara real dada pueden estimarse mediante un proceso denominado CALIBRACIÓN (se verá más adelante)

M3- Fundamentos teóricos

Page 66: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Sistemas de referencia Transformaciones geométricas Transformación de proyección Proceso de formación de imágenes

M3- Fundamentos teóricos

Page 67: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Sistema deCoordenadasMundo 3D

Sistema de CoordenadasCámara 3D

Sistema de coordenadas Imagen 2D

1- Un punto Pcualquiera del mundo 3D expresado en un sistema decoordenadaslocal

M3- Fundamentos teóricos

Page 68: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Sistema deCoordenadasMundo 3D

Sistema de CoordenadasCámara 3D

Sistema de coordenadas Imagen 2D

P se transforma mediante Tcm(rotaciones y traslaciones) en Pmexpresadoen un sistema decoordenadasmundo 3D

M3- Fundamentos teóricos

Page 69: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

=

Punto 3D encoordenadaslocal

TcmTcm4x44x4

XXYYZZ11

XXmm

YYmm

ZZmm

11

Pm: punto 3D encoordenadasmundo

M3- Fundamentos teóricos

Page 70: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Sistema deCoordenadasMundo 3D

Sistema de CoordenadasCámara 3D

Sistema de coordenadas Imagen 2D

2- Pm setransforma en Pc medianteTcc(rotaciones y traslaciones)expresado sistema decoordenadascámara 3D

M3- Fundamentos teóricos

Page 71: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

=

Pm: punto 3D encoordenadasmundo

TccTcc4x44x4

XXcc

YYcc

ZZcc

11

Pc: punto 3D encoordenadas cámara

XXmm

YYmm

ZZmm

11

Matriz de transformacionesgeométricas

M3- Fundamentos teóricos

Page 72: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Sistema deCoordenadasMundo 3D

Sistema de CoordenadasCámara 3D

Sistema de coordenadas Imagen 2D

3- Finalmente cada punto Pc expresado en coordenadas cámara 3D se proyecta Tppara obtener un punto pi de la imagen 2D (división por z)

M3- Fundamentos teóricos

Page 73: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Pc: punto 3D encoordenadascámara

XXcc

YYcc

ZZcc

11

=

pi:punto 2D de la imagen en pixeles

Matriz de proyección

xy

/Zc

Tp (3x4)

ZZccxZZccyyZZcc

M3- Fundamentos teóricos

Page 74: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Pc puede expresarse en base a Pm

Pc: punto 3D encoordenadascámara

XXcc

YYcc

ZZcc

11

=

pi: punto 2D de la imagen en pixeles

xy

/Zc

Tp (3x4)

ZZccxZZccyyZZcc

M3- Fundamentos teóricos

Matriz de proyección

Page 75: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

=

Pm:punto 3D encoordenadasmundo

pi: punto 2D de la imagen en pixeles

Matriz de transformacionesgeométricas

xy

/Zc

Tp (3x4)

TccTcc4x44x4

XXmm

YYmm

ZZmm

11

ZZccxZZccyyZZcc

M3- Fundamentos teóricos

Matriz de proyección

Page 76: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

De esta forma las transformaciones geométricas seguidas de una proyección se expresan como multiplicación de matrices

=

Pm:punto 3D encoordenadasmundo

pi:punto 2D de la imagen en pixeles

Matriz de transformacionesgeométricas

xy

/Zc

Tp (3x4)

TccTcc4x44x4

XXmm

YYmm

ZZmm

11

ZZccxZZccyyZZcc

M3- Fundamentos teóricos

Matriz de proyección

Page 77: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Conociendo la matriz de proyección y la matriz de transformaciones geométricas, a partir de cada punto 3D Pm del mundo se calcula cada punto 2D pi en la imagen

=

Pm: punto 3D encoordenadasmundo

pi: punto 2D de la imagen en pixeles

/Zc

f.mx 0 ox 00 f.my oy 00 0 1 0

r11 r12 r13r11 r12 r13 dx r21 r22 r21 r22 r23 r23 dy r31 r31 r32 r33 r32 r33 dz

0 0 0 1

XXmm

YYmm

ZZmm

11

Matriz de transformacionesgeométricas

xy

ZZccxZZccyyZZcc

M3- Fundamentos teóricos

Tp Tcc

Matriz de proyección

Page 78: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Esta es la expresión matemática del proceso de formación de imágenes

=

Pm: punto 3D encoordenadasmundo

pi: punto 2D de la imagen en pixeles

/Zc

f.mx 0 ox 00 f.my oy 00 0 1 0

r11 r12 r13r11 r12 r13 dx r21 r22 r21 r22 r23 r23 dy r31 r31 r32 r33 r32 r33 dz

0 0 0 1

XXmm

YYmm

ZZmm

11

Matriz de transformacionesgeométricas

xy

ZZccxZZccyyZZcc

M3- Fundamentos teóricos

Tp Tcc

Matriz de proyección

Page 79: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Proceso directo: conociendo la matriz de proyección y la matriz de transformaciones geométricas, a partir de cada punto Pm del mundo 3D se calcula cada punto pi en la imagen 2D En computación gráfica las imágenes o vistas

de una escena se obtienen aplicando a cada punto 3D la multiplicación por las matrices

M3- Fundamentos teóricos

Page 80: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Diagrama conceptual de RA

trackingcaptura

generador de escena virtual

Posición y orientación Video o visión directadel mundo real

Imagen real + objetos virtuales registrados

Proyección dela escena virtual (gráficos 3d)

combinador

M3- Fundamentos teóricos

Formación de imágenes

Proceso deformación deimágenes

Page 81: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes

Se dijo que en RA Se tiene un mundo real donde situamos un

sistema de coordenadas 3D de referencia Se tiene un mundo sintético 3D Se deben “registrar” las imágenes sintéticas en el

mundo real, quiere decir que se debe referenciar el mundo sintético 3D en el sistema de coordenadas 3D en el mundo real

M3- Fundamentos teóricos

Page 82: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes

En RA, para poder combinar objetos virtuales con la realidad de forma registrada se deben conocer la matriz de transformaciones geométricas: equivale a

conocer la posición y orientación del usuario en el sistema de referencia, que se obtienen con el tracking

la matriz de proyección: en el caso en que el usuario visualice la escena real capturada por una cámara se deben conocer o estimar las características de dicha cámara (proceso de CALIBRACIÓN)

M3- Fundamentos teóricos

Page 83: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes

En RA Conocidas las matrices se aplica el proceso descripto

para computación gráfica para generar la imagen sintética que se combinará con la escena real

Este proceso se realiza en cada instante ya que la posición y orientación del usuario pueden cambiar continuamente

M3- Fundamentos teóricos

Page 84: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Proceso inverso: ¿es posible a partir de un punto de la imagen pi deducir el punto 3D Pm del mundo? NO, a partir de UNA sola imagen y SIN conocimiento

adicional de la escena no es posible deducir el punto 3D. Ya se dijo que la proyección es un proceso irreversible

M3- Fundamentos teóricos

Page 85: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Proceso inverso: ¿es posible a partir de un punto de la imagen pi deducir el punto 3D Pm del mundo? SI, es posible calcular el punto 3D si se conocen:

MÁS DE UNA IMAGEN de la escena tomadas desde diferentes puntos de vista,

la matriz de proyección, y relaciones entre las diferentes imágenes en forma de pares

de puntos correspondientes Este proceso se aplica para la reconstrucción 3D a partir de

fotografías, denominado fotogrametría

M3- Fundamentos teóricos

Page 86: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Proceso inverso: a partir de la imagen ¿es posible deducir la matrices de proyección y la matriz de transformaciones geométricas? SI, es posible calcular una de las dos matrices

conociendo la otra matriz, además de conocer la asociación entre imagen y modelo 3D en

forma de pares de puntos correspondientes

M3- Fundamentos teóricos

Page 87: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Proceso de formación de imágenes

Proceso inverso: a partir de la imagen ¿es posible deducir la matrices de proyección y la matriz de transformaciones geométricas?

En el proceso de calibración se deducirá la matriz de proyección a partir de varias imágenes

En RA se deducirá la matriz de transformaciones geométricas en el tracking basado en visión

M3- Fundamentos teóricos

Sección CALIBRACIÓN

Sección TRACKINGVIDEOMETRICO

Page 88: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

M3- Fundamentos teóricos

Formación de imágenes Tracking basado en visión Calibración de cámara

Page 89: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Fundamentos de RA

Tracking basado en visión Qué es el tracking videométrico Tracking de marcadores Tracking de características naturales Tracking híbrido

Page 90: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Fundamentos de RA

Tracking basado en visión Qué es el tracking videométrico Tracking de marcadores Tracking de características naturales Tracking híbrido

Page 91: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visión Que es tracking videométrico

Tracking: el tracking es el seguimiento de un objeto para obtener su posición y orientación en relación a una referencia

M3- Fundamentos teóricos

Page 92: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónDiagrama conceptual de RA

trackingcaptura

generador de escena virtual

Posición y orientación Video o visión directadel mundo real

Imagen real + objetos virtuales registrados

Proyección dela escena virtual (gráficos 3d) y otros elementos virtuales

combinador

M3- Fundamentos teóricos

Page 93: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visión Que es tracking videométrico En RA, el tracking del usuario es necesario

ya que conociendo su posición y orientación en relación a un sistema de coordenadas en la escena real se puede superponer la información sintética “registrada” (es decir, considerando el mismo sistema de coordenadas)

M3- Fundamentos teóricos

Page 94: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visión Que es tracking videométrico Tracking puede realizarse

Basado en dispositivos físicos Basado en visión Híbrido

M3- Fundamentos teóricos

Page 95: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visión Que es tracking videométrico Tracking basado en visión

También se denomina videométrico o basado en video (vision based, videometric, video based)

En lugar de utilizar dispositivos físicos específicos para tracking, la posición y orientación de la cámara en relación a la escena real puede estimarse analizando el video capturado por la cámara utilizando técnicas de visión por computador

M3- Fundamentos teóricos

Page 96: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónDiagrama conceptual de RA

trackingcaptura

generador de escena virtual

Posición y orientación Video o visión directadel mundo real

Imagen real + objetos virtuales registrados

Proyección dela escena virtual (gráficos 3d) y otros elementos virtuales

combinador

M3- Fundamentos teóricos

El tracking basado en video utiliza la capturade la escena real

Page 97: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visión Que es tracking videométrico El stream de video capturado por la cámara

se usa simultáneamente: como el fondo (video background) que ve el

usuario en la pantalla (en caso de usar un dispositivo de visualización no transparente)

para el tracking de la cámara

M3- Fundamentos teóricos

Page 98: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

El flujo de trabajo de una aplicación de RA con tracking basado en visión es el siguiente:

a. Preprocesamiento: a.1. Calibración de la cámaraa.2. Modelado de la escena virtual

b. Procesamiento:b.1. Inicializaciones:

b.1.1. Definir matriz de proyección. b.1.2. Carga de la escena virtual

b.2. Procesamiento de cada cuadro de video:b.2.1. Captura de cuadro de videob.2.2. Estimación de la posición y orientación de la

cámarab.2.3. Visualización de la escena aumentada

M3- Fundamentos teóricos

Tracking basado en visión Que es tracking videométrico

Page 99: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visión Qué es el tracking videométrico Tracking de marcadores Tracking de características naturales Tracking híbrido

Fundamentos de RA

M3- Fundamentos teóricos

Page 100: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Un marcador es una imagen 2D impresa con un formato específico conocido por la aplicación de tracking

M3- Fundamentos teóricos

Page 101: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

En el capítulo anterior se vieron los diferentes tipos de marcadores más conocidos Template ID-Marker DataMatrix y QRCode

M3- Fundamentos teóricos

Page 102: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

El marcador es un objeto real del que se conocen, por construcción, sus puntos 3D en un sistema de coordenadas local al marcador

A partir del análisis de cada imagen del video, pueden localizarse puntos 2D del marcador

Se hacen corresponder los puntos 2D localizados con los puntos 3D conocidos del marcador, y a partir de las correspondencias se puede estimar la posición y orientación del marcador en relación a la cámara (matriz de transformaciones geométricas)

M3- Fundamentos teóricos

Page 103: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Ventajas de tracking de marcadores: Robusta Computacionalmente eficiente

Desventajas de tracking de marcadores: Los marcadores son visibles para los usuarios

interfiriendo con la escena real

M3- Fundamentos teóricos

Page 104: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Workflow de una aplicación de RA con tracking de marcadores

M3- Fundamentos teóricos

Page 105: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

La cámara captura el video stream

Workflow de una aplicación de RA con tracking de marcadores

CAPTURA DE VIDEO REAL

M3- Fundamentos teóricos

Page 106: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

El video stream capturado se renderizará como fondo para generar el efecto see-through y se analizará posteriormente para tracking

Tracking basado en visiónTracking de marcadores

Workflow de una aplicación de RA con tracking de marcadores

M3- Fundamentos teóricos

Page 107: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

En cada frame capturado se aplica un algoritmo de detección de marcadores (basado en detección de rectángulos) seguido de una identificación del marcador. En esta fase se compensa también la distorsión de la imagen capturada.

DETECCIÓN E IDENTIFICACIÓN DE MARCADORES EN CADA FRAME

Tracking basado en visiónTracking de marcadores

Workflow de una aplicación de RA con tracking de marcadores

M3- Fundamentos teóricos

Page 108: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Si se detectaron marcadores, se aplica para cada uno un algoritmo de estimación de la matriz 4x4 que expresa la traslación y orientación del marcador con respecto al sistema de coordenadas cámara

ESTIMACIÓN DE “POSE” DE CADA MARCADOR DETECTADO

Tracking basado en visiónTracking de marcadores

Workflow de una aplicación de RA con tracking de marcadores

M3- Fundamentos teóricos

Page 109: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

La matriz de posición y orientación estimada puede usarse para dibujar objetos virtuales de manera registrada con el mundo real. La cámara virtual tiene que tener las mismas características que la real.

DIBUJO DE OBJETOS VIRTUALES 3D

Tracking basado en visiónTracking de marcadores

Workflow de una aplicación de RA con tracking de marcadores

M3- Fundamentos teóricos

Page 110: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

El usuario ve en su pantalla el resultado final: superposición del video capturado con los objetos virtuales superpuestos

RESULTADO

Tracking basado en visiónTracking de marcadores

Workflow de una aplicación de RA con tracking de marcadores

M3- Fundamentos teóricos

Page 111: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Volviendo a la formación de imágenes…

Sistema de CoordenadasCámara 3D

Sistema de coordenadas Imagen 2D

Sistema deCoordenadasMundo 3D

M3- Fundamentos teóricos

Page 112: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

¿Qué conocemos?

Sistema de CoordenadasCámara 3D

Se conoce el marcador enel mundo real en un sistema local. No conoce su posición y orientaciónSistema de coordenadas

Imagen 2D

M3- Fundamentos teóricos

Page 113: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

¿Qué conocemos?

Imagen proyectada “IDEAL” sin distorsión

Imagen capturada porla cámara real

Se conoce una imagen que capturó la cámara real que puede tener distorsión

Mediante la CALIBRACIÓN de la cámara es posibleobtener la distorsión para poder corregir la imagen capturada

Tracking basado en visiónTracking de marcadores

M3- Fundamentos teóricos

Page 114: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Distorsión radial

M3- Fundamentos teóricos

Page 115: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Distorsión de la imagen capturada

M3- Fundamentos teóricos

Page 116: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

¿Qué conocemos?

También mediante la

CALIBRACIÓN pueden conocerse los parámetros intrínsecos de la cámara y en consecuencia la matriz de proyección.

Cámara real

M3- Fundamentos teóricos

Page 117: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Incógnita

Sistema de CoordenadasCámara 3D

Sistema deCoordenadasMundo 3D

Esta es la incógnita: la matriz de transformación que expresa la traslación y rotación del marcador con respecto al sistema de coordenadas cámara

Sistema de coordenadas Imagen 2D

M3- Fundamentos teóricos

Page 118: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

p: Punto 2D en la imagen

ideal del marcador

Tracking basado en visiónTracking de marcadores

Ecuaciones

Pm: punto 3D del marcador en el sistema de coordenadas del marcador (se conoce por construcción)INCÓGNITA:

Matriz 4x4 con la traslación yrotación del marcadoren relación al sistema de coordenadas cámara (?)

Matriz deProyección de la cámara obtenida por CALIBRACIÓN

XXmm

YYmm

ZZmm

11

ZcxZZccyyZZcc

Tp(3x4)

Tcc(4x4)

?

=xy

/ZZcc

x’y’

Punto 2D en la imagen

distorsionadadel marcador

(compensar la distorsión)

Pc: punto 3D del marcador en el sistema de coordenadas de la cámara

Los puntosen la imagen se extraenpor técnicas de visión

M3- Fundamentos teóricos

Page 119: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

1. Preprocesamiento: calibración de la cámara Conocer la distorsión Conocer la matriz de proyección

2. Procesamiento de cada frame1. Localizar marcadores

2. Estimar la matriz de transformación de cada marcador

3. Rendering de la escena mixta utilizando la matriz estimada para superponer objetos en el lugar del marcador

M3- Fundamentos teóricos

Page 120: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

1. Preprocesamiento: calibración de la cámara Conocer la distorsión Conocer la matriz de proyección

2. Procesamiento de cada frame1. Localizar marcadores

2. Estimar la matriz de transformación de cada marcador

3. Rendering de la escena mixta utilizando la matriz estimada para superponer objetos en el lugar del marcador

Tracking basado en visiónTracking de marcadores

M3- Fundamentos teóricos

Page 121: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Localizar marcadores en cada frame Ejemplo: Librería de RA ARToolkit (ARTK)

Hirokazu Kato, Mark Billinghurst. Marker Tracking and HMD Calibration for a video-based Augmented Reality Conferencing System. Proceedings of the 2nd International Workshop on Augmented Reality (IWAR 99). pages 85-94, 1999, USA.

M3- Fundamentos teóricos

Page 122: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Localizar marcadores en cada frame Librería de RA ARToolkit (ARTK)

M3- Fundamentos teóricos

Page 123: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Localizar marcadores en cada frame Librería de RA ARToolkit (ARTK) 1. Umbralización (thresholding) y detección de bordes

M3- Fundamentos teóricos

Page 124: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Localizar marcadores en cada frame Librería de RA ARToolkit (ARTK) 2. Búsqueda de cuadriláteros:

Se extraen las regiones cuyo contorno son 4 segmentos Las regiones muy grandes o pequeñas se rechazan Se extraen los parámetros de los 4 segmentos y las coordenadas de

los 4 vértices

M3- Fundamentos teóricos

Page 125: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Localizar marcadores en cada frame Librería de RA ARToolkit (ARTK) 3. Se normaliza el interior de cada marcador usando una

transformación perspectiva

M3- Fundamentos teóricos

Page 126: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visiónTracking de marcadores

Localizar marcadores en cada frame Librería de RA ARToolkit (ARTK) 4. Las imágenes normalizadas se chequean contra una serie de

patrones conocidos (4 comparaciones por correlación con cada marcador de la base de datos para considerar las posibles rotaciones de 90º)

M3- Fundamentos teóricos

Page 127: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

1. Preprocesamiento: calibración de la cámara Conocer la distorsión Conocer la matriz de proyección

2. Procesamiento de cada frame1. Localizar marcadores

2. Estimar la matriz de transformación de cada marcador

3. Rendering de la escena mixta utilizando la matriz estimada para superponer objetos en el lugar del marcador

Tracking basado en visiónTracking de marcadores

M3- Fundamentos teóricos

Page 128: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Estimar la matriz de transformación de cada marcador

Dados los 4 pares correspondientes Pm y p Pm = (Xm, Y, Ym, Z, Zm), vértice del marcador en ), vértice del marcador en

sistema de coordenadas mundosistema de coordenadas mundo p = (x, y), vértice del marcador en la imagenp = (x, y), vértice del marcador en la imagen

Objetivo: estimar Tcc Pc = (Xc, Y, Yc, Z, Zc), vértice del marcador en sistema ), vértice del marcador en sistema

de coordenadas cámarade coordenadas cámara Pc = Tcc Pm

Relación: Pc proyectado y dividido por z es p

Tracking basado en visiónTracking de marcadores

M3- Fundamentos teóricos

Page 129: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Proceso iterativo de optimización: se minimiza una función de error

Error = ¼ Ʃ (xi – qxi)2 + (yi – qyi)2

i=1..4

Tracking basado en visiónTracking de marcadores

M3- Fundamentos teóricos

Page 130: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

1. Inicialización: estimación inicial de la matriz de transformación Tcc0

2. Usar la estimación actual Tcc para calcular qi=(qxi,qyi), las proyecciones de cada vértice Pm

i del marcador

qi= Tcc Pmi

3. Calcular el error ¼ Ʃ (xi – qxi)2 + (yi – qyi)2 4. Calcular las correcciones ΔTx, ΔTy, ΔTz de los

parámetros de traslación y las correcciones Δμx, Δμy, Δμz para los ángulos de rotación. Actualizar la matriz de transformaciones geométricas Tcc

5. Repetir paso 2 a 4 hasta converger

Tracking basado en visiónTracking de marcadores

M3- Fundamentos teóricos

Page 131: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

1. Preprocesamiento: calibración de la cámara Conocer la distorsión Conocer la matriz de proyección

2. Procesamiento de cada frame1. Localizar marcadores

2. Estimar la matriz de transformación de cada marcador

3. Rendering de la escena mixta utilizando la matriz estimada para superponer objetos en el lugar del marcador

Tracking basado en visiónTracking de marcadores

M3- Fundamentos teóricos

Page 132: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

1. Preprocesamiento: calibración de la cámara Conocer la distorsión Conocer la matriz de proyección

2. Procesamiento de cada frame1. Localizar marcadores

2. Estimar la matriz de transformación de cada marcador

3. Rendering de la escena mixta utilizando la matriz estimada para superponer objetos en el lugar del marcador

Tracking basado en visiónTracking de marcadores

M3- Fundamentos teóricos

Page 133: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Técnicas de tracking incrementales El algoritmo de tracking de marcadores presentado

anteriormente exige la visibilidad total del marcador en cada cuadro de video

Las técnicas de tracking incrementales permiten seguir teniendo la posición y orientación aún cuando los marcadores se pierden o son tapados

Tracking basado en visiónTracking de marcadores

M3- Fundamentos teóricos

Page 134: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Técnicas de tracking incrementales Wagner Daniel et al. Robust and Unobtrusive Marker

Tracking on Mobile Phones. International Symposium on Mixed and Augmented Reality 2008 Analiza dos técnicas para recuperar la posición del

marcador ocluido El flujo óptico Seguimiento de características

Video demostrativo http://www.youtube.com/watch?v=HgrJ3gwwP94

Tracking basado en visiónTracking de marcadores

M3- Fundamentos teóricos

Page 135: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visión Qué es el tracking videométrico Tracking de marcadores Tracking de características naturales Tracking híbrido

Fundamentos de RA

M3- Fundamentos teóricos

Page 136: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

A veces no se puede o no se desea poner marcadores en una escena.

Sin embargo, en una imagen hay muchas características o puntos de interés que pueden extraerse para proveer una descripción de un objeto de interés

En ese caso se pueden realizar el seguimiento de características naturales presentes en la imagen de la escena como son bordes, esquinas y texturas

Tracking basado en visiónTracking de características naturales

M3- Fundamentos teóricos

Page 137: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Clasificación de los algoritmos de tracking de características naturales: Con conocimiento de la escena real

requieren modelo 3D del objeto a seguir requieren una imagen ya guardada y analizada

Sin conocimiento de la escena real estos algoritmos no necesitan ningún

conocimiento previo de la escena real

Tracking basado en visiónTracking de características naturales

M3- Fundamentos teóricos

Page 138: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Los algoritmos CON conocimiento de la escena real requieren una inicialización a priori en la que guardan una imagen o vista de un objeto que usarán como referencia, ya que se conoce o establece la posición y orientación de la cámara para esa imagen

Tracking basado en visiónTracking de características naturales

M3- Fundamentos teóricos

Page 139: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Los algoritmos CON conocimiento de la escena real pueden a su vez clasificarse en dos grandes categorías:

Short baseline-matching Comparan el frame actual con el frame anterior, por

esto son “short” dado que la variación de la posición y orientación de la cámara de un frame a otro es “corta”

Wide baseline-matching Comparan el frame actual con el frame de

referencia, entre los cuales puede haber una “amplia” variación de la posición y orientación de la cámara

Tracking basado en visiónTracking de características naturales

M3- Fundamentos teóricos

Page 140: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Dentro de estas dos categorías se encuentran diferentes algoritmos:

Short baseline-matching Métodos basados en bordes Métodos basados en texturas

Wide baseline-matching Métodos basados en detección

Tracking basado en visiónTracking de características naturales

M3- Fundamentos teóricos

Page 141: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Clasificación de los algoritmos de tracking de características naturales: Con conocimiento de la escena

Short baseline-matching Métodos basados en bordes Métodos basados en texturas

Wide baseline-matching Métodos basados en detección

Sin conocimiento de la escena SLAM (Simultaneous Localization and

Mapping)

Tracking basado en visiónTracking de características naturales

M3- Fundamentos teóricos

Page 142: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Fueron los primeros enfoques ya que son eficientes y fáciles de implementar

RAPiD (Real-time Attitude and Position Determination) presentado por Harris (1992)

Fue uno de los primeros trackers en tiempo real, y se han desarrollado diversas mejoras para hacerlo más robusto

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en bordes

M3- Fundamentos teóricos

Page 143: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

RAPiD La idea básica es considerar un

conjunto de puntos de control 3D en el objeto a seguir que pertenezcan a bordes del objeto

Se requiere conocimiento del objeto en 3D (por esto el algoritmo es basado en el modelo o “model-based”)

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en bordes

M3- Fundamentos teóricos

Page 144: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

RAPiD El movimiento 3D del objeto entre dos

frames consecutivos puede recuperarse a partir del desplazamiento 2D de los puntos de control en las imágenes

El algoritmo exige una inicialización donde se registra el modelo con la imagen para comenzar con un valor válido de la matriz de transformaciones geométricas T0.

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en bordes

M3- Fundamentos teóricos

Page 145: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

RAPiD En cada cuadro, se realiza lo siguiente:

Predecir la matriz de transformaciones geométricas Tj que representa la posición y orientación de los puntos de control Pi del objeto en relación a la cámara, a partir de la matriz de transformaciones geométricas del cuadro anterior Tj-1.

Usar la estimación actual Tj para calcular las proyecciones qi de cada punto de control Pi

Localizar en la imagen los puntos de control efectivos pi (suelen ser parámetros que definen los bordes)

Calcular el error que existe entre los puntos de control efectivos y los puntos de control proyectados (error=distancia (q,p))

Ajustar la posición y orientación predichas resolviendo un sistema lineal minimizando las distancias al cuadrado entre los puntos de control efectivos y los puntos de control proyectados

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en bordes

M3- Fundamentos teóricos

Page 146: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Un problema es que pueden existir bordes (y en consecuencia puntos de control) extraidos erroneamente

Algoritmos que agregan robustez a RAPiD: Vaccetti et al (2004) Combining edge and texture information for

real time accurate 3D camera tracking. ISMAR 2004 Drummond & Cipolla (2002) Real time visual tracking of complex

structures. PAMI, 27(7) Marchand et al(2001) A 2D-3D model-based approach to real

time visual tracking. Journal of Image and Vision Computing, 19(13)

Simon & Berger (1998) A two stage robust statistical method for temporal registration from features of various types. Proc. Int. Conf on Comp Vision.

Amstrong & Zisserman (1995) Robust object tracking. Proc. Of the Asian Conf. on Comp Vision

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en bordes

M3- Fundamentos teóricos

Page 147: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Clasificación de los algoritmos de tracking de características naturales: Con conocimiento de la escena

Short baseline-matching Métodos basados en bordes Métodos basados en texturas

Wide baseline-matching Métodos basados en detección

Sin conocimiento de la escena SLAM (Simultaneous Localization and

Mapping)

Tracking basado en visiónTracking de características naturales

M3- Fundamentos teóricos

Page 148: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Si se cuenta con escenas donde el o los objetos a seguir están suficientemente texturados puede extraerse información a partir de la textura de los mismos.

Se requiere un modelo 3D del objeto a seguir (model-based)

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en texturas

M3- Fundamentos teóricos

Page 149: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

La información de textura puede derivarse del flujo óptico o de correspondencias entre puntos de interés. Los métodos basados en flujo óptico tratan de

estimar el movimiento entre dos cuadros de video consecutivos.

Los métodos basados en correspondencias entre puntos de interés, calcula el movimiento de la cámara mediante una minimización de cuadrados mínimos o mediante estimación robusta a partir de los pares de puntos correspondientes en cuadros sucesivos.

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en texturas

M3- Fundamentos teóricos

Page 150: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Los métodos basados en puntos de interés seleccionan puntos mediante un “operador de interés”: Los puntos deben diferentes de sus vecinos (por

esto los puntos de bordes quedan excluidos) Los puntos de patrones repetitivos deben

rechazarse La selección debe repetirse, es decir, en varias

vistas de la escena debe seleccionarse el mismo punto de interés independientemente de la perspectiva o el ruido

La extracción de puntos de interés debe ser insensible a cambios de escala, puntos de vista e iluminación

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en texturas

M3- Fundamentos teóricos

Page 151: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Dados dos cuadros de video con puntos de vista similares, un procedimiento clásico para este tipo de tracking consiste en: Seleccionar puntos de interés en la primera

imagen, de la cual la posición y orientación de la cámara ya ha sido estimada previamente

Para cada punto seleccionado en la primera imagen, buscar el punto correspondiente en una región alrededor del punto en la segunda imagen

A partir de las correspondencias encontradas deducir el cambio de posición y orientación en 3D a partir de sus distancias en la imagen.

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en texturas

M3- Fundamentos teóricos

Page 152: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Si las coordenadas 3D de los puntos no se conoce a priori los métodos están sujetos a errores que producen fallas de tracking

Una solución es inicializar “a mano” comenzando con un frame donde se hacen corresponder un modelo 3D con los puntos correspondientes en la imagen (se registra)

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en texturas

M3- Fundamentos teóricos

Page 153: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Clasificación de los algoritmos de tracking de características naturales: Con conocimiento de la escena

Short baseline-matching Métodos basados en bordes Métodos basados en texturas

Wide baseline-matching Métodos basados en detección

Sin conocimiento de la escena SLAM (Simultaneous Localization and

Mapping)

Tracking basado en visiónTracking de características naturales

M3- Fundamentos teóricos

Page 154: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Existe una similitud entre dos problemas de visión por computador: Detección de objetos Estimación de la posición y orientación a

partir de características naturales Algunos enfoques solucionan ambos a la

vez: simultáneamente detectan objetos y estiman su posición y orientación 3D

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 155: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Cada punto de interés se describe mediante un vector de características (denominado descriptor local ya que caracteriza la vecindad del punto)

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 156: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Los métodos de tracking basados en la detección en base a características constan de los siguientes pasos:

Preprocesamiento off-line o entrenamiento:Se tienen imágenes de entrenamiento. Por cada

imagen de entrenamiento: a.1. Localizar puntos de interés en la imagen de

entrenamiento a.2. Calcular el vector de características de cada

punto de interés a.3. Vincular cada punto de interés en la imagen

con su correspondiente en el modelo 3D a.4. Almacenar en la base de datos el vector de

características con la ubicación 3D

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 157: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Los métodos de tracking basados en la detección en base a características constan de los siguientes pasos:

Procesamiento:Por cada cuadro del video capturado: b.1. Localizar los puntos de interés en la

imagen b.2. Describir cada punto de interés mediante

un vector de características b.3. Hacer corresponder cada vector de

características con los vectores almacenados en la base de datos.

b.4. Estimar la posición y orientación a partir de las correspondencias más cercanas.

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 158: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

SIFT (Scale-invariant feature transform) Lowe, D. G., “Distinctive Image Features from Scale-

Invariant Keypoints”, International Journal of Computer Vision, 60, 2, pp. 91-110, 2004.

Es uno de los más eficientes descriptores de puntos de interés: invariante a cambios de escala, orientación, distorsión

y parcialmente invariante a cambios de iluminación permite identificar objetos con oclusiones parciales

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 159: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Se dijo que cada punto de interés se describe mediante un vector de características

Entre los descriptores más usados encontramos: SIFT SURF

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 160: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

SIFT Vector de características La vecindad o región del punto de interés se divide en

subregiones (3x3 o 4x4), cada una define una parte del vector de características

Para cada subregión se calcula el histograma de orientaciones de gradiente (4 u 8 orientaciones) y se toma como característica el pico del histograma Por ejemplo: computando el histograma de 8 orientaciones

en 4x4 subregiones da un vector de 128 características Finalmente el vector de características se normaliza para

reducir los efectos de cambios de iluminación

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 161: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Implementación de SIFT para tracking Skrypnyk and Lowe (2004) Scene modelling,

recognition, and tracking with invariant image features. ISMAR 2004

Video demostrativo http://www.cs.ubc.ca/˜skrypnyk/arproject

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 162: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Wagner Daniel et al. Pose Tracking from Natural Features on Mobile Phones International Symposium on Mixed and Augmented Reality - http://www.icg.tu-graz.ac.at/pub/pdf/WAGNER_ISMAR08_NFT.pdf

Tracking basado en características naturales 6DOF en tiempo real corriendo en un dispositivo móvil

Adapta SIFT para su uso en dispositivos móviles Video demostrativo:

http://www.youtube.com/watch?v=mwrHlJok2lA

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 163: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

SURF (Speeded Up Robust Features) Es un detector y descriptor de características robusto Inspirado en el descriptor SIFT. Según los autores es más

robusto a cambios de transformaciones y más rápido SURF usa como característica básica usa la transformada

Wavelet de Haar del determinante del detector de “blobs” Hessian. Se basa en sumas de respuestas a la transformada de Haar.

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 164: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

SURF (Speeded Up Robust Features) Herbert Bay, Andreas Ess, Tinne Tuytelaars, Luc Van Gool

"SURF: Speeded Up Robust Features", Computer Vision and Image Understanding (CVIU), Vol. 110, No. 3, pp. 346--359, 2008

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 165: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Implementación de SURF Christopher Evans Notes on the OpenSURF

Library, MSc Computer Science, University of Bristol http://www.cs.bris.ac.uk/Publications/pub_master.jsp?id=2000970

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 166: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Implementación de SURF para dispositivos móviles Takacs, G., Chandrasekhar, V., Gelfand, N., Xiong, Y.,

Chen, W.-C.,Bismpigiannis, T., Grzeszczuk, R., Pulli, K., and Girod, B., Outdoors Augmented Reality on Mobile Phone using Loxel-Based Visual Feature Organization, IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI), 2008

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 167: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

SURF Videos demostrativos

http://vimeo.com/groups/augmentedreality/videos/4990304

http://www.youtube.com/watch?v=caFHvamMUTw&feature=related

Tracking basado en visiónTracking de características naturalesMétodos de tracking basados en detección

M3- Fundamentos teóricos

Page 168: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Clasificación de los algoritmos de tracking de características naturales: Con conocimiento de la escena

Short baseline-matching Métodos basados en bordes Métodos basados en texturas

Wide baseline-matching Métodos basados en detección

Sin conocimiento de la escena SLAM (Simultaneous Localization and

Mapping)

Tracking basado en visiónTracking de características naturales

M3- Fundamentos teóricos

Page 169: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking sin conocimiento de la escena

SLAM (Simultaneous Localization and Mapping) Tracking en escenas desconocidas Thrun et al (2004) se deduce la estructura del ambiente sino que al

mismo tiempo establece una correlación de la misma con la posición y orientación de la cámara.

Reitmayr et al (2010) presenta posibles usos de SLAM en RA

M3- Fundamentos teóricos

Page 170: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking sin conocimiento de la escena

PTAM (Parallel Tracking and Mapping) se ejecuta en tiempo real tanto en PC como en móviles Klein, G. and Murray, D. “Parallel Tacking and Mapping for small

AR workspaces” (2007) Proceedings of 6th IEEE/ACM International Symposium on Mixed and Augmented Reality (ISMAR 2007)

Klein, G. & Murray, D. (2009) “Parallel Tracking and Mapping (PTAM) on a Camera Phone” Proceedings of 8th IEEE/ACM International Symposium on Mixed and Augmented Reality (ISMAR 2009)

Wagner, D.; Mulloni, A.; Langlotz, T. and Schmalstieg, D. (2010) “Real-time Panoramic Mapping and Tracking on Mobile Phones”, Proceedings of IEEE Virtual Reality Conference 2010 (VR’10).

Video http://www.robots.ox.ac.uk/~gk/youtube.html

M3- Fundamentos teóricos

Page 171: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking basado en visión Qué es el tracking videométrico Tracking de marcadores Tracking de características naturales Tracking híbrido

Fundamentos de RA

M3- Fundamentos teóricos

Page 172: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking videométrico Tracking híbrido Tracking híbrido

Técnicas que combinan la salida de dispositivos físicos y el análisis de video

Los sensores (inerciales, giroscopios, GPS) permiten predecir la posición de la cámara y se refina utilizando técnicas de visión El tracking basado en visión es lento pero estable a largo plazo.

Falla en movimientos rápidos El tracking inercial es rápido pero puede tener acumulación de

errores a largo plazo Efectivo para aplicaciones que requieren posicionar la cámara

con respecto a una escena estática, pero no se aplica al tracking de objetos en movimiento con una cámara estática

M3- Fundamentos teóricos

Page 173: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Tracking videométrico Tracking híbrido Técnicas que combinan la salida de dispositivos

físicos y el análisis de video Jiang et al (2004) A robust tracking system for outdoor

augmented reality. IEEE Virtual Reality Conf 2004 Foxlin & Naimark (2003) Miniaturization, calibration and

accuracy evaluation of hybrid self-tracker. ISMAR 2003 Klein & Drummond (2003). Robust visual tracking for non-

instrumented augmented reality. ISMAR 2003 Ribo & Lang (2003). Hybrid Tracking for outdoor

augmented reality applications. Computer Graphics and applications.

M3- Fundamentos teóricos

Page 174: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

M3- Fundamentos teóricos

Formación de imágenes Tracking basado en visión Calibración de cámara

Page 175: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Calibración de cámara

Los parámetros intrínsecos de una cámara real dada pueden estimarse mediante un proceso denominado CALIBRACIÓN

M3- Fundamentos teóricos

Page 176: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Calibración de cámara Según el modelo elegido, la cámara se describe mediante

una serie de parámetros: Intrínsecos:

Describen la geometría y óptica del conjunto cámara y tarjeta de adquisición de imágenes.

Afectan al proceso que sufre un rayo luminoso desde que alcanza la lente del objetivo, impresiona el elemento sensible y se convierte en píxel iluminado.

Extrínsecos: Describen la posición y orientación de la cámara en el sistema de

coordenadas conocido denominado sistemas de coordenadas mundo.

M3- Fundamentos teóricos

Page 177: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Calibración de cámara

Generalmente el conjunto cámara y tarjeta de adquisición se describe mediante los siguientes parámetros: Parámetros Intrínsecos

Distancia focal: f Distorsiones: Dx, Dy Centro de la imagen: ox, oy Factores de escala o tamaño pixel: mx, my

Parámetros Extrínsecos Traslación: Tx,Ty,Tz Rotación: Rx, Ry, Rz

M3- Fundamentos teóricos

Page 178: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Calibración de cámara

Calibración [Tsai, 1987] Proceso mediante el cual se calculan los

parámetros intrínsecos y/o extrínsecos de la cámara, a partir de un conjunto de puntos de control, conocidas las coordenadas 3D de esos puntos y midiendo las correspondientes coordenadas 2D en una imagen obtenida con dicha cámara.

M3- Fundamentos teóricos

Page 179: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Calibración de cámara

En aplicaciones de realidad aumentada se necesita realizar la calibración de la cámara utilizada para conocer los parámetros intrínsecos

Conocer la matriz de proyección Tp Corregir las imágenes capturadas

compensando distorsión que produce la cámara

M3- Fundamentos teóricos

Page 180: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Calibración de cámara

Puntos de control Plantilla de puntos de los cuales se

conocen las coordenadas 3D

M3- Fundamentos teóricos

Page 181: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Calibración de cámara

Puntos de control Patrón de puntos y cuadrícula

M3- Fundamentos teóricos

Page 182: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Calibración de cámara

Se conocen: Pmi las coordenadas 3D (sistema de coordenadas

mundo) de los puntos de control Se extraen:

pi las coordenadas 2D en una o más imágenes obtenidas con la cámara a calibrar de los correspondientes puntos de control

Se plantean las ecuaciones que relacionan que relacionan las coordenadas mundo 3D y las coordenadas imagen 2D

La calibración consiste en: utilizar los pares de puntos 3D-2D correspondientes a un

mismo punto de control para la resolución de ecuaciones

M3- Fundamentos teóricos

Page 183: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Calibración de cámara

Ecuaciones

M3- Fundamentos teóricos

Page 184: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Formación de imágenes Calibración de cámara

Diversos métodos de resolución: Lineales: DLT (Direct Linear Transform) De minimización no lineal En dos etapas (método de Roger Tsai)

1. Calcula orientación y traslación X e Y

2. Calcula la distancia focal, coeficientes de distorción y la traslación Z

M3- Fundamentos teóricos

Page 185: Realidad Aumentada - Modulo 3 Fundamentos

Realidad Aumentada | María José Abásolo | Facultad Informática UNLP | noviembre 2013

Calibración de cámara

Software de calibración GML MatLab Camera Calibration Toolbox

http://research.graphicon.ru/calibration/gml-matlab-camera-calibration-toolbox.html

GML C++ Camera Calibration Toolbox http://research.graphicon.ru/calibration/gml-c-camera-calibration-toolbox-6.html

Algoritmos implementados en las librerías ARToolkit www.hitl.washington.edu/artoolkit

Zhang's Camera Calibration Method with Software http://research.microsoft.com/en-us/um/people/zhang/Calib/

Zhang's Camera Calibration and Tsai's Calibration http://www.cs.cmu.edu/~rgw/TsaiDesc.html