8(495)909-90-01
8(964)644-46-00
pro@sio.su
Главная
Системы видеонаблюдения
Охранная сигнализация
Пожарная сигнализация
Система пожаротушения
Система контроля удаленного доступа
Оповещение и эвакуация
Контроль периметра
Система домофонии
Парковочные системы
Проектирование слаботочных сетей
Аварийный
контроль
Раздел: Документация

0 ... 30 31 32 33 34 35 36 ... 122

О 0.10.30.70.9 1

Рис. 3.49. Пример арифметического кодирования.

Конец примера

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

log2(l/P0) + log2(I/P i) + log2(l/P0) + log2(l/P2) бит = 8,28 бит.

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


3.5.3.1. Арифметическое кодирование с контекстом

Эффективность энтропийного кодирования зависит от точности моделей вероятностей символов. Контекстное арифметическое кодирование (CAE, Context-based Arithmetic Encoding) основано на изучении локальных пространственных или временных вероятностных характеристик кодируемых последовательностей. Метод CAE используется в стандарте JBIG для сжатия бинарных изображений [9]. Он был также приспособлен для кодирования двоичных «шаблонов» в MPEG-4 Visual (см. гл. 5) и при кодировании основного профиля в стандарте Н.264 (см. гл. 6).

[ссыеючныЛ)

F*„

. I

Ьчпслш

* потсж

Рис. 3.50. Кодер DPCM/DCT.

3.6. Гибридная модель DPCM/DCT видеокодека

Большинство стандартов видеокодирования, реализованных после 1990 года, основаны на некоторой единой модели видеокодека, которая включает оценку движения и компенсацию высоких частот (эта конструкция обозначается сокращением DPCM), стадию преобразования и энтропийный кодер. Такую конструкцию часто называют гибридной моделью DPCM/DCT. Любой кодек, совместимый со стандартами Н.261. Н.263. MPEG-1. MPEG-2, MPEG-4 Visual и Н.264. должен содержать в себе соответствующее семейство базисных функций кодирования и декодирования (при этом имеются значительные различия между их реализациями и приложениями).

На рис. 3.50 и 3.51 приведены общие схемы гибридного кодера и декодера DPCM/DCT. Видеокодер обрабатывает кадр Fn и производит закодированный (сжатый) битовый поток, а декодер использует этот битовый поток (показанный справа на рисунках) для построения реконструированного кадра F„. который чаще всего не-


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

р ,

Ваттом» и щ

шопотм

Битоаый

поток

Рис. 3.51. Декодер DPCM/DCT.

Поток данных кодера. Имеется два основных пути прохождения данных в кодере: слева направо (кодирование) и справа налево (реконструкция). Поток кодирования состоит в следующем.

1.Входной видеокадр F„ подается на вход кодера и обрабатывается там макроблоками (соответствующими областям из 16 х 16 сэмплов яркости и хроматичности).

2.Кадр Fn сравнивается с ссылочным кадром, например с ранее закодированным кадром Ff j. Функция оценки движения находит в(или в интерполированной по подсэмплам версии кадра ) область 16 х 16, которая больше других «похожа» на текущий макроблок в F„ (при этом используется некоторый критерий схожести макроблоков). Смещение текущего макроблока по отношению к положению выбранного ссылочного макроблока записывается в вектор движения MV.

3.На основе выбранного вектора движения VM строится прогноз компенсированного движения Р (область 16 х 16, выбранная функцией оценки движения).

4.Макроблок Р вычитается из текущего макроблока, и их разность D называется остаточным макроблоком.

5.Макроблок D преобразуется с помощью DCT. Обычно макро-блок D делится на подблоки 8x8 или 4 х 4, и каждый подблок преобразуется отдельно.

6.Каждый подблок квантуется (X).

7.Для коэффициентов DCT всех подблоков делается переупорядочение и результат кодируется символами «серия-значение».



0 ... 30 31 32 33 34 35 36 ... 122