Файл прогрессивной графики


PGF ( файл с прогрессивной графикой ) представляет собой формат растрового изображения на основе вейвлета , который использует сжатие данных без потерь и с потерями . PGF был создан для улучшения и замены формата JPEG . Он был разработан одновременно с JPEG 2000 , но с упором на скорость, а не на степень сжатия . [ нужна ссылка ]

PGF может работать с более высокими коэффициентами сжатия, не занимая больше времени на кодирование/декодирование и не создавая характерных «блочных и размытых» артефактов исходного стандарта JPEG на основе DCT . [2] Это также позволяет выполнять более сложные прогрессивные загрузки . [ нужна ссылка ]

PGF утверждает, что обеспечивает улучшенное качество сжатия по сравнению с JPEG, добавляя или улучшая такие функции, как масштабируемость. Его производительность сжатия аналогична оригинальному стандарту JPEG. Очень низкие и очень высокие степени сжатия (включая сжатие без потерь ) также поддерживаются в PGF. Способность конструкции работать с очень широким диапазоном эффективных скоростей передачи данных является одной из сильных сторон PGF. Например, чтобы уменьшить количество битов для изображения ниже определенного значения, рекомендуется сделать с первым стандартом JPEG, чтобы уменьшить разрешение входного изображения перед его кодированием - то, что обычно не требуется для этой цели, когда с использованием PGF из-за его свойств масштабируемости вейвлета.

Первоначально изображения должны быть преобразованы из цветового пространства RGB в другое цветовое пространство, что приводит к трем компонентам , которые обрабатываются отдельно. PGF использует полностью обратимое модифицированное преобразование цвета YUV . Матрицы преобразования:

Компоненты цвета затем вейвлет преобразуются до произвольной глубины. В отличие от JPEG 1992, в котором используется дискретное косинусное преобразование размером блока 8x8 , PGF использует одно обратимое вейвлет-преобразование: округленную версию биортогонального вейвлет -преобразования CDF 5/3 . Этот банк вейвлет-фильтров точно такой же, как обратимый вейвлет, используемый в JPEG 2000. Он использует только целые коэффициенты, поэтому вывод не требует округления (квантования) и не вносит никакого шума квантования.

После вейвлет-преобразования коэффициенты скалярно квантуются , чтобы уменьшить количество битов для их представления за счет потери качества. Результатом является набор целых чисел, которые должны быть закодированы бит за битом. Параметр, который можно изменить для установки окончательного качества, — это шаг квантования: чем больше шаг, тем больше сжатие и потеря качества. При шаге квантования, равном 1, квантование не выполняется (используется при сжатии без потерь). В отличие от JPEG 2000, PGF использует только степень двойки, поэтому значение параметра i представляет собой шаг квантования 2i . Простое использование степеней двойки не требует операций целочисленного умножения и деления.