.:: Расположение ::.

codecs.org.ua


.:: Меню ::.

  [Основная]
  [Новости]
  [Кодеки]
  [Технологии]
  [Форматы файлов]
  [Статьи и Обзоры] > ...
  [Утилиты]
  [F.A.Q.]
  [Глосcарий]
  [Ссылки]
  [О проекте]

  [Написать админу]


.:: Реклама ::.


.:: Рейтинг ::.




.:: Реклама ::.


.:: Поиск ::.

.:: Стандарты сжатия видеоданных формата AVI ::.

Автор: Слушатель 3 курса (фамилия не известна)
Дата: 16.12.1999

Необходимость алгоритмов и стандартов сжатия видеоданных возникла с появлением цифровых видеосистем. Ведь для качественной оцифровки телевизионного сигнала с граничной частотой 6 МГц необходимо производить как минимум 12 млн. отсчетов в секунду. При восьмибитном кодировании сигнала создается поток 100-120 Мбит/с. Для компьютерных систем это слишком большой поток (особенно, если учесть уровень компьютерной техники 80-х годов).Поэтому сразу же началась разработка стандартов сжатия видеоизображения, без которых в настоящее время немыслимо цифровое видео.

Содержание

Введение

AVI - Audio Video Interleaved, файловый формат, введенный фирмой Microsoft для использования систем работы с видеоизображениями в среде Windows. В этом формате сектора видео данных чередуются с секторами звуковых данных таким образом, что видеоплеер мог бы поддерживать минимальную буферизацию данных.

Несмотря на то что все большее распространение получает формат MPEG (MPEG стандарты включают MPEG-1, MPEG-2, MPEG-4, и MPEG-7), AVI продолжает оставаться самым популярным для аудио/видео данных на PC. В области ввода и редактирования видео AVI остается стандартом де-факто.

Широкое распространение формат AVI получил после выхода Video for Windows для Windows 3.1 в ноябре 1992 года. AVI является специальным случаем формата RIFF (Resource Interchange File Format). RIFF - универсальный формат для обмена мультимедиа данных, совместно разработанный Microsoft и IBM. Фактически, RIFF - аналог формата IFF, созданного Electronic Arts в 1984 году.

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

В связи с большим количеством ограничений базового стандарта AVI, консорциумом Open Digital Media было разработано расширение формата AVI - OpenDML AVI с учетом особенностей, требуемых для профессионального производства видео. Данные расширения включают поддержку полей (не только кадров), размеры файлов больше 1 Гб, временной код и многие другие особенности. Microsoft включила поддержку OpenDML AVI в DirectShow 5.1 (ActiveMovie 5.1). Это расширение также используется в различных профессиональных приложениях для производства видео на PC, в частности DigiSuite(Matrox). Начиная со 2 октября 1997г., спецификация OpenDML AVI версии 1.02 (датированная 28 февраля 1996г.) доступна на веб-сайте Matrox Electronic Systems, Ltd. : www.matrox.com/videoweb/odmlff2.htm



Представление цвета в формате AVI

В стандарте AVI не все несжатые кадры одинаковы. Существуют различные цветовые представления точек изображения. Некоторые из них являются стандартами и поддерживаются во всех системах, другие требуют специальных драйверов. Большинство компонентов Microsoft Windows идентифицируют представление цвета по четырехсимвольному коду (FOURCC), например, 'RGB8' или 'YUY2', другие, например, DIB, не используют четырехсимвольный код для цветовых форматов.
24 БИТ RGB (Стандарт де-факто).

24-разрядный RGB - наиболее известный формат представления цвета, поддерживаемый всеми основными графическими программами. В 24 битах RGB пиксел представлен как три байта, один байт для красного компонента, один байт для зеленого компонента, и один для синего.

Например:
255 0 0 (яркий красный пиксел)
0 255 0 (яркий зеленый пиксел)
0 0 255 (яркий синий пиксел)
0 0 0 (черный пиксел)
255 255 255 (белый пиксел)
128 128 128 (серый пиксел)
и т.д.

