Кодек h 264 что это
Перейти к содержимому

Кодек h 264 что это

  • автор:

В чем разница между MPEG-4, AVC/H.264 и MP4?

MPEG-4 video, AVC/H.264, MP4 являются представителями семейства MPEG-4 стандартов, из-за чего часто возникает путаница.

  • MPEG-4 Part 2 Visual (ISO/IEC 14496-2): стандарт сжатия видеоданных, воплощен в видеокодек MPEG-4, опубликован в 1999 году;
  • MPEG-4 Part 10 Advanced Video Coding (ISO/IEC 14496-10): стандарт сжатия видеоданных, воплощен в видеокодек AVC/H.264, опубликован в 2003 году;
  • MPEG-4 Part 14 (ISO/IEC 14496-14): MP4 file format – медиаконтейнер, определяет способ хранения данных, но не алгоритм сжатия.

AVC/H.264 кодек взял лучшее от MPEG-4 Visual, однако данные видео форматы не обладают обратной совместимостью! MPEG-4 кодек был вытеснен с рынка, т.к. AVC/H.264 обеспечивал более высокую степень сжатия. На данный момент AVC/H.264 является самым популярным форматом в мире.

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

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

Основное отличие состоит в том, что кодек (видео формат) — это алгоритм кодирования/декодирования видеоданных, а контейнер (файловый формат) — это пакет, в котором хранится сжатая видеопоследовательность.

Примеры видеокодеков и медиаконтейнеров:

H.261, H.263, VC-1, MPEG-1, MPEG-2, MPEG-4, AVS1, AVS2, AVS3, VP8, VP9, AV1, AVC/H.264, HEVC/H.265, VVC/H.266, EVC, LCEVC

MPEG-1 System Stream, MPEG-2 Program Stream, MPEG-2 Transport Stream, MP4, MOV, MKV, WebM, AVI, FLV, IVF, MXF, HEIC

H.264 и H.265 — AVC и HEVC — В чём разница?

H.265 и H.264 — это изначально стандарты кодирования видео, установленные экспертной группой по видеокодированию Международного консультационного комитета по телефонии и телеграфии (MKKTT, ITU-T VCEG).

h.265 vs h.264

С быстрым развитием технологии видеонаблюдения текущий стандарт H.264 (MPEG-4/AVC) перестал соответствовать требованиям кодирования видео для более высокого разрешения изображения. В будущем видеооборудование 4K UHD и 8K UHD неизбежно станет стандартом, как и сегодня Full HD. В качестве стандарта сжатия видео следующего поколения на рынок вышел H.265, он постепенно внедряется в продукты для IP-наблюдения высокой четкости, таких как IP-камеры HD, NVR.

Что такое H.264 (MPEG-4 AVC)

H.264, также известный как MPEG-4 AVC (Advanced Video Codec), — это разработанный в 2003 году стандарт сжатия видео, а также широко используемый формат высокоточной записи, сжатия и распространения видео. H.264 известен тем, что является стандартом кодеков для дисков Blu-ray. Все проигрыватели Blu-ray должны уметь декодировать H.264. Преобладающее большинство современных видеорегистраторов (DVR) используют h.264 как основной кодек.

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

Разрешение видео h.264

Стандарт H.264 распознает разрешения только до 2048×2048

Обычно поддерживаемые разрешения и соотношения ширины к высоте включают:

  • 854 x 480 (16:9 480p)
  • 1280 x 720 (16:9 720p)
  • 1920 x 1080 (16:9 1080p)
  • 640 x 480 (4:3 480p)
  • 1280 x 1024 (5:4)
  • 1920 x 1440 (4:3)

Кроме того, решение Apple использовать его в определенной степени способствовало популяризации кодирования H.264. Этот стандарт также вошел в миллионы домашних хозяйств с сотнями миллионов iPad и iPhone и стал абсолютным гегемоном в области кодирования изображений, занимая более 80% доли рынка.

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

Изначально проблемы массового внедрения кодека h 264 обуславливались тем, что для декодирования HD видео в реальном времени требовались большие по тем временам мощности аппаратной части вычислительной техники. Ситуацию спас выход на рынок доступных для широкого пользователя многоядерных процессоров AMD и Intel.

Что такое H.265 (HEVC)

Стандарт H.265 или HEVC (High Efficiency Video Coding), разработанный в 2012 году, основан на своём предшественнике, стандарте кодирования видео H.264, сохраняя одни и улучшая другие технологии. H.265 использует передовые методы для улучшения взаимосвязи между кодовым потоком, качеством кодирования, задержкой и сложностью алгоритма для достижения оптимальных настроек.

