Clase de fotogramas de vídeo procesados de forma distinta por un algoritmo de compresión
En el campo de la compresión de vídeo , un fotograma de vídeo se comprime utilizando diferentes algoritmos con diferentes ventajas y desventajas, centradas principalmente en la cantidad de datos comprimidos . Estos diferentes algoritmos para fotogramas de vídeo se denominan tipos de imagen o tipos de fotograma . Los tres tipos de imagen principales utilizados en los diferentes algoritmos de vídeo son I , P y B. [ 1] Se diferencian en las siguientes características:
Los fotogramas I son los menos comprimibles pero no requieren otros fotogramas de vídeo para decodificarse.
Los fotogramas P pueden usar datos de fotogramas anteriores para descomprimirse y son más comprimibles que los fotogramas I.
Los fotogramas B pueden utilizar fotogramas anteriores y posteriores como referencia de datos para obtener la mayor cantidad de compresión de datos.
Un I-frame ( imagen intracodificada ) es una imagen completa, como un archivo de imagen JPG o BMP .
Un fotograma P (imagen predicha) contiene solo los cambios en la imagen de un fotograma anterior. Por ejemplo, en una escena en la que un automóvil se mueve sobre un fondo estático, solo es necesario codificar los movimientos del automóvil. El codificador no necesita almacenar los píxeles de fondo inmutables en el fotograma P, lo que ahorra espacio. Los fotogramas P también se conocen como fotogramas delta .
Un cuadro B (imagen predicha bidireccional) ahorra aún más espacio al utilizar las diferencias entre el cuadro actual y los cuadros anterior y siguiente para especificar su contenido.
Los fotogramas P y B también se denominan fotogramas Inter . El orden en el que se disponen los fotogramas I, P y B se denomina Grupo de imágenes .
Imágenes/marcos
Aunque los términos "marco" e "imagen" se utilizan a menudo indistintamente, el término imagen es una noción más general, ya que una imagen puede ser un marco o un campo . Un marco es una imagen completa y un campo es el conjunto de líneas de barrido pares o impares que componen una imagen parcial. Por ejemplo, una imagen HD 1080 tiene 1080 líneas (filas) de píxeles. Un campo impar consta de información de píxeles para las líneas 1, 3, 5...1079. Un campo par tiene información de píxeles para las líneas 2, 4, 6...1080. Cuando el vídeo se envía en formato de barrido entrelazado , cada marco se envía en dos campos, el campo de líneas impares seguido del campo de líneas pares.
Un marco utilizado como referencia para predecir otros marcos se llama marco de referencia.
Los fotogramas codificados sin información de otros fotogramas se denominan fotogramas I. Los fotogramas que utilizan la predicción a partir de un único fotograma de referencia anterior (o un único fotograma para la predicción de cada región) se denominan fotogramas P. Los fotogramas B utilizan la predicción a partir de un promedio (posiblemente ponderado) de dos fotogramas de referencia, uno anterior y otro posterior.
Rebanadas
En el estándar H.264/MPEG-4 AVC , la granularidad de los tipos de predicción se reduce al "nivel de corte". Un corte es una región espacialmente distinta de un fotograma que se codifica por separado de cualquier otra región del mismo fotograma. Los cortes I, P y B sustituyen a los fotogramas I, P y B.
Macrobloques
Normalmente, las imágenes (marcos) se segmentan en macrobloques y se pueden seleccionar tipos de predicción individuales sobre la base de cada macrobloque en lugar de que sean los mismos para toda la imagen, de la siguiente manera:
Los I-frames solo pueden contener macrobloques intra
Los marcos P pueden contener tanto macrobloques intra como macrobloques predichos
Los fotogramas B pueden contener macrobloques intra, predichos y bipredichos
Además, en el estándar de codificación de vídeo H.264 , el fotograma se puede segmentar en secuencias de macrobloques denominados porciones y, en lugar de utilizar selecciones de tipo de fotograma I, B y P, el codificador puede elegir el estilo de predicción de forma diferenciada en cada porción individual. También en H.264 se encuentran varios tipos adicionales de fotogramas/porciones:
Cuadros/secciones SI (conmutación I): facilita el cambio entre secuencias codificadas; contiene macrobloques SI (un tipo especial de macrobloque intracodificado).
Cuadros/secciones SP (conmutación P): facilita la conmutación entre secuencias codificadas; contiene macrobloques P y/o I
Estimación de movimiento de múltiples cuadros (hasta 16 cuadros de referencia o 32 campos de referencia)
La estimación de movimiento de múltiples cuadros aumenta la calidad del video, al mismo tiempo que permite la misma relación de compresión. Los cuadros SI y SP (definidos para el perfil extendido) mejoran la corrección de errores . Cuando se utilizan dichos cuadros junto con un decodificador inteligente, es posible recuperar las transmisiones de DVD dañados.
Los I-frames contienen una imagen completa. Están codificados sin referencia a ningún otro fotograma, excepto a (partes de) ellos mismos.
Puede ser generado por un codificador para crear un punto de acceso aleatorio (para permitir que un decodificador comience a decodificar correctamente desde cero en esa ubicación de la imagen).
También puede generarse cuando la diferenciación de detalles de la imagen impide la generación de fotogramas P o B efectivos.
Generalmente requieren más bits para codificar que otros tipos de tramas.
A menudo, los fotogramas I se utilizan para el acceso aleatorio y se utilizan como referencias para la decodificación de otras imágenes. Los períodos de refresco intra de medio segundo son comunes en aplicaciones como la transmisión de televisión digital y el almacenamiento de DVD . En algunos entornos se pueden utilizar períodos de refresco más largos. Por ejemplo, en los sistemas de videoconferencia es habitual enviar fotogramas I con muy poca frecuencia.
Cuadros/cortes predichos (P)
Requiere la decodificación previa de alguna otra imagen(es) para poder ser decodificado.
Puede contener datos de imagen y desplazamientos de vectores de movimiento y combinaciones de ambos.
Puede hacer referencia a imágenes anteriores en orden de decodificación.
Los diseños estándar más antiguos (como MPEG-2 ) utilizan solo una imagen previamente decodificada como referencia durante la decodificación y requieren que esa imagen también preceda a la imagen P en el orden de visualización.
En H.264, se pueden usar múltiples imágenes previamente decodificadas como referencias durante la decodificación y pueden tener cualquier relación de orden de visualización arbitraria en relación con las imágenes utilizadas para su predicción.
Generalmente se requieren menos bits para la codificación en comparación con los fotogramas I.
Requiere la decodificación previa de los fotogramas subsiguientes que se van a mostrar.
Puede contener datos de imagen y/o desplazamientos de vectores de movimiento. Los estándares más antiguos solo permiten un único vector de compensación de movimiento global para todo el cuadro o un único vector de compensación de movimiento por macrobloque.
Incluye algunos modos de predicción que forman una predicción de una región de movimiento (por ejemplo, un macrobloque o un área más pequeña) promediando las predicciones obtenidas utilizando dos regiones de referencia diferentes decodificadas previamente. Algunas normas permiten dos vectores de compensación de movimiento por macrobloque (bipredicción).
En estándares más antiguos (como MPEG-2), los fotogramas B nunca se utilizan como referencias para la predicción de otras imágenes. Como resultado, se puede utilizar una codificación de menor calidad (que requiere menos espacio) para dichos fotogramas B porque la pérdida de detalle no afectará la calidad de la predicción de las imágenes posteriores.
H.264 relaja esta restricción y permite que los fotogramas B se utilicen como referencias para la decodificación de otros fotogramas a discreción del codificador.
Los estándares más antiguos (como MPEG-2) utilizan exactamente dos imágenes previamente decodificadas como referencias durante la decodificación y requieren que una de esas imágenes preceda al cuadro B en el orden de visualización y la otra lo siga.
H.264 permite una, dos o más de dos imágenes previamente decodificadas como referencias durante la decodificación, y puede tener cualquier relación de orden de visualización arbitraria en relación con las imágenes utilizadas para su predicción.
La mayor flexibilidad de la recuperación de información significa que los fotogramas B normalmente requieren menos bits para su codificación que los fotogramas I o P.
^ Beach, Andy; Owen, Aaron (2019). Manual de compresión de vídeo (2.ª ed.). Lugar de publicación no identificado: Peachpit Press. ISBN 978-0-13-486621-5.OCLC 1006298938 .