СТРУКТУРА СВЕРТКИ ВИДЕОИЗОБРАЖЕНИЯ В ДЕКОДЕРЕ



ПО СТАНДАРТУ Н. 261

БЛОК                                                           МАКРОБЛОК (MB)                                                

 

                                    

ЦВЕТОРАЗНОСТНЫЕ              ЯРКОСТНЫЕ

                                                                                         составляющие

                                                                                                                 КАДРЫ QCIF    

ГРУППА БЛОКОВ (GOB)                                                                                               КАДРЫ CIF

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  

 

 

Рис. 4.

Алгоритм кодирования.

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

1.Входной поток подвергается предварительной обработке:

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

Производится преобразование RGB в YUV

Производится преобразование из формата цветности 4:4:4 в 4:2:0 ( горизонтальная и вертикальная поддискретизация цветоразностных компонентов).

 

     
 

 


Схема выборки 4:2:2                                     Схема выборки 4:2:0

       - выборка только Y

       - выборка Y, Cb, Cr

       - выборка Сb, Cr

 

Рис. 5.

Эта схема преобразования обычно используется для стандарта Н. 261 . 

 На рис.5 изображена двумерная 2:1 подвыборка цветоразностных элементов по отношению к элементам яркости. Элементы Cb и Cr не совпадают по расположению с элементами яркости, но представляют информацию о цвете для группы четырех элементов яркости, расположенных по углам квадрата. Значение Си СR обычно вычисляются 4:4:4 путем горизонтальной и вертикальной фильтрации и интерполяции. Обычно значения Cb и Cr вычисляются только для каждой второй линии элементов яркости. Т. о. Остальные линии несут только яркостную составляющю.4:2:0. Ширина полосы сигнала 4:2:0 идентична полосе сигнала 4:1:1. На рис.5 Представлен построчный видеосигнал, в котором используется только одно поле сигнала.

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

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

3.Находятся ошибки предсказания движения.

4.Производится анализ информации о движении и принимается решение о способе кодирования макроблока.

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

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

Кодирование I- блоков.

Процедура кодирования I-блоков похода на методику кодирования неподвижных блоков стандарт JPEG. Однако в отличии от JPEG уровень квантования может быть переменным, и коэффициент квантования подбирается кодером.

Кодирование Р-блоков.

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

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

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

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

Дисперсия V1 для текущего макроблока вычисляется:

V1 = ,

А дисперсия V2 - - для разностного сигнала , полученного с учетом принятого решения о компенсации движения, т. е. С использование вектора движения (N,M), нулевого или ненулевого по формуле:

V1 = X(i+n,j+m))/256

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

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

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

 Продукты, соответствующие стандартам ITU, позволяют любому абоненту связываться с любым другим абонентом. Стандарты, разработанные сектором стандартизации в области телекоммуникаций ITU (ITU-TSS, предыдущее название - CCITT), сделали для систем поддержки видеоконференций для ПК то, что сделали ранее выработанные стандарты "V.xx" и "Group-III" для модемов и факсимильных аппаратов - обеспечили совместимость изделий разных производителей в мировом масштабе.


 


Дата добавления: 2019-07-15; просмотров: 125; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!