H.265 поддерживает форматы кадра до 8K (UHDTV) с разрешением 8192×4320 пикселей

Улучшения H.265 по сравнению с H.264 включают в себя:

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

Архитектура кодирования H.265 / HEVC примерно аналогична H.264 / AVC и в основном включает в себя:

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

Однако в архитектуре кодирования HEVC все разделено на три основных блока:

  1. блок кодирования (CU)
  2. блок предсказания (PU)
  3. блок преобразования (TU)

H.265 vs H.264

Разница между H.264 и H.265 заключается, прежде всего, в пропускной способности потоковой передачи и требованиях к хранилищу. H.265, благодаря оптимизации алгоритма H264 может реализовать передачу цифрового изображения стандартной четкости со скоростью ниже 1 Мбит / с; H.265 может реализовать передачу обычного аудио и видео высокой четкости 720P (разрешение 1280 * 720) со скоростью передачи 1

H.265 предназначен для передачи сетевого видео более высокого качества при ограниченной пропускной способности, и только половина пропускной способности H.264 может использоваться для воспроизведения видео того же качества. Стандарт H.265 также поддерживает видео сверхвысокой четкости 4K (4096 × 2160) и 8K (8192 × 4320).

h.265 vs h.264

Архитектура кодирования H.265/HEVC примерно аналогична H.264/AVC. Она в основном включает внутреннее предсказание, внешнее предсказание, преобразование, квантование, фильтр деблокирования (фильтр удаления блочности), энтропийное кодирование (энтропийное кодирование) и другие модули. , но в архитектуре кодирования HEVC все разделено на три основных блока, а именно: блок кодирования (CU), блок предсказания (блок предсказания, PU) и блок преобразования (блок преобразования, TU).

По сравнению с H.264 / AVC, H.265 / HEVC предоставляет больше различных инструментов для снижения скорости передачи данных. Что касается единицы кодирования, размер каждого макроблока (МБ) в H.264 составляет фиксированные 16×16 пикселей, а кодирование блок H.265 можно выбрать от самого маленького 8×8 до самого большого 64×64. В то же время режим внутреннего предсказания H.265 поддерживает 33 направления (H.264 поддерживает только 8) и обеспечивает лучшую обработку компенсации движения и методы векторного предсказания.

Тест сравнения качества показывает, что при том же качестве изображения, по сравнению с H.264, размер видео, закодированного H.265, будет уменьшен примерно на 39-44%. Когда скорость передачи данных снижается на 51-74%, качество видео, закодированного в H.265, может быть таким же или лучше, чем у видео, закодированного в H.264, что существенно лучше, чем ожидаемое отношение сигнал / шум (PSNR ).

Cравнение кодеков H.264 и H.265

H.264 AVC H.265 HEVC
Размер блоков Макроблок 16 х 16 Блоки с древовидной структурой
кодирования от 64х64 до 8х8
Блоки предсказания Разбиение до 4х4 От 64х64 до 4х4 +
ассиметричное предсказание
Блоки преобразования 8х8 и 4х4 32х32, 16х16, 8х8, 4х4 +
неквадратные преобразования
Обратное преобразование Деблокирующий фильтр Деблокирующий фильтр, SAO
Внутрикадровое предсказание 9 режимов 35 режимов
Компенсация движения Предсказание
вектора движения
Усовершенствованное
предсказание вектора движения
(пространственное и временное)
Глубина цвета 8 бит 10 бит
Энтропийное кодирование CABAC или CAVLC CABAC с применением
параллельных операций

Поддержка HEVC в протоколах

В протоколе HLS формат H.265 поддерживается уже очень давно. В протоколе MPEG-TS формат H.265 поддерживается. В протоколе RTSP H.265 поддерживается. Есть упаковка и в SDP, и в RTP.

Сжатие видео на пальцах: как работают современные кодеки?

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

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

Кодек

Интенсивность движения в кадре

Использование дискового пространства за сутки, ГБ

H.265 (Высокое качество)

H.265 (Высокое качество)

H.265 (Высокое качество)

H.265 (Среднее качество)

H.265 (Среднее качество)

H.265 (Среднее качество)

H.265 (Низкое качество)

H.265 (Низкое качество)

H.265 (Низкое качество)

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

Учитывая, что в сутках 86400 секунд, цифры выходят поистине астрономические:

148×86400/1024=12487 ГБ