Другие цветные форматы:
8 бит полутоновый Y8
9 бит бита YUV9
12 бит BTYUV 4:1:1
12 бит YUV2 4:2:2
8 бит YUV12 16 RGB (использует цветовую палитру)
15 бит RGB (16 бит с значащим разрядным нулем, 5 бит для красного, 5 для зеленого и 5 для синего)
16 бит RGB (16 бит, 5 бит для красного, 6 для зеленого и 5 для синего)
24 бит RGB – (описанный выше)
32 бит RGB (значащий байт нулевой, 8 бит для красного, 8 для зеленого и 8 для синего)

YUV – формат представления цвета, используемый в европейском вещании телевизионного стандарта PAL, который был первоначально представлен в Англии и Германии в 1967 году. PAL используется большинством европейских государств и многими странами во всем мире. Соединенные Штаты и Япония используют стандарт NTSC, Франция, Россия и некоторые другие государства - SECAM. Аналоговые видеосистемы, такие как NTSC, PAL и SECAM, передают цветные видеосигналы как сигнал яркости (Y) и два сигнала цветовой разности (U и V). Если, R, G, и B - красные, зеленые, и синие компоненты, то:

Y = 0.299 R + 0.587 G + 0.114 B

U = 0.493 (B - Y)

V = 0.877 (R - Y)

Информация о цвете передается мозгу по трем каналам: каналу яркости, сине-желтому и красно-зеленому каналу. Например, в то время как мы различаем сине-зеленые оттенки, мы никогда не почувствуем оттенок, который является одновременно синим и желтым. Возможно поэтому YUV настолько распространена. Эта система представления цвета используется такими цветными форматами, как YUV9 или YUV2.

Вывод
И неподвижные изображения BMP и AVI файлы могут быть сохранены в различных цветных форматах. В то время как 24 бит RGB поддерживается почти повсеместно, нет никакой гарантии, что ваше программное обеспечение или драйверы воспроизведения AVI поддержат менее известные форматы.



Технологии Сжатия Видео

Существуют несколько основных технологий, реализованных в различных кодеках AVI. Например, Indeo 3.2 и Cinepak используют векторную квантизацию, международные стандарты MPEG-1, MPEG-2, MPEG-4, H.261 и H.263 - комбинацию дискретного косинус- преобразования и компенсацию движения. Некоторые из кодеков последнего поколения основаны на дискретном преобразовании элементарной волны (Discrete Wavelet Transform or DWT ). Другие технологии включают алгоритм рекурсивного сжатия изображения, разработанный кампанией Iterated Systems.

1. СЖАТИЕ БЕЗ ПОТЕРЬ

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

2. СЖАТИЕ С ПОТЕРЯМИ

Часть информации теряется в процессе сжатия. Принцип сжатия с потерями основан на ограниченных возможностях человеческого зрения.

СЖАТИЕ С ПРОЦЕНТНЫМИ ПОТЕРЯМИ

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

СЖАТИЕ С ЕСТЕСТВЕННЫМИ ПОТЕРЯМИ

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

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

СЖАТИЕ С НЕЕСТЕСТВЕННЫМИ ПОТЕРЯМИ

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

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

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

Последовательное кодирование длины (ПКД) Кодек, использующий последовательное кодирование длины - Microsoft RLE (MRLE)

ПКД также используется, для кодирования коэффициентов DCT в блоках дискретного косинус - преобразования, которые входят в реализацию форматов MPEG, H.261, H.263, и JPEG.

Особенности:

  1. Хорошо подходит для черно-белых или 8 разрядных графических изображений, таких как кадры анимации.
  2. Не подходит для естественных изображений с высоким разрешением.

КРАТКОЕ ОПИСАНИЕ

ПКД кодирует последовательность пикселей одинакового цвета (например, черного или белого) как одиночное ключевое слово. Так, например, последовательность пикселей:

77 77 77 77 77 77 77

может быть закодирована как

7 77 (семь 77).

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

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

Векторная квантизация Кодеки, использующие векторную квантизацию: Indeo 3.2, Cinepak.

Indeo и Cinepak работают с YUV представлением цвета.

Особенности:
  1. Процесс кодирования в вычислительном отношении интенсивен и не может быть выполнен в реальном времени без специализированных аппаратных средств
  2. Быстрый процесс декодирования
  3. Появление блочных артефактов при высоком сжатии
