Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях Шинкаренко Константин Всеволодович

Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях
<
Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Шинкаренко Константин Всеволодович. Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях : диссертация ... кандидата технических наук : 05.13.11 / Шинкаренко Константин Всеволодович; [Место защиты: Том. политехн. ун-т].- Томск, 2008.- 146 с.: ил. РГБ ОД, 61 09-5/630

Содержание к диссертации

Введение

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

1.1. Задача помехоустойчивого кодирования 16

1.2. Цифровое телевидение: история развития и современное состояние 24

1.3. Обзор литературных источников 30

1.4. Принципы компрессии и структура потока цифровых мультимедиа данных 32

1.4.1. Принципы компрессии видео 32

1.4.2. Стандарт видео компрессии Н.264 36

1.4.3. Принципы компрессии аудио 38

1.4.4. Транспортный поток MPEG-2 41

1.5. Современные подходы к реализации систем IPTV 44

1.5.1. Протоколы RTP/RTCP 45

1.5.2. Протокол UDP 46

1.6. Классификация и характеристики помехоустойчивых кодов, применяемых вЦТВ 48

1.6.1. Блоковые коды 50

1.6.2. Сверточные коды 52

1.6.3. Ту р бо -коды 57

1.7. Критерии оценки эффективности помехоустойчивого кодирования в системах IPTV. 59

Выводы по главе 1 62

2. Стирающие коды и возможности их применения в системах IPTV . 64

2.1. Понятие стирания. Модели стирающего канала 64

2.1.1. Модель двоичного стирающего канала 64

2.1.2. Модель Гилберта для стирающего канала 65

2.1.3. Модель канала с независимыми случайными стираниями 66

2.2. Стирающие коды Лаби Трансформ (ЛТ). Алгоритм кодирования 67

2.2.1. Алгоритм декодирования кодов ЛТ 70

2.2.2. Идеальное распределение вероятности для степеней кодовых символов 75

2.2.3. Робастное распределение вероятности для степеней кодовых символов 76

2.3. Оценка вероятности восстановления пакетов при использовании ЛТ .78

2.4. Анализ возможностей применения кодов ЛТ в IPTV. Экспериментальная реализация кодов ЛТ 81

2.5. Систематические стирающие коды (ССК) 95

Выводы поглаве2 105

3. Разработка стирающих кодов для систем потокового цифрового телевещания по сетям IP 108

3.1. Неслучайные стирающие коды (НССК). Алгоритм кодирования 108

3.1.1. Задание кода НССК с помощью порождающих матриц 112

3.2. Экспериментальные результаты моделирования работы НССК 113

3.3. Аспекты практического применения НССК в системах IPTV 119

3.3.1. Ранжирование пакетов в транспортном потоке MPEG-2 123

3.3.2. Восстановление исходного порядка пакетов при кодировании НССК транспортного потока MPEG-2 124

3.4. Оценка вычислительной сложности алгоритмов кодирования и декодирования ЛТ и НССК 127

Выводы по главе 3 129

Заключение 132

Литература

Введение к работе

Актуальность темы. В настоящее время происходит бурное развитие компьютерных сетей и рост числа сетевых приложений, в том числе для передачи цифровых мультимедиа данных. Цифровое телевещание через Интернет, так называемое IPTV {Internet Protocol Television, IP телевидение), является одним из наиболее перспективных сетевых приложений. Как и в любой системе передачи данных, в компьютерных сетях существуют помехи, шумы, ведущие к потерям и искажениям данных. Для борьбы с помехами в системах передачи данных применяется помехоустойчивое кодирование. Помехоустойчивое кодирование выполняет важнейшую роль в цифровых системах передачи данных, так как повышает достоверность передаваемых данных путем внесения систематической избыточности согласно некоторому математическому закону (коду).