Итак, если бы мы записывали видео без сжатия в максимальном качестве при заданных условиях, то для хранения данных, полученных с одной единственной видеокамеры в течение суток нам бы потребовалось 12 терабайт дискового пространства. Но даже система безопасности квартиры или малого офиса предполагает наличие, как минимум, двух устройств видеофиксации, тогда как сам архив необходимо сохранять в течение нескольких недель или даже месяцев, если того требует законодательство. То есть, для обслуживания любого объекта, даже весьма скромных размеров, потребовался бы целый дата-центр!

К счастью, современные алгоритмы сжатия видео помогают существенно экономить дисковое пространство: так, использование кодека H.265 позволяет сократить объем видео в 90 (!) раз. Добиться столь впечатляющих результатов удалось благодаря целому стеку разнообразных технологий, которые давно и успешно применяются не только в сфере видеонаблюдения, но и в «гражданском» секторе: в системах аналогового и цифрового телевидения, в любительской и профессиональной съемке, и многих других ситуациях.

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

А вот со снижением детализации все оказывается уже совсем не так однозначно. Технически квантование (то есть, разбиение диапазона сигнала на некоторое число уровней с последующим их приведением к заданным значениям) работает великолепно: используя данный метод, размер видео можно многократно уменьшить. Но так мы можем упустить важные детали (например, номер проезжающего вдалеке автомобиля или черты лица злоумышленника): они окажутся смазаны и такая запись будет для нас бесполезной. Как же поступить в этой ситуации? Ответ прост, как и все гениальное: стоит взять за точку отсчета динамические объекты, как все тут же становится на свои места. Этот принцип успешно используется со времен появления кодека H.264 и отлично себя зарекомендовал, открыв ряд дополнительных возможностей для сжатия данных.

Это было предсказуемо: разбираемся, как H.264 сжимает видео

Вернемся к таблице, с которой мы начали. Как видите, помимо таких параметров, как разрешение, фреймрейт и качество картинки решающим фактором, определяющим конечный размер видео, оказывается уровень динамичности снимаемой сцены. Это объясняется особенностями работы современных видеокодеков вообще, и H.264 в частности: используемый в нем механизм предсказания кадров позволяет дополнительно сжимать видео, при этом практически не жертвуя качеством картинки. Давайте посмотрим, как это работает.

Кодек H.264 использует несколько типов кадров:

  • I-кадры (от английского Intra-coded frames, их также принято называть опорными или ключевыми) — содержат информацию о статичных объектах, не меняющихся на протяжении длительного времени.
  • P-кадры (Predicted frames, предсказанные кадры, также именуемые разностными) — несут в себе данные об участках сцены, претерпевших изменения по сравнению с предыдущим кадром, а также ссылки на соответствующие I-кадры.
  • B-кадры (Bi-predicted frames, или двунаправленные предсказанные кадры) — в отличие от P-кадров, могут ссылаться на I-, P- и даже другие B-кадры, причем как на предыдущие, так и на последующие.

[НАЧАЛО СЪЕМКИ] I-P-P-P-P-P-P-P-P-P-P-P-P-P- .

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

Полное изображение формируется путем «наложения» P-кадров на опорный кадр. При этом появляется возможность независимой обработки фона и движущиеся объектов, что позволяет дополнительно сэкономить дисковое пространство без риска упустить важные детали (черты лиц, автомобильные номера и т. д.). В случае же с объектами, совершающими однообразные движения (например, вращающимися колесами машин) можно многократно использовать одни и те же разностные кадры.

Независимая обработка статических и динамических объектов позволяет сэкономить дисковое пространство

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

Кодек формирует кадры, предсказывая, куда будет двигаться объект

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

[НАЧАЛО СЪЕМКИ] I-B-P-B-P-B-P-B-P-B-P-B-P-B-P-B-P-…

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

В чем разница между H.264 и H.265?

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

Так, обновленная версия кодека стала использовать макроблоки дерева кодирования (Coding Tree Unit, CTU) переменного размера с разрешением до 64×64 пикселей, тогда как ранее максимальный размер такого блока составлял лишь 16×16 пикселей. Это позволило существенно повысить точность выделения динамических блоков, а также эффективность обработки кадров в разрешении 4K и выше.

Кроме того, H.265 обзавелся улучшенным deblocking filter — фильтром, отвечающим за сглаживание границ блоков, необходимым для устранения артефактов по линии их стыковки. Наконец, улучшенный алгоритм прогнозирования вектора движения (Motion Vector Predictor, MVP) помог заметно снизить объем видео за счет радикального повышения точности предсказаний при кодировании движущихся объектов, чего удалось достичь за счет увеличения количества отслеживаемых направлений: если ранее учитывалось лишь 8 векторов, то теперь — 36.

