En el mundo del códec HEVC, la predicción inter-cuadro es fundamental para lograr una compresión eficiente y eficaz. Esta técnica se utiliza principalmente en imágenes B, que son predichas a partir de cuadros temporales cercanos, lo que permite una predicción precisa y de bajo costo. Cada cuadro B en una secuencia de video se predice desde cuadros anteriores o posteriores dentro de la jerarquía temporal de las imágenes, lo que optimiza tanto la calidad como la eficiencia de la compresión. En esta jerarquía temporal, un decodificador tiene la flexibilidad de omitir ciertos cuadros, como los cuadros B, para reducir la carga computacional y alterar la tasa de cuadros mostrados sin afectar gravemente la percepción de la imagen.
Una de las características destacadas de esta estructura es que, por ejemplo, un decodificador puede reconstruir una secuencia de video decodificando solo algunos cuadros, como el I0 y el P0, y omitiendo los cuadros B1 y B3, lo que permite manejar con eficacia las variaciones en la tasa de cuadros o la carga del sistema. En términos más técnicos, la relación entre los cuadros en HEVC se describe mediante las entradas de conjunto de imágenes de referencia (RPS), que permiten al decodificador identificar de manera precisa las imágenes de referencia desde las cuales se deben predecir los cuadros en cuestión.
Por ejemplo, para un cuadro P, como P4, la entrada RPS refiere a I0, la imagen que sirve como referencia para la predicción. Los cuadros B, como B2, pueden tener múltiples referencias, como I0 y P4, lo que complica la predicción pero ofrece mayor flexibilidad en la reconstrucción de las imágenes. De hecho, el uso de estos conjuntos de imágenes de referencia permite al codificador y decodificador trabajar con una lista limitada de imágenes de referencia predefinidas, lo que reduce el costo computacional y mejora la eficiencia.
HEVC también permite una estructura jerárquica más compleja, que involucra múltiples niveles de predicción entre cuadros. Esto es crucial en situaciones donde es necesario omitir ciertos cuadros para ahorrar en procesamiento, como en aplicaciones de decodificación en tiempo real o en entornos con limitaciones de ancho de banda. Además, HEVC optimiza la transmisión al reutilizar entradas de RPS que se repiten, lo que ayuda a reducir la sobrecarga de codificación. De este modo, el codificador solo necesita enviar un índice que haga referencia a un conjunto de imágenes de referencia preexistente, en lugar de enviar la lista completa para cada cuadro individual.
En cuanto a la decodificación aleatoria, HEVC mejora el acceso en comparación con el estándar H.264/AVC mediante el uso de puntos de acceso aleatorio (RAP). Un RAP es una imagen que puede ser decodificada de manera independiente, lo que permite que la decodificación de un flujo de video comience en cualquier punto, lo cual es especialmente útil en aplicaciones como la transmisión de video en vivo o la edición de video. Existen diferentes tipos de RAP en HEVC, como la imagen IDR (Instantaneous Decoder Refresh), la imagen CRA (Clean Random Access) y la imagen BLA (Broken Link Access), que permiten la inserción de puntos de acceso aleatorio de manera flexible.
Un RAP contiene solo cuadros intra-codificados, lo que asegura que la decodificación pueda comenzar sin la necesidad de decodificar cuadros anteriores en la secuencia. Además, HEVC introduce el concepto de imágenes "leading" y "trailing", que ayudan a organizar cómo se muestran las imágenes en relación con los puntos de acceso aleatorio. Las imágenes "leading" son aquellas que se decodifican después de un RAP pero que se muestran antes, mientras que las "trailing" se decodifican y se muestran después del RAP.
Es importante destacar que no todos los tipos de imágenes aleatorias permiten la misma flexibilidad. Por ejemplo, una imagen IDR siempre limpia el búfer de imágenes decodificadas, mientras que una imagen CRA no lo hace, permitiendo así más flexibilidad para la inserción de imágenes "leading" y "trailing". Además, las imágenes RASL (Random Access Skipped Leading) pueden ser omitidas durante la decodificación si no son necesarias, lo que puede ayudar a reducir la carga computacional sin perder calidad perceptible.
Por lo tanto, el HEVC no solo optimiza la compresión de video, sino que también ofrece una mayor versatilidad en términos de acceso aleatorio, permitiendo que los sistemas de decodificación sean más eficientes y capaces de adaptarse a diferentes necesidades de procesamiento. Esta capacidad de acceder a un video de manera aleatoria con un mínimo de datos previos es crucial para aplicaciones de transmisión en tiempo real, edición de video y otros escenarios en los que la latencia y la flexibilidad de decodificación son esenciales.
¿Cómo funciona la codificación de entropía en la compresión de video?
La codificación de entropía es una técnica fundamental en la compresión de datos, que permite representar símbolos de manera más eficiente, aprovechando las características estadísticas de los datos. Su objetivo es reducir el número de bits necesarios para representar una secuencia de símbolos sin perder información. En el contexto de la compresión de video, esta técnica cobra una importancia crucial para lograr una representación eficiente de los datos visuales.
Cada símbolo en una secuencia de datos tiene un contenido de información asociado, que está determinado por su probabilidad de aparición. A mayor probabilidad de aparición de un símbolo, menor es su contenido informativo. Esto se debe a que, si un símbolo es más probable, su aparición no genera tanta sorpresa ni aporta mucha nueva información. Por el contrario, los símbolos menos probables tienen un mayor contenido informativo, ya que su aparición es más inesperada.
Por ejemplo, si tenemos tres símbolos: (a), (b) y (c), podemos observar cómo su contenido informativo varía. El símbolo (a) es binario, con una probabilidad de aparición de 0.5 para cada valor (0 o 1), lo que implica que cada valor aporta 1 bit de información. En cambio, el símbolo (b) tiene una probabilidad del 70% de ser 1 y un 30% de ser 0, lo que genera un contenido informativo diferente para cada valor: aproximadamente 0.51 bits para el 1 y 1.74 bits para el 0. El símbolo (c), por su parte, tiene cuatro posibles valores con probabilidades distintas, lo que implica que su codificación variará según el valor representado, siendo más eficiente cuanto más improbable sea el valor.
La clave de la codificación de entropía es representar cada símbolo con un número de bits que se acerque lo más posible al contenido informativo del símbolo, lo que resulta en una compresión eficiente. Sin embargo, en la práctica, los símbolos no siempre tienen una probabilidad uniforme y, por lo tanto, es necesario encontrar un balance adecuado para representar cada símbolo de forma eficiente.
En este sentido, la codificación de entropía se enfrenta a dos desafíos fundamentales. El primero es si es posible representar un símbolo con un número de bits cercano al contenido informativo del mismo. Para ello, algunos esquemas de codificación, como la codificación aritmética, permiten usar un número fraccionario de bits para representar un símbolo, acercándose así al contenido informativo ideal. El segundo desafío es estimar correctamente la probabilidad de cada símbolo, ya que en situaciones prácticas no siempre conocemos con exactitud la probabilidad de cada valor. Sin embargo, podemos hacer estimaciones basadas en estadísticas pasadas o valores cercanos, lo que mejora la eficiencia de la codificación.
En cuanto a los esquemas específicos de codificación de entropía, existen diferentes enfoques que se utilizan en los códecs de video. Uno de los métodos más simples es la codificación de longitud fija, en la que cada símbolo se representa con un número fijo de bits. Este tipo de codificación no reduce la cantidad de datos, pero puede ser útil para representar símbolos que tienen una baja frecuencia de aparición o que tienen probabilidades uniformes.
Por otro lado, la codificación de longitud variable (VLC, por sus siglas en inglés) asigna un número variable de bits a cada símbolo, dependiendo de su probabilidad. En este caso, los símbolos más probables se codifican con menos bits, mientras que los menos probables requieren más bits. Los códigos VLC pueden basarse en modelos de probabilidad que se actualizan dinámicamente en función de la frecuencia de aparición de los símbolos.
La codificación aritmética es otra técnica importante en la compresión de video. En este esquema, se mantiene un rango de valores que representa la probabilidad acumulada de los símbolos. A medida que se codifican los símbolos, el rango se ajusta según la probabilidad de aparición de cada símbolo. La codificación aritmética es capaz de acercarse más que otros métodos a la codificación ideal, utilizando un número fraccionario de bits por símbolo.
Un tipo específico de codificación aritmética es la codificación binaria aritmética, que se aplica a símbolos binarios (0 o 1). En este caso, los símbolos no binarios deben ser convertidos a cadenas binarias mediante un proceso denominado binarización. Esta técnica permite que cada bit binario se codifique utilizando un modelo de probabilidad dinámico, lo que mejora la eficiencia de la codificación.
El diseño de un codificador de entropía para la compresión de video no solo debe ser eficiente en términos de compresión, sino también en términos de consumo de recursos computacionales. Los codificadores y decodificadores deben ser capaces de procesar grandes volúmenes de datos sin requerir un poder de procesamiento excesivo. Además, deben ser capaces de iniciar y detener el proceso de codificación y decodificación en momentos adecuados, lo que es crucial en la transmisión de video en tiempo real o en sistemas de compresión de video interactivos.
Además de los métodos de codificación descritos, hay que tener en cuenta varios factores que influyen en la eficiencia de la compresión. La selección del modelo de probabilidad es esencial, ya que un modelo de probabilidad adecuado puede mejorar considerablemente la compresión, mientras que un modelo inadecuado puede resultar en una codificación ineficiente. El contexto en el que se encuentran los símbolos, es decir, las estadísticas locales dentro de la secuencia de video, también juega un papel importante en la elección del modelo de probabilidad y la estrategia de codificación.
Jak fungují potravní sítě v ekosystémech?
Jak správně ovládat automobily: základní terminologie a funkce
Jak elektřina a vědecké objevy změnily svět: Od Voltova článku k elektromagnetismu
Jak se orientovat ve městě a co je důležité vědět?

Deutsch
Francais
Nederlands
Svenska
Norsk
Dansk
Suomi
Espanol
Italiano
Portugues
Magyar
Polski
Cestina
Русский