Теория помехоустойчивого кодирования была основана в середине XX в. и с тех пор превратилась в хорошо проработанную, математически стройную отрасль науки. Теория помехоустойчивого кодирования тесно переплетена с теорией информации. Основоположниками теории помехоустойчивого кодирования стали выдающиеся ученые В.А.Котельников, К.Шеннон, У.Питерсон, П.Элиас. Большинство ранних научных работ в области теории помехоустойчивого кодирования были направлены на поиск «оптимального» кода. «Оптимальный» код с точки зрения теории кодирования должен быть длинным и обладать достаточной глубиной для эффективного исправления ошибок. Этот поиск до сих пор не увенчался успехом, хотя изобретенные несколько десятилетий назад Турбо-коды являются квазиоптимальными.

Одной из важнейших сфер практического применения помехоустойчивого кодирования является цифровое телевидение (ЦТВ). Значимость развития цифрового телевидения прекрасно иллюстрирует тот факт, что решения в этой отрасли принимаются на государственном и международном уровнях. Правительство Российской Федерации в апреле 2006 года официально объявило о том, что к 2015 году в России планируется полностью перейти с аналогового на цифровое телевещание. В связи с этим разрабатывается Федеральная целевая программа «Развитие телерадиовещания в Российской Федерации (2007-2015 гг.)». Большинство европейских стран намерены окончательно перейти на цифровой стандарт телевещания к 2010 году.

В наши дни в сфере технологий цифрового телевидения происходят значительные изменения. Все большее количество телезрителей предпочитают пользоваться услугами IPTV для просмотра телепередач. Передача цифровых мультимедиа данных к настоящему моменту стала одним из наиболее ресурсоемких сетевых приложений. Несмотря на значительные успехи, достигнутые в области компрессии цифрового видео и аудио, доля мультимедиа данных в общемировом объеме IP трафика неуклонно растет. Это обусловлено ростом числа пользователей сети Интернет, внедрением новых технологий IPTV, делающих просмотр телепрограмм более комфортным, расширением пропускной способности каналов связи, а также активным стремлением провайдеров телеконтента выйти на рынок услуг IPTV с целью захвата новых сегментов зрительской аудитории. Если еще десять лет назад под «телевизионным приемником» однозначно понимался телевизор, то в наши дни в этой роли все чаще оказывается персональный компьютер, для которого источником цифрового телесигнала являются сети IP. По сравнению с системами спутникового и наземного цифрового телевещания, IPTV предлагает телезрителю ряд удобств, таких как «видео по запросу», пауза в трансляции и последующий просмотр с места остановки, «виртуальный видеомагнитофон» (запись передачи, идущей в определенное время) и т. д. Количество пользователей IPTV составляло 200 млн человек в 2005 году, и ожидается, что их количество увеличится до 400 млн человек в 2010 году [71].

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

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

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

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

• обеспечивать как можно меньшую конечную задержку данных {endo-end delay) в цепи «передатчик - приемник» ТВ сигнала.

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

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

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

Для достижения поставленной цели необходимо решить следующие задачи:

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

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

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

Объект исследования: системы потокового цифрового телевещания по компьютерным сетям (IPTV).

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

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

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

• корректным применением методов теории помехоустойчивого кодирования;

• результатами компьютерного (имитационного) моделирования;

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

Научная новизна:

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

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

3. Предложена новая технология применения стирающих кодов в системах IPTV с целью повышения надежности передачи данных в системе, не имеющая известных аналогов. Отличительной чертой данной технологии является использование НССК на уровне транспортного потока MPEG-2, что обуславливает возможность применения НССК для уменьшения потерь пакетов в системах IPTV без модификации сетевого оборудования и стека протоколов IP, а также совместимость с программно-аппратными компонентами систем IPTV.

Практическая ценность:

1. Программно реализованы алгоритмы кодирования и декодирования кодов ЛТ и НССК, позволяющие восстанавливать пакеты в случае потерь при передаче.

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

3. Преимуществами предлагаемой архитектуры являются совместимость с существующими программно-аппаратными компонентами систем IPTV (компрессорами, мультиплексорами), а также протоколами стека IP.