Помимо всего перечисленного выше, в H.265 была улучшена поддержка многопоточных вычислений: квадратные области, на которые разбивается каждый кадр при кодировании, теперь могут обрабатываться независимо одна от другой. Появилась и поддержка волновой параллельной обработки данных (Wavefront Parallelel Processing, WPP), что также способствует повышению производительности сжатия. При активации режима WPP обработка CTU осуществляется построчно, слева направо, однако кодирование каждой последующей строки может начаться еще до завершения предыдущей в том случае, если данных, полученных из ранее обработанных CTU, для этого достаточно. Кодирование различных строк CTU с временной задержкой со сдвигом, наряду с поддержкой расширенного набора инструкций AVX/AVX2 позволяет дополнительно повысить скорость обработки видеопотока в многоядерных и многопроцессорных системах.

Флэш-карты для видеонаблюдения: когда значение имеет не только размер

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

138×30/1024 = 4

По нынешним меркам 4 терабайта для винчестера индустриального класса — практически ничто: современные жесткие диски для видеонаблюдения имеют емкость до 14 терабайт и могут похвастаться рабочим ресурсом до 360 ТБ в год при MTBF до 1.5 миллионов часов. Что же касается карт памяти, то здесь все оказывается не так однозначно.

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

Как видно из нашей таблицы, даже при низком качестве изображения и при условии минимальной активности в кадре, всего за сутки будет записано около 24 ГБ видео. А это значит, что 128-гигабайтная карточка будет полностью перезаписана менее чем за неделю. Если же нам требуется получать максимально качественную картинку, то все данные на таком носителе будут полностью обновляться раз в сутки! И это лишь при разрешении Full HD. А если нам понадобится картинка в 4K? В этом случае нагрузка вырастет практически в два раза (в заданных условиях видео в максимальном качестве потребует уже 250 ГБ).

При бытовом использовании подобное попросту невозможно, поэтому даже самая бюджетная карта памяти способна прослужить вам несколько лет к ряду без единого сбоя. А все благодаря алгоритмам выравнивания износа (wear leveling). Схематично их работу можно описать следующим образом. Пусть в нашем распоряжении есть новенькая флеш-карта, только что из магазина. Мы записали на нее несколько видеороликов, использовав 7 из 16 гигабайт. Через некоторое время мы удалили часть ненужных видео, освободив 3 гигабайта, и записали новые, объем которых составил 2 ГБ. Казалось бы, можно задействовать только что освободившееся место, однако механизм выравнивания износа выделит под новые данные ту часть памяти, которая ранее никогда не использовалась. Хотя современные контроллеры «тасуют» биты и байты куда более изощренно, общий принцип остается неизменным.

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

Нетрудно догадаться, что wear leveling перестает играть хоть сколько-нибудь значимую роль в том случае, если флэш-карта постоянно перезаписывается целиком: здесь на первый план уже выходит выносливость самих чипов. Наиболее объективным критерием оценки последней является максимальное количество циклов программирования/стирания (program/erase cycle), или, сокращенно, циклов P/E, которое способно выдержать флеш-память. Также достаточно точным и в данном случае наглядным (так как мы можем заранее рассчитать объемы перезаписи) показателем является коэффициент TBW (Terabytes Written). Если в технических характеристиках указан лишь один из перечисленных показателей, то вычислить другой не составит особого труда. Достаточно воспользоваться следующей формулой:

TBW = (Емкость × Количество циклов P/E)/1000

Так, например, TBW флеш-карты емкостью 128 гигабайт, ресурс которой составляет 200 P/E, будет равен: (128 × 200)/1000 = 25,6 TBW.

Давайте считать дальше. Выносливость карт памяти потребительского уровня составляет 100–300 P/E, и 300 — это в самом лучшем случае. Опираясь на эти цифры, мы можем с достаточно высокой точностью оценить срок их службы. Воспользуемся формулой и заполним новую таблицу для карты памяти емкостью 128 ГБ. Возьмем за ориентир максимальное качество картинки в Full HD, то есть в сутки камера будет записывать 138 ГБ видео, как мы выяснили ранее.

Преимущества и принцип работы кодека HikVision H.264+

Просматривая спецификации современных камер HikVision, пытливый читатель непременно обратит внимание на заявленную поддержку стандарта сжатия видео H.264+. Подробное описание лицензируемого кодека H.264, также обозначаемого в специальной литературе, как AVC (Advanced Video Coding), можно отыскать даже в Википедии, но что же скрывается за красующимся справа знаком «плюс»: принципиально новые возможности, или все это — не более, чем маркетинговый трюк? Попробуем разобраться.

Предпосылки к разработке кодека H.264+

