Разработка программы компрессий цифрового видеосигнала

    ВВЕДЕНИЕ 
 

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

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

    Критерии  качества преобразованного и передаваемого  видеоматериала в современных системах обработки и передачи видеоинформации достаточно высоки, и требуемое качество видеосигнала должно быть не хуже, чем при обычном телевещании. Однако, как правило, эти требования вступают в противоречие с требованиями приемлемой производительности алгоритма компрессии и стоимости арендуемого канала связи. На сегодняшний день, по существу, для достижения высокого качества видеосигнала необходим канал, пропускная способность которого, с учетом наличия большого числа пользователей в данном канале, обеспечивала бы в пересчете на одного пользователя ту же эквивалентную скорость передачи информации, которая предоставляется при передаче телевизионной картинки (=270 Мбит/с). Практически это означает, что при реальном трафике, совместно используемом большим числом клиентов, требуемая пропускная способность канала должна составлять единицы и десятки Гбит/с [1].

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

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

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

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

    Главным мотивирующим фактором развития алгоритмов компрессии видеоданных можно считать:

    - стоимостные характеристики оборудования;

    - доступность объемов систем хранения данных;

    - пропускную способность цифровых коммуникаций;

    - оценку параметров движения.

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

    Основной  проблемой в работе с подвижными изображениями являются большие  объемы данных, с которыми приходится иметь дело. Например, при записи на компакт-диск в среднем качестве на него можно поместить несколько тысяч фотографий, более 10 часов музыки и всего полчаса видео. Видео телевизионного формата – 720*576 точек и 25 кадров в секунду в системе RGB – требует потока данных примерно 240Мбит/с. При этом обычные методы сжатия, ориентированные на кодирование отдельных кадров (в том числе и JPEG), не спасают положения, поскольку даже при уменьшении битового потока в 10-20 раз он остается чересчур большим для практического использования.

    При сжатии подвижных изображении учитывается наличие в них нескольких типов избыточности:

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

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

    - подобие между кадрами – использование  того факта, что при скорости 25 кадров в секунду различие  в соседних кадрах очень незначительно.

    Появилось достаточно большое число внутрифирменных  стандартов.

    В данном дипломном проекте рассмотрим существующие стандарты в области цифрового видео, и алгоритм компрессии цифрового видеосигнала. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

    1. ОБЩАЯ ЧАСТЬ 

    
    1. Классификация устройств обработки  видеосигналов
 
 

    Сегодня словами "видеообработка" и "цифровое видео" уже никого не удивишь. За последнее десятилетие устройства обработки видеосигналов прошли огромный путь развития, появилось множество специальных терминов и способов обработки видеоизображения. Мы попытаемся рассказать о некоторых устройствах и методах обработки видеосигналов. Все устройства обработки видеосигналов (УОВ) можно разделить на несколько категорий:

  1. Специализированные устройства, выполняющие ограниченный набор функций и работающие, как правило, в реальном времени. К этой категории относятся всевозможные видеомикшеры, видеокоммутаторы, генераторы спецэффектов, синхронизаторы, транскодеры и т. д.
  2. Устройства обработки видеосигналов на базе компьютеров PC, Macintosh, Silicon Graphics, Amiga, Alfa DEC и т. д. Обычно эти устройства выполняются в виде плат или внешних блоков активно взаимодействующих с компьютером при помощи программного обеспечения. Такие устройства редко работают в реальном времени, но имеют практически неограниченные возможности.
  3. Управляющие и вспомогательные устройства, которые управляют видеоаппаратурой (видеомагнитофонами, видеокамерами, видеомикшерами, коммутаторами и т. д.). Они могут быть как автономными, так и входить в состав компьютерного видеокомплекса. К этой категории относятся видеомонтажные контроллеры, платы линейного видеомонтажа, управляющие системы и т. д.

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

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

    
    1. Как устроен телевизионный сигнал
 
 

    Известно, что человеческий глаз воспринимает как единое целое красную (Red), зеленую (Green) и синюю (Blue) части видимого спектра. Таким образом, цветовое восприятие человека трехкомпонентное. Конечно, мы воспринимаем больше цветовых оттенков - считается, что 16 миллионов - но для нас, в силу особенностей цветового восприятия, все они сводятся к комбинациям этих трех главных цветов (в теории цвета их называют опорными). Исходя из этого, все телевизионные камеры и другие технические датчики цветных изображений формируют три сигнала - R, G, B, а в телевизионных и компьютерных мониторах экран одновременно сканируют три электронных луча, вызывая световые вспышки красного, зеленого и синего цветов. Глаз же при этом воспринимает только результирующее изображение во всем богатстве цветов реального мира.

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

    Y = 0.299R + 0.587G + 0.114B, U = R - Y, V = B - Y, при этом U и V передаются с разрешением, в два раза меньшим, чем Y. Такое уменьшение объема передаваемой информации позволяет строить более дешевые системы. Выбор вышеуказанных коэффициентов преобразования определяется жестким требованием двусторонней совместимости черно-белых и цветных приемников - яркостной сигнал Y совпадает с формируемым в ч/б системах, ч/б приемники воспринимают только его. Что касается цветовых сигналов U и V, то они добавляются к яркостному сигналу путем модуляции специального гармонического сигнала (цветовой поднесущей) на частоте, лежащей в пределах спектра сигнала Y. В результате полосы яркостного сигнала и полного видеосигнала совпадают.

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

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

    R = Y + U, B = Y + V, G = Y - 0.509U - 0.194V

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

    В настоящее время в эксплуатации находятся три совместимых системы  цветного телевидения - NTSC, PAL, SECAM. Основные различия между ними заключаются  в конкретных методах кодирования  телевизионного сигнала (см. таблицу).

    Таблица 1.1