4. Реализован программный мультиплексор транспортного потока MPEG-2 в виде DirectShow фильтра для объединения и синхронизации цифровых видео и аудио потоков в соответствии со стандартом ISO 13818-І. Мультиплексор осуществляет анализ структуры мультимедиа потоков и ранжирование транспортных пакетов, для дальнейшей передачи этой информации кодеру НССК. Мультиплексор пригоден для использования в профессиональных системах цифрового телевещания (IPTV, DVB) в режиме реального времени.

Основные положения, выносимые на защиту:

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

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

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

Внедрение результатов:

Программный мультиплексор транспортного потока MPEG-2, разработанный и реализованный в рамках данной диссертационной работы, внедрен и используется в качестве коммерческого продукта «MainConcept MPEG Multiplexer» компанией MainConcept GmbH, что подтверждается актом о внедрении.

С докладом на тему «Стирающие помехоустойчивые коды для коррекции ошибок в системах цифрового телевещания» автор занял 1-е место в номинации «За научные результаты, обладающие существенной новизной и среднесрочной (до 5-7 лет) перспективой их эффективной коммерциализации» в рамках Программы «Участник молодежного научно-инновационного конкурса» (У.М.Н.И.К.).

Апробация работы. Основные положения работы докладывались на следующих конференциях и семинарах:

• Всероссийская научно-техническая конференция студентов, аспирантов и молодых ученых «Научная сессия ТУ СУР - 2005», - Томск, 2005.

• XLIII Международная научная студенческая конференция «Студент и научно-технический прогресс», Новосибирский государственный университет (НГУ), 2005.

• Всероссийская научно-техническая конференция студентов, аспирантов и молодых ученых «Научная сессия ТУ СУР - 2007», - Томск, 2007.

• Четвертая Международная научно-практическая конференция «Электронные системы и средства управления», - Томск, 2007.

• 11th IEEE Workshop on «Design and Diagnostics of Electronic Circuits and Systems» (DDECS 08), Bratislava, Slovak Republic, 2008. (Международный симпозиум IEEE «Разработка и диагностика электронных устройств и систем», -Братислава, Словакия, 2008.)

• 15-я Всероссийская межвузовская конференция «Микроэлектроника и информатика-2008», - Московский институт электронной техники (МИЭТ), Москва. Доклад отмечен дипломом 1 -й степени.

• Научно-практическая конференция «Электронные системы и средства управления», - Томск, ТУ СУР, 2008. Доклад занял 1-е место в рамках Программы «Участник молодежного научно-инновационного конкурса» (У.М.Н.И.К.).

Публикации. По теме исследования автором опубликованы 12 работ, в том числе 3 статьи в научных периодических журналах, из них 1 в журналах перечня ВАК [6], 2 работы опубликована в зарубежных изданиях, в том числе одна в сборнике докладов международного симпозиумов IEEE [9], 6 докладов опубликованы в материалах научных конференций и семинаров. Программа ErasureSimulator зарегистрирована в Отраслевом фонде алгоритмов и программ (ОФАП).

1. Шинкаренко К.В. Статистическое мультиплексирование MPEG-2 видеопотоков с переменным битрейтом для эффективного использования канала передачи данных // Информационные системы. - Томск, 2004. - С. 123 -129.

2. Шинкаренко К.В. Однопроходный режим компрессии видеоданных // Доклады ТУСУРа. - Томск, 2005. - Т. 11. - № 3. - С. 110 - 114.

3. Шинкаренко К.В. Статистическое мультиплексирование видеопотоков с переменной скоростью передачи данных для эффективного использования канала связи // Материалы XLIII науч. студенч. конф. «Студент и научно-технический прогресс»: Информационные технологии. - Новосибирск, 2005. -С. 52.

4. Шинкаренко К. Алгоритм мультиплексирования транспортного потока MPEG-2 // Сб. науч. докл. конференции «Сибресурс-12-2006»). - Тюмень, 2006. -С. 90-94.

5. Шинкаренко К. Коррекция ошибок в системах цифрового мультимедиавещания // Материалы докладов Всероссийской науч.-техн. конф. студентов, аспирантов и молодых ученых «Научная сессия ТУСУР-2007». -Томск, 2007. - С. 189 - 192.

6. Кориков A.M., Шинкаренко К. Критерии оптимизации помехоустойчивых кодов для цифрового телевещания //Вычислительные технологии. — Томск, 2007.-Т. 12.-№ 1.-С. 86-95.

7. Шинкаренко К., Кориков A.M., Оптимизация помехоустойчивого кодирования для цифрового телевещания // Сб. науч. докл. Международной науч.-практ. конф. «Электронные системы и средства управления». - Томск, 2007.-С. 91-94.

8. Shinkarenko К., Vlcek К. Architecture of Channel Coding Effectiveness Estimation System (Архитектура системы оценки эффективности помехоустойчивого кодирования) // In Proc. of 6 Electronic Circuits and Systems Conference. - Bratislava, 2007. -P. 165 - 169.

9. Shinkarenko K., Vlcek K. Design of Erasure Codes for Digital Multimedia Transmitting (Разработка стирающих кодов для передачи цифрового мультимедиа) II In Proc. of 11th IEEE Workshop on Design and Diagnostic of Electronic Circuits and Systems (DDECS08). - Bratislava, 2008. - P. 30 - 34.

Доступен также: [Электронный ресурс]. — Режим доступа: — http://ieeexplore.ieee.org/Xplore/login.jsp?url=:/stamp/starnp.jsp?arnumber=4538751 &isnumber=4538735. - 11.11.2008.

Ю.Шинкаренко К. Применение стирающих кодов в системах цифрового телевещания // Сб. науч. докл. 15-й Всероссийской науч.-техн. конф. «Микроэлектроника и информатика-2008». - Москва, 2008. - С. 248.

11.Шинкаренко К. Стирающие помехоустойчивые коды для коррекции ошибок в системах цифрового телевещания // Сб. науч. докл. Науч.-практ. Конф. «Электронные системы и средства управления-2008», - Томск, 2008. — С.181-188.

12.Шинкаренко К.В. Программа моделирования помехоустойчивого кодирования стирающими кодами ErasureSimuIator // Отраслевой фонд алгоритмов и программ. Свидетельство об отраслевой регистрации разработки № 11720. Номер государственной регистрации: 50200802200.-2008.

Личный вклад. Основные результаты и положения, выносимые на защиту, выполнены автором лично. Предлагаемые помехоустойчивые коды, технология их применения в IPTV, программная реализация кодов ЛТ и НССК и алгоритмов декодирования, а также программа ErasureSimuIator для моделирования работы стирающих кодов, разработаны автором лично. Автором лично проведено моделирование работы стирающих кодов ЛТ и НССК при помощи программы ErasureSimuIator с целью получения экспериментальных результатов. Научный руководитель принимал участие в постановке целей и задач исследований, обсуждении полученных результатов.

Благодарности. Автор выражает глубокую благодарность научному руководителю Корикову A.M. за помощь в работе над диссертацией, статьями, решении организационных вопросов, и научный опыт, переданный в процессе совместной деятельности.

Автор признателен коллегам из компаний ЗАО "Элекард" и MainConcept GmbH, Ковлягину В., Сергееву С.Н., Милякову А.

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

Принципы компрессии и структура потока цифровых мультимедиа данных

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

Основные и наиболее эффективные идеи уменьшения объема видео данных заключаются в следующем (использованы материалы [37, 49, 52, 54, 64, 68, 82, 93]): - «прореживание» цветовых составляющих видео кадра. Известно, что человеческий глаз более чувствителен к изменению яркости, нежели цветности. Поэтому часть пикселей, отвечающих за цветность, можно удалить без особой потери качества картинки. Как правило, применяются форматы 4:2:0 (удалены три четвертых пикселей цветности) или 4:2:2 (удалена половина пикселей цветности). Возможно также использование формата 4:4:4, без удаления пикселей цветности. - устранение временной и пространственной избыточности, содержащейся в видео. Как правило, два соседних кадра в видео последовательности сильно коррелированны между собой, если не произошла смена сцены. Поэтому можно сохранить полную информацию об одном опорном кадре, а для другого передать лишь разницу между ним и опорным. Отдельные участки изображения внутри одного кадра также зачастую высоко коррелированны (например, однотонный фон). В связи с этим производится внутрикадровое устранение пространственной избыточности.

