2d and 3d h.264 inter prediction algorithms for gpu-based heterogeneous architectures

  1. RODRIGUEZ SANCHEZ, RAFAEL
Dirigida por:
  1. José Luis Sánchez García Director/a
  2. José M. Claver Codirector/a
  3. José Luis Martínez Martínez Codirector/a

Universidad de defensa: Universidad de Castilla-La Mancha

Fecha de defensa: 15 de febrero de 2013

Tribunal:
  1. Manuel Pérez Malumbres Presidente/a
  2. Gerardo Fernández-Escribano Secretario/a
  3. Jan de Cock Vocal

Tipo: Tesis

Teseo: 336195 DIALNET

Resumen

En los últimos años, los contenidos multimedia han crecido de manera espectacular. Este crecimiento ha sido provocado por el rápido avance de las redes de telecomunicación y el rápido desarrollo de los dispositivos móviles y de visualización. Cada día, millones de vídeos son transmitidos por Internet o son emitidos desde una estación de televisión. Sin embargo, un vídeo en bruto consume demasiados recursos (espacio en disco y ancho de banda en las redes de comunicación), por lo que es necesario comprimirlo antes de ser transmitido o almacenado, reduciendo el consumo de recursos. H.264/AVC es el último estándar de codificación de vídeo establecido, el cual es capaz de obtener mayor compresión que otros estándares previos para una misma calidad. Esta eficiencia en la codificación se logra mediante el uso de nuevas técnicas o mediante la mejora de algunas ya existentes. Esta mejora en la compresión se obtiene a base de aumentar la complejidad de los codificadores. Es cierto que el futuro estándar H.265/HEVC remplazará a su predecesor (H.264/AVC), pero actualmente H.264/AVC es el estándar más utilizado. Desde que H.264/AVC fue establecido en 2003, ha habido muchas propuestas que han tratado de reducir el coste computacional de los codificadores H.264/AVC y muchas de ellas se han centrado en el módulo de inter predicción. Estas propuestas en su mayoría han tratado de identificar ciertos modos que no es muy probable que fueran a ser utilizados para no tener que evaluarlos o definir algoritmos de búsqueda rápidos. Sin embargo, con la aparición de las GPUs se ha abierto una nueva vía para acelerar este módulo. En el mercado existen varios fabricantes de GPUs, pero la mayor atención se la han llevado las desarrolladas por NVIDIA debido a su facilidad de programación. La principal característica de estas GPUs es disponer de una gran cantidad de elementos de proceso en un mismo chip a costa de una reducción significativa de otros elementos, por ejemplo la memoria cache. Estas GPUs son construidas siguiendo el modelo SIMD y son usadas normalmente como co-procesador. En este escenario, donde es necesario reducir el tiempo de ejecución de los codificadores H.264/AVC, el uso de las GPUs es la solución ideal. Además, es importante mantener la eficiencia en la codificación. Para ello, las GPUs van a ser usadas conjuntamente con varios algoritmos diseñados para reusar la información de movimiento obtenida para ciertos modos con el fin de obtener la información de movimiento de otros modos. Esta tesis propone varias técnicas dependiendo del tipo de imágenes que se use en la codificación: se ha propuesto un algoritmo para imágenes tipo P, otro para tipo B y otro para vídeos 3D. Los algoritmos propuestos en esta tesis reducen considerablemente los tiempos de ejecución de los algoritmos que se han tomado como referencia (búsqueda completa y UMHexagonS), mientras que proporcionan una buena eficiencia de codificación. Además, las propuestas son capaces de mejorar a las propuestas previas que hay en la literatura. Finalmente, se ha demostrado la eficiencia energética de las propuestas ya que, al usarlas, el codificador consume menos energía que usando los algoritmos de referencia.