CCTV. Библия видеонаблюдения. Цифровые и сетевые технологии - Владо Дамьяновски
Шрифт:
Интервал:
Закладка:
Н.264 уже широко используется в сфере видеоконференций, он был предварительно принят как обязательный стандарт для будущих спецификаций DVD, которые также известны как HD-DVD и разрабатываются DVD Forum.
Как и для многих видеостандартов ISO, для Н.264 есть пример реализации, который находится в свободном доступе. Этот пример должен только показать возможности нового стандарта, но не предназначен для практического применения.
Один из лидеров в сфере компьютерной обработки изображений и мультимедийных приложений компания Apple Computer уже включила стандарт Н.264 в новую версию своей операционной системы Mac OS X. Другие разработчики вскоре последуют этому примеру.
Motion Wavelet
Существует немалое количество и других алгоритмов сжатия видеоизображения, которые являются собственными разработками компаний-производителей систем видеонаблюдения. По этой причине эти алгоритмы никак не стандартизированы, и такой работы даже не ведется. Кроме того, подробности реализации разработчики предпочитают не сообщать, так как это является коммерческой информацией. От детального рассмотрения таких алгоритмов на страницах книги мы воздержимся и в качестве примера приведем только один алгоритм сжатия видеоизображения Motion Wavelet, разработанный одной из российских компаний.
Motion Wavelet — алгоритм сжатия видеоизображения, то есть сжатие кадров основано на том, что они образуют видеопоследовательность. Motion Wavelet обрабатывает изменения, которые возникают в очередном кадре по сравнению с предыдущим либо с опорным кадром. Этим он отличается от алгоритмов сжатия изображения (JPEG и Wavelet), в которых применяется покадровое сжатие. Поэтому размер кадра в Motion Wavelet при сопоставимом качестве получается меньше в 5-10 раз. Разница в среднем размере кадра будет зависеть от фона, наличия перемещающихся объектов и от других факторов.
В отличие от многих алгоритмов сжатия видеоизображения (например, алгоритмы MPEG) Motion Wavelet работает не по принципу вычитания кадров и сжатия полученной разницы. Motion Wavelet при анализе последовательности кадров использует детектор движения, который определяет на следующем кадре, какие элементы изображения изменятся, и сжимает только их. Если начинается движение во всем кадре, то будут обрабатываться и сжиматься все кадры полностью, что будет аналогично покадровому сжатию Wavelet. Впрочем, для видеонаблюдения именно сжатие, связанное с движением отдельных фрагментов, играет основную роль.
Обычно в тех алгоритмах, у которых сжатие основано на обработке разности кадров, не допускается изъятие хотя бы одного кадра из видеопотока, иначе он «распадается».
Эта проблема есть в наиболее распространенных реализациях алгоритма MPEG — они не могут адаптироваться к пропускной способности канала (например, при передаче видеоизображения по сети или по модему) и требуют канал фиксированной ширины. При использовании покадровых алгоритмов JPEG и Wavelet сжимается каждый кадр, поэтому здесь такая проблема отсутствует. Motion Wavelet может адаптироваться к каналу, поскольку если из потока, сжатого с его помощью, выкидывать блоки, то кадр потом можно будет восстановить, потому что сжатие очередного кадра по Motion Wavelet не имеет жесткой привязки к предыдущему кадру.
В наиболее распространенных реализациях алгоритма MPEG фиксируется величина сжимаемого потока. Это означает, что чем больше изменений происходит от кадра к кадру, тем хуже качество сжатого видеоизображения. Если в кадре ничего не изменяется, то качество сжатого изображения — отличное, но если объект начал двигаться, качество сжатого видеоизображения падает. Для видеонаблюдения такую ситуацию нельзя считать удовлетворительной, потому что здесь очень важно наблюдение с хорошим качеством именно движущихся объектов. В Motion Wavelet при наличии в кадре какого-либо действия фиксируется качество: если в кадре начинается движение, то увеличивается величина сжатого потока, а качество остается стабильным.
Еще одна проблема, которая возникает при передаче видеоизображения по сети в форматах MPEG, заключается в том, что видеопоток, сжатый с одной скоростью (например, 25 к/с), без дополнительного перекодирования нельзя передавать меньшей скоростью из-за жесткой привязки в последовательности кадров друг к другу. В алгоритмах Wavelet и JPEG нет этой проблемы. Она была решена и в алгоритме Motion Wavelet, который также позволяет при передаче пропускать кадры.
Так как Motion Wavelet для сжатия кадров использует вейвлет-преобразование, то все преимущества этого сжатия сохранились. Благодаря масштабируемости вейвлет-сжатия Motion Wavelet также позволяет из одного видеопотока быстро получать видеопотоки разного разрешения, когда видеопоток с высоким разрешением используется, например, для записи, а для удаленного просмотра используется видеопоток меньшего разрешения. Кроме того, в алгоритмах, использующих дискретное косинусное преобразование, как, например, JPEG и MPEG, возникает эффект блочности, но для Motion Wavelet, как и для любого вейвлет-сжатия, этот эффект нехарактерен.
Пикселы и разрешениеВсе алгоритмы компрессии, о которых мы говорили ранее, базируются на одном мельчайшем элементе. Это пиксел, «кирпичик», из которых строится любое цифровое изображение. Этот термин необходимо проанализировать подробнее, так как именно пиксел определяет четкость изображения и детализацию, которую мы увидим.
Рис. 9.45. Пикселы RGB на люминофоре цветного монитора или телевизора с электронно-лучевой трубкой
Пиксел (от англ. Pixel, Picture Element, иногда Pel, т. е. элемент изображения) — это мельчайшая часть электронного (цифрового) изображения. Пикселы — это атомы изображения. Крайне важно понимать, что такое пиксел для цифровой фотографии, но то же самое можно сказать и применительно к видеонаблюдению, особенно после появления цифровых видеорегистраторов. Многие из вас употребляют термин «пиксел» при печати брошюр и каталогов для своей компании, а также при обсуждении характеристик жидкокристаллических дисплеев, но при этом мы совсем необязательно говорим о тех же пикселах, которые применяются в цифровом видео.
Пикселы можно связать с разрешением изображения, но крайне важно понимать различия между пикселами разного рода, поскольку очень часто мы пытаемся распознать мельчай шие детали (например, лицо злоумышленника) на изображении, сжатом с высокой степенью компрессии.
В офсетной печати вместо пикселов говорят точки (dots), но сути дела это не меняет, поскольку эти элементы невозможно разделить на более мелкие и получить при этом дополнительную значащую информацию об изображении, частью которого они являются. Проще говоря, в пикселах содержится элементарная информация о мельчайших деталях изображения, то есть информация о цвете и яркости пиксела. Применительно к телевидению мы говорим в данном случае о цветности (chrominance) и яркости (luminance) элемента изображения. Поскольку при отображении всего разнообразия цветов и теней мы ограничены набором первичных цветов, пикселы состоят из более мелких деталей, которые отражают определенное значение своих первичных цветов. Поэтому пикселы на самом деле не являются мельчайшими элементами изображения, однако только группа всех первичных элементов образует «полный» пиксел.
Рис. 9.46. Расположение пикселов RGB на стандартном телевизионном экране (смещение на половину пиксела по вертикали связано с чересстрочной разверткой)
А одинаковы ли пикселы, которые используются в цифровой фотографии, телевидении и печати? Это очень важный вопрос, которому мы уделим особое внимание. Нет, это пикселы разного рода. И в разнице между ними кроется множество ошибок и неточностей, которые возникают во многих сферах, связанных с обработкой изображения, одной из которых и является видеонаблюдение.
Как известно, в цветном телевидении используют цвета красного, зеленого и синего люминофора, чтобы имитировать все остальные цвета. С помощью трех первичных цветов (RGB) мы можем представить практически любой (почти любой) цвет, воспринимаемый человеческим глазом. При соответствующей интенсивности яркости красного, зеленого и синего люминофора мы также можем отобразить любую яркость пиксела (от белого до черного), в том числе и телесные цвета. На самом деле смешивание цветов происходит уже у нас в глазах, когда мы смотрим на пикселы с нормальной зрительной дистанции, которая настолько велика по сравнению с размером пикселов, что мы воспринимаем три первичные точки как одну точку результирующего цвета, полученную в результате аддитивного смешения цветов красного, зеленого и синего люминофора в пикселе.
Рис. 9.47. Пример иного расположения элементов RGB, из которых состоит пикселы