Термин
Luma (Y')
Компонента яркости в пикселе YCbCr. Гамма-скорректированная (отсюда штрих). Несёт большую часть перцептивной информации.
Luma – яркостная компонента пикселя в YCbCr, обычно записывается с штрихом как Y′, чтобы отличать её от истинной линейной luminance. Цвет разделён на Cb (синяя разница) и Cr (красная разница), а luma в одиночку говорит, насколько ярким должен быть каждый пиксель. Если показать только luma из видео, получится качественная чёрно-белая версия картинки.
Почему luma важна: в ней сосредоточена почти вся перцептивная информация видео. Зрение человека гораздо чувствительнее к яркости, чем к цвету – именно поэтому видеокодеки изначально так делят сигнал. Структура картинки, границы, лица, движение, ощущение глубины – всё это практически целиком закодировано в luma, а chroma лишь накладывает цветовой слой. На практике это позволяет кодекам хранить luma в полном разрешении, а chroma-разрешение урезать вдвое или вчетверо (`chroma-subsampling`) без видимой потери.
Для продуктовых команд luma – в основном невидимая сантехника, но знать о ней полезно по двум причинам. Первая: проблемы качества «в канале яркости» – banding, blocking от сжатия, шум – бьют именно по luma, и поскольку luma идёт в полном разрешении, их нечем замаскировать. Поэтому решения энкодера, ухудшающие luma, заметны мгновенно, а ухудшающие chroma – часто нет. Вторая: современные фичи кодеков вроде perceptual quantization тратят основное внимание на luma – защищают лица, границы, детальные области – потому что именно туда смотрят зрители.
Считаете параметры для своего продукта?
Поможем собрать энкодер-леддер и посчитать стоимость доставки – до старта разработки.