Формат H.264+ был создан на основе алгоритмов H.264/AVC. Инженеры HikVision адаптировали популярный стандарт сжатия под специфику задач, решаемых современными системами видеонаблюдения, и существенно улучшили компрессию без ущерба для качества изображения. Благодаря этому эксплуатация аппаратуры с поддержкой H.264+ позволяет снизить нагрузку на сеть, а также сократить объем видеоархива, оптимизировав затраты на построение и обслуживание охранной инфраструктуры. Поддержка нового стандарта была внедрена в цифровых камерах HikVision серий EasyIP и EasyIP 2.0. Одним из ярких представителей последней можно назвать модель DS-2CD2042WD-I, доступную в четырех модификациях, отличающихся друг от друга фокусным расстоянием объектива (4, 6, 8 или 12 мм).

4-мегапиксельные камеры поддерживают запись видео с разрешением вплоть до 2688 х 1520 пикселей (максимальный фреймрейт при этом ограничивается 20 кадрами в секунду), или в формате Full HD в реальном времени. Интеллектуальный алгоритм сжатия, наряду с поддержкой функционирования в двухпоточном режиме передачи данных позволяют оптимизировать нагрузку на систему безопасности и существенно экономить дисковое пространство. Так, например, если при использовании обычных камер для видеонаблюдения в режиме 24/7 при разрешении 1920 x 1080 пикселей и фреймрейте 25 к/с месячный архив будет занимать порядка 1.2 ТБ, то кодек H.264+ помогает сократить его размеры на треть (до 462 ГБ) без заметной потери качества.

В отличие от традиционной съемки, видеонаблюдение имеет три важные отличительные черты:

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

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

Принцип работы кодирования с предсказанием в формате H.264+

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

При перекодировании видео в формат H.264 формируются следующие типы кадров:

  • I-кадры (от английского «Intra-coded frames», их также принято называть опорными или ключевыми) — содержат информацию о статичных объектах, не меняющихся на протяжении длительного времени, и подвергаются внутрикадровой обработке;
  • P-кадры («Predicted frames», предсказанные кадры, также именуемые разностными) — несут в себе данные об участках сцены, претерпевших изменения, а также ссылки на соответствующие I-кадры. P-кадры подвергаются межкадровому сжатию;
  • B-кадры («Bi-predicted frames», или двунаправленные предсказанные кадры) — могут ссылаться на I-, P- и даже другие B-кадры (их число может достигать 32), причем как на предыдущие, так и на последующие.

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

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

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

Интеллектуальное управление видеопотоком формата H.264+

Следующей особенностью кодека H.264+ является поддержка динамического изменения размера видеопотока в зависимости от времени суток, что особенно актуально для систем круглосуточного видеонаблюдения. Фирменные алгоритмы HikVision отслеживают динамику нагрузки на камеру в течение 24 часов, рассчитывая величину среднесуточных флуктуаций и корректируя степень сжатия видео с привязкой к прогнозируемой активности в кадре.

На приведенной схеме пиковая активность в кадре приходится на временной промежуток C (между 12 и 18 часами), тогда как утром и ночью снимаемая сцена статична (зоны A и B). Поток обрабатываемых данных при этом оказывается ниже практически на 95%, что помогает существенно сэкономить дисковое пространство. Конечная экономия зависит от количества движущихся объектов, интенсивности их перемещения и размера статичных участков, используемых при формировании I-кадров.

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

Зона интереса Размер статичного фона Уровень активности в кадре Потенциальная экономия
Небольшой частный магазин малый средний 50%
Оживленная улица в дневное время средний высокий 65%
Промзона в ночное время суток большой минимальный 95%

Благодаря всему вышеперечисленному, формат H.264+ оказывается идеальным решением для создания системы видеонаблюдения с применением камер высокой четкости (с разрешением Full HD и выше) на объектах, где необходимо вести непрерывную видеофиксацию, а возможности детекции движения допустимо задействовать лишь в сценариях видеоаналитики. Современный стандарт компрессии изображения позволяет существенно сократить издержки, связанные с архивацией и хранением данных, не жертвуя при этом качеством записи. Результаты можно оценить по следующему ролику, специально подготовленному специалистами HikVision.

Hikvision H.264+ Solution

Как видно, интеллектуальные алгоритмы делают H.264+ значительно эффективнее по сравнению с обычным H.264/AVC. И что немаловажно, при его использовании сохраняется обратная совместимость с аппаратным и программным обеспечением, поддерживающим стандарт H.264: таким образом вы нисколько не будете стеснены при подборе оборудования и прикладного ПО.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *