Codificación de vídeo 3D: un caso práctico. Antonio Jesús Díaz Honrubia

Codificación de vídeo 3D: un caso práctico Antonio Jesús Díaz Honrubia Índice Introducción Tecnologías de vídeo 3D Dispositivos de captura 3D Dispos

2 downloads 69 Views 1MB Size

Story Transcript

Codificación de vídeo 3D: un caso práctico Antonio Jesús Díaz Honrubia

Índice Introducción Tecnologías de vídeo 3D Dispositivos de captura 3D Dispositivos de visualización 3D Codificación de Vídeo Multivista (MVC) Caso práctico: transmisión de vídeo 3D en tiempo real

     

1

Codificación de vídeo 3D: un caso práctico

07/07/2014

Índice Introducción Tecnologías de vídeo 3D Dispositivos de captura 3D Dispositivos de visualización 3D Codificación de Vídeo Multivista (MVC) Caso práctico: transmisión de vídeo 3D en tiempo real

     

2

Codificación de vídeo 3D: un caso práctico

07/07/2014

Introducción ¿Qué nos permite a los humanos tener la sensación de profundidad?





La diferencia entre las imágenes captadas por cada ojo (paralaje).

Las pequeñas diferencias horizontales son las “culpables” de la sensación de 3D.



 

Pequeñas diferencias verticales no se aprecian. Grandes diferencias verticales u horizontales producirían imágenes borrosas. Ojo izquierdo

3

Ojo derecho

Codificación de vídeo 3D: un caso práctico

07/07/2014

Introducción ¿Todo nuestro campo de visión es 3D?





Imposible: lo que no vean ambos ojos, no lo veremos con la sensación 3D. Zona 3D

¿A partir de qué distancia percibimos la sensación de 3D?



 

4

Ángulo de visión de 30º. Separación media entre los ojos de 6,2 cm.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Introducción 30º

x cm

tg (75º) = x / 3,1

30º 75º

x = 3,1 · tg (75º) = 3,1 · 3,73 = 11,6 cm

3,1 cm

La sensación de 3D se produce sólo a partir de 11,6 cm.





A partir de ese punto, se forma un cono de visión 3D de 30º.

Cuando las distancias son muy grandes, no se aprecian las diferencias y la sensación 3D tiende a desaparecer.



5

Codificación de vídeo 3D: un caso práctico

07/07/2014

Introducción ¿Cómo podemos crear efecto 3D al ver una película?



 

6

Enseñando una imagen distinta a cada ojo. Se hacen necesarios los siguientes elementos: 

Cámaras que graben más de una vista.



Dispositivos de visualización que muestren cada vista a cada ojo.



Forma de encapsular las distintas vistas en un flujo.



Codificadores que trabajen mucho más rápido.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Introducción Lo ponemos en práctica.



 

Abrir los ficheros cafe_c_2.yuv, cafe_c_3.yuv y cafe_c_4.yuv y observar las diferencias. Pertenecen a una serie de vídeos captados con un array de cámaras (vídeo multivista). 

7

Ojo, son ficheros de vídeo sin comprimir: observa su tamaño.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Índice Introducción Tecnologías de vídeo 3D Dispositivos de captura 3D Dispositivos de visualización 3D Codificación de Vídeo Multivista (MVC) Caso práctico: transmisión de vídeo 3D en tiempo real

     

8

Codificación de vídeo 3D: un caso práctico

07/07/2014

Tecnologías de vídeo 3D 

Vídeo estéreo: se codifican 2 señales de vídeo.



Técnicas para comprimir video estéreo con codificadores 2D:      9

Side-by-side. Top-bottom. Checkerboard. Frames alternos. Filas o columnas alternas. Codificación de vídeo 3D: un caso práctico

07/07/2014

Tecnologías de vídeo 3D 

Lo ponemos en práctica.  

Abrir el fichero de código fuente SideBySide.c. Completar el código necesario para que dadas dos vistas, obtener la versión side-by-side de ambas.  

Hay que submuestrear la imagen a la mitad en dirección horizontal. Dos opciones:  



10

Descartar una columnas alternas. En lugar de descartar columnas, realizar la media entre dos columnas (menos pérdida de información).

Multiplexar dos de las vistas consecutivas de la secuencia Cafe. Codificación de vídeo 3D: un caso práctico

07/07/2014

Tecnologías de vídeo 3D 

Vídeo multivista: se codifican más de 2 señales de vídeo.

 

Problema: gran cantidad de información a codificar. Mucho mayor cantidad de fotogramas por segundo. 

11