Для осуществления идеи устранения временной избыточности современные стандарты компрессии предусматривают наличие в видео последовательности трех типов кадров: интра-кадры {Intra-coded frames, I-frames), предсказанные кадры (Predictive-coded frames, P-frames), и двунаправленно-предсказанные кадры (Bidirectionally-predictive-coded frames, В-frantes) (рис. 1.4).

Временная и пространственная корреляция видео /-кадр представляет собой сжатую версию одного исходного видео кадра. Он не зависит от других кадров. Вкратце сжатие осуществляется следующим образом: - кадр разбивается на участки размером 8x8 пикселей, т.н. макроблоки; - над каждым макроблоком осуществляется дискретное косинусное преобразование. В результате преобразования получается матрица коэффициентов размерности 8x8. Это преобразование позволяет перейти от пространственного представления блока к частотному. На этом этапе исходный макроблок может быть восстановлен путем обратного косинусного преобразования; - полученная матрица коэффициентов квантуется путем деления коэффициентов матрицы на некоторое число (квантайзер). В результате многие коэффициенты обратятся в ноль, что упрощает изображение и отсекает часть информации, причем информации, соответствующей, в основном, высоким частотам яркости и цветности. Это соответствует психовизуальной модели восприятия человека, т.к. потеря высоких частот незначительно сказывается на общем качестве восприятия изображения; - коэффициенты квантованной матрицы разворачиваются в строку путем зигзагообразного сканирования, начиная с верхнего левого угла матрицы, т.к. в правой нижней части матрицы большинство коэффициентов, как правило, имеют нулевые значения; - полученная строка кодируется с помощью кодов Хаффмана, что позволяет представить полученный массив в более компактной сжатой форме.

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

Для того, чтобы закодировать Р-фрейм, сначала восстанавливается (декодируется) предыдущий референсный кадр, т.е. тот, из которого будет кодироваться текущий кадр. Текущий кадр разбивается на макроблоки размером 16x16. Для каждого макроблока производится попытка найти максимально «похожий» на него макроблок в референсном кадре. Для оценки схожести макроблоков используют специальные меры. Процесс поиска схожего макроблока называют оценкой векторов похожести движения {motion estimation). Может оказаться так, что наиболее схожий с текущим макроблок находится в референсном кадре по тем же координатам, но в случае движения координаты могут измениться. Найденное смещение кодируется в виде вектора похожести {motion vector). Поскольку необязательно, что наиболее схожий макроблок будет идентичен текущему, необходимо вычислить невязку между макроблоками, над которой и производится дальнейшее кодирование. Если схожий макроблок в референсном кадре не найден, то такой макроблок кодируется как макроблок интра-кадра. Все эти меры в совокупности позволяют добиться значительно большей степени сжатия для Р-кадров.

Современные подходы к реализации систем IPTV

Для реализации телевещания в IP сетях используются следующие режимы передачи информации: unicast, broadcast и multicast [85, 92].

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

Режим broadcast используется для вещания от одного источника всем получателям в заданной подсети. Информацию получают все без исключения абоненты. Для этого режима используются адреса, заканчивающиеся на 255, к примеру, 192.168.1.255. Если вещать телепрограмму в режиме broadcast, то все пользователи, находящиеся в одной подсети, вынуждены будут смотреть только этот канал. Поэтому данный режим применяется только для передачи каких-либо служебных сообщений.

