Выходное измерение изображения после подвыборки цветности при сжатии JPEG - PullRequest
0 голосов
/ 23 апреля 2020

Если используется подвыбор цветности 4: 2: 0, то Cb и Cr уменьшаются вдвое, но в канале Y никаких изменений не упоминается. Тогда как общий размер изображения становится наполовину после этого шага?

Например: если размер изображения составляет 480x378 пикселей, то как он изменяется до 240x189 пикселей? Как это сделать в libjpeg. c?

1 Ответ

0 голосов
/ 23 апреля 2020

Размеры не меняются - изображение остается такой же ширины и высоты, как было раньше. Количество байтов уменьшается вдвое, потому что изначально у вас есть 3 канала R, G и B, а затем на их месте:

  • канал Y, который имеет тот же количество байтов в качестве красного канала, потому что это полное разрешение,

  • Cb канал, который субдискретизирован с коэффициентом 2 в каждом направлении, так что он составляет 1/4 размера Зеленый канал,

  • канал Cr, который подвергается дискретизации с коэффициентом 2 в каждом направлении, поэтому он составляет 1/4 размера синего канала.

Итак, теперь у вас есть 1 канал Y, 1/4 канала Cb, 1/4 канала Cr, итого у вас есть 1,5 канала, тогда как раньше у вас было 3 канала (R, G и Б). Таким образом, у вас есть 1,5 вместо 3, то есть половина данных.

...