- •3. Практическое использование видеокомпрессии в телевидении
- •3.1. Задача сжатия информации и пути ее решения
- •3.2. Международный стандарт кодирования с информационным сжатием mpeg-2
- •3.2.1. Профили и уровни стандарта кодирования mpeg-2
- •Профили, уровни, согласованные точки стандарта mpeg-2
- •3.2.2. Компрессия видеоданных
- •3.2.3. Кодируемые кадры
- •3.2.4. Компенсация движения
- •3.2.5. Использование дкп в стандарте кодирования mpeg-2
- •Матрица квантования яркостного сигнала для блоков изображений I-кадров
- •Матрица квантования цветоразностных сигналов для блоков изображений I-кадров
- •3.2.6. Сжатие звукоданных Эффект маскирования и психоакустическая модель слуха
- •П Рис. 3.10.Проявление временнóго маскированияолосное кодирование и блок фильтров
- •Квантование и распределение бит
- •Уровни обработки звукоданных
- •3.2.7. Алгоритмы сжатия звукоданных кодерами различных уровней Особенности работы кодера первого уровня
- •Принципы функционирования кодера второго уровня
- •Алгоритм сжатия звукоданных кодерами третьего уровня
- •3.2.8. Реализация цифрового многоканального звука, поддерживаемая стандартом mpeg-2
- •Иерархия многоканальных звуковых систем согласно Рекомендации bs.775
- •Система улучшенного кодирования звука аас
- •3.2.9. Формирование транспортного потока данных в устройствах кодирования mpeg-2 Структура транспортного потока
- •Значения идентификаторов piDдля потока информацииSi
- •3.2.10. Качество телевизионных изображений при кодировании по стандарту mpeg-2
- •3.3. Стандарт представления медиа-объектов mpeg-4
- •3.3.1. Описание сцены в стандарте mpeg-4
- •3.3.2. Принципы доставки потоков данных
- •3.3.3. Кодирование визуальных объектов
- •3.3.4. Кодирование звуковых объектов
- •3.3.5. Профили и уровни стандарта mpeg-4
- •Профили и типы объектов mpeg-4 видео
- •Параметры потока для некоторых профилей mpeg-4 видео
- •Параметры предлагаемого студийного профиля стандарта mpeg-4
- •Требования к декодеру звука масштабируемого профиля
- •Профили и типы объектов mpeGаудио
- •Профили графических средств и описаний сцены в mpeg-4
- •3.3.6. Идентификация и защита интеллектуальной собственности
- •3.4. Стандарт кодированного представления визуальной информации н.264/avCилиMpeg-4Part10
- •3.4.1. Структура стандарта видеокомпрессии н.264 Основные механизмы кодирования, используемые в стандарте н.264
- •Формирование закодированных снимков
- •Моды слоев стандарта н.264
- •Синтаксис элементов макроблока
- •Используемые типы карт распределения макроблоков по группам слоев
- •Профили, используемые стандартом н.264
- •Формат закодированных данных
- •3.4.2. Базовый профиль Особенности кодирования, обусловленные базовым профилем
- •Использование ссылочных снимков
- •Мгновенная очистка буфера декодера
- •Лишний кодированный снимок
- •Произвольный порядок слоев
- •Прогнозирование макроблоков
- •Древовидная структура компенсации движения
- •Предсказание векторов движения
- •Прогноз в моде intra
- •Деблочный фильтр
- •Условия фильтрации
- •Преобразование и квантование
- •3.4.3. Основной профиль Особенности кодирования в основном профиле
- •Ссылочные снимки
- •Опции прогноза
- •Опции прогнозов для макроблоков в-слоев
- •Двунаправленный прогноз
- •Прямой прогноз
- •Чересстрочная развертка
- •Контекстно-адаптивное арифметическое кодирование (савас)
- •Экспоненциальные коды Голомба
- •Процесс кодирования
- •Контекстные модели для первого бита
- •Контекстные модели
- •Контекстные модели
- •Модуль арифметического кодирования
- •3.4.4. Расширенный профиль
- •Слои sPиSi
- •Слои деления данных
- •3.4.5. Транспортный механизм стандарта н.264 Структура кодированной видеопоследовательности
- •Элементы rbsp
- •Параметрические множества
- •Передача и хранение единиц nal
- •3.4.6. Кодек стандарта н.264
- •3.5. Стандарт описания мультимедийной информации mpeg-7
- •3.5.1. Общие сведения о стандарте mpeg-7
- •3.5.2. Основные части стандарта mpeg-7
- •3.5.3. Описание главных функций стандарта mpeg-7 Системы стандарта mpeg-7
- •Язык описания определений mpeg-7
- •Аудио mpeg-7
- •Визуальный mpeg-7
- •Основные объекты и схемы описания мультимедиа mpeg-7
- •Эталонные программы mpeg-7: модель экспериментов (eXperimentationModel)
- •3.5.4. Области применения стандарта mpeg-7
- •Контрольные вопросы
3.2.4. Компенсация движения
Точность предсказания при передаче изображений движущихся объектов можно увеличить за счет оценки вектора движения и компенсации этого движения, которая уменьшает ошибку предсказания.
В стандарте MPEG-2 используется метод компенсации движения, основанный на макроблоках. Два смежных кадра, содержащих только активные строки сигнала яркости (576 активных строк), разбиваются на макроблоки и более крупные зоны поиска. Размеры макроблока должны быть согласованы со структурой дискретизации кадра телевизионного изображения. В стандартеMPEG-2 телевизионный кадр разбивается на целое число зон. По вертикали (576 активных строк/16) – это 36 зон, по горизонтали (704 активных отсчета/16) – 44 зоны.
З
Рис. 3.5.Смещение
макроблока на вектор
движения
К примеру, надо определить координаты движения при предсказании вперед. В этом случае для каждого макроблока первого кадра осуществляется поиск наиболее похожей на него прямоугольной области таких же размеров во втором кадре. При этом последовательно перебираются векторы движения (или векторы смещения) (n,m), гдеn,m– приращения координат по горизонтали и по вертикали, принимающие значения в некоторых заданных интервалах. Для каждого вектора движения берется область во втором кадре, смещенная на этот вектор относительно анализируемого макроблока первого кадра (см. рис. 3.5, где тонкими линиями показаны границы макроблоков первого кадра, а толстыми – положение смещенной области во втором кадре), и рассчитывается суммаS(n,m) абсолютных значений разностей элементов макроблока первого кадра и смещенной области второго кадра
,
где
– элемент первого кадра;
– элемент второго кадра;m,
n
– дискретные координаты по вертикали
и по горизонтали, отсчитываемые,
например, от левого верхнего угла блока
первого кадра; B
– область координат макроблока.
Суммирование производится по всем
элементам макроблока.
Из всех проверенных векторов (n,m) выбирается тот, который обеспечивает наименьшее значение суммы, найденной в соответствии с выражением . Этот вектор и считается далее вектором движения для данного макроблока. В некоторых случаях вместо суммы абсолютных значений используется корень из суммы квадратов разностей, однако его расчет требует бóльшего объема вычислений.
Полный перебор
возможных смещений в заданном диапазоне
обеспечивает нахождение абсолютного
минимума суммы по соотношению , но
требует выполнения
расчетов по этой формуле, гдеw– максимальное смещение по какой-либо
координате, выраженное в количестве
пикселей. Существуют различные алгоритмы
(или стратегии) поиска соответствия
макроблока с уменьшенным объемом
вычислений. Например, сначала выполняется
поиск с бóльшим шагом смещения (в
несколько пикселей) по всему диапазону
смещений, а затем в зоне, где обнаружен
минимум, производится поиск с шагом
одного или даже половины пикселя для
точного определения вектора движения.
Если в области потока не найдена соответствующая область, отличие которой от данного макроблока (величина S) не превышает установленной пороговой величины, то этот макроблок кодируется во внутрикадровом режиме аналогично макроблокамI-кадров.
После определения векторов движения для каждого блока текущего кадра может быть выполнена компенсация движения. Каждый макроблок первого кадра заменяется найденной для него соответствующей областью второго кадра, которая смещается на место этого блока. Величины смещений по горизонтали и по вертикали определяются вектором движения. В результате из элементов второго кадра формируется оценка первого кадра или предсказанный первый кадр.
Компенсация движения, применяемая при компрессии РиВ-кадров, улучшает фактор сжатия в три раза по сравнению с внутрикадровым кодированием, где сохраняется временнáя избыточность.
Компенсация движения, примененная к макроблокам В-кадра, осуществляется с использованием как предшествующего, так и последующего опорного кадра.
Кодирование по стандарту MPEG-2 требуетзапоминания одного или двух кадров опорного макроблока, обеспечивающего данные для предсказания с компенсацией движения. Большой объем компьютерных вычислений занимает поиск и оценка движения для подбора макроблоков в двух кадрах, чтобы найти направление и расстояние, определяющие движение макроблока между кадрами, то есть вектор движения.
Определяемый вектор движения используется для предсказания с компенсацией движения. В кодере вычисляется ошибка предсказания, то есть разность между фактическим и предсказанным с использованием вектора движения блоками изображения, что сокращает временнýю избыточность. Ошибка предсказания подвергается ДКП, квантуется и кодируется в кодере с переменной длиной слова. Такой процесс уменьшает и временнýю, и пространственную, и психофизическую избыточность. Вектор движения также кодируется словами переменной длины. Кодированная ошибка предсказания объединяется с кодами вектора движения, после чего формируется передаваемый цифровой поток.
Чем быстрее движутся снимаемые объекты, тем больше отличаются текущий макроблок и опорный макроблок из предыдущего кадра и тем больше данных об ошибке предсказания должно быть передано, а это снижает эффективность компрессии. Компенсация движения при формировании предсказания уменьшает ошибку предсказания, которая на практике не может быть сведена к нулю. Этому мешают и изменения размеров движущегося объекта, его поворота, неточности в определении вектора движения и т.п. Однако предсказание с компенсацией движения позволяет значительно повысить эффективность ДИКМ при видеокомпрессии.
В декодере выполняется инверсное квантование, инверсное ДКП, в результате чего формируется ошибка предсказания. Ошибка предсказания складывается с декодированным изображением предыдущего кадра, образуя декодированное изображение текущего кадра.
Предсказатели с компенсацией движения в современных системах видеокомпрессии стандарта MPEG-2 могут использовать целый ряд методов. Например, макроблок может предсказываться на основе предыдущего изображения, на основе последующего изображения, а также на основе и предыдущего, и последующего. В чересстрочных системах поля одного кадра могут предсказываться раздельно с использованием разных векторов движения или вместе с использованием общего вектора. Существует такжевозможность нулевого предсказания(если не найден подходящий опорный макроблок). При этом сам текущий макроблок будет кодироваться вместо ошибки предсказания, что означает отказ от межкадрового кодирования и переход к внутрикадровому. Для каждого текущего макроблока кодер выбирает метод предсказания, обеспечивающий наивысшее качество декодированного изображения с учетом ограничений на скорость передачи данных. Сведения о методе предсказания включаются в общий поток и передаются декодеру для верного восстановления изображения.
Оценка вектора движения и определение наилучшей стратегии предсказания требуют применения сложных вычислительных процедур, которые должны осуществляться в реальном времени. Поэтому кодер гораздо сложнее декодера, то есть в стандарте MPEG-2 система компрессии на базе ДИКМ с компенсацией движения является асимметричной.
