29 июня 2006
А.Соколов. Новые алгоритмы сжатия для систем видеонаблюдения.
А. Соколов
Системы цифровой видеорегистрации
Стандарты, разработанные для сжатия видеосигнала, предоставляют сегодня новые возможности для улучшения качества работы систем цифрового видеонаблюдения. Это значительно повышает актуальность применения новых стандартов сжатия в системах охранного наблюдения.
Стандартизированные алгоритмы
Утверждение о том, что в системах видеонаблюдения цифровые технологии наиболее перспективны, вряд ли сегодня может быть подвергнуто сомнению.
В цифровых системах видеосигнал, как известно, преобразуется в последовательность бит, которая сжимается за счет небольшой потери в спектре сигнала и далее за счет удаления статистической пространственной и временной избыточности информации.
В настоящее время для сжатия видео существует несколько различных стандартов. Назовем основные из них:
- MJPEG - стандарт, подобный стандарту для сжатия статических картинок JPEG, но в отличие от последнего MJPEG предназначен для видео. Каждый кадр при этом сжимается независимо.
- MPEG-1 и 2 - первые стандарты с компенсацией движения между кадрами – характеризуются невысокой степенью сжатия. Сейчас используются в цифровом телевизионном вещании совместно с сопутствующими стандартами для передачи данных по наземным, спутниковым и мобильным каналам: у нас и в Европе DVB-T, S, Н, в США - ATSC. Для приемлемой передачи сигнала телевизионного разрешения достаточно канала 6-8 Мбит/с.
- Н.261 -первый "реальный" стандарт для цифровых видеоконференций, транслируемых по узкополосным каналам связи. В нем используется компенсация движения между кадрами. Разрешение видеокартинки QCIF (176 х 144) либо CIF (352 х 288). Типичные потоки для CIF-разрешения и последовательностей с небольшим движением ("говорящая голова") - не более 380 кбит/с.
- Н.263 - модификация Н.261 с улучшенной системой кодирования коэффициентов дискретного косинусного преобразования (ДКП). Компенсация движения с точностью до 1/2 пикселя. Оба стандарта (Н.261 и Н.263) составляют основу протокола Н.323, являющимся базовым для видеоконференций по IP.
- Н.263++ - дальнейшее развитие Н.263. Стандарт реализует большее сжатие за счет усложнения математических преобразований. Добавлена двунаправленная компенсация движения между кадрами. Н.263++дополнен различными приложениями для повышения эффективности, такими, как внутрикадровое предсказание элементов изображения, компенсация движения со взвешенными коэффициентами и др.
- MPEG-4 - стандарт, основанный на Н.263++. Главным образом он предназначен для хранения и передачи видео в Интернете. Хорошее качество видео телевизионного разрешения достигается при потоке 2-4 Мбит/с.
- Н.264 (или иначе MPEG-4, часть 10) – новый стандарт сжатия. Рассмотрим этот стандарт ниже.
- MPEG7 и MPEG21 - предназначены для хранения мультимедийной информации, сжатой другими алгоритмами, но эти стандарты не являются алгоритмами для сжатия самого видео.
Перечисленные стандарты имеют дополнительно собственные небольшие отличия (профили), по принципу "от более простого к более сложному". Например, начиная с Н.263 и выше может использоваться как относительно простой кодер Хаффмана, в котором каждый передаваемый символ занимает целое число бит, так и арифметический кодер (позволяющий кодировать каждый символ дробным количеством бит). Арифметический кодер повышает сжатие на 15-20%, но требует значительно больших вычислительных ресурсов.
Алгоритм-победитель
В 1990-х гг. международным сообществом был выдвинут долгосрочный проект H.26L по разработке "самого лучшего" (наукоемкого) алгоритма для сжатия видео. Для его реализации заинтересованные организации представили свои концепции в комитет по H.26L Рассматривались самые разные идеи - вейвлеты, афинные преобразования, фрактальные методы и т.д. Уже к 2000 г. был отобран "победивший" алгоритм, который основывался на блочном кодировании, доведенном до совершенства. В этом новом стандарте видеоизображение кодируется блоками переменного размера (начиная от 16 х 16 пикселей до самого мелкого представления блоками по4х4 пикселей). В нем используется двухуровневое иерархическое кодирование коэффициентов, новая схема внутрикадрового предсказания, включая предсказание по диагонали, а также новая схема межкадрового предсказания с выбором наилучшего предыдущего кадра, изменен основной алгоритм ДКП, внесены и некоторые другие изменения. В результате был создан новый стандарт Н.264, который сейчас вошел в MPEG-4 в виде дополнительной главы 10 - Advanced Video Coding. Более подробно основы Н.264 рассмотрены в труде Я. Ричардсона "Видеокодирование" [1].
Поданным различных исследований, при равном визуальном качестве Н.264 обеспечивает примерно на 40% большее сжатие по сравнению с MPEG-4. Принято считать, что в настоящее время Н.264 является самым эффективным алгоритмом сжатия видео (одновременно и самым сложным для реализации) [1,2]. Основные черты нового стандарта - низкий уровень шума и высокая четкость контуров при сверхвысокой степени сжатия. Эти качества делают данный стандарт особенно интересным для применения в системах охранного наблюдения (задача распознавания контуров). Названный стандарт пригоден также и для высококачественного видео и для телевидения высокой четкости. Уже сейчас на рынке появились аппаратные кодеры Н.264 для передачи видео по IP-сетям в виде отдельных устройств, компьютерных плат и интегральных микросхем.
Нестандартные алгоритмы
Помимо стандартизированных алгоритмов для сжатия видео существуют собственные разработки различных компаний. К таким разработкам, например, относятся кодер Windows Media 9 компании Microsoft и закрытый алгоритм компании RealVideo. Качество сжатия примерно соответствует качеству MPEG-4.
Некоторые компании, представленные на рынке систем видеонаблюдения (среди российских - ISS и ITV), используют алгоритмы сжатия видео с применением вейвлет-преобразований. Вейвлет-методы наиболее подходят для изображений высокого пространственного разрешения, характеризующегося большой степенью корреляции между соседними пикселями. Обычно для кодирования кадра используется несколько последовательных вейвлет-преобразований (фото).
Основу вейвлет-методов составляет великолепная локализация базисных функций как в обычном, так и в частотном пространстве. Кроме того, для вейвлетов отсутствуют блочные искажения, присущие MPEG-кодерам. Использование вейвлет-алгоритмов для сжатия видео имеет тем не менее свои сложности, связанные с необходимостью применения фильтров преобразования в большой области кадра над большим числом пикселей (именно при этом применение вейвлетов наиболее эффективно), что трудно согласуется с известными блочными методами компенсации движения между кадрами. Не все участки изображения выгодно кодировать с компенсацией движения, что усложняет использование фильтров без разрывов для большого числа пикселей. Кроме того, даже для одного статического кадра при невысоком разрешении порядка телевизионного и ниже распространенные вейвлет-алгоритмы (например, известный алгоритм Zero-Tree) могут быть менее эффективны, чем предложенная в Н.264 двухуровневая схема кодирования статического кадра.
Фото. Последовательное применение вейвлет-преобразований для кодирования кадра [3] (а - исходная картинка, б - вейвлет-преобразование № 1, в - вейвлет-преобразование № 2, г - вейвлет-преобразование № 3)
Между вейвлетами и блочным кодированием идет борьба - большие картинки лучше сжимаются вейвлетами, а видеопоследовательности - кодерами типа MPEG (сейчас - Н.264). Одним из примеров эффективных алгоритмов сжатия на основе вейвлетов, реализующих компенсацию движения между кадрами, является программный кодер компании ИДМ [3]. При отсутствии компенсации движения вейвлет-кодеки заведомо уступают алгоритмам MPEG-4 и Н.264 по параметру качество/степень сжатия.
В заключение
Для кодирования видео сейчас существует большой набор алгоритмов. Чем сложнее и современнее алгоритм, тем лучшее качество достигается при заданном сжатии. Практически все современные алгоритмы используют компенсацию движения как средство для улучшения сжатия. Появление на рынке оборудования, в котором используется стандарт сжатия Н.264, предоставляет новые возможности для улучшения качества передачи видео в системах цифрового видеонаблюдения.
Информационные источники, использованные в статье
1. Ричардсон, Я. Видеокодирование. Н.264 и MPEG-4 - стандарты нового поколения. Мир цифровой обработки // Техносфера. - Москва, 2005.
2. Сравнение алгоритмов на сайте iXBT // http://www.ixbt.com/divideo/codex-psnr2.shtml
3. Вейвлет видеокодер компании ИДМ // http://www.idm.ru; http://www.codec.ru
Об авторе: А.Ю. Соколов, ведущий разработчик ЗАО "Компания Безопасность", к.ф.-м.н
Источник: Системы цифровой видеорегистрации. Специальное приложение к журналу "Системы безопасности №2(68), 2006