Система сжатия подвижных изображений MPEG-2

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

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

Определены три основных части стандарта MPEG-2:

· 13818-1 – Systems – устанавливает правила объединения потоков;

· 13818-3 – Audio – определяет кодовое представление сигналов звукового сопровождения;

· 13818-2 – Video – регламентирует кодовое представление и процесс декодирования, сжатие потока за счет устранения пространственной и временной избыточности.

Представление сигналов в форме MPEG-2 позволяет обращаться с видео и звуковыми потоками как с потоками компьютерных данных.

1.Основные понятия стандарта MPEG-2

Как уже было сказано, представление сигналов в форме MPEG-2 позволяет обращаться с видео и звуковыми потоками как с потоками компьютерных данных. Поток видеоданных представляет собой иерархическую структуру, объединенную между собой определенными синтаксическими и семантическими правилами. Структура включает в себя шесть типов блоков:

· видеопоследовательность;

· группа изображений;

· изображение;

· срез;

· макроблок;

· слайс;

· блок.

Видеопоследовательность – элемент потока видеоданных высшего уровня. Представляет собой серию последовательных кадров телевизионного изображения. MPEG-2 допускает построчные и чересстрочные последовательности, подробнее на этом мы остановимся позднее. Определены три типа изображений, в соответствии с методом дифференциального кодирования:

I (Intra-codedpicture) – изображение кодируется с использованием только той информации, которая заложена в нем самом; устраняется пространственная избыточность;

P (Predictivecodedpicture) – изображение, при кодировании которого формируется разность между исходным изображением и предсказанием, полученным на основе предшествующих или последующих I.

B (Bidirctorypredictivecodedpicture) – изображение, при кодирование которого используется предсказание, сформированное на основе предшествующих и последующих I или P.

При кодировании Р и В используются межкадровое кодирование, устраняющее и пространственную и временную избыточность. Серия изображений, содержащих одно I называется группой изображений, стрелками показывается направление предсказания. Чем больше группа – тем больше компрессия (Рис.1).



Рис 1.1 Видеопоследовательность трех видов изображений с предсказаниями (стрелками указаны направления предсказаний)

2. Компрессия изображений в MPEG-2.

2.1 Процесс сокращения избыточности

С информационной точки зрения, каждое изображение представляет собой три прямоугольных матрицы отсчетов изображений: яркостную Y и две цветности Св и Сr. Стандарт MPEG-2 допускает различные структуры матриц (4:2:0; 4:2:2; 4:4:4).

Каждое изображение делится на срезы, которые состоят из макроблоков. Макроблок содержит блоки размером 8х8 элементов изображения (реже 16х16 элементов); группу из четырех блоков с отсчетами яркости и группы блоков с отсчетами цветности, число которых зависит от формата (по 1, по 2, по 4). Группа следующих друг за другом макроблоков называется слайсом .Число макроблоков в слайсе может быть произвольным, главное, чтобы слайсы в изображении не перекрывались. Все структурные элементы потока видеоданных, полученных в результате внутрикадрового и межкадрового кодирования (кроме блока и макроблока), дополняются специальными и уникальными стартовыми кодами («Заголовок – элементы»). В заголовке приводится разнообразная дополнительная информация, например, размеры и соотношение сторон изображения, частота, кодирование, скорости потока, матрица квантования, формат дискретизации цветного изображения, координаты основных цветов и белого цвета, параметры матрицы для формирования яркости и цветоразностных сигналов и др.