Наиболее значимым режимом вещания в IPTV является multicast. Он предназначен для доставки данных группе абонентов и применяется при организации телетрансляций и других услуг массового пользования. Для идентификации групп каналов используется специально зарезервированный для этих целей при разработке протокола IP диапазон адресов - от 224.0.0.0 до 239.255.255.255 (класс D). Режим multicast предусматривает передачу мультимедиа потоков от источника к абонентским коммутаторам одним потоком, далее транслируя ее только на те порты, которые эту информацию заказывали. Multicast позволяет существенно сэкономить полосу пропускания в сети, не требуя отдельного потока для каждого канала к каждому зрителю.

На транспортном уровне для передачи мультимедиа в режиме реального времени используется RTP {Realime Transport Protocol). Спецификацией протокола RTP является документ RFC 3550 [84]. Изначально RTP проектировался для использования в режиме multicast, но возможно также его использование в режиме unicast.

RTP не имеет определенного порта UDP или TCP, на который происходит соединение. Как правило, RTP конфигурируют для работы по портам 16384-32767. Стандартом оговаривается лишь, что для каждого используемого четного порта следующий нечетный порт предназначен для управляющего протокола RTP Control Protocol (RTCP). Архитектура системы IPTV, в которой осуществляется вещание элементарных потоков по RTP, приведена на рис. 1.8.

Схема телевещания элементарных потоков по протоколу RTP RTP отвечает за создание и завершение сессии, определяет тип

Важнейшими являются поля Sequence Number и Timestamp. Sequence Number позволяет установить потерю пакета. Поле Timestamp используется для синхронизации при вещании элементарных потоков аудио и видео по RTP, без мультиплексирования в MPEG-2 TS. Следует особо подчеркнуть, что RTP позволяет осуществлять вещание как элементарных потоков (рис. 1.8), так и транспортного потока MPEG-2.

Как правило, RTP работает в связке с протоколом RTCP. RTCP проверяет пришедшие пакеты на соответствие отправленным, предоставляет информацию об источнике потока, следит за нагрузками в сети.

Фактически, протоколы RTP и RTCP являются надстройками протокола UDP, и в стеке IP располагаются на прикладном уровне.

Протокол UDP является протоколом транспортного уровня стека протоколов IP. Этот протокол играет важнейшую роль в системах IPTV. Как было сказано в предыдущем пункте, в современных системах телевещания через Интернет протокол UDP используется как транспортный протокол протоколами вещания мультимедиа RTP и RTCP.

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

Иллюстрация архитектуры системы телевещания с использованием UDP в качестве транспортного протокола IP приведена на рис. 1.9.

Как известно, протокол UDP не гарантирует доставку пакетов получателям, но зато обеспечивает передачу данных в маленькой задержкой. Именно этим обстоятельством обусловлено использование данного протокола в системах IPTV. Протокол UDP является пакетным.

Модель канала с независимыми случайными стираниями

Согласно Питерсону [13], "стиранием называется ошибка, позиция которой известна, а значение может быть (а может и не быть) нулевым".

Данное определение может быть переформулировано следующим образом: "стирание — это ошибка, позиция которой известна, а значение не определено".

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

Модель двоичного стирающего канала Для этого канала задаются вероятность q успешной доставки пакета (значение полученного пакета идентично значению исходного пакета), и вероятность p — \ — q того, что передаваемый пакет будет стерт. Значение стертого пакета обозначается через X. Предполагается, что значение пакета не влияет на вероятность его стирания. Обобщения стирающего канала включают недвоичный стирающий канал и канал со стираниями и ошибками. Данная модель стирающего канала является идеализацией системы передачи данных, в которой демодулятор выдает в сомнительных случаях символ, соответствующий стиранию и отличный от 0 и 1.

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

Стирания пакетов в сети передачи могут происходить последовательно, и для этого необходима модель, позволяющая имитировать последовательные стирания пакетов. Одной из наиболее распространенных моделей канала со стираниями, позволяющей описать последовательные стирания, является модель Гилберта (рис. 2.2) [57, 63]. Модель Гилберта представляет собой Марковский процесс с двумя состояниями.

