Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Т7_Представление анимационной, видео- и звуково...doc
Скачиваний:
7
Добавлен:
17.08.2019
Размер:
362.5 Кб
Скачать

Тема 7: Представление анимационной, видео- и звуковой информации

1 Семейство форматов MPEG

3. Звуковые форматы

3. Анимационные файловые форматы FLI, FLC, CEL

1 Семейство форматов mpeg

При работе с цифровым видеосигналом возникает необходимость обработки, передачи и хранения очень больших объемов информации. На современных носителях, таких, как компакт-диск (CD-ROM, 650 Мбайт) или жесткий диск (порядка тысячи мегабайт), сохранить полноценный по времени видеоролик, записанный в поэлементном формате, не удается. С другой стороны, видеоинформация должна передаваться со cкоростью ее воспроизведения на экране компьютера. Так, полноцветное (24 бит/пиксел) изображение размером 720×576 пикселов из расчета 25 кадр/с требует скорости передачи видеоданных 240 Мбит/с. Однако пропускная способность каналов ЛВС FDDI - порядка 100-200 Мбит/с, а Ethernet - всего 10 Мбит/с. Поэтому использование видеоданных в составе электронных изданий оказывается невозможным.

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

Следует отметить, что традиционные алгоритмы сжатия данных без потерь здесь практически неприменимы, поскольку дают для реальной видеоинформации слишком незначительный выигрыш. Например, алгоритмы, основанные на компрессии за счет кодирования длинами серий и адресно-позиционного кодирования (RLE, LZ, LZW и т. п.), не дают должного эффекта.

Для покадрового сжатия видеоданных можно использовать алгоритмы компрессии статической графики - сжатие с потерями (JPEG). При этом восстановленное изображение кадра, как правило, не совпадает с оригиналом. Однако реализация таких алгоритмов достаточно сложна и процессы декодирования требуют значительных затрат времени. Видеоинформация накладывает специфические ограничения на скорость декодирования данных: декодер (аппаратно-программное средство, осуществляющее декомпрессию данных) должен успевать разархивировать изображение за 1/25 с, пока на экране отображается предыдущий кадр. Данное ограничение не дает возможности реализовать алгоритмы с большей степенью сжатия.

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

Реальным решением проблемы стало сжатие всего видеоряда, включающего последовательность видеокадров.

Стандартным методом цифрового кодирования на компьютере является PCM (Pulse Code Modulation). Наиболее популярным форматом, используемым для хранения несжатых аудиоданных, является Microsoft PCM (WAV). Для видеороликов стандартным для компьютера считается Microsoft Audio/Video Interleaved (AVI). Сжатие аудио- или видеоданных как процесс подразумевает конвертацию соответственно несжатого WAV- или AVI- файла в другой формат с использованием алгоритма сжатия (поэтому программы для компрессии/декомпрессии данных называют конверторами). При этом может быть использован любой формат (даже WAV и AVI), если он поддерживает этот алгоритм.

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

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

После разработки первого стандарта на сжатие видео- и аудиоинформации эта же группа создала формат и соответствующую технологию, ориентированную на применение к видеоданным с более высоким разрешением и потокам, в том числе для эффективного представления видеоинформации вещательного качества (SDTV - Standard Definition Television). Эффективное представление чересстрочной развертки (вещательного) видеосигнала оказалось более сложной задачей, чем прямые (не чересстрочные) сигналы, определенные MPEG-1. MPEG-2 ввел схему декорреляции многоканального дискретного аудиосигнала объемного звука, используя более высокий фактор избыточности.

В дальнейшем были созданы форматы MPEG-3, MPEG-4, MPEG-7, MPEG-J.

Сегодня MPEG - единый формат представления данных спецификации United States Grand Alliance HDTV, группы European Digital Video Broadcasting и Digital Versital Disc (DVD).

В литературе MPEG может подразделяться на фазы (MPEG-1, MPEG -2, MPEG-4 и т.д.), а в области аудиоинформации - еще и на уровни (layers). Фазы обозначаются арабскими цифрами, уровни - римскими. Некоторые фазы MPEG так и не были закончены. Например, разработка MPEG-3, предназначенного для телевидения высокой четкости (HDTV) с размерами кадров 1920×1080 при частоте смены 30 кадр/с и силой сжатия 20-40 Мбит/с, не была завершена, поскольку оказалось, что эта область поддерживается форматом MPEG -2. Нет информации о разработке MPEG -6, который предназначался для беспроводной передачи данных; MPEG -8, цель которого - четырехмерное описание объектов.

