Назад
16.12.2015

Алгоритм сжатия H.264+ – инновационная разработка компании Hikvision. По своей сути H.264+ представляет собой кодек H.264/AVC, модифицированный под задачи видеонаблюдения и с учетом его специфики, чтобы повысить степень сжатия без ущерба для качества видео.

Специфика видеонаблюдения заключается в следующем:

  • фон стабилен и практически не изменяется;

  • движущиеся объекты появляются редко и могут отсутствовать в течение продолжительного времени;

  • интерес представляют только движущиеся объекты;

  • наблюдение ведется круглосуточно, а шумы заметно влияют на качество изображения.

H.264+ повышает степень сжатия за счет 3 ключевых факторов:

  • кодирование с предсказанием на основе модели фона,

  • фоновое шумоподавление,

  • долгосрочное управление видеопотоком.

Кодирование с предсказанием

Все современные алгоритмы сжатия, такие как MPEG2, MPEG4, H.264/AVC и самый современный алгоритм HEVC, сочетают внутрикадровое и межкадровое сжатие. I-кадры (опорные кадры) кодируются независимо от других кадров, то есть используется внутрикадровое сжатие, тогда как для кодирования P-кадров (предсказанные кадры) используются I-кадры и другие P-кадры (межкадровое сжатие). В случае межкадрового сжатия эффективность будет сильно зависеть от выбора опорного кадра.

В области видеонаблюдения фон, как правило, стабилен. Его можно извлечь и использовать в качестве опорного кадра.


                                    T0                                                                  T1                                                                         T2

Рис. 1. Модель фона

На Рис. 1 показана последовательность из 3 кадров, где кадры T0 и T1 уже подверглись обработке кодеком. Здесь можно взять фон в качестве опорного кадра и сжать кадр T2 на основе с учетом сходства и разницы между кадром T1 и фоном. Кадр T0 будет хорошим выбором в качестве фонового изображения.

Для примера возьмем Рис. 2, на котором автомобиль перемещается из области B в A (из кадра T1 в кадр T2). При кодировании кадра T2 область B становится вновь открывшимся участком.


Рис. 2. Объект перемещается из B в A

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


Рис.3. Традиционная схема кодирования с опорным кадром

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


Рис. 4. Схема кодирования с фоном в качестве опорного кадра

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

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

Для того чтобы уменьшить удельный вес этих повторов в видеопотоке, в кодеке H.264+ используется метод работы с опорными кадрами на основе модели фона, показанный на Рис. 5.


Рис. 5. Работа с опорными кадрами на основе модели фона в H.264+

На Рис. 5. красным цветом показаны опорные кадры фона, в которых используется внутрикадровое сжатие. Синим цветом здесь отмечены кадры обновления, в которых применяется внутрикадровое сжатие для участков с движущимися объектами, обведенными красной рамкой на Рис. 6., и межкадровое сжатие – для неподвижных объектов. Белым цветом показаны обычные кадры с межкадровым сжатием.

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


Рис. 6. Кодирование кадров обновления в H.264+

Шумоподавление

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

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


Рис.7. Шумоподавление в H.264+

Долгосрочное управление видеопотоком

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


Рис. 8. Колебания видеопотока в зависимости от времени суток

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

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


Рис. 9. Долгосрочное управление видеопотоком с его перераспределением

На Рис. 9 видно, что в период времени C (активность возрастает и требуется больший размер видеопотока для получения качественного изображения) выделяется дополнительная квота за счет периодов времени A и B (активность низка и размер видеопотока снижается).

Уменьшение размера видеопотока

Для включения сжатия H.264+, необходимо чтобы размер видеопотока был переменным, при этом включается долгосрочное управление видеопотоком. Средний размер видеопотока вычисляется автоматически на основе пиковых значений. В большинстве случаев автоматически определенное значение среднего размера видеопотока не требует дополнительной подстройки. Тем не менее, иногда это может потребоваться, например, если в кадре слишком много или слишком мало движения. На Рис. 10 приведены примеры ситуаций, когда кодек Hikvision H.264+ может существенно уменьшить размер видеопотока. Эта экономия будет зависеть от размера фона и количества движения в кадре.


Внутри помещений

Фон

Активность

Экономия видеопотока

малый

редкая

55%


На улице

Фон

Активность

Экономия видеопотока

средний

большая

60%

В темное время суток

Фон

Активность

Экономия видеопотока

большой

минимум

95%

Рис. 10. Экономия видеопотока в зависимости от наблюдаемой сцены

Применение

Кодек H.264+ применяется в IP-видеокамерах высокого разрешения. При сохранении качества, сопоставимого с кодеком H.264/AVC, размер видеопотока у H.264+ уменьшается. Например, при малой активности в кадре такая экономия может достигать 75%, а при наличии большого количества движущихся объектов экономия составит 50%. Впрочем, если в кадре присутствует постоянное движение, размер видеопотока у H.264+ и H.264/AVC будет сопоставимым.

Более того, пиковые значения размера видеопотока у H.264+ будут превышать среднее выбранное значение, чтобы сохранить высокое качество изображения у движущихся объектов. Чем больше таких объектов, тем больше размер видеопотока H.264+, но он никогда не превысит аналогичного значения у H.264/AVC.

Кодек H.264+ соответствует стандарту H.264/AVC и совместим практически со всем программным и аппаратным обеспечением, которое поддерживает этот стандарт. В некоторых случаях может потребоваться лишь незначительная подстройка, чтобы улучшить воспроизведение.

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


По любым вопросам обращайтесь к вашему персональному менеджеру в ЛУИС+ или звоните по телефонам компании в Москве +7 (495) 637-63-17 или +7 (495) 280-77-50.