Научная статья на тему 'Критерии оптимизации помехоустойчивых кодов для цифрового телевещания'

Критерии оптимизации помехоустойчивых кодов для цифрового телевещания Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
307
52
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Кориков А. М., Шинкаренко К. В.

This paper presents an overview of common architecture of digital telecommunication systems. The Reed-Solomon, convolution and turbo error-correcting codes are described. Optimization criteria for error-correcting codes are formulated which account for specifics of digital multimedia compression and transport standards.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Критерии оптимизации помехоустойчивых кодов для цифрового телевещания»

Вычислительные технологии

Том 12, Специальный выпуск 1, 2007

КРИТЕРИИ ОПТИМИЗАЦИИ ПОМЕХОУСТОЙЧИВЫХ кодов ДЛЯ ЦИФРОВОГО ТЕЛЕВЕЩАНИЯ

А. М. Кориков, К. В. Шинкаренко Томский государственный университет систем управления и радиоэлектроники, Россия e-mail: korikov@asu. tusur. ru, shinkarenko_k@mail. ru

This paper presents an overview of common architecture of digital telecommunication systems. The Reed-Solomon, convolution and turbo error-correcting codes are described. Optimization criteria for error-correcting codes are formulated which account for specifics of digital multimedia compression and transport standards.

Введение

История развития цифрового телевидения на сегодняшний день насчитывает не более 20 лет. Стандартизация в области цифрового телевещания (ЦТВ) была начата в 1994 г. В ноябре 1994 г. Международной организацией по стандартизации (International Organization for Standardization — ISO) был принят стандарт ISO 13818-1 [1], регламентирующий формат транспортного потока MPEG-2 (Motion Picture Expert Group) для передачи цифрового видео и сопутствующего аудио. В том же году консорциум Digital Video Broadcasting (DVB) Project принял первые стандарты ЦТВ — для спутникового (DVB-Satellite, DVB-S) и кабельного (DVB-Cable, DVB-С) телевещания. Через три года был принят стандарт DVB для наземного (DVB-Terrestrial, DVB-Т) цифрового телевещания.

Основой стандартов телевещания DVB являются стандарты компрессии и транспортного потока семейства MPEG. В Японии, Корее, США разработаны собственные стандарты ЦТВ, которые, впрочем, очень схожи с европейскими стандартами DVB и также базируются на стандартах MPEG.

В 1998 г. в Великобритании состоялся первый запуск коммерческой сети DVB-T, Большинство европейских стран намерено перейти на цифровой стандарт телевещания DVB к 2010 г. Правительство Российской Федерации в апреле 2006 г. официально объявило о том, что к 2015 г. в России планируется полностью перейти с аналогового телевещания на цифровое. В связи с этим разрабатывается Федеральная целевая программа “Развитие телерадиовещания в Российской Федерации (2007-2015 гг.)” [2, 3].

© Институт вычислительных технологий Сибирского отделения Российской академии наук, 2007.

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

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

— кабельные линии связи (для систем БУВ-С);

— атмосфера (БУВ-Т);

— атмосфера и космос (БУВ-Э).

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

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

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

1. Архитектура систем ЦТВ

Несмотря на широкое разнообразие стандартов ЦТВ, можно выделить общие для всех стандартов базовые составные блоки архитектуры (рис. 1). Мы опустим из рассмотрения архитектуру приемника, поскольку она является зеркальным отображением архитектуры передатчика.

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

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

видео

Видео

енкодер

Оцифрованный сигнар

аудио

Источник

сигнала

Аудио

енкодер

180 13818-1

МРЕО-2

мультиплексор

транспортного

потока

(опционально: скремблинг, специфические для о пред. стандарта

служебные таблицы)

Блок Модулятор,

помехоус- трансмитер

тойчивого —►

кодирования

Рис. 1. Архитектура системы цифрового телевещания

содержащейся в оцифрованных аудио- и видеосигналах, или, иными словами, уменьшение битрейта. На сегодняшний день наиболее используются стандарты видеокомпрессии семейства MPEG: MPEG-2, MPEG-4, AVC(H,264), основные на таких идеях компрессии, как:

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

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

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

В вышеуказанных стандартах определены три типа видеокадров [4]:

