Макроблок
Макроблок представляет собой блок обработки форматов сжатия изображений и видео, основанный на линейных блочных преобразованиях, обычно дискретном косинусном преобразовании (DCT). Макроблок обычно состоит из 16×16 выборок и далее подразделяется на блоки преобразования и может быть дополнительно подразделен на блоки прогнозирования. Форматы, основанные на макроблоках, включают JPEG , где они называются блоками MCU , H.261 , MPEG-1 часть 2 , H.262/MPEG-2 часть 2 , H.263 , MPEG-4 часть 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 состоит из образцов яркости (Y) 16×16 и образцов цветности 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 | TYPE | QUANT | VECTOR | CBP | b0 | b1 | ... b5 | +------+------+-------+--------+-----+----+----+--------+
- ADDR — адрес блока в изображении
- ТИП — определяет тип макроблока ( внутрикадровый , межкадровый , двунаправленный межкадровый )
- QUANT — значение квантования для изменения квантования.
- ВЕКТОР - вектор движения
- CBP — шаблон кодированного блока, это битовая маска, указывающая, для каких блоков присутствуют коэффициенты.
- бН — блоки (4 Y, 1 Cr, 1 Cb)
Макроблокирование [ править ]
Термин «макроблокировка» обычно используется для обозначения артефактов блочного кодирования.
См. также [ править ]
- JPEG , H.261 , MPEG-1, часть 2 , H.262/MPEG-2, часть 2 , H.263 и H.264.
- Блок дерева кодирования
- Дискретное косинусное преобразование
- Типы изображений сжатия видео
- Артефакт сжатия
- Разблокирующий фильтр
- Пикселизация
Ссылки [ править ]
- ↑ Перейти обратно: Перейти обратно: а б с д МСЭ-Т (март 1993 г.). «Видеокодек для аудиовизуальных сервисов px 64 кбит/с» . Проверено 28 апреля 2013 г.
- ↑ Перейти обратно: Перейти обратно: а б МСЭ-Т (февраль 2012 г.). «Расширенное видеокодирование для общих аудиовизуальных услуг» . Проверено 28 апреля 2013 г.
- ^ МСЭ-Т (январь 2005 г.). «Кодирование видео для связи с низкой скоростью передачи данных» . Проверено 28 апреля 2013 г.
- ↑ Перейти обратно: Перейти обратно: а б с д и ж г МСЭ-Т (апрель 2013 г.). «Информационные технологии. Родовое кодирование движущихся изображений и связанной с ними звуковой информации: Видео» . Проверено 28 апреля 2013 г.
- ^ Дж. Дж. Салливан; Ж.-Р. Ом; В.-Ж. Хан; Т. Виганд (25 мая 2012 г.). «Обзор стандарта высокоэффективного кодирования видео (HEVC)» (PDF) . Транзакции IEEE по схемам и системам видеотехнологий . Проверено 26 апреля 2013 г.
- ^ Маршалл, Дэйв (10 апреля 2001 г.). «Внутрикадровое кодирование» . Мультимедийный модуль №: CM0340 . Проверено 13 февраля 2014 г.