Экспертная группа по мультимедиа и гипермедиа MHEG (Multimedia Hypermedia Expert Group) определила стандарт для обмена мультимедийными объектами (видео, звук, текст и другие произвольные данные) между приложениями и передачи их разными способами (локальная сеть, сети телекоммуникаций и вещания) с использованием MHEG object classes. Этот стандарт позволил программным объектам включать в себя любую систему кодирования (например, MPEG), которая определена в базовом приложении. MHEG был принят советом по цифровому видео и звуку (DAVIC - Digital Audio-Visual Council). MHEG-объекты создаются мультимедийными приложениями.

Считается, что MHEG - будущий международный стандарт для интерактивного TV, так как он работает на любых платформах и его документация свободно распространяема.

Наряду с указанными стандартными форматами имеется конечное множество форматов кодирования видео- и аудиоинформации, предложенных фирмами, производящими различные программные приложения. К ним можно отнести: формат RealAudio, разработанный фирмой RealNetworks, для хранения сжатых голосовых аудиоданных (речи); формат аудиоданных SoundVQ, разработанный компанией Yamaha; формат Windows Media Technology 4.0, представленный фирмой Microsoft, поддерживает потоковую передачу данных в Internet и имеет продвинутую систему сжатия аудио- и видеоданных; формат QuickTime фирмы Apple был разработан для использования в мультимедийных приложениях на компьютерах Macintosh и т.п.

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

В январе 1992 г. этой группой была представлена первая версия стандарта для сжатия видео- и звуковых файлов, получившая название MPEG phase 1, или просто MPEG 1 (ISO 11172). Данный стандарт определял методы компрессии, позволяющие довести скорости передачи видео- и аудиоданных до 1,5 Мбит/с, что соответствует скоростям обмена обычных приводов CD-ROM и стримеров. В качестве отправной точки отсчета принято изображение размером 352×288 пикселов (для PAL-сигнала) с частотой 30 кадров (фреймов) в секунду. С помощью MPEG-сжатия объем видеоинформации можно заметно снизить и часовая видеопрограмма уместится в 2 Гбайт.

Затем по мере расширения задач передачи видеоинформации, повышения пропускной способности каналов и роста требований к визуальному качеству получаемых изображений появилось несколько версий стандартных форматов - MPEG-2, MPEG-3, MPEG-4, MPEG-7, MPEG-J, оптимизированных под определенные условия.

MPEG-1. Стандарт MPEG-1 был принят в качестве стандарта ISO в конце 1992 г. и официально опубликован в 1993 г. Он предназначен для сжатия видеофайлов средних размеров и аудиофайлов с частотой дискретизации 32, 44,1 и 48 кГц и использовался в основном для записи на диски Video-CD. Этот стандарт обеспечивал качество изображения на уровне видеокассеты VHS и позволял записать на один компакт-диск более часа видеоинформации и воспроизводить его на устройстве с двукратной скоростью.

В области аудио существуют три уровня MPEG -1 (первый - от 32 до 448 Кбит/с, второй - от 32 до 384 Кбит/с, третий - от 32 до 320 Кбит/с).

MPEG-2. Работа над этим форматом была завершена в 1997 г. Он разработан для кодирования видеофайлов больших размеров, соответствующих размерам телевизионного экрана и выше, с силой сжатия от 2 Мбит/с и для высококачественного аудио.

Используется в технологиях цифрового видео и телевидения, в цифровом спутниковом вещании, телевидении высокой четкости и дисках DVD. MPEG-2, как определено в документе ISO/IEC 13818-2, объединяет семейство взаимосогласованных и совместимых сверху вниз цифровых стандартов сжатия телевизионных сигналов. Точнее, он допускает четыре уровня (Levels) разрешения кадра и пять базовых профилей (Profiles) кодирования сигналов яркости и цветности. Формат поддерживает пять аудиодорожек (плюс одна низкочастотная) с силой сжатия до 1 Мбит/с.

MPEG-3. Был разработан для использования в системах телевидения высокой четкости (HDTV- high-defenition television) с параметрами: максимальное разрешение 1920×1080×30, скорость потока данных 20-40 Мбит/с. Позже этот формат стал частью стандарта MPEG-2 и отдельно не упоминается. Заметим, что известен формат MP3, который иногда путают с MPEG-3. Он предназначен только для сжатия аудиоинформации (полное название - MPEG Audio Layer III).

MPEG-4. Этот формат задает принципы работы с цифровым представлением медиа-данных для трех областей: интерактивного мультимедиа, графических приложений и цифрового телевидения. MPEG-4 в основном предназначен для цифровой передачи видеоданных по телефонным линиям (Internet, видеоконференции) в условиях жестко ограниченной пропускной способности (до 28,8 Kбит/c). Он использует схему кодирования с разделением изображения на такие независимые объекты, как фон, текст, 2D/3D-графика, «разговаривающие» человеческие лица, двигающиеся тела и т.д. Ввиду определенной сложности этот стандарт пока не получил широкого распространения.

MPEG-7. Это стандарт для описания различных типов мультимедийной информации. Он призван обеспечить эффективный и быстрый поиск мультимедийных данных по заданному произвольному фрагменту или ограниченному набору элементов.

MPEG-J. Стандартное расширение формата MPEG-4, в котором используются Java-элементы.

MPEG состоит из трех частей: Audio, Video, System (объединение и синхронизация двух других).

Таким образом, MPEG - это семейство стандартов на сжатие видео- и звуковых файлов в процессе загрузки или пересылки информации.

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

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

Алгоритмы сжатия видеоданных ориентированы на следующие носители информации:

  1. CD-ROM. Диски характеризуются высокой плотностью записи информации, что делает их перспективными для хранения цифровой видеоинформации. Обладает низким отношением стоимости диска к его объему. В качестве недостатка следует отметить низкую скорость считывания информации (для односкоростных устройств - 1,5 Мбит/с) и большое время поиска информации (порядка 0,3 с).

  2. Стример DAT (Digital Audio Таре). В этом носителе запись информации и считывание осуществляются с помощью последовательного доступа. Характеризуется достаточно большими размерами и относительно низкой скоростью считывания видеоинформации.

  3. Накопитель на жестких магнитных дисках (НЖМД). Это наиболее быстродействующее устройство, обладающее малым временем поиска, что необходимо для некоторых приложений. Однако он имеет очень высокое отношение стоимости диска к объему, что накладывает определенные ограничения на его использование.

  4. Перезаписываемые оптические диски. Это одно из наиболее перспективных устройств, способное сочетать в себе достоинства CD-ROM (низкая себестоимость хранения информации, большой объем, произвольный доступ) и накопителей на жестких магнитных дисках (возможность перезаписи).

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

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

Симметричные приложения предъявляют одинаково жесткие требования к времени, памяти и другим ресурсам как при кодировании, так и при декодировании. Примерами такого рода приложений могут служить видеопочта, видеотелефон, видеоконференции, редактирование и подготовка видеоматериалов.

Компрессия видеоданных в MPEG

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

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

Такой подход позволяет использовать следующий алгоритм сжатия. Кадр разбивается на блоки размером 16×16 пикселов (размеру 720×576 пикселов соответствует 45×36 блоков), каждый из которых ДКП переводится в частотную область. Затем соответствующие частотные коэффициенты подвергаются квантованию (округлению значений с задаваемым интервалом). Если само по себе ДКП не приводит к потере данных, то квантование коэффициентов, очевидно, вызывает огрубление изображения. Операция квантования выполняется с переменным интервалом - наиболее точно передается низкочастотная информация, в то время как многие высокочастотные коэффициенты принимают нулевые значения. Это обеспечивает значительное сжатие потока данных, но приводит к снижению эффективного разрешения и возможному появлению незначительных ложных деталей (в частности, на границе блоков). Очевидно, что чем более грубое квантование используется, тем больше степень сжатия, но и тем ниже качество результирующего сигнала.

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

Указанные выше концепции использованы и в MPEG-сжатии.

В данном стандарте изображение состоит из макроблоков (16×16 пикселов). В свою очередь, каждый макроблок состоит из шести блоков (размером 8×8 пикселов), четыре из которых несут информацию о яркости изображения (Y-блоки), а два (Сr- и Cb-блоки) определяют цветовые компоненты (рис. 5.1).

Компьютер анализирует изображение и ищет идентичные или похожие макроблоки, сравнивает базовый и последующие кадры. В результате сохраняются только данные о различиях между кадрами, называемые вектором смещения (vector movement code). Макроблоки, которые не претерпевают изменений, при кодировании игнорируются, так что количество данных для реального сжатия и хранения существенно снижается. Для повышения устойчивости процесса восстановления изображений к возможным ошибкам передачи данных последовательные макроблоки объединяют в независимые друг от друга разделы (slices).

Блоки являются базовыми структурными единицами, над которыми осуществляются основные операции кодирования.

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

Совместное применение косинусного преобразования и квантования приводит к тому, что многие из этих частотных коэффициентов становятся нулевыми.

Для дальнейшей упаковки видеоданных матрица 8×8 пикселов преобразуется в зигзагообразном порядке (рис. 5.2) в линейный массив из 64 элементов, содержащий последовательности нулей, который в свою очередь преобразуется в серию пар, состоящих из числа нулевых элементов и последующего ненулевого значения.

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

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

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

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

  1. Intra (I) - исходные кадры, содержащие полный объем информации о структуре изображения и играющие роль опорных кадров. I-кадры имеют довольно низкий коэффициент сжатия и составляют основу MPEG-файла. Именно благодаря им возможен случайный доступ к какому-либо отрывку видео.

  2. Predicted (P) - предсказуемые кадры, содержащие информацию об изменениях в структуре текущего изображения по сравнению с предыдущим I-кадром и учитывающие динамику изменения или смещения отдельных фрагментов. P-кадры обычно используются как сравнительный образец для дальнейшей последовательности P-кадров. Как считают разработчики, в этом случае достигается более высокий коэффициент сжатия.

  3. Bi-directional Interpolated (B) - двунаправленные кадры, содержащие только самую существенную часть информации об отличиях от предыдущего и последующего изображений (только I или P) в виде отсылки к предыдущим или последующим изображениям с учетом перемещений отдельных фрагментов изображения. B-кадры обеспечивают наибольший коэффициент сжатия, но при этом для их привязки к видеопоследовательности необходимо использовать не только предыдущее, но и последующее изображение. Сами B-кадры никогда не используются для сравнения.

Следует заметить, что прежде чем декодировать B-кадр, требуется декодировать два I- или P-кадра.

Кадры I-типа выступают в виде первых кадров последовательности. С них начинается новый видеоряд. Существуют разные стандарты на частоту, с которой должны следовать I-кадры: приблизительно 1-2 в секунду. Обычно между двумя I-кадрами может находиться не более 12 кадров других типов Соответствующие стандарты есть и для P-кадров (каждый третий кадр должен быть P-кадром).

Изображения кадров объединяются в группы (GOP - Group of Pictures), представляющие собой минимальный повторяемый набор последовательных изображений.

Обычно последовательность выглядит таким образом:

I B B P B B P B B P B B I B B P B B P B

Кадры P-типа, или предсказанные кадры, обычно следуют через два B-кадра. Для увеличения степени сжатия они не содержат информации, которая может быть получена из предыдущего P- или I- кадра с использованием алгоритма компенсации движения (рис. 5.3, а).

Кадры B-типа содержат ссылки как на предыдущие, так и на последующие кадры I- или P-типа и обрабатываются методом двунаправленного предсказания (рис. 5.3, б). Они имеют наибольший уровень сжатия и не вносят дополнительных ошибок, поскольку на них не ссылаются никакие кадры.

Поскольку B-кадры используют ссылки как на последующие, так и на предшествующие кадры в последовательности, для оптимизации процесса воспроизведения кадры в потоке перераспределяются следующим образом (рис. 5.4): компенсация движения является методом увеличения степени сжатия Р- и В- кадров путем использования информации из предыдущих кадров.

Для B-кадра компенсация движения может осуществляться как вперед, так и назад, поэтому для данного типа возможны четыре варианта кодирования макроблоков:

  • кодирование без компенсации движения;

  • компенсация с прямым предсказанием;

  • компенсация с обратным предсказанием;

  • компенсация с двунаправленным предсказанием.

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

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

Метод кодирования блоков (либо разницы, получаемой при методе предсказания движения) содержит в себе:

  • DCT - дискретно-косинусное преобразование (Discrete Cosine Transforms;

  • преобразование данных из непрерывной формы в дискретную (Quantization);

  • кодирование данных полученного блока в кодовую последовательность.

Дискретно-косинусное преобразование (ДКП) реализуется поблочно (рис. 5.5), для чего ТВ изображение разбивается на блоки размером 8×8 пикселов. Таким образом, получается матрица, которая содержит 8×8 = 64 пиксела (отсчета) видеосигнала. Она называется сигнальной матрицей. При этом в ТВ кадре создается: 576/8 = 72 зоны по вертикали и 704/8 = 88 зон по горизонтали, что в общей сложности дает: 72×88 = 6336 блоков, подлежащих дискретно-косинусному преобразованию в реальном масштабе времени. В результате ДКП исходная сигнальная матрица преобразуется в матрицу частотных коэффициентов ДКП такого же размера (8×8 = 64).

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

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

Передаче подлежат только те частотные коэффициенты матрицы ДКП, значения которых превышают принятые пороговые значения. Коэффициенты ниже порогового значения считаются нулевыми.

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

Следует отметить, что при кодировании динамический интервал коэффициентов ДКП возрастает в 8 раз.

После выравнивания динамического диапазона коэффициенты ДКП подвергаются взвешенному квантованию для сокращения избыточности в высокочастотной области. Точность кодирования зависит от шага квантования. Он выбирается различным для разных коэффициентов матрицы ДКП. Его масштаб в процессе кодирования может изменяться в пределах от 1 до 31.

После этого осуществляется кодирование данных полученного блока в кодовую последовательность.

Полноцветное цифровое изображение из сжимаемой последовательности переводится в цветовое пространство Y,U,V (Y, Cb, Cr).Y - интенсивность цвета, U и V - цветность. Как известно, человеческий глаз менее восприимчив к цветности, чем к интенсивности, поэтому Cb и Cr кодируются с меньшим разрешением, чем Y.

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

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

Для сокращения статистической избыточности в MPEG применяются различные методы и алгоритмы. Чаще всего используются два метода: кодирование ТВ отсчетов с предсказанием и дискретно-косинусное преобразование.

Кодирование с предсказанием реализуется с помощью дифференциальной импульсно-кодовой модуляции (ДИКМ). При кодировании с предсказанием вычисляется разность между истинным и предсказанным значениями отсчета. Затем разность квантуется по уровню.

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

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

Первые два способа предсказаний, по мнению разработчиков, характеризуются относительно низкой эффективностью.

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

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

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

Компрессия звука в MPEG. Полноценные видеофрагменты требуют использования звуковой информации. Считается, что звук CD-качества требует оцифровки с частотой 44,1 кГц при глубине 16 бит на канал, что соответствует потоку в 706 Kбит/с на канал (1,4 Мбит/с - для стерео). При повышении качества сигнала используется частота оцифровки 48 кГц (полоса частот 4-24000 Гц), что увеличивает поток до 768 Kбит/с на канал.

Форматы кодирования звука делятся на три уровня: Layer I, Layer II, Layer III (прообразом для Layer I и Layer II стал стандарт MUSICAM, этим именем сейчас иногда называют Layer II). Layer III достигает самого большого сжатия, но требует больше ресурсов на кодирование.

Уровень Layer I использует наиболее простой алгоритм с минимальной компрессией, что предполагает скорость передачи звуковой информации 192 Kбит/с на канал.

Алгоритм Layer II более сложный, однако и степень компрессии больше (требуемая скорость 128 Kбит/с на канал). Мощный алгоритм сжатия цифрового звука CD-качества (в 11 раз без различаемых человеческим ухом потерь) Layer III обеспечивает максимально возможное качество звука при жестких ограничениях потока (скорость - не более 64 Kбит/с на канал). Этот формат в основном используется в Internet. Следует отметить, что в среде пользователей он получил сокращенное наименование MP3 (MPEG Layer III).

Принципы кодирования основаны на том факте, что в несжатом звуке (CD-audio) передается много избыточной для нашей слуховой системы информации. Применяемые методы сжатия используют эффект маскировки некоторых звуков для слухового анализатора человека (например, если поступает сильный звук на частоте 1000 Гц, то более слабый звук на частоте 1100 Гц уже не будет слышен человеку, также будет ослаблена чувствительность человеческого уха в течение 100 мс после и 5 мс до возникновения сильного звука).

Психоакустическая модель, используемая в MPEG, разбивает весь частотный спектр на части, в которых уровень звука считается одинаковым, а затем удаляет звуки, не воспринимаемые человеком вследствие описанных выше эффектов.

В Layer III части разбиваемого спектра самые маленькие, что обеспечивает самое высокое сжатие.

MPEG Audio поддерживает информационную совместимость уровней снизу вверх, т.е. декодировщик (decoder) для Layer II будет также распознавать Layer I.

Синхронизация и объединение звука и видео осуществляются с помощью системы (System Stream) (рис. 5.6), которая включает в себя:

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

компрессионный слой, содержащий видео- и аудиопотоки.

Видеопоток (рис. 5.6) содержит заголовок, затем несколько групп кадров. Этим достигается произвольный доступ к кадрам в группе независимо от их порядка.

Звуковой поток состоит из пакетов, каждый из которых включает заголовок и несколько звуковых кадров (audio-frame).

Для синхронизации аудио- и видеопотоков в системном потоке используется специальный таймер (работающий с частотой 90 кГц). В качестве синхронизирующих сигналов используются SCR-метки (System Clock Reference), с помощью которых изменяется состояние счетчика декодера, и PDS-метки (Presentation Data Stamp), встраиваемые в видео- или звуковой кадр для синхронизации их воспроизведения. Разрядность PDS-метки составляет 33 бит, что обеспечивает возможность представления любого временного цикла длительностью до 24 ч.

Формат MPEG-1

По стандарту MPEG-1 потоки видео- и звуковых данных передаются со скоростью 150 Кбайт/с (с такой же скоростью, как и односкоростной CD-ROM проигрыватель) и управляются путем выборки ключевых видеокадров и заполнением только областей, изменяющихся между кадрами. MPEG-1 обеспечивает качество видеоизображения более низкое, чем передаваемое по телевизионному стандарту.

MPEG-1 был разработан и оптимизирован для работы с кадрами с разрешением 352 ppl (point per line - точек на линии) ×240 lpf (line per frame - линий в кадре) [ 30 fps (frame per second -кадров в секунду), что соответствует скорости передачи CD-звука высокого качества. Используется цветовая схема - YCbCr (где Y - яркостная плоскость, Cb и Cr - цветовые плоскости).

Параметры MPEG-1 (утверждены в 1992 г.):

Параметры аудиоинформации: 48, 44,1, 32 кГц, mono, dual (два моноканала), стерео, интенсивное стерео (объединяются сигналы с частотой выше 2000 Гц), m/s stereo (один канал переносит сумму, другой - разницу). Сжатие и скорость передачи звука для одного канала для частоты 32 кГц представлены в табл. 5.1.

Таблица 5.1

Способ кодирования   

Скорость передачи, Kбит/с   

Kоэффициент сжатия

Layer I

192

1 : 4

Layer II

128...96

1 : (6...8)

Layer III

64...56

1 : (10...12)

Параметры видеоинформации: с помощью MPEG-1 можно передавать изображения с разрешением вплоть до 4095×4095×60. В этих пределах кадр может быть произвольного размера. Общее число макроблоков в изображении кадра: 396 для скорости < 25 fps и 330 для скорости < 30 fps.

Существует более высокое разрешение для MPEG-1 - так называемый MPEG-1 Plus, разрешение которого приближается к формату MPEG-2.

Формат MPEG-2

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

Основным форматом изображения в данном стандарте является 720×480 пикселов. Изменения в алгоритме кодирования коснулись возможностей использования форматов кадра 16×9 и 4×3, а также поддержки чересстрочной развертки, т.е. деления кадра на два полукадра (поля) с нечетными и четными строками соответственно. Изменено соотношение между яркостным и цветовыми компонентами - 4:2:2 вместо 4:1:1. Все это отразилось на требуемой полосе пропускания (для фильмов формата VHS - 3 Мбит/с, а для HDTV - 60 Мбит/с). Поэтому основную сферу использования данного стандарта в настоящее время составляют устройства DVD, которые имеют соответствующие скорость и емкость, а также цифровое спутниковое телевидение.

Алгоритм сжатия оцифрованной видеоинформации MPEG-2 обеспечивает скорость передачи видеоданных от 3 до 80 Мбит/с. При разработке MPEG был создан алгоритм перевода видеоданных из формата CCIR-601. Как известно, CCIR-601 - это стандарт цифровой видеоинформации с размером передаваемого изображения 720×486 при 60 полукадрах в секунду. Этот формат учитывает, что строки телевизионного изображения передаются с чередованием (четные и нечетные), и два полукадра составляют кадр. Хроматические каналы (U и V в YUV) передаются размером 360×243 пикселов 60 раз в секунду и чередуются уже между собой. Подобное деление обозначают 4:2:2. Оно позволяет уменьшить избыточность в 2 раза только за счет перевода в другое цветовое пространство.

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

Особенности компенсации движения в MPEG-2. В стандарте MPEG-2 используется метод компенсации движения, основанный на макроблоках. Два смежных кадра, содержащих только активные строки сигнала яркости (576 активных строк), разбиваются на макроблоки. Размеры макроблока согласовываются со структурой дискретизации кадра ТВ изображения. В стандарте MPEG-2 блок - это квадратная матрица отсчетов размером 16 строк по вертикали и 16 столбцов (отсчетов) по горизонтали. Отметим, что при таком формате блока ТВ кадр разбивается на целое число зон. По вертикали (576 активных строк/16) - это 36 зон, по горизонтали (704 активных отсчета/16) - 44 зоны. Зона поиска должна быть достаточно большой, чтобы быстро движущийся макроблок изображения первого кадра не вышел из зоны поиска второго кадра. Размеры зоны поиска ограничиваются объемом вычислений, которые необходимо выполнить в реальном масштабе времени. Эти размеры также должны быть согласованы с принятой структурой дискретизации ТВ кадра. Обычно они в 4 раза больше размеров отдельного макроблока. Таким образом, в ТВ кадре создается 9 зон (576/64) поиска по вертикали и 11 (704/64) зон по горизонтали.

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

Уровни, профили и слои. Стандарт MPEG-2 допускает четыре уровня (Levels) разрешения кадра и пять базовых профилей (Profiles) кодирования сигналов яркости и цветности.

Уровни: низкий (LL - Low Level) с разрешением кадра 352×288 (соответствует MPEG-1), основной (ML - Main Level) 720×576, высокий 1440 (HL - High Level) - 1440×1152 и высокий 1920 - 1920×1152. Отметим, что если в соответствии с рекомендацией ITU-R BT.601 (International Telecommunications Union - Recommendation) основной уровень определяет разрешение стандартного телевизионного кадра, то высокие уровни ориентированы на телевидение высокой четкости.

Профили. В формат MPEG-2 введены профили. Различают пять базовых профилей:

  • простой (SP - Simple Profile);

  • основной (MP - Main Profile);

  • два масштабируемых - по отношению сигнал-шум (SNR - Scalable Profile) и по разрешению (Spatially Scalable Profile);

  • высокий (HP - High Profile).

Важное место также занимает не определенный стандартом, но активно используемый в практике так называемый основной профессиональный профиль MPEG 422. Его обозначают как 422Р.

Поясним суть и различия профилей.

В простом профиле (SP) осуществляются только компенсация движения и предсказание по одному направлению (P-кадры). В основном профиле (MP) предсказание выполняется по двум направлениям, т.е. допускаются B-кадры. В масштабируемых профилях осуществляется разделение исходного цифрового потока видеоданных на несколько частей по различным критериям. В масштабируемом по отношению сигнал-шум (SNR - Scalable Profile) поток разделяют на две части. В первой части - основной сигнал, который несет информацию с пониженным отношением сигнал-шум (грубая дискретизация). Но эта часть защищается более устойчивым к помехам передачи алгоритмом, может приниматься в условиях сильных шумов и позволяет (даже при неблагоприятных условиях) восстановливать ТВ изображение. Менее защищенная вторая часть включает так называемый дополнительный сигнал, который при неустойчивом приеме отбрасывается. При устойчивом приеме он позволяет дополнить основной сигнал и повысить отношение сигнал-шум до исходного значения.

Пространственно масштабируемый профиль (Spatially Scalable Profile) в определенной степени усложняет схему кодирования. В нем поток разделяется уже на три части по критерию разрешения. Первая часть - основной сигнал, обеспечивает передачу устойчивой к помехам информации об изображении стандартного разрешения (625 строк, из них активных 576). Вторая часть дополняет информацию до изображения высокой четкости (1250 строк, 1152 активных), а декодирование третьего сигнала позволяет повысить отношение сигнал-шум.

Профиль HP, высший, включает в себя все функции предыдущих, но использует YUV-представление и передает цветоразностные сигналы в 2 раза чаще (в каждой строке, в каждом элементе строки). Известно, что телевизионный сигнал представляет собой совокупность сигнала яркости Y и двух цветоразностных сигналов U и V. При кодировании используются 256 градаций их значений (от 0 до 255 для Y, и от -128 до 127 для U и V), что в двоичном исчислении соответствует 1 байт. Теоретически каждый элемент кадра имеет собственные значения YUV, т.е. при кодировании требует 3 байт. Такое представление, когда яркость и сигналы цветности имеют равное число независимых значений, обычно записывают как 4:4:4. Но зрительная система человека менее чувствительна к цветовым пространственным изменениям, чем к яркостным. И без видимой потери качества число цветовых отсчетов в каждой строке можно уменьшить вдвое. Именно такое представление, обозначаемое как 4:2:2, было принято в вещательном телевидении. При этом для передачи полного значения телевизионного сигнала в каждом отсчете кадра достаточно 2 байт (чередуя через отсчет независимые значения U и V). Более того, для целей потребительского видео признано допустимым уменьшение вдвое вертикального цветового разрешения, т.е. переход к представлению 4:2:0. Это уменьшает приведенное число байтов на отсчет до 1,5. Отметим, что именно такое представление было заложено в DV-формат цифровых камер, а также формат DVD-видео. Однако в профессиональных задачах цифрового редактирования и монтажа видеоинформации, когда возможны многократное и многослойное использование фрагментов отснятого материала и включение в него компьютерной анимационной графики, во избежание результирующего накапливания ошибок изначально требуется более высокое качество цифровой видеоинформации. Поэтому здесь считается обязательным представление 4:2:2. Именно этим отличается профиль 422P от основного.

Слои. В MPEG-2 предусмотрена возможность использования трех слоев: base, middle и high. С их помощью организуется приоритетная обработка видеоданных. При этом канал с более высоким приоритетом кодируется с большим количеством информации с целью коррекции ошибок. Так, в процессе пространственного масштабирования (Spatial scalability) основной слой кодируется с меньшим разрешением и затем используется как основа предсказания для более приоритетных. При дроблении данных (Data Partitioning) блок разбивается на два потока, из которых более приоритетный переносит низкочастотные (наиболее критичные к качеству), а менее приоритетный - высокочастотные компоненты изображения кадров.

В стандарте MPEG-2 предусмотрено использование вектора панорамирования и масштабирования (PanScanning), который предоставляет видеодекодеру информацию об особенностях преобразования видеоданных, например 16 : 9 в 4 : 3. Точность частотных коэффициентов может выбираться пользователем (8, 9, 10, 11 бит на одно значение; в MPEG-1 фиксирован размер в 8 бит). Введены новые режимы предсказания движения (16x8 MC, field MC, Dual Prime). Предусмотрена возможность загружать матрицу преобразований непрерывных данных в дискретные (quantization matrix) перед каждым кадром.

В области аудиоинформации введены новые частоты 16, 22,05, 24 кГц.

MPEG-2 поддерживает многоканальность.Имеется возможность использовать пять полноценных каналов (left, center, right, left surround, right surround) и один низкочастотный (subwoofer).

MPEG-2 AAC. MPEG-2 Advanced Audio Coding, выпущенный в 1995 г., был разработан для сжатия многоканальной (до 42 каналов) аудиоинформации высокого качества (от 8 до 96 кГц). Формат поддерживает силу сжатия от 8 до 160 Кбит/с. Он несовместим с предыдущими форматами MPEG. ААС используется в MPEG -2 и возможно будет применяться в последующих разработках MPEG.

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

Системный уровень MPEG-2 обеспечивает два уровня объединения данных. Первый уровень разбивает звуковую и видеоинформацию на пакеты (Packetized Elementary Stream).

Второй уровень делится на:

MPEG-2 Program Stream (совместим с MPEG-1 System) - для локальной передачи в среде с небольшим уровнем ошибок;

MPEG-2 Transport Stream (рис. 5.7) ориентирован на внешнее вещание в среде с высоким уровнем ошибок. В этом случае осуществляется передача транспортных пакетов (длиной 188 либо 188+16 бит) двух типов (сжатые данные - PES и сигнальная таблица - Program Specific Information).

MPEG-2 информационно совместим с MPEG-1.

Формат MPEG-4

MPEG-4 является стандартным форматом для низкоскоростной передачи (64 Кбит/с) и хранения мультимедийных данных, включая аудио, видео, анимацию, неподвижные изображения, синтезированную музыку и речь. Основным свойством формата является отделение одного типа мультимедийных данных от другого и сжатие их отдельно разными способами. Например, отделение фона от переднего плана, речи от музыки и т.д. MPEG-4 имеет сложную систему хранения синтетической музыки.

Этот формат, разделяя изображение кадра на различные медиа-объекты, описывает структуру этих объектов и их взаимосвязи, а затем собирает их в виде сцены. MPEG-4 позволяет изменять сцену с целью обеспечения высокого уровня интерактивности для конечного пользователя.

Видеозвуковая сцена состоит из медиа-объектов, которые объединены в иерархическую структуру:

  • Неподвижные изображения (например, фон).

  • Видеообъекты (например, говорящий человек).

  • Аудиообъекты (голос, связанный с этим человеком).

  • Текст, связанный с данной сценой.

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

Такой способ представления данных позволяет:

  • перемещать и размещать медиа-объекты в любое место сцены;

  • трансформировать объекты и изменять их геометрические размеры;

  • собирать из отдельных объектов составной объект и выполнять над ним какие-либо операции;

  • изменять текстуру объекта, манипулировать объектами в процессе синтеза очередной сцены;

  • изменять точку наблюдения за сценой.

Предполагается, что для сжатия аудиоданных высокого качества в формате будут использоваться алгоритмы ААС и TwinVQ, для низкого качества и малых размеров результирующего файла - LPC (Linear Predictive Coding) и PAR.

В качестве стандартного расширения MPEG-4 был предложен формат MPEG-J, в котором предусмотрена возможность использования Java-элементов.

Таким образом, MPEG-4 - это стандарт на сжатие звуковых и видеофайлов в удобный для загрузки или пересылки, например через Internet, формат.

Формат MPEG-7

MPEG-7, по всей видимости, нельзя рассматривать как продолжение разработок технологии MPEG. Он стал разрабатываться сравнительно недавно и планируется завершение работ над ним в 2001 г. MPEG-7 будет стандартом для описания различных типов мультимедийной информации, а не для ее кодирования и сжатия. Он призван обеспечивать эффективный и быстрый поиск мультимедийных данных. MPEG-7 официально называют Интерфейс описания мультимедиа данных (Multimedia Content Description Interface).Формат MPEG-7 должен определять стандартный набор дескрипторов для различных типов мультимедийной информации. Он также стандартизует способ определения (идентификации) дескрипторов и их взаимосвязи (description schemes). Для этой цели MPEG-7 вводит язык описания определений (DDL - Description Definition Language). Основная цель применения MPEG-7 - это поиск мультимедийной информации по заданному фрагменту или даже по отдельным элементам.

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