Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

(по цифровому вещанию) Dvorkovich_V_Cifrovye_videoinformacionnye_sistemy

.pdf
Скачиваний:
258
Добавлен:
15.03.2016
Размер:
23.26 Mб
Скачать

Глава 13. Стандарты кодирования статических изображений

где M + N — нечетное число. В случае, если

 

N

 

 

 

N

 

 

 

 

 

 

H(0) = h0 + 2

hn =C1,

H(1) = h0 + 2 (−1)nhn =0,

 

n=1

 

 

 

n=1

 

 

M

 

 

 

 

M

 

 

 

 

 

 

G(1) = g0 + 2

(−1)mgm =C2, G(0) = g0 + 2

gm =0,

m=1

 

 

 

 

m=1

восстанавливающие НЧ и ВЧ-фильтры соответственно определяются так:

 

 

M

(−1)mgm cos πmx,

 

Kh(x) = g0 + 2

n=1

 

 

 

 

 

 

(13.11)

 

 

 

 

 

 

 

 

N

 

 

 

 

Kg (x) = h0 + 2

 

(−1)nhn cos πnx.

 

 

 

n=1

 

 

 

Если константы C1 и C2 равны, то C1 = C2 = 2. Выполнение этого условия не

является обязательным, однако необходимо, чтобы C1 · C2 = 2.

В табл. 13.4 представлены коэффициенты импульсных характеристик фильтров 7/9 (ФНЧ и ФВЧ), используемых при необратимом вейвлет-преобразовании в случае сжатия изображений с потерями [5.15, 5.16].

Таблица 13.4. Коэффициенты импульсных характеристик ФНЧ и ФВЧ при сжатии с потерями

n

hn

m

gm

0

1,115087052456994

0

0,6029490182363579

 

 

 

 

1

0,5912717631142470

1

−0,2668641184428723

2

−0,05754352622849957

2

−0,07822326652898785

3

−0,09127176311424948

3

0,01686411844287495

4

0,02674875741080976

Формы импульсных характеристик ФНЧ анализа H(x) и синтеза Kh(x) приведены на рис. 13.5а и б соответственно. Формы импульсных характеристик ФВЧ анализа G(x) и синтеза Kg(x) также приведены соответственно на рис. 13.5а и б.

На восстанавливающие фильтры Kh(x) и Kg(x), определенные соотношением

(13.11), при синтезе изображения поступают сигналы:

 

 

 

Yˆh(2k) = h0 · Y (2k) + n=1 hn · [Y (2k − n) + Y (2k + n)],

(13.12)

 

 

Yˆh(2k 1) = 0,

!

 

 

 

 

 

N

 

 

 

 

M

 

Yˆg (2k − 1) = g0

· Y (2k − 1) + m=1 gm · [Y (2k − n − 1) + Y (2k + n − 1)],

 

Yˆg (2k) = 0.

 

!

 

 

 

 

 

 

(13.13)

Здесь N = 3, M = 4, C1 = 2, C2 = 1, а Y (k) — дискретные отсчеты входного сигнала.

При сжатии информации без потерь используются более простые фильтры 5/3, параметры которых приведены в табл. 13.5.

13.2. Стандарт JPEG-2000

 

Рис. 13.5. Формы импульсных характеристик ФНЧ и ФВЧ, используемых при сжатии с потерями и при восстановлении изображений

Рис. 13.6. Формы импульсных характеристик ФНЧ и ФВЧ, используемых при сжатии без потерь и при восстановлении изображений

Таблица 13.5. Коэффициенты импульсных характеристик ФНЧ и ФВЧ при сжатии без потерь

n

hn

m

gm

0

3/4

0

1

 

 

 

 

1

1/4

1

−1/2

2

−1/8

В данном случае N = 2, M = 1, C1 = 1, C2 = 2 и выполняются все соотношения (13.10)– (13.13). Формы импульсных этих характери-

стик ФНЧ анализа H(x) и синтеза K (x) приве-

h

дены на рис. 13.6а и б соответственно. Формы импульсных характеристик ФВЧ анализа G(x) и синтеза Kg(x) также приведены соответственно на рис. 13.6а и б.

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

Глава 13. Стандарты кодирования статических изображений

Рис. 13.7. Поэтапное дискретное вейвлет-преобразование изображения

После одного этапа дискретного вейвлет-преобразования, которое применяется сначала ко всем строкам изображения, а затем ко всем его столбцам, обрабатываемый тайл или изображение в целом делится на четыре квадранта (рис. 13.7а):

НН — низкие частоты по строкам и столбцам;

ВН — высокие частоты по строкам и низкие по столбцам;

НВ — низкие частоты по строкам и высокие по столбцам;

ВВ — высокие частоты по строкам и столбцам.

В левом верхнем квадранте НН формируется уменьшенная копия изображения, а в остальных трех — высокочастотная информация. После этого подобная операция может многократно применяться, но уже только к НН-квадранту изображения, как показано на рис. 13.7а и б. Для обычного изображения возможно использование до 8 этапов.

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

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

На рис. 13.8а пороговые уровни и уровни квантования обозначены через di и ri соответственно; они располагаются симметрично относительно нуля. Для каждой i-й области преобразования могут использоваться различные коэффици-

енты квантования Qi:

 

 

 

 

 

Yˆi(n, m) = sign[Yi(n, m)] · ;

Y

n, m)

 

< .

 

|

i(

|

(13.14)

 

Qi

 

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

13.2. Стандарт JPEG-2000

Рис. 13.8. Обработка изображений при квантовании различных квадрантов

повышения помехоустойчивости разбиваются на достаточно малые блоки (например, размером 64 × 64, 32 × 32 и даже менее) так, чтобы все блоки одного квадранта были одинакового размера. Пример разбиения фрагментов изображения на блоки приведен на рис. 13.8б.

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

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

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

При этом кодировании вводится понятие контекстной значимости. Бит считается значимым, если он равен единице. Но незначимый бит (равный нулю) может

Глава 13. Стандарты кодирования статических изображений

Рис. 13.9. Схема определения значимости текущего бита X(n, m)

быть контекстно-значимым, если его контекст KSIG(n, m) больше нуля. Определение контекстно-зависимой значимости бита X(n, m) осуществляется таблично с помощью оценки контекстов, определяющих значимость битов по горизонтали, по вертикали и по диагоналям:

KH (n, m) = z(n − 1, m) + z(n + 1, m), KV (n, m) = z(n, m − 1) + z(n, m + 1),

KD(n, m) = z(n − 1, m − 1) + z(n + 1, m − 1) + z(n − 1, m + 1) + z(n + 1, m + 1),

(13.15)

где z(x, y) — значимость бита в ячейке с координатами (x, y). KSIG(n, m) равно нулю тогда и только тогда, когда все три значения KH (n, m), KV (n, m) и KD(n, m) равны нулю, что, в свою очередь, означает, что все восемь окружающих битов незначимы. Положения окружающих битов, используемых при определении значимости текущего бита, проиллюстрированы на рис. 13.9. Биты, попадающие вне границ кодового блока, считаются незначимыми.

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

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

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

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

Во время второго кодового прохода, называемого проходом уточнения величины, кодируются данные в битовых позициях, которые стали значимыми при

13.2. Стандарт JPEG-2000

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

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

Рис. 13.10. Сравнение эффективности сжатия изображений в соответствии со стандартами JPEG и JPEG-2000

Глава 13. Стандарты кодирования статических изображений

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

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

Стандарт JPEG-2000 превосходит по эффективности стандарт JPEG примерно в 2 раза при сжатии с потерями и на 5–20% при сжатии без потерь.

На рис. 13.10 представлены взятые из [5.25] результаты сжатия тестового файла с разными степенями компрессии — 20, 40, 70 и 145 (слева — в формате JPEG, справа — в формате JPEG-2000). Степень сжатия JPEG выбиралась таким образом, чтобы размер файла был таким же, как после сжатия по JPEG-2000.

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

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

Основные стандарты кодирования динамических изображений разрабатывались группой экспертов в области цифрового видео MPEG (Moving Pictures Experts Group), функционирующей при Международной организации по стандартам (ISO) и сотрудничающей с сектором стандартизации телекоммуникаций Международного союза электросвязи (ITU-Т, прежнее обозначение CCITT).

Стандарты MPEG (ISO/IEC), как и Рекомендации ITU-T H Series определяют лишь цифровой поток закодированного сигнала, неявно задавая алгоритмы декодирования и в меньшей степени — кодирования информации. Алгоритмы сжатия динамических изображений весьма гибки, что при различных реализациях может обеспечить существенное различие в качестве декодируемой информации при одной и той же степени ее сжатия.

Информация о разработке этих стандартов приведена в табл. 14.1. Рекомендованный ITU-T стандарт H.261 [5.27, 5.28] регламентирует переда-

чу видеоинформации при уровнях битового потока, кратных 64 кбита/с. Он предназначен для видеотелефонной связи или видеоконференций в реальном масштабе времени. Стандарт MPEG-1 [5.29, 5.30] используется при уровнях битового потока порядка 1,5 Мбитов/с и предназначен в основном для мультимедиа. Стандарт MPEG-2 [5.33–5.37], определенный также рекомендацией ITU-T H.262 [5.38], применяется при более высоких уровнях битового потока, он предназначен для высококачественной цифровой передачи телевизионной информации, в том числе телевидения высокой четкости.

Принципы формирования цифрового потока, заложенные в стандартах MPEG, используются практически во всех применяемых в настоящее время системах цифрового телевидения высокой четкости [5.39, 5.40], а один из уточняющих

Глава14. Стандарты кодирования динамических изображений

Таблица 14.1. Стандарты видеокодирования

 

Стандарты

Год

 

 

Информация о стандарте

Название

ISO/

 

 

 

Частота

Скорость би-

публикации

 

 

 

 

Рекомендации

Размер кадров

тового

 

ITU-T

 

 

 

 

кадров, Гц

потока

 

 

 

 

 

 

 

 

 

SIF

 

 

MPEG-1

ISO/IEC

1993

(352 × 240)

30

до

Video

11 172–2

 

CIF

25

1,5 Мбитов/с

 

 

 

(352 × 288)

 

 

 

 

 

QCIF

 

p × 64

H.261

ITU-T Rec.

1993

(176

×

144)

30

H.261

 

 

кбитов/с;

 

 

CIF

 

1 p 30

 

 

 

(352 × 288)

 

 

 

 

 

 

 

ISO/IEC

 

 

 

 

 

 

MPEG-2

13 818-2 /

1995

CIF, 4CIF,

25–50

3–20 Мбит/с

Video (H.262)

ITU-T Rec.

(2000)

16CIF

30–60

 

 

H.262

 

 

 

 

 

 

 

 

 

subQCIF

 

 

H.263

ITU-T Rec.

1998

(128 × 96),

25–50

64-

H.263

(2005)

CIF, 4CIF,

30–60

16 384 кбита/с

 

16CIF

 

 

 

 

 

 

 

 

и др.

 

 

MPEG-4

ISO/IEC

1999

от subQCIF

до 72

5-180 000

Video

14 496-2

(2004)

до 4000 × 4000

кбитов/с

 

 

ISO/IEC

 

от sub-QCIF

 

 

MPEG-4 AVC

14 496-10 /

2003

 

15–960 000

 

до

 

15–120

(H.264)

ITU-T Rec.

(2011)

 

 

кбитов/с

4 096 × 2 304

 

 

H.264

 

 

 

стандартов MPEG-2 специфицирует общие требования стандарта применительно к системам цифрового телевидения различного разрешения [5.41].

Стандарт ITU-T H.263 используется в системах видеотелефонной связи при низких уровнях битового потока, например по коммутируемой телефонной линии [5.42, 5.43]. Особое место в числе прочих разработок занимает стандарт MPEG-4, который предназначен для создания контекстно ориентированных систем сжатия и универсального языка обработки видео- и аудиоинформации [5.44–5.47]. Часть 10 этого стандарта [5.48] (рекомендация ITU-T H.264 [5.49]) широко используется

всовременных системах цифрового телевизионного вещания.

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

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

14.0. Стандарт JPEG-2000

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

Изображения, кодируемые с предсказанием (P-кадры), обрабатываются более эффективно благодаря использованию для предсказания и компенсации движения предыдущих I- или P-кадров. Изображения, кодируемые с двунаправленным предсказанием (B-кадры), обеспечивают наибольшую степень сжатия, но требуют ссылок как на предыдущие, так и на последующие кадры для компенсации движения. B-кадры никогда не используются в качестве опорных для предсказания (кроме стандарта MPEG-4 AVC).

Четвертый тип кадров, определенный в спецификации MPEG-1 и не используемый в MPEG-2 (D-кадры), предназначен для того, чтобы обеспечить простой режим просмотра при ограниченном качестве. При кодировании эти кадры используют только внутрикадровую информацию и только нулевые коэффициенты косинусного преобразования каждого из блоков (так называемые DC-коэффици- енты). Эти кадры не встречаются в последовательностях, содержащих другие типы кадров.

Разности между исходными величинами в P- и B-кадрах и их оценками с учетом найденных векторов движения:

XP (i, j) = XP (i, j) − XI (i +

i, j +

j),

(14.1)

XB (i, j) = XB (i, j) − [XI (i +

i1, j +

j1) + XI (i + i2, j +

j2)]/2 — (14.2)

разбиваются на блоки и подвергаются процедуре дискретного косинусного преобразования.

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

Особенностью стандартов MPEG является то, что для квантования блоков предлагается применять переменную шкалу квантования, неравномерную в окрестности нуля, чтобы частично скомпенсировать проявление неустойчивости предсказания P- и B-кадров относительно ошибок в I-кадрах.

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

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

Сжатие видеоинформации обычно осуществляется в четыре этапа:

преобразование сигналов основных цветов R, G, B в сигнал яркости Y и цветоразностные сигналы CB , CR, уменьшение разрешения сигнала цветности (обычно в два или в четыре раза);

предсказание кадра на основе предыдущих и/или последующих кадров, использование процедуры оценки движения и его компенсация;