UNA ETAPA DE UNA CADENA: QUÉ LLEGA, QUÉ SALE Y QUÉ SE ROMPE DESPUÉS
Dónde encaja esto en la tubería de codificación
Un codificador de vídeo no es un algoritmo, sino ocho etapas en un orden fijo, y el orden no es arbitrario: cada etapa existe porque la anterior hizo posible su trabajo. Esta herramienta modela una de ellas. La cadena de abajo enlaza con las otras siete.
Laboratorio de submuestreo de crominancia — descarta casi toda la resolución de color dejando intacto el brillo
- Qué llega
- Luma y croma a resolución completa: una muestra de color por píxel, escrito 4:4:4.
- Qué sale
- Luma a resolución completa y croma con una cuarta parte de las muestras en 4:2:0.
- Qué supone la etapa siguiente
- Todo lo posterior maneja cuatro veces menos datos de croma, y el decodificador interpolará de vuelta las muestras descartadas.
- Qué se estropea aquí
- Un borde saturado —texto rojo sobre negro es el caso típico— ve su color embadurnado por todo el bloque, porque ese borde vive en el canal de croma donde se quitaron las muestras. El luma sobrevive intacto, así que la imagen parece nítida y el color parece mal.
Problema resuelto al detalle
-
Bytes por píxel para 4:4:4, 4:2:2 y 4:2:0 a partir del recuento de muestras 6 pasos
Deduzca los bytes por píxel para 4:4:4, 4:2:2 y 4:2:0 a partir del recuento de muestras y, a continuación, determine cuánto ancho de banda ahorra realmente 4:2:0.
-
Cuente las muestras en un bloque de 2×2. La notación indica cuántas muestras de croma acompañan a cuatro de luma en las filas superior e inferior, por lo que la relación es un recuento y no una fracción.
-
Los otros dos modos descartan croma horizontalmente y luego también verticalmente. Cada reducción a la mitad elimina dos de las doce muestras del bloque.
-
Multiplique por el número de píxeles correspondiente al tamaño del fotograma y calcule la relación para obtener el ahorro. El formato 4:2:0 es exactamente la mitad que el 4:4:4 por construcción, no por medición.
-
Observe adónde fueron a parar las muestras. La luma no se modifica en ningún modo: los canales de diferencia de color son los únicos que se diezman, y el ojo humano los resuelve aproximadamente a la mitad de agudeza.
-
Escale esos mismos 1,5 bytes por píxel a un fotograma real a una frecuencia de fotogramas real.
-
Por eso el modo de fallo es específico en lugar de general: la pérdida se produce íntegramente en los dos canales que no transportan detalles de luminancia.
Respuesta
La mitad, y aun así sigue siendo de 746 Mbit/s para 1080p30 sin compresión. Esa cifra es el objetivo del ejercicio. El submuestreo de croma es la compresión más económica que existe (sin transformada, sin codificador entrópico, sin decisiones que tomar) y, tras reducir los datos a la mitad, el flujo sigue siendo demasiado grande para cualquier red doméstica, razón por la cual todos los códecs comercializados empiezan después de este paso en lugar de sustituirlo. El motivo de que cueste tan poco visualmente se encuentra en la ecuación de Y: la luma se muestrea en cada píxel y solo se diezman Cb y Cr, por lo que los bordes, la textura y el detalle quedan intactos. Lo que falla es todo aquello cuya información reside únicamente en el color: texto rojo sobre fondo gris, un logotipo saturado o un borde de incrustación por croma; por eso el 4:2:0 resulta imperceptible en la vegetación y desastroso en una presentación de diapositivas.
-
Referencias (1)
- Insight block 1 says codecs discard colour before anything else. This is the measurement that licenses it: K. T. Mullen, "The contrast sensitivity of human colour vision to red–green and blue–yellow chromatic gratings." The Journal of Physiology 359, 381–400, 1985 — chromatic acuity falls away at far coarser detail than luminance acuity.