10.09.2015

Анализ сравнения

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

Профессиональные форматы жмут изображения лучше, чем мои разработки. Почему? Тут может быть несколько причин:
  1. Использование более сложных вейвлет-преобразований.
  2. Более сильное сжатие после вейвлет-преобразований без потерь данных.
  3. Использование специальных фильтров после восстановления изображения для устранения артефактов сжатия.
Наиболее вероятной причиной мне кажется п. 2, менее вероятной п. 1. Хотя возможно и сочетание обоих факторов. А вот п. 3 мне кажется невероятным. По слухам, использование фильтров сильно улучшает визуальное качество сжатого изображение, однако почему-то разработчики очень редко их реализуют.

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

4 комментария:

  1. Не смотрели Motion JPEG 2000? Я почитал несколько сравнений с h.264, и вроде супер большой разницы нет...

    Согласен, более умное сжатие, знающее про вейвлеты, думаю должно улучшишь результат.

    Нашел статью про jpeg2000, где более-менее понятно описаны общие идеи, без большого ухода в детали: http://library.msri.org/books/Book46/files/08li.pdf Дак там энтропийное сжатие совсем не простое используется, каждый бит экономят :)

    ОтветитьУдалить
    Ответы
    1. Нет, не смотрел. Честно говоря, до этого момента даже и не знал, что такое бывает.
      Почитал.
      Фактически, то же самое, что я делаю.

      А вот с h.264, насколько я понимаю, разница существенная. В h.264 есть предсказание движения, в то время как в MJPEG2000 его нет.

      На самом деле MJPEG2000 полный аналог просто MJPEG, если я, конечно, все правильно понял.

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

      Удалить
    2. Что видео формат совсем разный я знаю. Я имел ввиду степень сжатия сравнимая, если я правильно понял.

      Удалить
    3. Сложно сказать насчет сравнимости степени сжатия. MJPEG 2000 полный аналог MJPEG. Для обычных условий просмотра видео максимум, что позволяет добиться MJPEG - это сжатие 1:20.
      Соответственно, от MJPEG 2000 можно ожидать сжатия при равном качестве до 1:40, что близко к к тому, что дает нижняя оценка для h.264. Но для MJPEG приведена верхняя оценка. То есть h.264 может дать и большее сжатие (и дает).
      Кстати, я тоже применяю, хоть и на примитивном уровне, межкадровое сжатие. Так что у меня не аналог MJPEG 2000. )))

      Удалить