Общие сведения. Стандарты сжатия движущихся изображений MPEG (Moving Picture Experts Group) вырабатываются и принимаются имеющей такое же название группой экспертов при

Стандарты сжатия движущихся изображений MPEG (Moving Picture Experts Group) вырабатываются и принимаются имеющей такое же название группой экспертов при Международной организации стандартизации ISO. Стандарт MPEG -1, используемый в основном при записи видеопрограмм на компакт-диски, быт окончательно утвержден в 1993 г., а стандарт MPEG -2, предназначенный в первую очередь для телевизионного вещания, был принят в ноябре 1994 г.

Стандарты MPEG -1 и MPEG -2 имеют много общего, но между ними есть и различия. В данном разделе в основном излагается содержание стандарта MPEG -2, и указываются его отличия от MPEG -1.

Метод кодирования движущихся изображений, используемый в стандартах MPEG -1 и MPEG -2, называется гибридным, так как в нем сочетаются внутрикадровое (intraframe) кодирование, направленное на уменьшение в основном психофизиологической избыточности в отдельных кадрах, и межкадровое (interframe) кодирование, с помощью которого уменьшается избыточность, обусловленная межкадровой корреляцией.

Все семейства стандарта MPEG не определяют схему и конструкцию кодера и декодера, а лишь описывают средства, используемые для обработки сигнала, определяют синтаксис (правило построения последовательности символов) совместимого цифрового потока и дают примеры реализации декодера. Состав и построение кодера оставлено на усмотрение разработчика. Это может быть аппаратное или программное устройство любой сложности, дающее на выходе синтаксически правильный цифровой поток.

На рисунке 2.1 показан один из вариантов устройств кодирования по стандарту MPEG -2.

Рисунок 2.1 — Функциональная схема устройства кодирования

с информационным сжатием по стандарту MPEG -2

Итак, в MPEG -2 применены известные, давно апробированные методы: сокращения избыточности. Вместе с ними использованы и новые подходы. В особенности это относится к совокупности согласованных алгоритмов сокращения статистической избыточности. Здесь особо эффективными оказались два метода: кодирование ТВ отсчетов с предсказанием и ДКП.

Кодирование с предсказанием реализуется с помощью дифференциальной импульсно-кодовой модуляции (ДИКМ). При кодировании с предсказанием вычисляется разность между истинным и предсказанным значением отсчета. Затем разность квантуется по уровню. От точности предсказания зависит среднее число бит, необходимых для передачи разностной информации. Предсказание может быть экстраполяционным. В этом случае (его часто называют предсказанием вперед) по предшествующим значениям отсчетов ТВ сигнала оцениваются последующие отсчеты. Интерполяционное (двунаправленное) предсказание означает, что оценка среднего по положению отсчета ТВ сигнала выполняется по известным значениям предшествующих и последующих отсчетов. Такое предсказание наиболее точно оценивает текущие отсчеты. Однако за точность приходится расплачиваться возросшим объемом вычислений и соответственно памяти, необходимой при реализации. При этом эффект не окупает затраты.

Предсказание выполняется по соседним с предсказываемым отсчетам, причем под соседними надо понимать отсчет, расположенные «до и за» рассматриваемым. К ним надо добавить соседей в предшествующей и последующей строках, полях и кадрах. Таким образом, возможно построчное, межстрочное, внутриполевое, внутрикадровое, межполевое, межкадровое предсказание. Это полный набор возможных направлений корреляций. Но уже подчеркивалось, что предсказание вдоль отдельной строки по предшествующему и последующему элементу не эффективно. По этому же критерию можно отсеять и некоторые другие возможные направления.

При простейшем внутриполевом предсказании вперед предшествующий отсчет ТВ строки принимается как ожидаемый уровень последующего отсчета. Фактически это означает вычеркивание постоянной составляющей или, что тоже самое, выделение разностной информации. Такой метод предсказания особенно эффективен, когда передаются крупные, не содержащие мелких деталей, фрагменты изображения, где яркость постоянна или изменяется медленно.