— I (intra coded frame) — опорный кадр. Не предсказывается ни из какого другого кадра, поэтому для его декодирования требуется только он сам. I-кадр имеет наибольший размер, так как в нем не производится устранение временной избыточности.

— P (predicted frame) — предсказанный кадр. Кадры такого типа предсказываются из предыдущего, т. е. кодируется уже не сам кадр, а невязка между текущим кадром и

P

опорный кадр.

— B (bidirectional predicted frame) — двусторонне предсказанный кадр. В-кадры предсказываются либо из предыдущего кадра, либо из последующего, либо из обоих сразу. В результате кодируется невязка с двумя опорными кадрами и для декодирования требуются оба опорных кадра.

Мультиплексор объединяет входные аудио- и видеопотоки в единый транспортный поток MPEG-2. Транспортный поток представляет собой последовательность байт, разбитых на пакеты. Длина каждого пакета 188 байт. Каждый пакет состоит из четырехбайтного (либо более) заголовка пакета, а также собственно цифрового телеконтента. Такой выбор длины пакета обусловлен компромиссом между нежелательным увеличением битрейта выходного потока и необходимостью сделать потерю одного пакета некритичной для воспроизведения всего потока.

Цифровые потоки видео и аудио, прежде чем быть обернутыми заголовками транспортных пакетов, оборачиваются еще одним уровнем заголовков — заголовками пакетизации элементарного потока, в оригинале по стандарту ISO 13818-1 — Packetized

Elementary Stream (PES), Заголовки PES содержат метки времени воспроизведения и декодирования видео- и аудиокадров, тем самым обеспечивая синхронизацию между звуком и изображением.

Помимо данных собственно самих телепрограмм транспортный поток содержит также служебную информацию. Наиболее важными являются служебные таблицы РАТ (Program Association Table) и I WIT (Program Map Table). Они отвечают за возможность демультиплексирования потока приемником и логическое связывание видео- и аудиопотоков в одну программу. Также важную роль в транспортном потоке выполняют метки времени Program Clock Reference (PCR), синхронизирующие приемник с передатчиком. Модулятор и трансмиттер осуществляют цифроаналоговое преобразование потока данных, модуляцию и вещание сигнала по каналу связи в определенной частотной полосе. Используемые модулятор и трансмиттер существенно отличаются для систем спутникового, наземного беспроводного, а также кабельного телевещания. Сигнал до зрителя может доставляться с использованием сразу нескольких систем телевещания. Например, возможен прием сигнала со спутника с последующей ретрансляцией по кабельной сети.

2. Помехоустойчивое кодирование

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

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

Анализ существующих современных систем ЦТВ показывает, что в качестве блочного кода де-факто стал стандартом код Рида — Соломона (далее PC-код). В качестве конволюционного кода применяется либо “чистый” конволюционный код, либо код, основанный на конволюционном, — так называемый турбокод. Остановимся подробнее на каждом из упомянутых кодов. Помимо трех вышеперечисленных кодов теория помехоустойчивого кодирования предлагает десятки других кодов, исправляющих ошибки, но они редко находят применение в системах ЦТВ.

2.1. Коды Рида — Соломона

Приведем математическое определение РС-кода [5]. PC-кодом называют циклический (N, K)-код при N = q — 1, множество кодовых комбинаций которого представляется многочленами степени N — 1 и менее с коэффициентами из поля GF(q), где q > 2 и является степенью простого числа, а корнями порождающего многочлена являются N — K последовательных степеней (а, а2, а3, ..., aD-\) некоторого элемента a G GF(q), где D — минимальное кодовое расстояние (N, K)-кода.

PC-код над полем GF (q) имеет длину кодовой ком бинации N = q — 1, число избыточных элементов в ней N — K = D — 1 и минимальное кодовое расстояние D = N — K +1, Таким образом, PC-код преобразует входную последовательность конечной длины KN

N—K

ошибок в переданном слове не известно заранее, PC-код способен исправлять до N—K/2 ошибок.

