Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Макроблока представляет собой модуль обработки , в изображения и сжатия видео форматов , основанных на линейных блок преобразования, как правило, дискретного косинусного преобразования (DCT). Макроблок обычно состоит из 16 × 16 отсчетов и дополнительно подразделяется на блоки преобразования и может дополнительно подразделяться на блоки прогнозирования. Форматы, основанные на макроблоках, включают JPEG , где они называются блоками MCU , H.261 , MPEG-1 Part 2 , H.262 / MPEG-2 Part 2 , H.263 , MPEG-4 Part 2 и H.264. / MPEG-4 AVC . [1] [2] [3][4] В H.265 / HEVC макроблок в качестве основного блока обработки был заменен блоком дерева кодирования . [5]

Технические детали [ править ]

Блоки преобразования [ править ]

Макроблок делится на блоки преобразования, которые служат входными данными для линейного блочного преобразования, например DCT. В H.261, первом видеокодеке, использующем макроблоки, блоки преобразования имеют фиксированный размер 8 × 8 отсчетов. [1] В цветовом пространстве YCbCr с субдискретизацией цветности 4: 2: 0 макроблок 16 × 16 состоит из 16 × 16 отсчетов яркости (Y) и 8 × 8 отсчетов цветности (Cb и Cr). Эти выборки разделены на четыре блока Y, один блок Cb и один блок Cr. Эта конструкция также используется в JPEG и большинстве других видеокодеков на основе макроблоков с фиксированным размером блока преобразования, таких как MPEG-1 Part 2 и H.262 / MPEG-2 Part 2. В других субдискретизациях цветности форматах, например 4: 0: 0, 4: 2: 2 или 4: 4: 4, количество отсчетов цветности в макроблоке будет меньше или больше, и группирование отсчетов цветности в блоки будет соответственно отличаться.

В более современных стандартах кодирования видео на основе макроблоков, таких как H.263 и H.264 / AVC, блоки преобразования могут иметь размеры, отличные от 8 × 8 отсчетов. Например, в основном профиле H.264 / AVC размер блока преобразования составляет 4 × 4. [4] В профиле H.264 / AVC High размер блока преобразования может быть 4 × 4 или 8 × 8, адаптированный для каждого макроблока. [4]

Блоки прогнозов [ править ]

В отличие от разделения на блоки преобразования, макроблок может быть разделен на блоки прогнозирования. В ранних стандартах, таких как H.261, MPEG-1 Part 2 и H.262 / MPEG-2 Part 2, компенсация движения выполняется с одним вектором движения на макроблок. [1] [2] В более современных стандартах, таких как H.264 / AVC, макроблок может быть разделен на несколько блоков прогнозирования переменного размера, называемых разделами. [4] В макроблоке с внешним предсказанием в H.264 / AVC для каждого раздела указывается отдельный вектор движения. [4] Соответственно, в макроблоке с внутренним предсказанием, где выборки предсказываются путем экстраполяции от краев соседних блоков, направление предсказания указывается для каждого раздела. [4]В H.264 / AVC размер раздела прогнозирования находится в диапазоне от 4 × 4 до 16 × 16 выборок как для внешнего прогнозирования (компенсация движения), так и для внутреннего прогнозирования. [4]

Представление битового потока [ править ]

Возможное представление битового потока макроблока в видеокодеке, в котором используется компенсация движения и кодирование с преобразованием, приведено ниже. [6] Он похож на формат, используемый в H.261 . [1]

+ ------ + ------ + ------- + -------- + ----- + ---- + ---- + - ------ +| ADDR | ТИП | КОЛИЧЕСТВО | ВЕКТОР | CBP | b0 | b1 | ... b5 |+ ------ + ------ + ------- + -------- + ----- + ---- + ---- + - ------ +
  • ADDR - адрес блока в изображении
  • TYPE - определяет тип макроблока ( внутрикадровый , межкадровый , двунаправленный межкадровый )
  • QUANT - значение квантования для изменения квантования
  • ВЕКТОР - вектор движения
  • CBP - Coded Block Pattern, это битовая маска, указывающая, для каких блоков присутствуют коэффициенты.
  • bN - блоки (4 Y, 1 Cr, 1 Cb)

Макроблокировка [ править ]

Термин макроблокирование обычно используется для обозначения артефактов блочного кодирования.

См. Также [ править ]

  • JPEG , H.261 , MPEG-1, часть 2 , H.262 / MPEG-2, часть 2 , H.263 и H.264
  • Блок дерева кодирования
  • Дискретное косинусное преобразование
  • Типы изображений сжатия видео
  • Артефакт сжатия
  • Фильтр снятия блокировки
  • Пикселизация

Ссылки [ править ]

  1. ^ a b c d ITU-T (март 1993 г.). «Видеокодек для аудиовизуальных услуг в пикселях 64 кбит / с» . Проверено 28 апреля 2013 .
  2. ^ a b ITU-T (февраль 2012 г.). «Расширенное кодирование видео для общих аудиовизуальных услуг» . Проверено 28 апреля 2013 .
  3. ITU-T (январь 2005 г.). «Кодирование видео для связи с низкой скоростью передачи данных» . Проверено 28 апреля 2013 .
  4. ^ a b c d e f g ITU-T (апрель 2013 г.). «Информационные технологии - Общее кодирование движущихся изображений и связанной с ними звуковой информации: видео» . Проверено 28 апреля 2013 .
  5. ^ GJ Салливан; Ж.-Р. Ом; W.-J. Хан; Т. Виганд (25.05.2012). «Обзор стандарта высокоэффективного кодирования видео (HEVC)» (PDF) . IEEE Transactions on Circuits and Systems for Video Technology . Проверено 26 апреля 2013 .
  6. ^ Маршалл, Дэйв (2001-04-10). «Внутрикадровое кодирование» . Номер мультимедийного модуля: CM0340 . Проверено 13 февраля 2014 .