Сначала маленький анекдот.
---------------
Спорят два еврея. До хрипоты, почти до рукоприкладства. Подходит раввин. Один еврей спрашивает:
- Равве, вот послушай, все было так и так.
Раввин послушал,
-Ты знаешь, ты прав.
Тут подскочил второй еврей,
Равве, не слушай его, все было так и так.
Раввин послушал,
-И ты прав.
Тут не выдержал третий еврей,
Равве, они же говорят совершенно разные вещи, они не могут быть оба правы.
Раввин послушал, подумал,
-Ты знаешь, ты тоже прав.
---------------
Так и здесь. Мы говорим о совершенно разных вещах, но при этом не соглашаемся друг с другом:)
Если хотите увидеть разницу между motion jpeg и motion wavelet, сохраните одну и ту же bmp картинку в jpeg и jpeg2000.
Юрий, не совсем верно. Обычная Wavelet-компрессия и JPEG2000 разные вещи. Так скорее можно увидеть разницу между motion jpeg и motion jpeg2000 :thumbsup:.
Давайте попробуем обойтись без ссылок на умные статьи. Я делал эксперимен.
1. Берем исходное видео без артефактов сжатия.
2. Жмем его с помощью mjpeg и wavelet с одинаковым битрейтом до появления атрефактов.
3. Делаем скриншоты mjpeg и wavelet.
4. Делаем скриншоты исходного видео (без артефактов).
5. Сохраняем их в jpeg и jpeg2000 с размером файла, равным скриншотам mjpeg и wavelet. Сравниваем с этими самыми скриншотами.
6. По результатам сравнения, исходный кадр сохраненный в jpeg = скриншоту mjpeg, исходный кадр сохраненный в jpeg2000 = скриншоту wavelet. Субъективно, качество скриншота wavelet чуть лучше чем скриншота mjpeg. Кто не верит, пусть проверит.
Эксперимент проводился при сравнительно большом сжатии (размер кадра QCIF~20кб). При малом сжатии, разница между качеством скриншота mjpeg и wavelet отсутствует.
Это непосредственно по теме. Теперь снова лирическое отступление.
--------------------------
Давайте определимся с основными понятиями, а потом будем спорить о частностях.
1. Основная инженерная задача системы видеонаблюдения - переместить кадры из матрицы камеры на экран оператора и в видоаархив. Здесь пока не важно кто каким кодеком пользуется. Не важно даже как устроена система видеонаблюдения. Шерлок Холмс, например, использовал мальчишек, которые следили за объектом а потом рассказывали что к чему
2. Основные ограничения системы видеонаблюдения - пропускная способность канала связи, быстродействие процессора, размер архива, цена системы.Грубо говоря, количество мальчишек, скорость, с которой Холмс успевал их выслушивать и делать выводы, количество информации, которую запоминали мальчишки (буфер) и которую запоминал Холмс (основной архив). Ну и количество шиллингов, которые Холмс платил мальчишкам за их услуги, куда ж без этого

----------------
Начнем с ограничений. Если бы ограничений не было, мы бы вообще не использовали алгоритмы сжатия. Но раз алгоритмы есть, значит они зачем-то нужны.
1. Все алгоритмы без межкадрового сжатия (motion xxx).
Извините, но я объеденю их в одну кучу. Что бы там не писали в рекламных слоганах, разница между ними не превышает 10-50%. Все эти алгоритмы сильно загружают каналы связи и занимают много места в архиве, но меньше всего грузят процессор.
2. Все алгоритмы с межкадровым сжатием (mpeg x).
И снова всех в одну кучу. StreamLogic, которым иак хвастается Диолим рядом с MPEG2 и MPEG4. Потому что при одинаковом качестве они будут примерно одинаково использовать каналы связи, производительность процессора и занимать место в архиве. Причем, пропускной способности и места в архиве им требуется гораздо (в разы, а то и на порядок) меньше чем для алгоритмов без межкадрового сжатия. А вот производительность процессора они поедают с умопомрачительной скоростью.
-----------------
Теперь о том, где и какой алгоритм применять и почему.
1. Пропускная способность сети.
Здесь действует только пограничное ограничение. То есть, до тех пор, пока пропускная способность не задействована на все 100%, применяйте любой алгоритм. Когда пропускной способност не хватает, смотрите в стороу mpeg x.
2. Быстродействие процессора.
Опять таки пограничное ограничение. Достаточно чтобы процессор успевал обрабатывать видео в реальном масштабе времени. Быстрее уже не нужно, Вы все равно этого не заметите. Если процессор не успевает, применяйте motion xxx.
Здесь маленькая ремарка.
Существует тенденция по доработке mpeg сжатия под нужды видеонаблюдения. Например, mpeg формат сложнее обрабатывать с помощью детектора движения. Нет проблем, давайте сначала пропустим картинку через детектор движения, а потом сожмем ее с помощью mpeg и добавим информацию с выхода детектора. Все бы хорошо, но в результате получается новый формат, не совместимый со стандартным ПО. А пока этот новый формат сертифицируют, железо продвинется настолько, что новый формат никому не будет нужен. 3. Размер архива.
И снова пограничное ограничение. Если у Вас есть место на диске, применяйте любой формат. Если места не хватает, Вам поможет mpeg.
4. Цена.
Сами камеры без mpeg4 дешевле. Цена решения в целом, по всякому. Тут надо считать.
Не устали? Еще буквально пару слов. Я не буду здесь спорить, что лучше, StreamLogic, MPEG4 или MPEG2. В рамках моей классификации это одно и тоже. То есть, разница между ними есть, но она не существенна применительно к системе на IP камерах наблюдения. А о другой системе сейчас просто нет смысла говорить.