В системах ЦТВ используется укороченный (204, 188) PC-код. Выбор длины входного информационного слова обусловлен длиной транспортного пакета. Укороченный (204, 188) PC-код приводится к оригинальному (255, 239) PC-коду путем добавления 51 байта нулей перед информационным словом. После процедуры кодирования нулевые байты могут быть отброшены. (204, 188) PC-код способен исправить 8 байт ошибок в транспортном пакете. При этом битрейт потока увеличивается на 8.5 %.

2.2. Конволюционные коды

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

п

к

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

к—п

увеличение битрейта в п/к раз. На рис. 2 приведен пример конволюционного енкодера с кодовым соотношением 1/2 без обратной связи с двумя элементами памяти. Далее в статье будем использовать этот конволюционный енкодер в качестве примера под названием “енкодер К”. Отметим, что это не единственная возможная схема реализации конволюционного енкодера.

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

Рис. 2. Пример логической схемы конволюционного енкодера (енкодер К)

1,10

0,00

0,11

0,10

0,01

1,11

1,00

1,01

1,10

Рис. 3. Диаграмма состояний конволюцион- Рис. 4. Решетчатая диаграмма конволюцион-

запятой) и выходного символа. Значения младшего и старшего битов для выходного символа соответствуют обозначению выходов на рис. 2, Состояния (в кружках) обозначены таким образом, что младший бит соответствует регистру сдвига, расположенному на рис. 2 слева.

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

На сегодняшний день разработаны три основных класса алгоритмов декодирования для конволюционных кодов: последовательный [6], максимального правдоподобия [7] и алгоритм Витерби [8]. В связи с наилучшей производительностью на практике для декодирования конволюционных кодов наиболее часто применяется одна из форм алгоритма декодирования Витерби.

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

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

ного енкодера К

ного енкодера К

01 01 10

Рис. 5. Пример работы алгоритма декодирования Витерби

нием является состояние 00, поскольку изначально элементы памяти конволюционного енкодера проиницпализированы значением 0. Метрика пути для исходного состояния равна 0, так как предполагается, что полученная последовательность не содержит ошибок. Далее проследим, в какое состояние из исходного перешел енкодер, если его выходом является символ 01. Как видно из рис. 4, переход из состояния 00 возможен в состояние 00 (вход и выход соответственно 0 и 00) либо в состояние 01 (1 и 11). Расстояние между полученным символом 01 и каждым из возможных на данном этапе выходных символов (00 и 11) равно 1. Поэтому расстояние перехода из состояния 00 как снова в состояние 00, так и в состояние 01 равно 1. Работа алгоритма проиллюстрирована на рис. 5. Расстояние перехода обозначено рядом с линиями переходов, накапливаемая метрика пути для каждого состояния обведена кружком.

Следующий символ полученной последовательности 01 совпадает с символом, генерируемым при переходе из состояния 01 в состояние 11 (см. рис. 3), т. е. расстояние перехода 01 — 11 равно 0, а метрика пути 00 — 01 — 11 равна 1 + 0 = 1. Остальные переходы на данном этапе возможны при допущении наличия одной либо двух ошибок в полученном символе. В случае возникновения коллизии (двух переходов в одно состояние) “выживает” только путь с наименьшей метрикой. “Выжившие” пути на рис. 5 выделены жирными линиями. После обработки последнего символа полученной последовательности выбираем путь с минимальной метрикой. В данном случае это траектория 00 — 01 — 11 — 11. По полученной траектории декодируем исходное информационное сообщение. В рассмотренном примере в результате декодирования получено сообщение 111.

2.3. Турбокоды

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

Рис. 6. Пример енкодирующе-декодирующей системы на основе турбокода

тем самым позволяя сделать турбокод псевдослучайным. Псевдослучайные коды обладают способностью исправления ошибок, близкой к теоретическому пределу [9].

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

3. Оптимизация помехоустойчивых кодов

Рассмотренные помехоустойчивые коды предоставляют широкую свободу для оптимизации и экспериментов. Резонно возникает вопрос, какой из кодов (или их комбинация) является оптимальным и по какому критерию. Для ответа на этот вопрос необходимо определить критерии оптимальности для помехоустойчивых кодов в ЦТВ.

Базисом для выработки критериев оптимальности помехоустойчивых кодов являются следующие требования, диктуемые системами ЦТВ:

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

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

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

