Макроблок – это структура, из которых строится срез изображения а впоследствии и само изображение. Смысл макроблока заключается в том, что он является наименьшей структурой цветного изображения. Макроблок состоит из отдельных блоков размером 8 х 8 элементов, к которым применяется ДКП. Но блоки не содержат в себе информацию о цветном изображении, поэтому над ними появляется дополнительная структура в виде макроблока.
Тип макроблока зависит от структуры цветного изображения. Например, при наиболее часто используемом формате цветности 4:2:0 (прореживание цветоразностных сигналов в два раза по каждой координате), макроблок будет состоять из одного блока сигнала U (8 х 8 элементов), одного блока сигнала V (8 х 8 элементов) и четырех блоков сигнала яркости Y (также размером 8 х 8 элементов каждый). В результате получается макроблок, содержащий квадрат 16 х 16 элементов цветного изображения.
Как одна из основных структур кодирования макроблок имеет большое количество связанной информации: тип макроблока, масштаб квантования, вектора движения.
На уровне макроблока принимается решение о формировании межкадровой разности и вычисление векторов компенсации движания. Для предсказания движения используется информация от предыдущего, последующего или одновременно с этих обоих кадров. Для каждого из макроблоков в В-кадре выбираем один из макроблоков, определенных векторами движения с предыдущего, последующего кадра, или средний от этих двух. При этом минимизируется ошибка между двумя кадрами, определяемая векторами движения, которая затем и кодируется.
Рисунок 3.12. Иллюстрация двунаправленной компенсации движения.
Блок – минимальная структура изображения, к которому применяется ДКП. На уровне обработки блоков алгоритм MPEG-2 напоминает JPEG. Последовательность действий включает в себя:
- дискретное косинусное преобразование,
- квантование,
- зигзаг-сканирование,
- групповое кодирование (RLE),
- кодирование Хаффмана.
На рис. 3.13 . представлена последовательность действий алгоритма от формирования макроблока до появления битового потока.
Следует отметить также еще некоторые особенности алгоритма MPEG-2, используемые на практике:
- поддержка чересстрочной развертки. В этом случае изменяется порядок зигзаг-сканирования,
Рисунок 3.13. Часть алгоритма MPEG-2 от формирования макроблоков до битового потока.
- использование нелинейной таблицы квантования и различных матриц квантования для I, P и B-кадров,
- поддержка полупиксельной точности при формировании векторов движения,
- двухуровневая защита от ошибок при потоковой передаче данных. На уровне видеоряда восстановление сигнала происходит при смене группы кадров, т.е. при появлении ближайшего I-кадра. На уровне кадра восстановление происходит при появлении очередного среза.
Do'stlaringiz bilan baham: |