КРАТКОЕ ОПИСАНИЕ

При векторной квантизации изображение делится на блоки (4x4 пикселя для Indeo и Cinepak). Как правило, некоторые блоки подобны другим блокам, хотя обычно, они не идентичны. Кодер идентифицирует класс подобных блоков и заменяет их на "универсальный" блочный представитель, составляет поисковую таблицу коротких двоичных кодов к "универсальным" блокам. Как правило, самые короткие двоичные коды представляют наиболее общие классы блоков в изображении. При векторной квантизации (VQ) декодер использует поисковую таблицу, чтобы транслировать приблизительное изображение, составленное из "универсальных" блоков согласно поисковой таблице.

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

Дискретное косинус преобразование (ДКП) Кодеки, использующие дискретное косинус преобразование:
  • Motion JPEG
  • Editable MPEG
  • MPEG-1
  • MPEG-2
  • MPEG-4
  • H.261
  • H.263
  • H.263+
Особенности:
  1. Появление блочных артефактов при высоком сжатии
  2. Излом острых граней. Случайное размытие в острых граней
  3. Большие требования к вычислительным мощностям
КРАТКОЕ ОПИСАНИЕ

ДКП - широко используемое преобразование при сжатии изображения. Двумерное ДКП применяется к блокам 8*8 пикселей.

Человеческий глаз менее чувствителен к высоким компонентам частоты изображения, представленного более высокими коэффициентами ДКП. Больший коэффициент квантования обычно применяется к этим более высоким компонентам частоты. Фактическая стандартная матрица квантования (матрица 64 коэффициентов квантования, один для каждого из 64 коэффициентов ДКП) в JPEG стандарте имеет более высокие коэффициенты квантования для более высокой частоты коэффициенты ДКП. Квантуемые коэффициенты ДКП- тогда выполняемая длина, закодированная как коды переменной длины, которые указывают некоторое число нулевых коэффициентов, сопровождаемых ненулевым коэффициентом. Например, код выполняемой - длины мог бы указывать 4 нулевых коэффициента, сопровождаемые ненулевым коэффициентом уровня 2. Короткие коды переменной длины (например 0110) используются для общих комбинаций, последовательностей из нулей и уровней ненулевого коэффициента. Более длинные коды переменной длины (например 0000001101) используются для менее общих комбинаций, последовательностей из нулей и уровней ненулевого коэффициента. Таким образом, существенное сжатие изображения возможно. ДКП матрица NxN, строки которой - функции косинуса:



где



N - число выборок в блоке

Дискретное преобразование элементарной волны (DWT- Discrete Wavelet Transform)
Кодеки, использующие DWT:
  • VDOWAVE VDONET'S
  • VxTreme
  • Intel Indeo 5.x
  • Intel Indeo 4.x
Особенности:
  1. В отличие от ДКП, большинство DWT кодеков осуществляют преобразование без блочных артефактов
  2. Алгоритмы сжатия, основанные на DWT, часто превосходят по быстродействию ДКП
  3. Субъективное качество видеоизображений, сжатых с DWT, может быть лучше, чем при ДКП с таким же коэффициентом сжатия
  4. По мере увеличения сжатия на острых гранях появляются размывающие и окружающие артефакты. Этот недостаток является общим с ДКП
КРАТКОЕ ОПИСАНИЕ

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

Входной сигнал - x [n] (ряд выборок, индексированных по n).

Haar НПФ (среднее число двух последовательных выборок):



Haar ВПФ (различие двух последовательных выборок):



Заметим, что:





Последовательности вывода g [n] и h [n] содержат избыточную информацию. Их можно разложить на две последовательности, опустив четные или нечетные члены, после чего все еще возможно воспроизведение первоначального входного сигнала x[n]. Обычно опускаются нечетные выборки. Входной сигнал x [n] может быть воспроизведен полностью по



и т.д.

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

Грубое приближение иногда называется основным уровнем, а добавление деталей - уровнем расширения. Вывод ФВЧ h [n], может подаваться на другую пару фильтров.

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

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

Алгоритмы, основанные на DWT, позволяют добиться лучших результатов, чем ДКП. В последнее время, DWT становится все более популярным.

Контур - основанное кодирование изображения.

Примером контура - основанного кодирования изображения может служить Crystal Net's Surface Fitting Method (SFM). Стандарт MPEG-4 также включает некоторые идеи, связанные с контур - основанным кодированием изображения.

КРАТКОЕ ОПИСАНИЕ

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

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

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

Контур - основанное кодирование - одна из новейших технологий сжатия изображений (май 1999г.). Выявление контуров остается нерешенной задачей.

Достигая более высокого сжатия, контур - основанное кодирование изображения может обходить проблемы, с которыми сталкиваются ДКП (JPEG, MPEG, H.261, H.263, DV, и т.д.) и DWT (Intel Indeo, VDONet VDOWave, и т.д.).

Кодирование разности кадров
Кодек, использующий кодирование разности кадров - Cinepak.
Особенности:

Может достигать лучшего сжатия, чем независимое кодирование отдельных кадров.
Ошибки накапливаются в кадрах после ключевого кадра, в конечном счете, требуя следующий ключевой кадр. (см. ниже)
КРАТКОЕ ОПИСАНИЕ

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

Разности кадров кодируются при помощи алгоритмов сжатия неподвижных изображений (DWT, ДКП). Ключевые кадры сжимаются независимо от предыдущих, что ограничивает накопленные ошибки и делает возможным поиск в пределах потока видео. Например, в широко используемом кодеке Cinepak ключевой кадр устанавливается каждые 15 кадров.

Компенсация движения (КД)

Кодеки, использующие КД:
  • ClearVideo (RealVideo) Fractal Video Codec от Iterated Systems
  • VDOWave от VDONet
  • VxTreme
  • MPEG-1,2, и 4
  • H.261
  • H.263
  • H.263+
Особенности:
Сжатия видео выше, чем при кодировании разности кадров.
Стадия кодирования алгоритма КД в вычислительном отношении интенсивна.
Схема КД, используемая в международных стандартах MPEG, H.261, и H.263 работает лучше всего для сцен с ограниченным движением.

КРАТКОЕ ОПИСАНИЕ

Стандарты MPEG-1, MPEG-2, MPEG-4, H.261 и H.263, основанные на ДКП, используют КД, Iterated Systems ClearVideo (Real Video), VDOWave и VxTreme's - различные формы КД. Метод КД, используемый в MPEG, H.261 и H.263, работает только для переводного движения, т.е. для объектов, перемещающихся поперек фона или панорамирования камеры, но практически не работает для вращения объектов, изменения их размеров или увеличения камеры (см. ниже). Существуют и альтернативные формы КД, обрабатывающие вращательное движение, масштабирование, искажение и другие виды движения в сцене.

Распознавание объектов - нерешенная проблема в обработке изображения. При сжатии, изображение делится на блоки (16x16 пикселей в MPEG-1). Для каждого блока кодируется вектор движения, указывающий на блок в предыдущем или следующем кадре, который схож с кодируемым блоком. Блок ссылки может совпадать с исходным (отсутствие движения) или отличаться от него (движение). Кодеку не требуется распознавать присутствие шара или другого объекта. Он лишь сравнивает блоки пикселей в декодированном кадре и кадре ссылки.

Сжатие достигается путем пересылки или сохранения только вектора движения вместо значений пикселей для полного блока. Кодированные ("предсказанные") блоки формируют декодируемый кадр. Блоком ссылки может быть любой 16x16 блок пикселей в кадре ссылки, который больше всего схож с кодированным блоком. Кадр ссылки должен быть декодирован до начала декодирования текущего кадра. Однако, кадр ссылки не обязательно должен идти перед текущим декодируемым кадром. Фактически, кадром ссылки может быть будущий кадр. MPEG учитывает это через так называемый B (двунаправленный предсказанный) кадр.

В большинстве блоков, как в примере с шаром на статическом фоне, движение отсутствует. Для этих случаев, векторы движения - нулевые.

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

Пример:



Четыре блока со связанными векторами движения (4, -4, 0, и 0). Верхний левый блок напоминает верхний правый блок в области ссылки (где шар был). Верхний правый блок напоминает верхнюю левую область в области ссылки. Более низкие левые и более низкие правые блоки были неизменны. В этом простом примере, вертикальное смещение нулевое и игнорируется. В этом простом примере, область может быть декодирована, используя один векторы движения. В большем количестве общих случаев, имеется ошибка между предсказанным кадром и текущим кадром. Эта ошибка кодирована, используя все еще схему сжатия изображения(образа) типа блока ДКП.

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



Основные кодеки формата AVI

Microsoft Run Length Encoding.
Microsoft RLE поддерживает только 8 разрядов цвета, максимум 256 цветов. Использует алгоритм последовательного кодирования длины.

Cinepak
Один из старейших кодеков, появившихся на рынке. Первоначально был разработан фирмой SuperMac. Однако, впоследствии был переработан другой фирмой – Radius. Свою популярность кодек получил благодаря использованию минимальных ресурсов процессора. Максимальный коэффициент компрессии составляет 10:1. Кодек выдает среднее качество видеоизображения из-за чрезмерной пикселеризации (изображение выглядит “шероховатым”). К недостаткам кодека также относится изменение насыщенности цвета в видеоизображении, что влечет за собой определенный визуальный эффект – изображение становится более желтым. Cinepak – наиболее асимметричный кодек. Кодирует видеоизображение в 8- и 24-битном разрешении цвета. Алгоритм сжатия использует векторную квантизацию (vector quantization) и межкадровую разность. Плохо работает с видеоизображением, частота воспроизведения которого превышает 15 кадров в секунду. Кодек хорошо сжимает синтезированное динамическое видеоизображения – 2D и 3D анимацию. В случае черно-белого видеоизображения, кодек представляет возможность произвести сжатие в 8-битном режиме с 256 оттенками серого.

В настоящее время корпорация Compression Technologies продает улучшенный кодек CinepakPro, в котором усранены основные проблемы которые встречались у стандартного Cinepak. CinepakPro полностью совместим с Cinepak.

Motion JPEG Большинство систем захвата и редактирования видео на PC используют стандарт сжатия видео Motion JPEG. В Motion JPEG, каждый кадр видео сжимается отдельно, используя алгоритм JPEG сжатия неподвижных изображений. Алгоритмы, аналогичные разности кадров или компенсации движения не используются. Это позволяет производить точное редактирование кадров без потери качества изображения при возможном редактировании.

Ситуация в отношении стандарта для Motion JPEG усложнена тем, что отсутствует промышленный стандарт для Motion JPEG. Microsoft имеет Microsoft Motion JPEG кодек и JPEG DIB. Расширения OpenDML Avi формата AVI также включают поддержку Motion JPEG. Motion JPEG обычно использует четырехсимвольный код 'MJPG'.

Motion JPEG используется при редактировании и создании видео, но редко для его распространения.

Editable MPEG
По крайней мере две компании определили стандарт Editable MPEG в AVI файлах. Xing Technology editable MPEG AVI использует четырехсимвольный код XMPG. Компания Sigma Design определяет его, используя четырехсимвольный код MPGI. Данный стандарт соответствует стандарту MPEG, за исключением компенсации движения. Во многом он похож на Motion JPEG.

VDOWave или VDOLIVE от VDONET
Основанный на преобразовании элементарной волны кодек видео. Microsoft лицензировал VDOWAVE как часть NetShow. Имеются две версии VDOWAVE кодер-декодера. VDOWave 2.0 - кодек фиксированной задержки пакетов в канале , который использует Microsoft, четырехсимвольный код VDOM.. VDOWave 3.0 - "масштабируемый" кодек видео. Этот кодек использует Microsoft четырехсимвольный код (FOURCC) VDOW. В NetShow 2.0, автономная установка клиентов устанавливает VDOWAVE декодер. VDOWave использует комбинацию алгоритмов сжатия элементарной волны и компенсации движения.