Тип системы NTSC PAL SECAM
Вертикальная  частота развертки, Гц 60 50 50
Горизонтальная  частота развертки, кГц 15.374 15.625 15.625
Число строк в кадре 525 625 625
Число видимых (активных) строк в кадре 480 576 576
Тип модуляции  цветовой поднесущей Амплитудная Амплитудная Частотная
Полоса  видеосигнала, МГц 4.2 5 для  B/G, 5.5 для I, 6 для D/K
Частота цветовой поднесущей, МГц 3.60 4.43 4.41 по U, 4.25 по V
Разнос  несущих видео/звук, МГц 4.5 5.5 для  B/G, 6 для I, 6.5 для D/K
Полная  ширина сигнала, МГц 6 7 для  B/G, 8 для I/D/K

    Кратко  остановимся на особенностях этих систем, рассматривая их в хронологическом  порядке.

    NTSC (National Television System Color) - первая система цветного телевидения, нашедшая практическое применение. Она была разработана в США и уже в 1953 г. принята для вещания, а в настоящее время вещание по этой системе ведется также в Канаде, большинстве стран Центральной и Южной Америки, Японии, Южной Корее и Тайване. Именно при ее создании были выработаны основные принципы передачи цвета в телевидении. В NTSC каждая телевизионная строка содержит составляющую яркости Y и два сигнала цветности EI = 0.737U - 0.268V, EQ=0.478U+0.413V. Здесь переход от осей цветового кодирования U, V к осям I, Q обусловлен необходимостью сужения ширины полос цветовых поднесущих всего до ± 0.5 Мгц (в NTSC используется самая узкая полоса видеосигнала). Поскольку глаз человека мелкие детали зеленого и пурпурного цветов (ось Q) воспринимает как неокрашеные (ось I - перпендикулярная к Q), то для сигналов EQ и EI это удается без дополнительных потерь в разрешении.

    Цветоразностные сигналы передаются путем амплитудной  модуляции поднесущих на одной и  той же частоте, но с фазовым сдвигом  на 90° . Последнее обстоятельство является принципиально важным для разделения сигналов при приеме. Однако, из-за неизбежных нелинейных искажений в канале передачи поднесущие оказываются промодулированными сигналом яркости как по амплитуде, так и по фазе. В результате в зависимости от яркости участков изображений изменяются их цветовой тон. Например, человеческие лица на изображении окрашиваются в красноватый цвет в тенях и в зеленоватый - на освещенных участках. Это и является основным недостатком системы NTSC.C целью его устранения немецкой фирмой Telefunken в 1963 г. была разработана система PAL (Phase Alternation Line).

    Здесь использована аналогичная амплитудная  модуляция, цветоразностных сигналов EU=0.877U и EV=0.493V с фазовым сдвигом на 90°, но через строку дополнительно производится изменение знака амплитуды составляющей EU. В результате при восстановлении в декодере цветовые составляющие надежно разделяются сложением/вычитанием сигналов цветности последовательных телевизионных строк, и паразитная яркостная модуляция приводит лишь к некоторому изменению цветовой насыщенности. Усреднение сигналов двух строк обеспечивает также повышение отношения сигнал/шум, но приводит к снижению вертикальной четкости в два раза. Впрочем частично последнее компенсируется увеличением числа телевизионных строк разложения. Система PAL принята в большинстве стран Западной Европы, Африки и Азии, включая Китай, Австралию и Новую Зеландию.

    SECAM (SEquentiel Couleur A Memoire) первоначально была предложена во Франции еще в 1954 г., но регулярное вещание после длительных доработок было начато только в 1967 одновременно во Франции и СССР. В настоящее время она принята также в Восточной Европе, Монако, Люксембурге, Иране, Ираке и некоторых других странах. Основная особенность системы - поочередная, через строку, передача цветоразностных сигналов (DR= 1.9U, DB=1.5V) с дальнейшим восстановлением в декодере путем повторения строк. При этом в отличие от PAL и NTSC используется частотная модуляция поднесущих. В результате цветовой тон и насыщенность не зависят от освещенности, но на резких переходах яркости возникают цветовые окантовки. Обычно после ярких участков изображения окантовка имеет синий цвет, а после темных - желтый. Кроме того, как и в системе PAL, цветовая четкость по вертикали снижена вдвое.

    Таковы  общие принципы кодирования цвета  в различных видеосистемах телевидения. Но этим многообразие стандартов не ограничивается. Дело в том, что для формирования полного телевизионного сигнала к видео необходимо добавить звук, а полученный так называемый низкочастотный телевизионный сигнал передать через эфир путем модуляции гармоники одного из доступных радиоканалов (48,5...66 МГц - первый частотный диапазон, 76...100 МГц - второй частотный диапазон, 174...230 МГц - третий частотный диапазон, 470...790 МГц - четвертый частотный диапазон). И здесь даже в рамках одной системы существуют различия, связанные с конкретной шириной спектра видеосигнала и его разносом со звуковой частью, полярностью амплитудной модуляции радиоканала изображения и типом модуляции радиоканала звука. В таблице представлены основные параметры телевизионных стандартов стран мира.

    Таблица 1.2

Стандарт Число строк Ширина канала, МГц Полоса в/сигнала, МГц Разнос видео/ звук, МГц Полярность  модуляции видео Тип модуляции  несущей звука
A 405 5 3 3.5 + AM
B 625 7 5 5.5 - ЧМ
C 625 7 5 5.5 + AM
D 625 8 6 6.5 - ЧМ
E 819 14 10 11.15 + AM
F 819 7 5 5.5 + AM
G 625 8 5 5.5 - ЧМ
H 625 8 5 5.5 - ЧМ
I 625 8 5.5 6 - ЧМ
K 625 8 6 6.5 - ЧМ
L 625 8 6 6.5 + AM
M 525 6 4.2 4.5 - ЧМ
N 625 6 4.2 4.5 - ЧМ
 

           

    Нелишне напомнить, что в России принят стандарт SECAM D/K (первая буква относится к диапазону метровых волн, вторая - дециметровых), во Франции - SECAM E/L, Монако - SECAM C/L, Иране - SECAM B, Германии - PAL B/G, Англии - PAL A/I, Бельгии - PAL B/H, Бразилии - PAL M/M, Китае - PAL D/K, в США, Японии и Тайване - NTSC M/M.  

    В заключении отметим, что французский  и российский SECAM существенно отличаются в модуляции несущего радиосигнала - как по видео, так и по звуку. А на уровне низкочастотных сигналов отличий нет. Основное отличие между SECAM B/G и D/K - в частоте разноса звука от видео. В то же время с точки зрения модуляции радиосигналов отличий между PAL D/K и SECAM D/K нет. Это позволяет использовать телевизионный тюнер, настроенный на PAL D/K, для выделения нашего SECAM из высокочастотного сигнала. Очевидно, что полученный при этом низкочастотный сигнал все же необходимо подавать именно на SECAM-декодер.  

    
    1. Форматы представления видеосигнала
 
 

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

    В бытовых устройствах ограничиваются более простыми полосовыми фильтрами, заметно снижающими четкость изображений. Так в видеомагнитофонах и  камерах классов VHS (Video Home System) и Video-8 используются только композитные видеосигналы, при этом разрешение ограничено 240 телевизионными линиями. Кроме того, даже полное использование всех различий сигналов все равно не позволяет идеально разделить их. Поэтому более эффективным оказывается использование не единого композитного сигнала, а двух композитных сигналов Y/C: Y, как и ранее, несет яркостный сигнал и синхроимпульсы, а C (Chrominance) - модулированные цветовые сигналы. Такой сигнал называют S-Video, он используется при записи/воспроизведении в аппаратуре классов S-VHS и Hi-8. Считается, что при этом обеспечивается разрешение в 400 линий.

    Следующим шагом к повышению качества является переход к компонентному сигналу YUV. Он используется в профессиональной аппаратуре класса Betacam и связан с  поддержкой разрешения до 500 линий. И, наконец, последним в этой череде является RGB-представление: при этом отсутствуют какие-либо кодирование и модуляция, наиболее простая и точная передача сигнала. Однако, в силу вышеуказанных особенностей зрительного восприятия человека достигаемое здесь повышение качества уже становится визуально несущественным. Поэтому, подобное представление реально используется только в высокоточной научной измерительной аппаратуре.

    За  последние несколько лет появилось  большое число различных цифровых форматов представления видеосигнала. Аппаратура, работающая в этих форматах выпускается рядом фирм - законодателей мод в видеотехнике, такими как Sony, Panasonic, JVC и т. д. Такая аппаратура стала появляться и на нашем рынке, хотя пока она слишком дорога для "российского" уровня, особенно для бытового. Приведем сводную таблицу существующих форматов, в том числе и цифровых, к которым вернемся в дальнейшем.

    Сравнительные характеристики различных форматов записи на магнитную ленту.

    Таблица 1.3

Формат  записи Тип записи Вид сигнала Ширина ленты, мм Скорость ленты, мм/сек Отношение сигнал/шум, дБ Коэффициент компрессии
VHS аналоговая композитный 12.65 23.39 43 -
S-VHS аналоговая Y/C 12.65 23.39 45 -
Hi8 аналоговая Y/C 8 20.5 44 -
Betacam аналоговая YUV 12.65 101.5 49 -
Betacam SP аналоговая YUV 12.65 101.5 51 -
Betacam SX цифровая YUV 4:2:2 12.65 59.575 51 10:1
Digital Betacam цифровая YUV 4:2:2 12.65 96.7 55 2:1
DV цифровая YUV 4:2:0 6.35 18.831 54 5:1
DVCam цифровая YUV 4:2:0 6.35 28.2 54 5:1
DVCPro цифровая YUV 4:1:1 6.35 33.813 54 5:1
DVCPro50 цифровая YUV 4:2:2 6.35 67.626 62 3.3:1
Digital-S цифровая YUV 4:2:2 12.65 57.8 55 3.3:1
Разработка программы компрессий цифрового видеосигнала