Sistema de Virtualidad Aumentada para reemplazar el fondo de una escena por un entorno virtual sin utilizar croma y empleando cámaras en movimiento. El sistema se basa en ubicar marcas artificiales en puntos del entorno para tener siempre ubicada la cámara dentro del espacio, que se modela automáticamente mediante planos de fondo para proceder a una substracción automática de fondo con respecto al fotograma que se procesa en cada instante. El fotograma modificado incluye en entorno virtual renderizado desde el punto de vista de la cámara, más todos los elementos móviles o que no forman parte del fondo en el entorno.
Carbohidratos utilizados en la industria alimentaria.pdf
Modelado automático 3d de entornos mediante realidad aumentada orientado a extracción de objetos de video (A. Domínguez-Caneda)
1. Presentación PFCPresentación PFC
Modelado automático 3D deModelado automático 3D de
entornos mediante Realidadentornos mediante Realidad
Aumentada orientado aAumentada orientado a
extracción de objetosextracción de objetos
AutorAutor: Alejandro Domínguez Caneda: Alejandro Domínguez Caneda
Universidad de MálagaUniversidad de Málaga
TutoraTutora: Cristina Urdiales García: Cristina Urdiales García
2. ContenidoContenido
0.0. IntroducciónIntroducción
1.1. Modelado 3D del entornoModelado 3D del entorno
2.2. Extracción de objetosExtracción de objetos
3.3. Composición de la escenaComposición de la escena
4.4. Actualización del modeloActualización del modelo
5.5. Conclusiones y trabajo futuroConclusiones y trabajo futuro
6.6. DemostraciónDemostración
3. 0. Introducción0. Introducción
✔ Comunicaciones cada vez más rápidasComunicaciones cada vez más rápidas
●
Avances tecnológicosAvances tecnológicos
●
Protocolos más avanzadosProtocolos más avanzados
●
Algoritmos de compresión más potentesAlgoritmos de compresión más potentes
✗ Usuario cada vez más exigenteUsuario cada vez más exigente
●
El usuario se ha acostumbrado a la tecnologíaEl usuario se ha acostumbrado a la tecnología
●
Exigencias de velocidadExigencias de velocidad
●
Prestaciones altas y bajo costePrestaciones altas y bajo coste
4. 0. Introducción0. Introducción
●
Se propone una técnica de compresión de vídeo paraSe propone una técnica de compresión de vídeo para
dispositivos de bajo coste orientada a videoconferenciadispositivos de bajo coste orientada a videoconferencia
●
Enfoque oEnfoque orientado a contenido (MPEG-4)rientado a contenido (MPEG-4) vs. enfoquevs. enfoque
clásico orientadoclásico orientado a fotograma fotograma.a.
✔ Descomposición en objetos (Descomposición en objetos (media objectsmedia objects))
✔ Composición en recepciónComposición en recepción
✔ Escalabilidad en la transmisiónEscalabilidad en la transmisión
●
Extracción de objetos no se especifica en el estándarExtracción de objetos no se especifica en el estándar
●
Distinción entre lo que varía y lo que no varía, paradigmaDistinción entre lo que varía y lo que no varía, paradigma
fondo-móvilesfondo-móviles
5. 0. Introducción0. Introducción
●
FondoFondo dado a prioridado a priori
●
Móviles (objetos)Móviles (objetos) extraídos mediante técnicas deextraídos mediante técnicas de
sustracción del fondosustracción del fondo
●
Opción. Promediado de imágenesOpción. Promediado de imágenes
✔ Modelo plano del fondo estáticoModelo plano del fondo estático
✗ Movimientos de cámara prohibidosMovimientos de cámara prohibidos
●
Propuesta. Modelado 3D previoPropuesta. Modelado 3D previo
✔ Permite movimientos de cámaraPermite movimientos de cámara
✗ Requiere posicionamiento de la cámara (seguimiento o lo-Requiere posicionamiento de la cámara (seguimiento o lo-
calización)calización)
●
Composición en recepción conComposición en recepción con fondo virtualfondo virtual yy objetosobjetos
realesreales extraídosextraídos
6. 0. Introducción0. Introducción
●
Realidad Aumentada (RA)Realidad Aumentada (RA)
Entorno
real
Entorno
virtual
Realidad
Aumentada
Virtualidad
Aumentada
i)i) Mundo real y virtual componen una única realidadMundo real y virtual componen una única realidad
ii)ii) Existe interacción con el usuario, en tiempo realExiste interacción con el usuario, en tiempo real
iii)iii) Combinación se realiza en 3DCombinación se realiza en 3D
●
Problema de registroProblema de registro
7. ContenidoContenido
0.0. IntroducciónIntroducción
1.1. Modelado 3D del entornoModelado 3D del entorno
2.2. Extracción de objetosExtracción de objetos
3.3. Composición de la escenaComposición de la escena
4.4. Actualización del modeloActualización del modelo
5.5. Conclusiones y trabajo futuroConclusiones y trabajo futuro
6.6. DemostraciónDemostración
8. 1. Modelado 3D del entorno1. Modelado 3D del entorno
●
Modelo virtual + posición cámara real = vista virtualModelo virtual + posición cámara real = vista virtual
●
Modelado tridimensional automáticoModelado tridimensional automático
●
Tracker mecánico fijado a la cámaraTracker mecánico fijado a la cámara
✗ Movimientos de cámara limitadosMovimientos de cámara limitados
✗ Sensible a campos electromagnéticosSensible a campos electromagnéticos
●
Marcas artificialesMarcas artificiales
✔ Mucha mayor libertad de movimiento, segui-Mucha mayor libertad de movimiento, segui-
miento muy rápido y precisomiento muy rápido y preciso
Localización supeditada a marcas dentro delLocalización supeditada a marcas dentro del
campo de visióncampo de visión
9. 1. Modelado 3D del entorno1. Modelado 3D del entorno
●
Herramientas empleadas: OpenGL y ARToolkitHerramientas empleadas: OpenGL y ARToolkit
●
OpenGL (graphics library) es una biblioteca gráficaOpenGL (graphics library) es una biblioteca gráfica
✔ abierta y multiplataformaabierta y multiplataforma
✔ permite gráficos 2D y 3Dpermite gráficos 2D y 3D
✔ operaciones SW y HWoperaciones SW y HW
✔ notación matricialnotación matricial
●
ARToolkit es una biblioteca que emplea algoritmos de vi-ARToolkit es una biblioteca que emplea algoritmos de vi-
sión por computador para la localización de la cámarasión por computador para la localización de la cámara
mediante marcas artificialesmediante marcas artificiales
✔ altas prestaciones: precisión, velocidadaltas prestaciones: precisión, velocidad
✔ distribución gratuitadistribución gratuita
✔ idónea para investigación, no tanto para uso comercialidónea para investigación, no tanto para uso comercial
10. 1. Modelado 3D del entorno1. Modelado 3D del entorno
●
¿Cómo es una marca de ARToolkit?¿Cómo es una marca de ARToolkit?
– Recuadro negro sobre fondo blanco con todos sus ladosRecuadro negro sobre fondo blanco con todos sus lados
iguales...iguales...
– ... y un patrón negro en su interior... y un patrón negro en su interior
●
¿Cómo trabaja ARToolkit?¿Cómo trabaja ARToolkit?
11. 1. Modelado 3D del entorno1. Modelado 3D del entorno
●
3 Ideas, podemos...3 Ideas, podemos...
a)a)...detectar planos (ARToolkit)...detectar planos (ARToolkit)
b)b)...reconocer el patrón interior (ARToolkit)...reconocer el patrón interior (ARToolkit)
c)c) ...colocar objetos virtuales sobre la marca (OpenGL)...colocar objetos virtuales sobre la marca (OpenGL)
●
Creación del modeloCreación del modelo
a)a) Es posible aproximar el entorno por superficies planasEs posible aproximar el entorno por superficies planas
que se cortan y asignar una marca distinta a cada planoque se cortan y asignar una marca distinta a cada plano
realreal
b)b) La relación entre marca y plano real es unívocaLa relación entre marca y plano real es unívoca
c)c) Es posible asignar a cada plano real un objeto virtual queEs posible asignar a cada plano real un objeto virtual que
lo caracterice.lo caracterice.
13. 1. Modelado 3D del entorno1. Modelado 3D del entorno
●
Registro de planos (o marcas)Registro de planos (o marcas)
– Modelo inicial formado por cero planosModelo inicial formado por cero planos
– Se añaden marcas haciendo clic sobre ellasSe añaden marcas haciendo clic sobre ellas
– Marca de referencia en el registroMarca de referencia en el registro
– NNplanosplanos Matrices de transformación MMatrices de transformación Mii
– NNplanosplanos-1 Matrices de conversión T-1 Matrices de conversión Tijij
TTijij = M= Mii
-1-1
·Mj·Mj MMjj =M=Mii · T· Tijij MMkk = M= Mii·T·Tijij·T·Tjkjk
●
Registro de texturasRegistro de texturas
✔ Captura de imagen con el registroCaptura de imagen con el registro
✗ Deformación de la imagenDeformación de la imagen
✗ Campo de visión limitadoCampo de visión limitado
14. 1. Modelado 3D del entorno1. Modelado 3D del entorno
●
Deformación: problema de mapeo de texturasDeformación: problema de mapeo de texturas
✔ Técnica rápida y exacta -> Proceso inverso a la represen-Técnica rápida y exacta -> Proceso inverso a la represen-
tación (o renderizado) de OpenGLtación (o renderizado) de OpenGL
●
Registro de las texturas con múltiples capturasRegistro de las texturas con múltiples capturas
Mi
15. 1. Modelado 3D del entorno1. Modelado 3D del entorno
●
Problema de ocultamientoProblema de ocultamiento
16. 1. Modelado 3D del entorno1. Modelado 3D del entorno
✔ VentajasVentajas
– Modelado in situ y de rápida ejecuciónModelado in situ y de rápida ejecución
– Localización (matrices) y apariencia (texturas) separadasLocalización (matrices) y apariencia (texturas) separadas
– Volumen de datos a transmitir muy bajoVolumen de datos a transmitir muy bajo
RestriccionesRestricciones
– No modela entornos complejos: superficies complejas, ob-No modela entornos complejos: superficies complejas, ob-
jetos no asociados a planos, esquinasjetos no asociados a planos, esquinas
– Área total limitada por tamaño de marcasÁrea total limitada por tamaño de marcas
✗ Errores de posicionamiento debido a ruido en la imagen:Errores de posicionamiento debido a ruido en la imagen:
desalineamientos, vibracióndesalineamientos, vibración
●
Actualización del modeloActualización del modelo
17. ContenidoContenido
0.0. IntroducciónIntroducción
1.1. Modelado 3D del entornoModelado 3D del entorno
2.2. Extracción de objetosExtracción de objetos
3.3. Composición de la escenaComposición de la escena
4.4. Actualización del modeloActualización del modelo
5.5. Conclusiones y trabajo futuroConclusiones y trabajo futuro
6.6. DemostraciónDemostración
18. 2. Extracción de objetos2. Extracción de objetos
●
Objetivo desde el punto de vista del Sistema..Objetivo desde el punto de vista del Sistema..
– .. extraer los objetos de una escena para completar la divi-.. extraer los objetos de una escena para completar la divi-
sión de ésta en fondo y objetos. Paradigma fondo-objetossión de ésta en fondo y objetos. Paradigma fondo-objetos
●
Objetivo desde el punto de vista del subsistema..Objetivo desde el punto de vista del subsistema..
– ..comparar dos imágenes dadas para quedarse con la ima-..comparar dos imágenes dadas para quedarse con la ima-
gen diferencia. Segmentación por color mediante sustrac-gen diferencia. Segmentación por color mediante sustrac-
ción del fondo.ción del fondo.
●
Postprocesado de la imagenPostprocesado de la imagen
●
Diezmado previo por 4Diezmado previo por 4
19. 2. Extracción de objetos2. Extracción de objetos
Escena real con objeto..
Fondo estimado..
Algoritmo de
comparación
20. 2. Extracción de objetos2. Extracción de objetos
●
Tras el algoritmo de comparación se obtiene una máscaraTras el algoritmo de comparación se obtiene una máscara
binaria..binaria..
– Píxel fondo (-1)Píxel fondo (-1)
– Píxel objeto (+1)Píxel objeto (+1)
– No existe concepto de “objeto”No existe concepto de “objeto”
●
Agrupación en objetosAgrupación en objetos
●
Paso previo: Homogeneización por vecindad..Paso previo: Homogeneización por vecindad..
...
21. 2. Extracción de objetos2. Extracción de objetos
Escena real con objeto..
Fondo estimado..
Algoritmo de
comparación
Algoritmo de
homogeneización
22. ●
Lista de objetos con información referente a cada objetoLista de objetos con información referente a cada objeto
– identificador (etiqueta) local de objetoidentificador (etiqueta) local de objeto
– tamaño y posición de la bounding boxtamaño y posición de la bounding box
– información de colorinformación de color
– color transparente ...color transparente ...
2. Extracción de objetos2. Extracción de objetos
●
Agrupación en objetos y etiquetado. Concepto de “objeto”Agrupación en objetos y etiquetado. Concepto de “objeto”
Máscara binariaMáscara binaria Máscara de objetosMáscara de objetos
(etiquetas)(etiquetas)
23. 2. Extracción de objetos2. Extracción de objetos
Algoritmo deAlgoritmo de
homogeneizaciónhomogeneización
●
Id. = 1Id. = 1
● TamTambbbb = 159 x 125= 159 x 125
● PosPosbbbb = (161,0)= (161,0)
● AAefef = 15000 pix= 15000 pix
● CCtransptransp = verde= verde
AgrupaciónAgrupación
24. 2. Extracción de objetos2. Extracción de objetos
●
Postprocesado orientado a objetosPostprocesado orientado a objetos
●
Posibles criteriosPosibles criterios
– Tamaño real del objetoTamaño real del objeto
– Tamaño de laTamaño de la bounding boxbounding box
– Relación área efectiva-área de laRelación área efectiva-área de la bounding boxbounding box
– FormaForma
– ......
●
2 criterios2 criterios
– Se establece un área mínimaSe establece un área mínima
– Se establece un número de apariciones mínimo, reducien-Se establece un número de apariciones mínimo, reducien-
do la aparición de objetos que parpadeando la aparición de objetos que parpadean
26. 2. Extracción de objetos2. Extracción de objetos
●
Muchas fuentes de errorMuchas fuentes de error
– Desalineamiento en el modeloDesalineamiento en el modelo
– Cambios en la iluminaciónCambios en la iluminación
– Ruido presente en la imagenRuido presente en la imagen
– CamuflajeCamuflaje
– SombrasSombras
– ......
●
ConclusionesConclusiones
– FiableFiable
– Técnica rápida (en torno a 24 fps)Técnica rápida (en torno a 24 fps)
– No hace más presunción que conocer el fondoNo hace más presunción que conocer el fondo
– Información adicional mejoraría el resultado: sensores deInformación adicional mejoraría el resultado: sensores de
temperatura, o distanciatemperatura, o distancia
27. ContenidoContenido
0.0. IntroducciónIntroducción
1.1. Modelado 3D del entornoModelado 3D del entorno
2.2. Extracción de objetosExtracción de objetos
3.3. Composición de la escenaComposición de la escena
4.4. Actualización del modeloActualización del modelo
5.5. Conclusiones y trabajo futuroConclusiones y trabajo futuro
6.6. DemostraciónDemostración
28. 3. Composición de la escena3. Composición de la escena
●
Se realiza en el extremo receptorSe realiza en el extremo receptor
●
Matemáticamente se expresa así..Matemáticamente se expresa así..
●
En la práctica componer la escena es pegar los “objetosEn la práctica componer la escena es pegar los “objetos
reales” extraídos sobre un “fondo virtual”, a partir de lareales” extraídos sobre un “fondo virtual”, a partir de la
información de aquéllosinformación de aquéllos
●
Extremo receptor debe disponer de ambas componentesExtremo receptor debe disponer de ambas componentes
●
Aplicación de RAAplicación de RA
C x , y ,t=M x , y ,t⋅Fi x , y ,tM x , y ,t⋅I x , y ,t
29. 3. Composición de la escena3. Composición de la escena
(Mi
, Tij
)
RECEPTORRECEPTORTRANSMISORTRANSMISOR
30. 3. Composición de la escena3. Composición de la escena
●
Ventajas de todo esto..Ventajas de todo esto..
– Enviar fondo y objetos por separado reduce el volumen deEnviar fondo y objetos por separado reduce el volumen de
datosdatos
– Problema del hombre del tiempo. Sustituir el fondo origi-Problema del hombre del tiempo. Sustituir el fondo origi-
nalnal
31. 3. Composición de la escena3. Composición de la escena
(Mi
, Tij
)
RECEPTORRECEPTORTRANSMISORTRANSMISOR
32. 3. Composición de la escena3. Composición de la escena
●
Ventajas de todo esto..Ventajas de todo esto..
– Enviar fondo y objetos por separado reduce el volumen deEnviar fondo y objetos por separado reduce el volumen de
datosdatos
– Problema del hombre del tiempo. Sustituir el fondo origi-Problema del hombre del tiempo. Sustituir el fondo origi-
nalnal
– Procesado de objetosProcesado de objetos
33. 3. Composición de la escena3. Composición de la escena
(Mi
, Tij
)
RECEPTORRECEPTORTRANSMISORTRANSMISOR
34. 3. Composición de la escena3. Composición de la escena
●
Ventajas de todo esto..Ventajas de todo esto..
– Enviar fondo y objetos por separado reduce el volumen deEnviar fondo y objetos por separado reduce el volumen de
datosdatos
– Problema del hombre del tiempo. Sustituir el fondo origi-Problema del hombre del tiempo. Sustituir el fondo origi-
nalnal
– Procesado de objetos: OCR, reconocimiento de objetos,Procesado de objetos: OCR, reconocimiento de objetos,
mejorar la imagen...mejorar la imagen...
●
ConclusionesConclusiones
✔ Proceso sencillo y rápidoProceso sencillo y rápido
✔ VersátilVersátil
✗ Composición con texturas no originales precisa tratamien-Composición con texturas no originales precisa tratamien-
t0 específicot0 específico
35. ContenidoContenido
0.0. IntroducciónIntroducción
1.1. Modelado 3D del entornoModelado 3D del entorno
2.2. Extracción de objetosExtracción de objetos
3.3. Composición de la escenaComposición de la escena
4.4. Actualización del modeloActualización del modelo
5.5. Conclusiones y trabajo futuroConclusiones y trabajo futuro
6.6. DemostraciónDemostración
36. 4. Actualización del modelo4. Actualización del modelo
●
El fondo también sufre variacionesEl fondo también sufre variaciones
●
CausasCausas
– Cambios en la iluminaciónCambios en la iluminación
– Equilibrio automático de blancos (AWB) defectuosoEquilibrio automático de blancos (AWB) defectuoso
●
AlgoritmoAlgoritmo
Bx , y ,t=1−⋅Bx , y ,t−1⋅I x , y ,t
C x , y ,t=M x , y ,t⋅[1−⋅Bx , y ,t−1⋅I x , y ,t]
M x , y ,t⋅Bx , y ,t−1
38. 4. Actualización del modelo4. Actualización del modelo
●
Máscaras de objetos rectangularesMáscaras de objetos rectangulares
– Evitar objetos engullidosEvitar objetos engullidos
– Aumentar velocidad ejecuciónAumentar velocidad ejecución
●
Parámetro de olvidoParámetro de olvido αα [0,1][0,1]
– α ≈ 0α ≈ 0
●
Actualización lentaActualización lenta
●
Robustez frente a errores en extracciónRobustez frente a errores en extracción
– α ≈ 1α ≈ 1
●
Mayor adaptación a los cambiosMayor adaptación a los cambios
●
Muy sensible a errores en extracciónMuy sensible a errores en extracción
●
Tasa de actualizaciónTasa de actualización
39. ContenidoContenido
0.0. IntroducciónIntroducción
1.1. Modelado 3D del entornoModelado 3D del entorno
2.2. Extracción de objetosExtracción de objetos
3.3. Composición de la escenaComposición de la escena
4.4. Actualización del modeloActualización del modelo
5.5. Conclusiones y trabajo futuroConclusiones y trabajo futuro
6.6. DemostraciónDemostración
40. 5. Conclusiones y trabajo futuro5. Conclusiones y trabajo futuro
●
Modelado 3DModelado 3D
– ConclusionesConclusiones
✔ Modelado in situ, cuasi tiempo real y sencilloModelado in situ, cuasi tiempo real y sencillo
✔ Representación veloz (hasta 24 fps) y alta fidelidadRepresentación veloz (hasta 24 fps) y alta fidelidad
✔ Volumen de transmisión muy bajoVolumen de transmisión muy bajo
✗ Imprecisión en el cálculo de la posición de las marcasImprecisión en el cálculo de la posición de las marcas
✗ Entornos con restricciones: 20 mEntornos con restricciones: 20 m22
, compuesto por planos, sin, compuesto por planos, sin
esquinasesquinas
– Trabajo futuroTrabajo futuro
●
Mejor tratamiento de estabilización en el posicionamiento (ARTag,Mejor tratamiento de estabilización en el posicionamiento (ARTag,
ARToolkitPlus)ARToolkitPlus)
●
Aumentar la complejidad de los entornos: marcas coplanares, usoAumentar la complejidad de los entornos: marcas coplanares, uso
de bibliotecas de objetos 3D, detección de interseccionesde bibliotecas de objetos 3D, detección de intersecciones
41. 5. Conclusiones y trabajo futuro5. Conclusiones y trabajo futuro
●
Extracción de objetosExtracción de objetos
– ConclusionesConclusiones
✔ Extracción de objetos satisfactoria para diferentes entornosExtracción de objetos satisfactoria para diferentes entornos
✔ Postprocesado de objetos contribuye al resultado sustancialmentePostprocesado de objetos contribuye al resultado sustancialmente
✔ Proceso veloz, se mantiene tasa hasta 24fpsProceso veloz, se mantiene tasa hasta 24fps
✗ En general, sustracción del fondo por comparación del color no esEn general, sustracción del fondo por comparación del color no es
suficiente (camuflaje)suficiente (camuflaje)
✗ Pérdida de resolución del recorte debido a diezmadoPérdida de resolución del recorte debido a diezmado
– Trabajo futuroTrabajo futuro
●
Postprocesado específico para el contornoPostprocesado específico para el contorno
●
Información adicional: temperatura, distanciaInformación adicional: temperatura, distancia
●
Altas tasas fps permiten algoritmos más complejosAltas tasas fps permiten algoritmos más complejos
●
Protocolo específico de transmisión de objetos comprimidosProtocolo específico de transmisión de objetos comprimidos
42. 5. Conclusiones y trabajo futuro5. Conclusiones y trabajo futuro
●
Composición de la escenaComposición de la escena
– ConclusionesConclusiones
✔ Proceso muy rápido por su sencillezProceso muy rápido por su sencillez
✔ Tasa de fotogramas se mantiene en torno a 24 fpsTasa de fotogramas se mantiene en torno a 24 fps
✗ Composición con fondos alternativos mejorableComposición con fondos alternativos mejorable
– Trabajo futuroTrabajo futuro
●
Adaptar la salida al estándar MPEG-4Adaptar la salida al estándar MPEG-4
●
Mejorar la composición en fondos alternativosMejorar la composición en fondos alternativos
43. 5. Conclusiones y trabajo futuro5. Conclusiones y trabajo futuro
●
Actualización del modeloActualización del modelo
– ConclusionesConclusiones
✔ Expectativas satisfechas con cambios no bruscosExpectativas satisfechas con cambios no bruscos
✔ Tasa instantánea final de fotogramas no inferior a 16 fpsTasa instantánea final de fotogramas no inferior a 16 fps
✗ Congelación de la imagenCongelación de la imagen
– Trabajo futuroTrabajo futuro
●
Evitar la congelación de la imagen en el momento de la actualiza-Evitar la congelación de la imagen en el momento de la actualiza-
ciónción
●
Incluir procesado a las texturas para compensar el AWBIncluir procesado a las texturas para compensar el AWB
44. ContenidoContenido
0.0. IntroducciónIntroducción
1.1. Modelado 3D del entornoModelado 3D del entorno
2.2. Extracción de objetosExtracción de objetos
3.3. Composición de la escenaComposición de la escena
4.4. Actualización del modeloActualización del modelo
5.5. Conclusiones y trabajo futuroConclusiones y trabajo futuro
6.6. DemostraciónDemostración
Editor's Notes
- Comenzaremos viendo una introducción ligera al proyec-to, para a continuación detallar cada una de las fases del sistema dispuestas en el mismo orden en que son ejecu-tadas. Cerrará la presentación un capítulo de conclusio-nes que dará paso a una breve demostración de la apli-cación desarrollada.
- Es innegable que las comunicaciones hoy en día son ca-da vez más rápidas, debido a continuos avances tecnoló-gicos, a protocolos más avanzados que optimizan el uso del ancho de banda, o algoritmos de compresión, tanto de audio como de vídeo, más potentes que también con-tribuyen a ello.[...]
- No es menos cierto que el usuario se ha vuelto cada vez más exigente. En efecto el usuario se ha acostumbrado a la tecnología, pero además se ha convertido en un usuario exigente, a quien las cuestiones de viabilidad, o bien no le preocupan, o las supone resueltas. Esto conduce en muchos casos a exigir altas prestaciones incluso a dispositivos de bajo coste. [...]
- Es por esto que en el presente proyecto se propone una técnica de compresión de secuencias de vídeo para dispositivos de bajo coste. En particular se aplicará a una sesión de videoconferencia, empleando para ello un PC de gama media y una cámara web de bajo coste.[...]
- Se propone una codificación orientada a contenido, donde la escena se divide en objetos, en oposición al enfoque clásico orientado a fotograma. Esta idea está tomada de las técnicas de codificación del estándar MPEG de 2ª ge-neración, MPEG-4.[...]
- Sin embargo en el estándar no se indica cómo se debe realizar la extracción de objetos a partir de una escena dada.[...]
- La técnica más habitual, por ser la única fiable, se basa en distinguir en la escena entre lo que varía y lo que no varía, o paradigma fondo-móviles. [...]
- Para llevar a la práctica el paradigma fondo-móviles se necesita disponer de un fondo dado a priori [...], para, mediante técnicas de sustracción de fondo, obtener los móviles u objetos presentes en la escena. [...]
- Una técnica de sustracción de fondo posible se basa en el promediado de imágenes de la secuencia filmada. Las zonas pertenecientes al fondo tendrán mayor peso en la imagen promedio resultante, de este modo se obtiene un modelo plano del fondo estático. El problema es que los movimientos de la cámara no están permitidos [...]
- Con el objetivo de posibilitar que la cámara se mueva, se propone realizar un modelo tridimensional y virtual del entorno. Se hará necesario por tanto incluir alguna téc-nica de posicionamiento de la cámara para poder mostrar correctamente el fondo estimado en todo momento. [...]
- Una vez efectuada la extracción de objetos es posible componer en el extremo receptor la escena original a partir del fondo virtual superponiendo los objetos reales extraídos.
- Al resultado de combinar en una misma imagen elemen-tos reales y virtuales se denomina Realidad Aumentada (RA). [...]
- Se puede considerar la RA como un estadio intermedio en un proceso de deriva hacia lo virtual que comenzaría con un entorno puramente real (una filmación típica de vídeo) y acabaría en un entorno propio de Realidad Virtual. Se acuerda que para que una aplicación sea considerada de RA se deben cumplir los siguientes requisitos:
[...]
- El principal reto para toda aplicación de RA es el proble-ma de registro, que hace referencia a la sincronización, tanto espacial como temporal, necesaria para que la combinación de ambos mundo virtual y real ocurra de for-ma verosímil. [...]
Explicar brevemente el contenido..
- La idea es que a partir del modelo virtual 3D del entorno, y conociendo la posición de la cámara en el entorno real, se puede obtener una vista virtual en perspectiva del fon-do real sin objetos. [...]
- El objetivo es pues realizar un modelo del entorno tridi-mensional y además automático, con la idea de evitar un largo proceso de modelado off-line previo. Esto obliga a incluir técnicas de posicionamiento ya en la fase de mo-delado. [...]
- Una opción es fijar un tracker mecánico a la cámara. El tracker es un dispositivo de seguimiento que permite me-dir los movimientos de giro de la cámara, pero no des-plazamientos de ésta. [...]
- Debido a esta limitación, se decidió emplear marcas arti-ficiales dentro del campo de visión de la cámara, que ofrece mucha mayor libertad de movimiento que la solu-ción anterior. [...]
- Las herramientas que se van a utilizar durante la fase de modelado son OpenGL y ARToolkit [...]
- OpenGL es una biblioteca gráfica que emplearemos para todo lo realiza con la representación gráfica. [...]
- ARToolkit es una biblioteca que emplea algoritmos de visión por computador para la localización de la cámara mediante el uso de marcas artificiales. [...]
- [[ Leer ]] [clic]
- ¿Cómo trabaja ARToolkit?
1. Se parte de una secuencia filmada de un entorno donde se han colocado estratégicamente marcas dentro del campo de visión de la cámara. [clic]
2. La imagen de entrada se convierte a una imagen binaria, y se buscan cuadriláteros que puedan correspon-der a marcas. A partir de la deformación del cuadrado original es posible calcular la posición de la marca relati-va a la cámara. Acto seguido se compara el patrón inter-no con patrones previamente almacenados y se identifi-ca. [clic]
3. Por último, dado que se conoce la posición de la marca respecto a la cámara es posible pasar esta infor-mación a OpenGL para incluir información contextual, por ejemplo, colocando un objeto virtual sobre la marca de tal forma que éste parece pertenecer al mundo real. [clic]
Simplificando las posibilidades que nos ofrecen estas he-rramientas se concluye que podemos... [...]
a) Detectar planos, ya que podemos localizar marcas (con ARToolkit), y éstas definen de forma unívoca el plano que la contiene.
b) Reconocer el patrón interior si ha sido previamente en-trenado.
c) Colocar objetos virtuales sobre la marca.
Reformulando estas capacidades para la creación del modelo se concluye lo siguiente:
a) Es posible aproximar el entorno por superficies planas que se cortan y asignar una marca distinta a cada plano.
b) Además, esta relación entre plano y marca es unívoca.
c) Es posible asociar a cada plano real un objeto virtual que lo caracterice.
- A continuación se muestra un entorno real que se desea modelar. Se puede considerar que está compuesto por 3 planos que se cortan (..) por lo que se colocan 3 marcas distintas en sendos planos. Ya que podemos incluir información contextual a partir de las marcas,[...] superponemos mallas virtuales con la idea de obtener sensación de profundidad y pers-pectiva en el modelo. Podemos dar un paso más y colo-car en su lugar fotos tomadas de las paredes. [...]. El resultado final es el que muestran las imágenes
- Así estaría acabado el modelo, pero se me ocurren un par de preguntas.
1) En la Fig. tex1 la marca 2 no está visible, sin embargo si se ve su objeto asociado correctamente, ¿cómo es posible conocer la posición de una marca oculta?
2)¿De dónde obtenemos las fotos de los planos?
La respuesta a la primera pregunta es “Registro de planos o marcas”, es decir, existe un control de las marcas que componen el modelo. De este proceso de registro se ob-tienen dos informaciones muy importantes. Por un lado la posición y orientación absoluta de cada una de las mar-cas, mediante el juego de matrices de transformación Mi. Y por otro lado la posición relativa de las marcas respec-to de las demás, mediante las matrices de conversión Tij, que permite estimar la posición de una marca oculta. [...]
La respuesta a la segunda pregunta es “Registro de textu-ras”. Paralelo al proceso de registro de marcas se realiza una captura de la imagen en el momento del registro y se asocia como textura al plano. Antes de esto habrá que eliminar la deformación que en general presentará la imagen debido a la perspectiva y el problema de tener un campo de visión limitado en la captura.
- Eliminar la deformación es un problema de mapeo de texturas [...] En el proceso de modelado se filma una escena real 3D en perspectiva, pero en la pantalla sólo disponemos de una imagen bidimensional.[...] Sin embargo, a partir de la matriz de transformación del plano es posible deshacer esta deformación realizando operaciones matemáticas.[...]
- Es el proceso inverso que realiza OpenGL cuando tiene que mostrar una textura, esto recibe una imagen sin deformar y debe deformarla para que dé sensación de perspectiva, por lo que es una técnica rápida y bastante exacta. Observando las imágenes queda en evidencia el problema del campo de visión limitado mencionado con anterioridad. [...]
- La solución pasa por realizar varias capturas hasta completar la superficie total del plano.
- Una cuestión que hasta ahora no se ha mencionado es el ocultamiento de planos. [...]
- Cuando OpenGL trabaja con objetos en el espacio 3D calcula automáticamente las partes de los objetos que quedan ocultas por otros objetos, en función del punto de vista de la cámara. De esta forma, aunque las texturas asociadas a cada plano tienen un área (o volumen) fijo, los trozos sobrantes quedan correctamente ocultos por el resto de planos. Esto permite acelerar el proceso de re-presentación del modelo, ya que no hay que calcular in-tersecciones. [...]
- Sin embargo, cuando lo que se modela es una esquina, en lugar de un rincón, no ocurre lo mismo. Dado que en un entorno no complejo no suele haber esquinas sino rin-cones, se decidió no incluir un procesado específico y asumir esta limitación, en aras de una mayor velocidad de ejecución.
- Las ventajas de este modelado automático tridimensional son:
1) Un modelado in situ, de rápida ejecución y con bastante fidelidad.
2) El hecho de tener desacopladas la información referente a la estructura y a la apariencia
3) Un volumen de datos a transmitir muy bajo, ya que sólo hay que enviar información de localización. [...]
- Las restricciones hacen referencia a los entornos modela-bles, que en general serán no complejos, por ejemplo sin esquinas... [...]
- El principal problema son los errores de posicionamiento debido al ruido presente en la imagen, que provocan desalineamientos entre planos, o vibración
- Debido a estos errores, y otros fenómenos, como los cambios en la iluminación, se efectuará en una etapa posterior una actualización del modelo.
(En ésta se enumeran los apartados de la explicación, que serán básicamente los correspondientes a los capítulos del PFC.)
- A continuación se muestra la organización de la presentación. [clic] Comenzaremos con el modelado tridimensional del entorno...
- El objetivo de la extracción de objetos desde el punto de vista del Sistema es extraer los objetos de una escena filmada para completar la división de ésta en fondo y ob-jetos (o móviles). [...]
- Desde el punto de vista del subsistema se trata de com-parar 2 imágenes dadas para quedarse con la imagen diferencia, en lo que constituye un problema de segmen-tación de imágenes por color mediante sustracción del fondo. [...]
- Si bien es una técnica rápida y fiable no está en general exenta de errores, por lo que será necesario efectuar un postprocesado a la imagen. Dentro de este procesado se incluirán otras operaciones destinadas a conferir a las dis-tintas agrupaciones de píxeles obtenidas una naturaleza de objeto. [...]
- De forma previa, y con el fin de acelerar el procesado completo, se efectúa un diezmado de las imágenes por 4, que ofrece un buen compromiso entre pérdida de re-solución y velocidad de ejecución.
- A continuación se muestran las imágenes que nos ayuda-rán a mostrar el proceso completo de extracción de obje-tos. La imagen superior representa la imagen filmada, en la que se aprecia un objeto, la mano. La imagen inferior muestra la estimación del fondo obtenida a partir del modelo. [...]
- Tras aplicar el algoritmo inicial de comparación de píxeles obtendríamos la tercera imagen. Los píxeles en blanco se consideran pertenecientes al fondo. Se observa que, aunque los píxeles de la mano han sido correctamente clasificados como pertenecientes a un objeto se han producido errores locales. [...]
- Tras aplicar el algoritmo de comparación lo que se obtiene realmente es una máscara binaria que clasifica los píxeles de la imagen filmada, en píxeles fondo y píxe-les objeto. Es importante remarcar que áun no existe el concepto de objeto en la imagen. [...]
- Es por ello que es necesario efectuar una agrupación de píxeles en objetos. [...]
- No obstante, y para evitar la aparición de un número muy elevado de objetos (la mayoría de ellos por error), se eje-cuta un algoritmo de homogeneización por vecindad, que eliminará un gran número de agrupaciones de píxeles claramente identificables como erróneas, y cuyos resultados se pueden apreciar en la siguiente diapositiva. [..]
- Vemos que gran parte de los agrupaciones erróneas, las más pequeñas han desaparecido. [...]
- Ahora sí, se ejecuta el algoritmo de agrupación en objetos y etiquetado, de modo que a partir de ahora se puede ya hablar de objeto como entidad. [...]
- El algoritmo aplica un procedimiento recursivo a la másca-ra binaria que conecta entre sí los píxeles objeto adya-centes y les asigna un identificador o etiqueta. Además de esta versión ampliada de la máscara binaria original el algoritmo devuelve.. [...]
- ..una lista de objetos con información referente a cada uno de ellos, como el identificador de objeto, el tamaño de la bounding box (que es un recuadro imaginario míni-mo que contiene el objeto completo) o la propia informa-ción de color. [...]
- Puesto que ya existe concepto de objeto es posible efec-tuar un postprocesado orientado a objetos. [...]
- Esto significa que se pueden emplear criterios que con-templen el tamaño del objeto, el tamaño de la bounding box, la forma del objeto, etc [...]
- Se establecen finalmente los siguientes criterios para la eliminación de objetos extraídos por error: un área míni-ma y un número de apariciones mínimo. [...]
Aún así es muy difícil eliminar por completo los errores, de-bido a que existen múltiples fuentes de error. Algunos he-redados, como el desalineamiento del modelo, y otros in-controlables como el camuflaje, es decir, objetos que tienen el mismo color que el fondo que oculta. [...]
- A pesar de los errores que puedan quedar sin eliminar, se concluye que la segmentación por sustracción del fondo es una técnica rápida y fiable. No hace más presunción que conocer el fondo, por lo que la inclusión de informa-ción adicional mejoraría el resultado (sensiblemente).
(En ésta se enumeran los apartados de la explicación, que serán básicamente los correspondientes a los capítulos del PFC.)
- A continuación se muestra la organización de la presentación. [clic] Comenzaremos con el modelado tridimensional del entorno...
- Se realiza en el extremo receptor. [...]
- Matemáticamente se expresa como la suma de 2 imáge-nes, el fondo estimado y la imagen filmada, a las que se aplica la máscara de objetos. En la práctica no tiene sentido hacerlo puesto que no habría reducción en el vo-lumen de datos. [...]
- Componer la escena es pegar los objetos reales extraídos sobre un fondo virtual, a partir de la información de aquéllos. [...]
- Por tanto, el extremo receptor debe disponer de ambas componentes. [...]
- Finalmente podemos decir que esta etapa constituye una aplicación típica de RA.
- Vemos un ejemplo de composición. En transmisión disponemos de la imagen filmada, y del modelo.[...]
- Con la ayuda de éste extraemos los objetos presentes en la escena y acto seguido [...] se enviaría al extremo re-ceptor tanto el modelo completo como los objetos extraí-dos para componer la escena original. [...]
- Finalmente haría el receptor una copia local de las textu-ras para reducir el volumen total de datos a transmitir. [...]
..Mencionar la copia local, sólo hay que enviar la posición cada vez, y los objetos, que ocupan menos área que la imagen completa.
- En el ejemplo el procesado se limitaba a invertir la imagen, sin embargo, las posibilidades son muchas más, como reconocimiento de caracteres, reconocimiento de objetos en general, mejorar la calidad de la imagen. [...]
- Se concluye que es un proceso sencillo y veloz; versátil (postprocesado); y que la composición con texturas no originales precisa tratamiento específico.
(En ésta se enumeran los apartados de la explicación, que serán básicamente los correspondientes a los capítulos del PFC.)
- A continuación se muestra la organización de la presentación. [clic] Comenzaremos con el modelado tridimensional del entorno...
- Si bien, el modelo es la parte estática de la escena, éste no está exento de variaciones, por lo que tiene sentido llevar a cabo un proceso periódico de actualización. [...]
- Las causas de estas variaciones son 2 principalmente: [...]
1) Iluminación: Muy común cuando se trabaja con entornos reales, que no se pueden controlar completamente [...]
2) AWB: Todas las cámaras realizan un control automático del color en función del cromatismo de la escena, similar a un CAG. Si este algoritmo no es bueno, como ocurre en los dispositivos de bajo coste, se producen desajustes en los colores de la imagen. [...]
- El algoritmo empleado para la actualización se basa en la técnica del olvido exponencial, al que se le aplica una máscara de objetos para excluir los objetos del cálculo.
- Al ver la última imagen se aprecia que se ha oscurecido el modelo adaptándose a la nueva iluminación, salvo dos zonas. El rectángulo inferior corresponde a la silla en-mascarada, y el situado más a la izquierda se debe a un error en la extracción de objetos. En efecto, el cambio de iluminación es tan brusco en esa zona, que se confundió con un objeto. [...]
- Como se pudo apreciar en la diapositiva anterior, las máscaras de los objetos son rectangulares. La razón principal es evitar los objetos engullidos. Si el recorte de un objeto no se ajusta perfectamente a su contorno, éste puede quedar incluido en el proceso de actualización y pasar a formar parte del fondo. Una máscara rectangular ofrece un margen de seguridad, a la vez que reduce la carga computacional. [...]
- Existen dos parámetros en el algoritmo. El parámetro del olvido alfa, que controla el peso que tiene la imagen filmada enmascarada en la actualización. [...]
- El segundo parámetro es la frecuencia de la actualización, que no da tanto juego como el anterior puesto que ésta si afecta a la velocidad de ejecución. [...]
(En ésta se enumeran los apartados de la explicación, que serán básicamente los correspondientes a los capítulos del PFC.)
- A continuación se muestra la organización de la presentación. [clic] Comenzaremos con el modelado tridimensional del entorno...
(En ésta se enumeran los apartados de la explicación, que serán básicamente los correspondientes a los capítulos del PFC.)
- A continuación se muestra la organización de la presentación. [clic] Comenzaremos con el modelado tridimensional del entorno...