Сокращение пространственной избыточности выполняется в изображении типа I и достигается на уровне блока. Набор операций такого кодирования – дискретное косинусное преобразование; взвешенное квантование; энтропийное квантование (кодирование серии коэффициентов косинусного преобразования, полученного в результате диагонального сканирования матрицы). Для повышения точности предсказания используется компенсация движения: оценивается скорость перемещения движения объектов от кадров и при определенных предсказаниях производится коррекция в положении опорного изображения, по отношению к которому находится ошибка предсказания. Определение величины и направления смещения (вектор движения) производится на уровне макроблоков. Оценка вектора – сложная процедура, именно она определяет асимметрию кодека MPEG-2, однако в этом направлении ведутся работы, т.к. эта процедура не определена жестко. Стандарт предполагает сокращение не только пространственной, но и временной избыточности. После компрессии объем изображения Р типичных телевизионных сюжетов составляет 35% от I, В – 25% от I. Т.о., в три раза уменьшается скорость потока данных при приблизительно тех же искажениях. Артефакты же связанные с движением (в отличие от JPEG и DV) замечаемы тем меньше, чем быстрее движутся изображения.

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

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

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

2.2 Процесс кодирования

Возможно два основных режима работы кодера компрессии – с постоянной скоростью потока и с постоянным уровнем качества декодируемого изображения.

Управление степенью компрессии возможно изменением параметров матрицы квантования (более грубое квантования). Однако растут и необратимые искажения изображения из-за шумов квантования. Осуществляется непрерывное изменение коэффициентов матрицы квантования. Чем мельче детали и чем более активно изображение, тем более грубое квантование. Поэтому будет больше искажений и артефактов. Такой режим используется при передачи по каналам связи с фиксированной пропускной способностью (цифровые спутниковые, кабельные, наземное телевизионное вещание).

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

Если запись компрессионного потока производится не в условиях реального времени, то можно использовать и другие способы управления скоростью. Например, выполнять компрессию в два прохода. На первом подбираются параметры, обеспечивающие максимальное качество; на втором – производится компрессия с найденными параметрами. Есть и другие способы: возможно выделение заранее кадров с большим количеством детальных быстродвижущихся объектов и поместить их для принудительного кодирования типа I – используется в DVD.

Т.к. стандарт MPEG не регламентирует сам процесс кодирования, а изображения (блоки представления) рассматриваются как результат декодирования блоков доступа, то декодер может приступить к декодированию изображения типа В только после того, как получены предыдущие и последующие блоки. Во избежание установки буферов, кодирование изображений выстраивается в порядке декодирования, т.е. вместо I-B-B-P формируют I-Р-В-В, что и было продемонстрировано на Рис 1.1.

2.3 Профили MPEG-2

Для наибольшей эффективности применения на практике и совместимости оборудования стандарта MPEG-2 от разных производителей, выделено несколько подмножеств синтаксиса и семантики, называемые профилями. Профиль – это подмножество стандарта для специализированного применения, задающее алгоритмы и средства компрессии. Уровни внутри каждого профиля связаны с параметрами компрессии изображения (табл. 1). Профили MPEG-2: Simple – простой; Main – основной; SNR (Signal to Noise Ratio) – с масштабируемым квантованием; Spatial – с масштабируемым пространственным разрешением; High – высокий; 422 – студийный.

Таблица 1. Профили стандарта MPEG-2

УровеньSimpleMainSNRSpatialHigh422
ПрофильИзображенияI и PI, P и BI, P и BI, P и BI, P и BI, P и B
Формат4:2:04:2:04:2:04:2:0

4:2:0

4:2:2

4:2:2
High

Отсч. в стр.

Стр. в кадре

Кадров в сек

Vmax, Мбит/с

1920

1152

60

80

1920

1152

60

100

High – 1440

Отсч. в стр.

Стр. в кадре

Кадров в сек

Vmax, Мбит/с

1440

1152

60

60

1440

1152

60

60

1440

1152

60

80

Main

Отсч. в стр.

Стр. в кадре

Кадров в сек

Vmax, Мбит/с

720

576

30

15

720

576

30

15

720

576

30

15

720

576

30

20

720

608

30

50

Low

Отсч. в стр.

Стр. в кадре

Кадров в сек

Vmax, Мбит/с

352

288

30

4

352

288

30

4

Актуально: