logo
Алексеев информатика

5.3. Принципы сжатия информации

Для уменьшения размеров мультимедийных файлов используют процедуру сжатия.

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

Многие приемы сжатия аудио- и видеоинформации основываются на «обмане» органов чувств (зрение и слух) человека путем исключения избыточной информации, которую человек (в силу своих физиологических особенностей) не способен воспринять.

Разработано несколько стандартов сжатия видео- и аудиоинформации.

Наибольшее влияние на настоящее и будущее мультимедийных средств оказывает MPEG (Moving Picture Experts Group) – объединенный комитет двух организаций: Интернациональной организации по стандартизации (ISO) и Интернациональной электротехнической комиссии (IEC). Этот комитет разрабатывает стандарты с одноименными названиями. Так стандарт MPEG-1 был разработан с учетом возможностей двухскоростных проигрывателей лазерных дисков CD-ROM и компьютеров с 486-м процессором.

В январе 1992 г. комитет MPEG опубликовал общие характеристики будущего стандарта MPEG-1, а в декабре 1993 г. они были приняты в качестве стандарта. По требованиям этого стандарта интенсивность потока данных (скорость передачи информации) сжатого видео и звука должна укладываться в 1,5 Мбайт/с, хотя были предусмотрены режимы вплоть до 4 – 5 Мбайт/с.

Окончательное утверждение MPEG-2 в. качестве международного стандарта произошло в ноябре 1994 г. В его спецификациях была определена допустимая интенсивность потока данных от 2 до 10 Мбайт/с.

Стандарт MPEG-2 позволяет записывать на лазерные диски изготовленные по технологии DVD, полноэкранные фильмы «вещательного» качества. Для телевидения высокой четкости разрабатывался стандарт MPEG-3, который впоследствии стал частью стандарта MPEG-2 и отдельно теперь не упоминается Разрабатываемый стандарт MPEG-4 предназначен для использования в системах с низкой пропускной способностью.

Рассмотрим вначале методы сжатия звуковой информации, а затем – методы сжатия видеоинформации.

Согласно теореме Котельникова, чтобы восстановить без искажений аналоговый сигнал после его преобразования в цифровой сигнал, необходимо, чтобы частота выборки (дискретизации) была хотя бы вдвое выше верхней граничной частоты исходного сигнала. Для записи звука на компакт-диски используется частота выборки 44,1 кГц. Эта частота более чем в 2 раза превышает верхнюю граничную частоту, которую слышит человек.

Второй фактор, влияющий на качество воспроизводимого звука, – количество двоичных разрядов квантования. Во-первых, им определяется передаваемый динамический диапазон звука. Во-вторых, после цифроаналогового преобразования уровень воспроизводимого сигнала может принимать некоторое множество фиксированных значений. Исходный же аналоговый сигнал изменяется непрерывно. В результате восстановленный сигнал неизбежно отличается по форме от исходного, и это отличие тем больше, чем меньше разрядов использовалось для квантования сигнала. Искажение формы сигнала при воспроизведении эквивалентно добавлению некоего шума – шума квантования. Чтобы достичь полной неразличимости шумов квантования, в технике компакт-дисков используется 16-разрядное квантование, при этом уровень воспроизводимого звука может принимать одно из 65 536 значений.

Для записи стереофонического звука с частотой дискретизации 44,1 кГц и 16-битном представлении звука (разрешение составляет 65 536 уровней квантования) требуется скорость передачи информации:

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

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

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

Программы компрессии без потерь в процессе анализа данных создают таблицы повторяющихся последовательностей битов и заменяют часто встречающиеся последовательности более короткими записями (кодами).

Оцифрованный (преобразованный с помощью АЦП) звуковой сигнал обычно не повторяет сам себя и по этой причине плохо сжимается с помощью алгоритмов компрессии без потерь.

Адаптивная разностная компрессия (Adaptive Differential Pulse Code Modulation, ADPCM) используется в основном для сжатия речевых сигналов. Для музыкальных произведений этот алгоритм мало подходит из-за заметных искажений.

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

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

Основные приемы, положенные в основу сжатия информации с помощью стандартов MPEG, базируются на объективно существующих психоакустических ограничениях органов чувств человека. Человеческое ухо способно воспринимать звуковые колебания, лежащие лишь в диапазоне частот 20 – 20000 Гц, причем с возрастом этот диапазон сужается. Методы сжатия звуковых данных, основанные на использовании физиологических особенностей человека, относятся к классу компрессии с потерями. Эти методы не ставят цель абсолютно точного восстановления формы исходных колебаний. Их главная задача – достижение максимального сжатия звукового сигнала при минимальных слышимых искажениях восстановленного после сжатия сигнала.

Звуковой файл можно сжать с помощью компандирования. Название этого метода происходит от английского термина compander, который образован от английских слов: compressing – expanding coder – decoder. Этот метод основан на законе, открытом психологами: если интенсивность раздражителя меняется в геометрической прогрессии, то интенсивность человеческого восприятия меняется в арифметической прогрессии.

Компандирование заключается в компрессии (сжатии) по амплитуде исходного звукового сигнала и последующем его восстановлении с помощью экспандера (расширителя).

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

Установлено, что, если повышать громкость звука в 2, 4, 8 и т. д. раз, то человеческое ухо будет воспринимать этот процесс как линейное увеличение интенсивности звука. Изменение уровня громкости с 1 единицы до 2 единиц столь же заметно для человеческого уха, как и изменение громкости от 50 до 100 единиц. В то же время изменение громкости от 100 единиц до 101 единицы человеком практически не ощущается.

Таким образом, ухо человека логарифмирует громкость слышимых звуков.

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

При 16-битном кодировании звука максимальное значение кода не превышает значение 216. Логарифм этого числа по основанию 2 равен 16. Последнее число может быть закодировано пятью двоичными разрядами (1610 = 100002). Таким образом, для представления информации вместо 16 битов можно использовать лишь 5 битов. Этим достигается сжатие информации. Для воспроизведения компрессированного сигнала его подвергают обратному по сравнению с логарифмированием преобразованию – потенцированию.

Еще один способ сжатия звуковой информации заключается в том, что исходный звуковой сигнал очищается с помощью фильтров от неслышимых компонентов (например, убирают низкие басовые шумы). Затем производится более сложный анализ сигнала: вычисляются и удаляются замаскированные частоты, заглушенные другими мощными сигналами. Таким образом, можно исключить до 70% информации из сигнала, практически не изменив качество его звучания.

Сжатие сигнала также можно получить за счет еще одного приема.

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

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

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

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

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

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

Еще одна возможность компрессии основывается на следующей особенности человеческого слуха. Экспериментально установлено, что в диапазонах частот 20 – 200 Гц и 14 – 20 кГц чувствительность человеческого слуха существенно ниже, чем на частотах 0,2 – 14 кГц. По этой причине допустимо более грубое квантование сигналов в указанных диапазонах частот. На этих частотах для представления непрерывных сигналов двоичными числами требуется меньшее число уровней, а значит и меньшее число битов. Так в среднем диапазоне частот амплитуды кодируются 16 битами, а на частотах, где ухо менее чувствительно – 6 и даже 4 битами.

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

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

Частота кадра (Frame Rate). Стандартная скорость воспроизведения видеосигнала 30 кадров/с (для кино этот показатель составляет 24 кадра/с). Экспериментально установлено, что иллюзия движущегося изображения возникает при частоте смены кадров более 16-ти в секунду. В этом случае человек воспринимает быстроменяющиеся картинки в виде динамичного непрерывного изображения.

Глубина цвета (Color Resolution). Этот показатель определяет количество цветов, одновременно отображаемых на экране. Компьютеры обрабатывают цвет в RGB-формате (красный – зеленый – синий). RGB-формат позволяет путем смешения в разных пропорциях трех основных цветов получить любой другой цвет или оттенок. Для цветовой модели RGB обычно характерны следующие режимы глубины цвета: 8 бит/пиксель (256 цветов), 16 бит/пиксель (65 535 цветов) и 24 бит/пиксель (16,7 миллиона цветов).

Экранное разрешение (Spatial Resolution) или, другими словами, количество точек, из которых состоит изображение на экране. Наиболее часто в настоящее время используется разрешение 640 х 480 точек (пикселей).

Качество изображения (Image Quality). Это комплексный показатель, который вбирает в себя три предыдущих. Требования к качеству зависят от конкретной задачи. Иногда достаточно, чтобы картинка была размером в четверть экрана с палитрой из 256 цветов (8 битов), при скорости воспроизведения 15 кадров/с. В других случаях требуется полноэкранное видео (768576) с палитрой в 16,7 миллиона цветов (24 битов) и кадровой разверткой (30 кадров/с).

Расчеты показывают, что 24-битное цветное видео, при разрешении 640480 пикселей и частоте 30 кадров/с, требует передачи более 26 Мбайтов данных в секунду. Этот поток информации превышает пропускную способность системной шины ЭВМ. Для наглядности приводим здесь эти расчеты.

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

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

Стандарт JPEG (Joint Photographic Experts Group), предложенный Объединенной группой экспертов в области фотографии, позволяет сократить размеры графического файла с неподвижным изображением в 10 – 20 раз. Благодаря специальным процессорам этим методом удается сжимать и движущиеся изображения.

Устаревший стандарт сжатия движущихся изображений AVI (Audio Visual Interleave) позволяет формировать упрощенное видеоизображение, но не на полном экране и со скоростью лишь 15 кадров в секунду. При этом используется всего 160  120 пикселей и 256 цветов.

Наибольшее распространение для сжатия движущихся изображений получил стандарт MPEG.

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

Фрагменты изображений, которые претерпевают изменения, сохраняются при помощи Predicted (расчетных, предсказуемых) кадров. Р-кадры, содержат различия текущего изображения с предыдущим или последующим I-кадром. Р-кадры располагаются между опорными 1-кадрами.

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

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

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

При сжатии изображений (как и при сжатии звуков) используются физиологические особенности человека.

Установлено, что ошибки в изображении заметны глазом (визуально), если они превышают некоторый порог заметности. Различают пространственную и временную заметность искажений изображений.

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

Что касается временного восприятия цвета, то известно, что вариация цветности менее заметны, чем вариация яркости. Наиболее заметны изменения зеленого цвета, затем красного, и наименее заметны изменения синего цвета.

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

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

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

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

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

Качество сжатия варьируется в довольно широких пределах; обычными для современных видеосистем являются коэффициенты сжатия от 1:4 до 1:100.

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

Некоторые сложные алгоритмы кодирования, например алгоритм сжатия видеосигнала MPEG, не могут выполняться в реальном времени (при записи), поэтому кодек MPEG называется асимметричным.