Модель Гилберта для описания стирающего канала Состояние L (Loss) соответствует стиранию пакета, состояние R (Receiving) — его доставке. Вероятности перехода из состояния в состояние задаются величинами А я В. Величина А определяет вероятность доставки пакета, если предыдущий пакет был потерян, \- А определяет вероятность доставки двух пакетов подряд. Соответственно, В есть вероятность стирания пакета в случае, если предыдущий был доставлен, 1-і? есть вероятность потери двух пакетов подряд-Соотношение потерь пакетов для данной модели составляет

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

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

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

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

Экспериментальные результаты моделирования работы НССК

Рассмотрим еще одни стирающие коды, так называемые "систематические стирающие коды" (ССК). Термин "систематичность" используется для стирающих кодов в том же смысле, что и в теории блоковых кодов. Согласно Питерсону, [13] систематическим называется код, для которого "первые к компонент кодового вектора могут быть произвольно выбранными информационными символами, а каждая из последних п—к компонент является линейной комбинацией первых к компонент. Первые к компонент называются информационными символами, а последние п-к компонент называют избыточными или проверочными символами". Таким образом, исходные данные при кодировании систематическим кодом не подвержены модификации. ССК представляют собой корректирующие помехоустойчивые коды, поэтому канал обратной связи не востребован. ССК строится следующим образом. Как и для кодов ЛТ, исходное сообщение делится на К исходных пакетов. Длины всех пакетов эквивалентны и равны L. В дополнение к К исходным пакетам добавляются V пакетов, таким образом, общее число передаваемых пакетов оказывается N К. Отношение V I К называется избытком кодовой последовательности. Исходные К пакетов передаются как есть, V проверочных пакетов представляют собой результат операции XOR над D исходными пакетами. D являет собой некоторое число, значение которого может быть задано в интервале 0 D K. Так же как и для кодов ЛТ, для ССК возникает вопрос о выборе степеней кодовых символов. В ходе анализа доступных литературных источников, в том числе российских и зарубежных Интернет-ресурсов, исследования, посвященные данному вопросу, обнаружены не были.

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

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

Гипотеза 2. Для достижения наиболее эффективного восстановления пакетов при помощи ССК степень проверочных пакетов D должна быть задана в зависимости от соотношения потерь пакетов (PLR) в канале передачи данных. Наиболее эффективное восстановление может быть достигнуто лишь статистически, поскольку для каждого конкретного кода можно задать позиции стираний таким образом, чтобы код исправлял все стирания, либо, напротив, был неспособен исправить хотя бы одно стирание.

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

Докажем гипотезу 1. Вероятность восстановления исходного символа Q при использовании стирающего кода определяется согласно (2.13). Полная вероятность восстановления исходного пакета является функцией вероятности доставки кодового пакета q. Значение q определяется сотношением потерь пакетов PLR. Функция О является суммой вероятностей восстановления пакетов, взятых в качестве соседей вместе с тем, для которого вычисляется вероятность. Вероятность восстановления соседей определяется, в свою очередь, суммой произведением полиномов степени 1 и выше от q (2.12). Количество слагаемых О определяется количеством вхождений исходного пакета в кодовые пакеты и числом соседей в данных кодовых пакетах. Следовательно, вероятность восстановления исходного пакета О является сложной функцией от трех аргументов: V, PLR и D.

Это подтверждает часть гипотезы 1 о взаимозависимости между О и V, PLR и D, однако не доказывает того, что данная функция будет иметь один (или несколько) максимумов. Поскольку данная функция представляет собой сумму полиномов (с различным знаком) степени равной либо выше 1 от q, данная функция не имеет разрывов.

Логическими рассуждениями можно доказать, что функция имеет минимальные значения при предельных значениях =0 и D=K.

Действительно, предположим, что ССК кодируются К исходных пакетов. Если степень кодовых символов равна 0, что означает отсутствие кодовых символов, то исправление стираний невозможно.

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

Похожие диссертации на Алгоритмы и программные средства помехоустойчивого кодирования мультимедиа потоков в компьютерных сетях