аудиовизуального восприятия телепрограмм нелинейно. Так, потеря I-кадра приведет к невозможности декодирования видеопотока, в течение полусекунды или более в зависимости от настроек видеокомпрессора. Исходя из психовизуальных и психоакустических особенностей восприятия телепередач человеком проблемы со звуком значительнее ухудшают восприятие, нежели потери изображения. Потеря служебных таблиц РАТ и РМТ также ведет к ухудшению сервиса — длительным задержкам при переключении каналов. Потеря меток системного времени PCR, так же как заголовков PES-пакетов, может привести к рассинхронизации звука и изображения, неплавному воспроизведению видео.

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

• Минимизация объема памяти и мощности процессора (процессоров, если алгоритм поддается распараллеливанию), необходимых для декодирования полученного цифрового телесигнала. Для обозначения количества тактов одного процессора, необходимых для декодирования одного транспортного пакета, будем использовать литеру T, требуемый для этой же цели объем памяти обозначим буквой M,

ного битрейта системы. Обозначим буквой B коэффициент увеличения битрейта, вносимого помехоустойчивым кодированием, В случае использования блочного (N, K)-кода и конволюционного кода с кодовым соотношением k — n величина B определяется следующей формулой:

N

в = кп-

Например, для (204, 188) PC-кода и 1/2 конволюционного кода B = 2.17,

единицы также примем транспортный пакет длиной 188 байт и будем использовать битовый коэффициент ошибок на пакет E:

N 1504

XOR(pi,Pjt),

j=0 i=0

где N — общее число декодированных транспортных пакетов в потоке; XOR — логическая бинарная операция “исключающее или”; Pj — г-й бит j-го декодированного транспортного пакета; Pj — г-й бит j-го исходного транспортного пакета. Если пакет полностью потерян, E = 1504,

ется использовать объективную меру качества — усредненное по видеопоследовательности соотношение сигнал-шум, или ASNR (Average Signal to Noise Ratio) [10]:

1 _N. /2552

ASNR =~Y,Wio g10 1

N ^ вк

к=0 4

1 А -

где N — количество кадров в видеопоследовательности; Б = — \1^ — /¿|; А — ко. ш-

І=1 _

чество пикселей в кадре; /, — яркость г-го пикселя в сжатом кадре; /, — яркость г-го пикселя в исходном кадре.

Расчет объективных мер оценки качества аудио достаточно сложен в реализации [11], поэтому для аудио ограничимся критерием коэффициента ошибок на пакет.

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

V = (T, M, B, E, ASNR).

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

F (V) = G\ T + c2 M + c3B + c4E + c5ASNR.

Коэффициенты с*, г = 1,5, определяют приоритет критериев и их нормировку.

Заключение

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

Список литературы

[1] ISO-IEC 13818-1 Systems, Coding of Moving Pictures and Associated Audio, 13 November 1994.

[2] http://www.ostankino.ru/news/tvnews/text-4324.html

[3] http://www.lenta.ru/news/2006/04/06/digitaltv

[4] ISO/IEC 13818-2 Information technology — Generic coding of moving pictures and associated audio information: Video. 13 November 1994.

[5] Питерсон У. Коды, исправляющие ошибки: Пер. с англ. М.: Мир, 1966.

[6] WOZENCRAFT J.M. Sequential decoding for reliable communication // Proc. IRE Conv. Rec. 1957. Pt 2. P. 11-25.

[7] Bahl L.R., Cocke J., Jelinek F., Raviv J. Optimal decoding of linear codes for minimizing symbol error rate // IEEE Trans. Inform. Theory. March 1974. Vol. 20. P. 248-287.

[8] Viterbi A.J. Error bounds for convolutional codes and an asymptotically optimal decoding algorithm // IEEE Trans. Inform. Theory. April 1967. Vol. 13. P. 260-269.

[9] Vlchek K. Advanced error-control coding methods enhance reliability of transmission and storage data systems // Radioengineering. April 2003. Vol. 12, N 1. P. 39-44.

[10] ITU-T Recommendation J.143, 2000. User requirements for objective perceptual video quality measurements in digital cable television.

[11] ITU-R Draft new Recommendation ITU-R BS. [10/20], Method for objective measurements of perceived audio quality, 1998.

Поступила в редакцию 23 август,a 2007 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.