Другой способ — межкадровое предсказание вперед. В этом случае текущий отсчет оценивается по отсчету с теми же координатами, но предыдущего кадра. Это очень эффективный метод предсказания для неподвижных изображений. Ситуация усложняется, когда изображение содержит движущиеся объекты или изменяющиеся в целом. В этом случае отсчеты, принадлежащие однозначным элементам изображения, от кадра к кадру будут смещаться. Возникает разностная информация, даже если в остальном никаких изменений не происходит. Это можно ослабить, если ввести компенсацию движения. Для этого необходимо определить векторы перемещения движущихся частей изображения при последовательном переходе от кадра к кадру. Векторы движения позволяют определить положение кодируемого отсчета в новом кадре (скомпенсировать его перемещение) и, таким образом, сохранить высокую точность предсказания.

Таким образом, стандарт МРЕG -2 фактически не регламентирует методы сжатия видеосигнала, а только определяет структуру битового потока кодируемого видеосигнала. Поэтому конкретно используемые алгоритмы зависят от собственных разработок фирм-производителей оборудования. При этом ярко выражены общие принципы построения стандарта МРЕС-2, в соответствии с которыми процесс сжатия цифрового видеосигнала может быть разбит на ряд последовательных операций: преобразование аналогового сигнала в цифровую форму, предварительная обработка, ДКП, квантование, кодирование (рисунок 2.1).

После АЦП производится предварительная обработка сигнала, которая включает в себя следующие преобразования.

1. Удаление избыточной информации. Например, если фон изображений состоит из идентичных символов (пикселей), то совершенно не обязательно их все передавать. Достаточно описать один пиксель и послать его с сообщением о том, как часто и где он повторяется в изображении.

2. Если исходное изображение передается в виде чересстрочных полей, то они преобразуются в кадры с прогрессивной разверткой.

3. Цветоделенные сигналы ER, EG, EB преобразуются в цветоразностные сигналы U и V и сигнал яркости Y.

4. Изображение достраивается до кратного 16 количества пикселей по строкам и столбцам, чтобы обеспечить разбиение изображения на целое число макроблоков.

5. Производится преобразование стандарта цифрового представления ТВ сигнала 4:4:4 в стандарт 4:2:2 (горизонтальная передискретизация цветоразностных компонентов) или 4:2:0 (горизонтальная и вертикальная передискретизация цветоразностных компонентов).

6. Изображение разбивается на последовательность макроблоков, количество которых 1620. Каждый из них, в свою очередь, состоит из нескольких блоков размером 8×8 пикселей. (Исследования проводились по разбиению на блоки размером 4×4, 8×8, 16×16 пикселей, которые показали, что разбиение 8×8 является наилучшим компромиссом между точностью преобразования, то есть минимальной среднеквадратичной ошибкой, и необходимым объемом вычислений.) В этом случае каждый блок представляет собой квадратную матрицу, содержащую 64 отсчета ТВ сигнала и называемую сигнальной. Следовательно, макроблок несет информацию о компонентах яркости определенного участка изображения и пространственно соответствующих им компонентах цветности. Поэтому любой макроблок состоит из трех прямоугольных матриц, содержащих восьмибитовые отсчеты, а именно: матрицы яркости YD и двух матриц цветности Cr и Cb. Цифровые отсчеты матриц YD, Cr и Cb непосредственно связаны с первичными значениями красного, зеленого и синего (R, G, B) соответствующих точек изображения. 3начен. первичных цветов гамма — предкорректированы. Причем величина гамма-коэффициента стандартом не определяется, но обычно находится в диапазоне 2,2…2,8.

Стандартами цифрового кодирования предусматриваются три формата цветности, каждому из которых соответствует свой порядок следования блоков в макроблоке:

4:2:0 — макроблок состоит из шести блоков. Четыре блока, несущие информацию о яркости, образуют матрицу YD размером 16×16 пикселей. Два блока цветности, определяющие цветоразностные компоненты U и V, соответствующие матрицам Cr и Cb с размерами 8×8 пикселей (см. рисунок 2.2).

Рисунок 2.2 — Схема разбивки изображения на блоки

при реализации формата цветности 4:2:0

4:2:2 — макроблок состоит из восьми блоков. Четыре блока яркости образуют матрицу YD. Четыре блока цветности соответствуют матрицам Cr и Cb, каждая из которых содержит по два блока.

4:4:4 — макроблок состоит из двенадцати блоков. Он содержит четыре блока яркости и восемь блоков цветности.

Внутренняя организация макроблоков различна при кодировании полей и кадров. Пары полей могут кодироваться как раздельно, так и вместе как единый кадр. При кодировании полей блоки яркости группируются по полям: верхние — из первого полукадра, нижние — из второго. Блоки цветности располагаются в порядке следования кадров для обоих типов кодирования. Два полукадра, составляющие один кадр, всегда следуют один за другим в битовом потоке. При кодировании кадрами чересстрочных изображений каждый кадр набирается из двух полукадров (через строку) и кодируется как единое изображение.

Следующие друг за другом макроблоки объединяют в независимые, друг от друга серии (Slice — с лайс). Серия является основным элемента синхронизации для восстановления данных, составляющих изображение, и обычно состоит из всех блоков в горизонтальном направлении изображения с интервалом 16 строк, то есть имеет толщину в один макроблок. Порядок макроблоков в серии тот же, что и в обычном сканировании растра в телевидении: слева направо и сверху вниз. Представление информации сериям удобно для коррекции ошибок. Когда появляется ошибка в потоке данных, декодер может обратиться к началу следующей серии. Соответственно число таких серий влияет на эффективность передачи. Каждая серия (слайс) должна содержать, по крайней мере, один макроблок. Первый и последний макроблоки в серии не должны быть пропущенными Серии не должны перекрываться и не должно быть интервалов между сериями. Положение серий (слайсов) может меняться от изображения к изображению. Первая серия начинается с первого макроблока, а последняя серия заканчивается последним макроблоком изображения. Кадр делится на несколько смежных серий.

7. Производится разбиение потока кадров изображения по типам, для них находятся векторы движения, которые необходимы для повышения сказуемости величин элементов изображения. Векторы движения обеспечивают компенсацию перемещений в прошедших и последующих кадрах.

8. Для блоков с использованием компенсации движения находятся разностные ошибки предсказания движения.

В соответствии со стандартом МРEG -2 декодере выполняются декодирование кодов переменной длины деквантования обратное ДКП, компенсация движения и восстанавливается исходная последовательно кадров (рисунок 2.3).

Рисунок 2.3 — Структурная схема видеодекодера MPEG -2

Декодер содержит буферное запоминающее устройство (БЗУ) демультиплексор (ДМп), декодеры кодов с переменной длиной кодовых слов (ДКПДС), а также деквантователь (ДКв), блок обратного дискретно-косинусного преобразования (ОДКП), Предсказатель (Пред) и ЗУ, аналогичные соответствующим блокам кодера. Тактовая частота 27 МГц восстанавливается с использованием данных из декодируемого потока.

БЗУ на входе декодера выполняет функцию согласования постоянной скорости передачи двоичных символов во входном потоке данных с процессами в декодере, при которых данные из Б3У считываются неравномерно во времени. С выходов демультиплексора кодированные данные изображения и значения параметра квантования поступают на ДКПДС и далее на деквантователь, а векторы движения поступают на ДКПДС и далее на предсказатель.

Так же как и в кодере, в декодере имеются два режима работы. При приеме I -кадров и передаваемых с внутрикадровым кодированием макроблоков P -кадров и В -кадров на выходе блока обратного ДКП формируются блоки изображения. Переключатель на структурной схеме при этом находится в положении 1, и сигнал с блока обратного ДКП направляется на выход. При приеме макроблоков P -кадров и В -кадров, кодируемых в межкадровом режиме, переключатель находится в положении 2. В этом случае формирование выходного сигнала происходит путем поэлементного Сложения поступающих с блока обратного ДКП значений разностей с предсказанным макроблоком, формируемым из элементов ранее декодированных изображений с использованием декодированных векторов движения.

Реализация декодера аппаратными программными или аппаратно-программными средствами существенно проще, чем реализация кодера, так как в декодере не надо выполнять поиск соответствующих областей в опорных изображениях, а именно этот поиск требует наибольшего количества вычислений.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: