Можно ли конвертировать jpg в прогрессивный jpg без потери качества?

Мое понимание прогрессивного jpg состоит в том, что он сохраняет информацию о цвете каждого пикселя в другом порядке, чтобы создать эффект прогрессивной загрузки. Т.е. вместо RGB RGB RGB ..., сохраняется как RRRR... GGGG... BBBB.... ( https://imagemagick.org/script/command-line-options.php#interlace )

Если это так, возможно ли преобразовать jpg в прогрессивный jpg без потери качества? Кажется, это переупорядочивание данных, а не необходимость пройти алгоритм сжатия jpg.

Какую проблему вы пытаетесь решить? Зачем вам нужно конвертировать jpg в прогрессивный jpg?
неверно, jpg не сохраняет пиксели, не сохраняет пиксели RGB, а прогрессивный jpg не чередует пиксели в другом порядке
Прогрессивный JPEG был полезен во времена медленных сетей, но сегодня это уже не так. Кроме того, прогрессивный JPEG не поддерживается многими ЖК-фоторамками.
@SaaruLindestøkke Я хотел использовать прогрессивный JPEG для веб-сайта

Ответы (2)

Чтобы преобразовать базовый JPEG в прогрессивный JPEG без потерь, вы можете использовать jpegtran:

jpegtran работает, перестраивая сжатые данные (коэффициенты DCT) без полного декодирования изображения. Поэтому его преобразования проходят без потерь: деградации изображения нет вообще.

У него есть -progressiveопция, которая создает прогрессивный файл JPEG, например:

jpegtran -progressive foo.jpg > fooprog.jpg

Если вы выполните поиск в Интернете по запросу «установите jpegtran [здесь ваша ОС]», вы найдете различные ресурсы, объясняющие, как вы можете получить файлы jpegtran.

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