Intel Indeo 3.1/3.2
Один из старейших кодеков, появившихся на рынке. Качество сжатого видеоизображения немного лучше, чем у Cinepak. Однако, кодек более требователен к ресурсам процессора. Indeo 3.1/3.2 представляет собой менее асимметричный кодек – время компрессии и декомпрессии видеоизображения примерно равны. Максимальный коэффициент компрессии составляет 15:1. Кодирует видеоизображение в 24-битном разрешении цвета. Алгоритм сжатия использует векторную квантизацию и межкадровую разность. Кодек наиболее подходит для сжатия изображения с “говорящими головами”. Процесс сжатия видеоизображения на порядок быстрее, чем у Cinepak. Видеоизображение, сжатое при помощи кодека Indeo R3.2, имеет цветовые артефакты – изображение расплывается и получает красно-синий оттенок.

Indeo 4.1
Indeo Indeo Video Interactive, Indeo 4.1, является следующей принципиально новой версией кодека от Intel, основанной на гибридном алгоритме DWT. Indeo 4.1 поддерживает множество особенностей в дополнение к новому алгоритму сжатия, например прозрачность. При низкой скорости передачи данных при применении алгоритмов , использующих дискретное преобразование элементарной волны (DWT), проявляется размытие в гранях объектов и также артефакты "окружения" около граней, но нет блочных артефактов, явно видимых при ДКП.

Indeo Video Interactive 5.x
В настоящее время Intel распространяет Indeo 5.10 co своего веб- сайта: http://developer.intel.com/ial/indeo/video/.

Indeo 5.1 использует новый улучшенный алгоритм DWT для увеличения качества видео. Indeo 5.х включает такие особенности как прогрессивная загрузки для Internet, прозрачность, спрайты, и т.д.

Хронология выпуска Indeo Видео 5.x:

  • Intel Indeo 5.10 (02 февраля 1999г.)

  • Intel Indeo 5.06 (1998г.)

  • Intel Indeo 5.0 (1997)


  • Все выпуски Indeo 5.x, используют четырехсимвольный код IV50.

    ClearVideo ( RealVideo)
    ClearVideo - кодек видео от Iterated Systems. Компания Iterated Systems также лицензировала технологию ClearVideo технологию Progressive Networks, изготовителю RealAudio, под названием RealVideo. ClearVideo использует рекурсивное сжатие. Рекурсивное кодирование видео достаточно медленное (требовательно к вычислительным ресурсам). Качество видео аналогично или несколько выше MPEG-1.

    SFM (Surface Fitting Method)
    Корпорация Crystal Net стремится лицензировать технологию SFM. Этот кодек рассчитан на использование при большой задержке пакетов в канале для IDSN и коммутируемого соединения. SFM использует алгоритм контур-основанного кодирования изображения.

    QPEG
    Q-group производит avi кодек известный как QPEG. На 6/27/97, QPEG поддерживал 8 разрядов цвета. Известно, что Q-группа планирует поддержку 16 и 24 разряда цвета, MMX поддержку, и другие дополнительные особенности в будущем. Q-группа также работает НАД MPEG-4 для PC.

    H.261
    H.261 - рекомендация, разработанная и оптимизированная для передачи цветного видеоизображения по каналам данных системы IDSN со скоростями px64 Кбит/с и фиксированными значениями задержек пакетов в канале. В H.261 реализована комбинация алгоритмов ДКП и компенсации движения. В алгоритме применяется формат CIF (Common Intermediate format) c разрешением 352х288 пикселей для яркостного сигнала или QCIF (Quarter CIF) с четвертной частью разрешения CIF (то есть 176х144). Скорость кадровой развертки равна 29.97 кадра в секунду. Необходимо отметить, что при использовании формата CIF, цветоразностные сигналы передаются с разрешением 176х144 пиксела, каждый пиксел описывается восемью битами.

    H.263
    H.263 - стандарт, основанный на ДКП и компенсации движения. H.263 имеет множество усовершенствований, главным образом в области компенсации движения, по сравнению с более раним стандартом H.261. Это позволяет добиться еще более высокого сжатия видео.

    MPEG-4
    MPEG-4 - новый международный стандарт от Международной Организации Стандартизации. Алгоритм MPEG-4 близок к рекомендации H.263. Имеются три версии MPEG-4 для Windows от Microsoft. Самой современной, от 25 октября, 1999 г., является Microsoft MPEG-4 Версия 3. Аудиовизуальный сигнал в MPEG-4 можно передавать в реальном времени потоком не более 48-64 кбит/с.

    Lightning Strike (Infinop)
    Infinop предлагает основанный на алгоритме преобразования элементарной волны кодек видео под названием Lightning Strike (удар молнии). Декодер Lightning Strike, совместимый с Microsoft NetShow доступен на Веб сайте Infinop. Насколько известно, кодер Lightning Strike не распространяется свободно.

    VxTreme
    VxTreme был приобретен Microsoft в сентябре 1997. Microsoft вложил капитал в несколько компаний, занимающихся разработкой кодеков с большими значениями задержек пакетов в канале в течение второй половины 1997, таких как VxTreme, VDONet, Progressive Networks/Real Networks, и Lernout и Hauspie Speech Products. VxTreme использует алгоритм сжатия, основанный на преобразовании элементарной волны. Субъективное качество изображения сжатого VxTreme достаточно хорошее, намного выше кодеков, основанных на ДКП и VDOWAVE. Текст типа заголовков кинофильма и титров кодирует очень хорошо, в отличие от ДКП, где основной проблемой является сохранение острых граней текста. Вообще, wavelet сжатие изображения сталкивается с проблемами острых граней тоже. По качеству изображения VxTreme не сильно отличается от MPEG-4 или H.261.



    Сравнение форматов сжатия видео

    Cinepak Codec by Radius, качество сжатия 100


    Cinepak Codec by Radius, качество сжатия 50


    Intel Indeo 5.10, качество сжатия 100


    Intel Indeo 5.10, качество сжатия 25


    Microsoft RLE, качество сжатия 100


    Microsoft RLE, качество сжатия 25


    Microsoft video 1, качество сжатия 100


    Microsoft video 1, качество сжатия 25


    Intel indeo video 3.2, качество сжатия 100


    Intel indeo video 3.2, качество сжатия 25


    PSNR

    -соотношение пиковый сигнал/уровень шума. Используется для определения качество сжатых изображений. Математический эквивалент среднеквадратичной ошибки (MSE) и квадратного корня из среднеквадратичной ошибки(RMSE). PSNR измеряется в децибелах в логарифмическом масштабе.

    Сжатое изображение с уровнем PSNR свыше 35 дБ в связи с особенностями человеческого зрения неотличимо от оригинала, с уровнем от 30 до 35 дБ показывает хорошее качество изображения, с уровнем PSNR от 25 до 30 дБ – приемлемое качество изображения, с уровнем PSNR ниже 20 дБ – неприемлемое качество изображения.

    График зависимости качества, воспринимаемого человеческим глазом и PSNR.



    Средняя квадратичная ошибка – квадрат разности значений пикселей исходного и сжатого изображения. Если i,j-координаты и N- общее число пикселей.

    ,

    где P и Q – исходное и сжатое изображение.

    Соответственно:

    .

    Отношение пиковый сигнал/уровень шума в децибелах:

    ,

    где b – представление пиксела в битах.



    Четырехсимвольный код Micrisoft(FOURCC)

    Четырехсимвольный код или FOURCC - код в четыре байта, определенный Microsoft как часть Видео для Windows, чтобы идентифицировать различные типы данных видео. Microsoft определил FOURCC'S, для уникальной идентификации представления пиксела и типа видео кодека в Видео для Windows. Например, FOURCC 'CVID' идентифицирует Cinepak (прежде Compact Video) видео кодек. AVI файлы содержат FOURCC для видео кодека в заголовке потока видео. В дополнение к кодекам, четырехсимвольный код идентифицирует представление пиксела, используемые в несжатых изображениях и видео. Например, коды 'YUY2' идентифицируют представление пикселей в YUV модели представления цвета. Эти коды используются в связи с помощью интерфейса с графическими платами. Video for Vindows, DCI, и Direct Draw все используют FOURCC.


    Hosted by:
    jedi.wader
    2003-2009 © Hamster Entertainment
    Видео КоДеки

    Правила и Условия Использования