Son necesarios codificadores mucho más rápidos.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Tecnologías de vídeo 3D 

Vídeo con profundidad: usa una vista de vídeo y la profundidad de cada píxel.

  

12

Códec 2D para la vista. Nuevo códec para los mapas de profundidad. Problema: no pueden verse píxeles ocultos.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Tecnologías de vídeo 3D 

Vídeo multivista con profundidad: varias vistas de vídeo, cada una con su mapa de profundidad.



Permite renderizar vistas continuas. 



13

Punto de vista libre.

Combina las ventajas y desventajas de los modelos anteriores. Codificación de vídeo 3D: un caso práctico

07/07/2014

Tecnologías de vídeo 3D 

Vídeo con profundidad por capas.  Puede generarse a partir del modelo anterior.  Incluye:

  

14



Capa principal de vídeo.



Su mapa de profundidad.



Capa de vídeo de fondo oculto.



Mapa de profundidad de ésta.

También permite renderizar vistas continuas. Resuelve el problema de los píxeles ocultos. Nuevos problemas: 

Extraer el fondo.



Formato más propenso a errores. Codificación de vídeo 3D: un caso práctico

07/07/2014

Tecnologías de vídeo 3D 

Vídeo estéreo con profundidad por capas.  Igual al anterior, pero con información para 2 vistas completas. 

 

Mejora los errores que produce el vídeo con profundidad por capas. Sin embargo, mantiene su principal inconveniente: 

15

Total de 8 capas.

Extraer el fondo.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Índice      

Introducción Tecnologías de vídeo 3D Dispositivos de captura 3D Dispositivos de visualización 3D Codificación de Vídeo Multivista (MVC) Caso práctico: transmisión de vídeo 3D en tiempo real

16

Codificación de vídeo 3D: un caso práctico

07/07/2014

Dispositivos de captura 3D 

Cámaras con doble objetivo. 

Utilizadas para vídeo estéreo. Objetivos separados igual que los ojos.

17

Codificación de vídeo 3D: un caso práctico



07/07/2014

Dispositivos de captura 3D 

Array de cámaras calibradas conjuntamente.  



Utilizadas para vídeo multivista. Complejo proceso de calibrado.

No existen dispositivos específicos para capturar mapas de profundidad.  18

Éstos pueden obtenerse a partir de dos vistas. Codificación de vídeo 3D: un caso práctico

07/07/2014

Índice      

Introducción Tecnologías de vídeo 3D Dispositivos de captura 3D Dispositivos de visualización 3D Codificación de Vídeo Multivista (MVC) Caso práctico: transmisión de vídeo 3D en tiempo real

19

Codificación de vídeo 3D: un caso práctico

07/07/2014

Dispositivos de visualización 3D 

Existen 3 tipos básicos distintos para la visualización en 3D:   

20

Dispositivos con gafas pasivas. Dispositivos con gafas activas. Dispositivos autoestereoscópicos (sin gafas).

Codificación de vídeo 3D: un caso práctico

07/07/2014

Dispositivos de visualización 3D 

Dispositivos con gafas pasivas.  

21

Se basan en el uso de filtros. A este grupo pertenecen las típicas gafas anaglifo.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Dispositivos de visualización 3D 

Sistemas más sofisticados se basan en la polarización de las ondas electromagnéticas de la luz. 



Unas ondas se emiten con polarización horizontal y otras con polarización vertical.

Los dispositivos suelen mostrar las dos imágenes a la vez. 

 

22

Alternan filas o columnas de cada vista. Las gafas filtran la luz no correspondiente a cada ojo. Problema: depende en gran medida de la posición.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Dispositivos de visualización 3D 

Dispositivos con gafas activas. 

El dispositivo muestra alternativamente un fotograma de cada vista. 

 

Cada cristal de las gafas tiene una pantalla LCD. Esta pantalla se oscurece alternativamente según el frame mostrado actualmente. 





Al ser frecuencias de parpadeo grandes, el ojo no “deja de ver” nunca. Sin embargo, sí que se produce un efecto de oscurecimiento de la imagen.

Este sistema elimina la dependencia de la posición del espectador. 

23

Problema: hay que reproducir el doble de fotogramas por segundo.

Sin embargo, las gafas son mucho más caras.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Dispositivos de visualización 3D 

Dispositivos autoestereoscópicos.  

Eliminan la necesidad de utilizar gafas. La imagen visualizada depende de la posición.  



Gran problema: tecnología poco madura.  



24

Se utilizan técnicas de paralaje. Punto de vista libre.

En la práctica hay que observar desde puntos muy concretos. La mayoría de las veces se mezclan imágenes. Puede llegar a producir mareos.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Índice      

Introducción Tecnologías de vídeo 3D Dispositivos de captura 3D Dispositivos de visualización 3D Codificación de Vídeo Multivista (MVC) Caso práctico: transmisión de vídeo 3D en tiempo real

25

Codificación de vídeo 3D: un caso práctico

07/07/2014

Codificación de vídeo 3D 

En la codificación tradicional de vídeo unos frames referencian a otros para aprovechar la redundancia temporal.



Los frames P y B se codifican diferencialmente respecto a otros frames. 

26

Muchos ceros implican grandes tasas de compresión gracias al codificador de entropía. Codificación de vídeo 3D: un caso práctico

07/07/2014

Codificación de vídeo 3D 

Parece lógico pensar, que diferentes vistas tengan también mucha redundancia (espacial en este caso).  



27

Aparecen las llamadas referencias “intervista”. Cada vista, además de referencias a sí misma, puede referenciar frames de otras vistas. t1

t2

t3

Vista 1

F1,1

F1,2

F1,3

Vista 2

F2,1

F2,2

F2,3

Vista 3

F3,1

F3,2

F3,3

Problema: excesivo número de referencias. Codificación de vídeo 3D: un caso práctico

07/07/2014

Codificación de vídeo 3D 

Sólo se permiten referencias intervista dentro del mismo punto temporal.  

28

Algunos estudios demuestran que las referencias intervista a otros momentos temporales no aportan mucho. Además sólo se permite referenciar una única vista.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Codificación de vídeo 3D 

Esta estructura permite dotar al vídeo de escalabilidad.

29

Codificación de vídeo 3D: un caso práctico

07/07/2014

Codificación de vídeo 3D 

Lo ponemos en práctica. 

Codifica con FFmpeg el fichero que antes has multiplexado en side-by-side. 



Abre el fichero codificado con el reproductor Bino. 



Instálalo en tu ordenador si no lo está.

Selecciona:   

30

ffmpeg.exe -s 1920x1080 -r 15 -i cafe.yuv cafe.mkv -vcodec h264

Input: Left/right, half width. Output: Even/odd rows. Utiliza las gafas pasivas de los monitores del laboratorio.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Índice      

Introducción Tecnologías de vídeo 3D Dispositivos de captura 3D Dispositivos de visualización 3D Codificación de Vídeo Multivista (MVC) Caso práctico: transmisión de vídeo 3D en tiempo real

31

Codificación de vídeo 3D: un caso práctico

07/07/2014

Caso práctico 

En los últimos años se ha trabajado en un proyecto junto con importantes empresas del sector.



Este proyecto ha consistido en el desarrollo de un sistema completo de transmisión de vídeo 3D en tiempo real.    

 32

Captura. Codificación. Transmisión. Decodificación. Visualización. Codificación de vídeo 3D: un caso práctico

07/07/2014

Caso práctico 

Captura. 

Se ha utilizado una cámara 3D con dos objetivos.



El vídeo es directamente trasmitido vía HDMI a un equipo que incorpora una tarjeta de captura y una GPU nVidia GTX 560-Ti.

33

Codificación de vídeo 3D: un caso práctico

07/07/2014

Caso práctico 

Codificación.  



Este equipo codifica el vídeo usando H.264/MVC. Concretamente se utiliza el software x264 con una ampliación para MVC.

Transmisión.  

Conforme se codifica el vídeo, el flujo resultante se transmite en tiempo real. En el caso del prototipo diseñado se transmite en una red local usando UDP. 

34

Sin embargo, puede adaptarse al medio necesario (satélite en el caso de empresas de transmisión en tiempo real).

Codificación de vídeo 3D: un caso práctico

07/07/2014

Caso práctico 

Decodificación.  



Conforme el vídeo se recibe en el cliente, éste lo decodifica. Para ello usa FFmpeg (decodificador de VLC), igualmente extendido para decodificar MVC.

Visualización.  

35

El flujo decodificado se transmite a un cañón 3D a través de HDMI. El cañón puede verse con gafas 3D activas.

Codificación de vídeo 3D: un caso práctico

07/07/2014

Caso práctico 

Escenario competo.  

Coste aproximado del prototipo: 3.840€. Coste del sistema utilizado por las empresas hasta el momento: 60.000€. Codificador

Cámara HDMI

Medio de transmisión HDMI

Proyector

36

Decodificador

Codificación de vídeo 3D: un caso práctico

07/07/2014

¡Muchas gracias! ¿Preguntas?

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.