Перезвонить вам?
Ваше имя Телефон Комментарий
Последние статьи
Каталог товаров
Читать все новости

Алгоритм сжатия H.264

Алгоритм сжатия H.264

Алгоритм сжатия H.264

Существует такой стандарт как H.264 (MPEG-4.Part 10) - это специальный формат сжатия для видеоданных. Особенность этого формата заключается в том, что он предназначен для сжатия  высокой степени при этом сохраняя высокое качество видеопотока. Другое название этого формата - AVC (Advanced Video Coding). Стандарт H.264 и стандарт ISO/IEC MPEG-4 Part 10 с технической точки зрения полностью идентичны. Данный формат применяется в различных отраслях цифрового видео и в частности в цифровом телевидении высокого разрешения HDTV.

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

Рассмотрим основные  сферы применения.

Многократное предсказание кадров:

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

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

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

- использование компенсации движения с изменяемым размером блока (от 4х4 и до 16х16 пикселей) позволяет более точно выделять зоны движения.

- поддерживается методика экстраполяции за границы изображения, появившаяся в более ранней версии Н.263 как опция.

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

- очень высокая точность описания движущихся зон обеспечивается при помощи технологии Qpel.

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

В отличие от технологии предсказания только коэффициента трансформации в форматах Н.263+, а также  MPEG-4 Part 2 и метода дискретно-косинусного коэффициента в MPEG-2 Part 2, данная технология использует пространственное предсказание от краев соседних блоков для I-кадров. Качество сигнала, используемого для  предсказания, повышается благодаря использованию новой технологии экстраполяции краев ранее декодированных зон  (частей) текущего изображения.

Макроблоки сжимаются без потерь.

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

Широкие возможности чересстрочного сжатия.

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

Новые функции связанные с преобразованием:

-  Точное размещение разностных сигналов при min шума возможно благодаря точному целочисленному преобразованию пространственных блоков 4x4.

-  Адаптивная выборка кодеков между размерами блоков 4x4 и 8x8.

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

- Более эффективное целочисленное преобразование 8x8 пространственных блоков  - чем 4x4.

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

-  Упрощенное распределение битрейта кодером и упрощенное вычисление обратной квантования с помощью логарифмического управления длинной шага.

- На основе человеческих особенностей восприятия, кодером для оптимизации квантования выбираются частотно-оптимизированные матрицы масштабирования квантования.

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

Коэффициенты трансформации кодируются энтропийным кодированием:

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

- CAVLC -контекстно-зависимое адаптивное кодирование с переменной длиной кодового слова - это альтернативный алгоритм для CABAC меньшей сложности.

- Exp-Golomb - часто используемое, высокоструктурированное и простое кодирование переменной длины элементов синтаксиса - словами. 

Устойчивость к ошибкам:

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

-новый метод гибкого упорядочивания макроблоков и произвольного упорядочивания частей ASO. Это существенно повышает устойчивость к потере данных.

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

- разбиение данных.

- возможность посылки кодером избыточного представления областей изображения.

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



Доставка в города: Акимовка, Александрия, Алушта, Алчевск, Антрацит, Апостолово, Армянск, Артемовск, Арциз, Ахтырка, Балаклея, Балта, Бар, Барышевка, Бахмач, Бахчисарай, Баштанка, Белая Церковь, Белгород-Днестровский, Белополье, Бердичев, Бердянск, Береговое, Березань, Бобринец, Богодухов, Болград, Борисполь, Бровары, Броды, Бурынь, Варва, Васильков, Верхнеднепровск, Вижница, Винница, Вишневое, Владимир-Волынский, Вознесенск, Волноваха, Вольногорск, Вышгород, Гадяч, Гайворон, Геническ, Глобино, Глухов, Горловка, Городище, Городок(Хмельницкий), Гребенка, Дебальцево, Джанкой, Днепродзержинск, Днепропетровск, Долина, Долинская, Донецк, Дрогобыч, Дружковка, Дубно, Дунаевцы, Евпатория, Енакиево, Жашков, Желтые Воды, Житомир, Жмеринка, Запорожье, Звенигородка, Зеньков, Змеев, Знаменка, Золотоноша, Золочев, Ивано-Франковск, Измаил, Изюм, Изяслав, Ильичевск, Ирпень, Ичня, Казатин, Калуш, Каменец-Подольский, Каменка, Каменка-Днепровская, Канев, Карловка, Катеринополь, Кельменцы, Керчь, Киев, Килия, Кировоград, Кировск, Кобеляки, Ковель, Кодыма, Козелец, Коломыя, Комсомольск, Конотоп, Константиновка, Корец, Коростень, Коростышев, Корсунь-Шевченковский, Корюковка, Костополь, Котельва, Котовск, Краматорск, Красноармейск, Красноград, Красноперекопск, Краснополье, Красный Луч, Кременчуг, Кривой Рог, Кролевец, Купянск, Лебедин, Ленино, Летичев, Лисичанск, Лозовая, Лохвица, Лубны, Луганск, Луцк, Лысянка, Львов, Любомль, Макаров, Макеевка, Малин, Маневичи, Марганец, Мариуполь, Машевка, Мелитополь, Мельниц, Мена, Миргород, Мироновка Могилев-Подольский, Монастырище, Мукачево, Надворная, Нежин, Нетешин, Николаев, Никополь, Новая, Каховка Новгород-Северский, Новгородка, Новоазовск, Нововолынск, Новоград-Волынский, Новомосковск, Новоселица, Новый Буг, Носовка, Обухов, Овруч, Одесса, Орджоникидзе, Орехов, Оржица, Очаков, Павлоград, Первомайск, Первомайский, Переяслав-Хмельницкий, Першотравенск, Петропавловка, Пирятин, Покровское, Пологи, Полонное, Полтава, Попасная, Прилуки, Путивль, Пятихатки, Раздельная, Рени, Решетиловка, Ровеньки, Ровно, Рубежное, Саки, Самбор, Сарны, Свердловск, Светловодск, Севастополь, Северодонецк, Семеновка, Середина-Буда, Симферополь, Синельниково, Скадовск, Славута, Славянск, Смела, Снятин, Старобельск, Стаханов, Сторожинец, Стоянка, Стрый, Сумы, Тальное, Терновка, Тернополь, Тетиев, Токмак, Тростянец, Трускавец, Тульчин, Ужгород, Ульяновка, Умань, Феодосия, Харцызск, Харьков, Херсон, Хмельник, Хмельницкий, Хорол, Хотин, Хуст, Царичанка, Чаплинка, Червоноград, Черкассы, Чернигов, Черновцы, Черноморское, Чигирин, Чугуев, Чутово, Шостка, Шпола, Энергодар, Южное, Южноукраинск, Ялта, Ямполь, Яготин.