8

Я пытаюсь преобразовать некоторые файлы BMP в формат JPEG с высоким качеством (Q = 100), пока не пойму, что здесь есть опция "Прогрессивный".

Один из моих файлов BMP составляет 2,9 МБ. После преобразования в формат JPEG без прогрессивной развертки новый размер файла составляет 338,2 КБ, а при прогрессивной - новый размер файла уменьшается только до 283,2 КБ.

Я читал статью в Википедии о том, для чего предназначен этот прогрессивный JPEG, но мое беспокойство по сравнению с обычным JPEG, качество прогрессивного JPEG ухудшается, или они будут такими же?

2 ответа2

7

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

Я выделил важные части ниже, они описывают это лучше, чем я когда-либо мог.

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

Progressive JPEG имеет две разные функции кодирования:

  1. Спектральный отбор
  2. Последовательное приближение

То, что вы описываете, это только первая функция (сначала DC, затем AC диапазоны). Однако это вторая особенность, которая является основной причиной различной эффективности кодирования в Progressive JPEG. При последовательном приближении вы сначала сохраняете старшие биты коэффициентов (низкая точность, грубое изображение), а затем младшие биты (высокая точность, детальное изображение).На обычных изображениях шум концентрируется в младших битах. Следовательно, кодер Хаффмана может быть более эффективным при кодировании символов в более высоком битовом диапазоне, где меньше шума. Таким образом, кодирование с последовательным приближением отделяет шум от изображения, и это является причиной лучшей эффективности кодирования (шум трудно сжимаемый).

Чем больше шума (детализации) у изображения, тем выше эффективность кодирования в Progressive JPEG. Чем меньше шума (размытия) изображения, тем выше эффективность кодирования последовательного (не прогрессивного) JPEG.

Обратите внимание, что большинство кодеров прогрессивного JPEG используют сочетание кодирования спектрального выбора и кодирования с последовательным приближением. Для повышения эффективности кодирования важна, в основном, Успешная аппроксимация, и вы можете попытаться найти оптимальные параметры последовательной аппроксимации (точку, где необходимо разделить точность - Ah/Al в стандарте JPEG) для вашего класса изображений. Например, я иногда находил оптимальную точку Al = 4 для моих изображений (4 младших бита отдельно кодируются).

2

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

Изображение должно быть точно таким же, требуется больше обработки для отображения.

Источник

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .