Мое понимание прогрессивного jpg состоит в том, что он сохраняет информацию о цвете каждого пикселя в другом порядке, чтобы создать эффект прогрессивной загрузки. Т.е. вместо RGB RGB RGB ...
, сохраняется как RRRR... GGGG... BBBB...
. ( https://imagemagick.org/script/command-line-options.php#interlace )
Если это так, возможно ли преобразовать jpg в прогрессивный jpg без потери качества? Кажется, это переупорядочивание данных, а не необходимость пройти алгоритм сжатия jpg.
Чтобы преобразовать базовый JPEG в прогрессивный JPEG без потерь, вы можете использовать jpegtran
:
jpegtran работает, перестраивая сжатые данные (коэффициенты DCT) без полного декодирования изображения. Поэтому его преобразования проходят без потерь: деградации изображения нет вообще.
У него есть -progressive
опция, которая создает прогрессивный файл JPEG, например:
jpegtran -progressive foo.jpg > fooprog.jpg
Если вы выполните поиск в Интернете по запросу «установите jpegtran [здесь ваша ОС]», вы найдете различные ресурсы, объясняющие, как вы можете получить файлы jpegtran
.
Мне тоже интересно, зачем вам это нужно. Для веб-сайта вы имеете дело с небольшими размерами изображений, а прогрессивный JPEG экономит значительное пространство только при работе с большими файлами. Это совершенно не нужно для небольших файлов, и могут возникнуть проблемы с совместимостью.
Саару Линдестокке
шулат
ксеноид
Зли