JPG-сжатие онлайн
Ошибка: количество входящих данных превысило лимит в 3.
Чтобы продолжить, вам необходимо обновить свою учетную запись:
Ошибка: общий размер файла превысил лимит в 100 MB.
Чтобы продолжить, вам необходимо обновить свою учетную запись:
Ошибка: общий размер файла превысил абсолютный лимит в 8GB.
Для платных аккаунтов мы предлагаем:
Премиум-пользователь
- Вплоть до 8GB общего размера файла за один сеанс конвертирования
- 200 файлов на одно конвертирование
- Высокий приоритет
- Полное отсутствие рекламы на странице
- Гарантированный возврат денег
Купить сейчас
Бесплатный пользователь
- До 100 Мб общего размера файла за один сеанс конвертирования
- 5 файлов на одно конвертирование
- Обычный приоритет и скорость конвертирования
- Наличие объявлений
Мы не может загружать видео с Youtube.
JPEG. Алгоритм сжатия / Хабр
И снова здравствуйте! Я нашел эту статью, написанную еще мае 2019-ого года. Это — продолжение серии статей о WAVE и JPEG, Вот первая. Эта публикация включит в себе информацию об алгоритме кодирования изображений и о самом формате в целом.
Щепотку истории
Столовую ложку статьи из Википедии:
JPEG (Joint Photographic Experts Group) — один из популярных растровых графических форматов, применяемый для хранения фотоизображений и подобных им изображений.
Разработан этот стандарт был Объединенной группой экспертов по фотографии еще в 1991 году для эффективного сжатия изображений.
Какой путь проходят изображения от сырого вида до JPEG
Некоторые считают, что JPEG-картинки — сжатые методом Хаффмана сырые данные, но это не так. Перед контрольным сжатием данные проходят длинный путь.
Сначала цветовую модель меняют с RGB на YCbCr. Для этого даже есть специальный алгоритм — здесь. Y не трогают, так как он отвечает за яркость, и его изменение будет заметно.
Первое, что делают с изображением — это «прореживание» (subsampling). Понять это просто: берется 2х2 массив пикселей, далее берутся Cb и Cr — средние значения каждого из компонентов YCbCr этих 4 пикселей. И так, мы выиграли 6 байт, вместо 4 Y, 4 Cb, 4 Cr мы получили 4 Y и одинаковые для каждого из них Cb и Cr (4 + 4 + 4 = 12; 4 + 1 + 1 = 6; 12 — 6 = 6). В масштабах даже 2×2 сжатие с потерей с коэффициентом сжатия 2:1 звучит солидно. Это применяется ко всему изображению. И так — сбросили половину размера. А такой прием мы можем использовать благодаря нашему цветовому восприятию. Человек с легкостью заметит разницу в яркости, но не в цвете, если он усредненный в маленьком блоке пискелей. Также прореживание может выполняться в линию, 4 пикселя по горизонтали и вертикали. Первый вариант используется чаще. Если важно качество изображения, то прореживание не выполняется вообще.
Основная часть подготовки
ДКП
Теперь самая сложная и необходимая часть. Вся картинка разбивается на блоки 8×8 (используют заполнение в случае, если разрешение не кратно стороне блока).
Теперь к каждому блоку применяют ДКП (Дискретно-косинусное преобразование). В этой части из картинки вынимают все лишнее. Используя ДКП надо понять, описывает ли данный блок (8×8) какую-нибудь монотонную часть изображения: неба, стены; или он содержит сложную структуру (волосы, символы и т.д.). Логично, что 64 похожих по цвету пикселей можно описать всего 1-им, т.к. размер блока уже известен. Вот вам и сжатие: 64 к 1.
ДКП превращает блок в спектр, и там, где показания резко сменяются, коэффициент становится положительным, и чем резче переход, тем выше будет выход. Там, где коэффициент выше, на картинке изображенны четкие переходы в цвете и яркости, где он ниже — слабые (плавные) смены величин компонентов YCbCr в блоке.
Квантование
Тут уже применяются настройки сжатия. Каждый из коэффициентов в каждой из матриц 8×8 делится на определенное число. Если качество изображения после всех его модификаций вы более уменьшать не будете, то делитель должен быть единицей. Если вам важнее память, занимаемая этой фотографией, то делитель будет больше 1, и частное округляется. Так выходит, что после округления нередко получается много нулей.
Квантование делают для создания возможности еще большего сжатия. Вот как это выглядит на примере квантования графика y = sin(x):
Сжатие
Сначала проходим по матрице зиг-загом:
Получаем одномерный массив с числами. Мы видим, что в нем много нулей, их можно убрать. Для этого вместо последовательности из множества нулей мы вписываем 1 нуль и после него число, обозначающее их количество в последовательности. Таким образом можно сбросить до 1/3 размера всего массива. А дальше просто сжимает этот массив методом Хаффмана и вписываем уже в сам файл.
Где используется
Везде. Как и PNG, JPEG используется в фотокамерах, OS’ях (в качестве логотипов компании, иконок приложений, thumbnail’ов) и во всех возможных сферах, где нужно эффективно хранить изображения.
Вывод
На данный момент знания о JPEG сейчас ценны лишь в образовательных целях, ведь он уже везде встроен и оптимизирован большими группами людей, но гранит науки все-же вкусный.
Источники
Статья про YCbCr на Википедии
Статья о JPEG на Википедии
Немного про ДКП с поста Пикабу
Статья о ДКП на Википедии
Обзор инструментов для сжатия изображений / Хабр
Для ускорения сайта, некоторые рекомендуют проанализировать каждую страницу: оптимизировать запросы HTTP и любые перенаправления, сжать скрипты и стили и т. д. Все это без сомнения необходимо, но в первую очередь важно рассмотреть основы. В частности, вы уверены, что любая графика, которую вы используете на создаваемых сайтах, полностью оптимизирована для Интернета?
Практически все веб-разработчики знают о том, что необходимо выбрать подходящий формат для каждого изображения, а также свести его размеры (как в пикселях, так и в килобайтах) к минимуму. Некоторые даже максимально оптимизируют настройки JPEG, балансируя между размером и качеством. Однако, суровая реальность состоит в том, что, независимо от того, насколько тщательно вы разработали свои изображения, обычные графические редакторы, которые вы используете, не смогут максимально эффективно сохранить готовые файлы. И при сжатии изображений их качество может значительно ухудшиться.
Сложно сказать наверняка, насколько теряется качество при сжатии изображений, так как это во многом зависит от источника графики. Некоторые JPG можно уменьшить всего на 50-100 байт. Обычно нормальную интернет-графику нужно сжимать на 10-40%, без потери качества изображения (также можно это реализовать и с уменьшением количества цветов или с перекодированием файлов JPEG в другие форматы). Но в идеале для сжатия изображений использовать специальные программы или веб-сервисы, которые и будут рассмотрены в данном обзоре.
Тестирование
Так какие же программы лучше? Чтобы дать ответ, мы рассмотрим 18 основных конкурирующих между собой программ. В основном это инструменты сжатия изображений для Windows, так как они наиболее распространены. Но мы также включили опции сжатия с потерями, программы для Mackintosh и веб-сервисы, поэтому есть надежда, что каждый найдет для себя что-то полезное.
Мы попробовали c помощью каждой программы сжать одинаковые наборы изображений GIF, PNG и JPG, каждое из которых фактически было образцом веб-графики, найденных нами на ряде реальных сайтов. Также была произведена проверка программ и по другим пунктам. Удобны ли они для пользователя? Насколько быстро шел процесс сжатия? Надежность? Может ли программа, например, увеличивать размер изображения?
Результаты оказались очень интересными, приглашаем и вас с ними ознакомиться.
Программы
1. AdvanceCOMP 1.15
Платформа: Windows
Устаревший инструмент использующий командную строку и с минимальной поддержкой. AdvanceCOMP вряд ли подойдет для среднего пользователя ПК, привыкшему к графическим интерфейсам. Для тех же, кто привык работать с командной строкой, ничего сложного в ней нет. Так, всего одна строка:
'for %a in ("C:\PNG File\Folder\*.png") do advpng -z -4 "%a"'
позволяет применить алгоритм сжатия без потерь для каждого файла в папке, заменяя оригинал на сжатую версию.
сайт
2. Caesium 1.4.1
Платформа: Windows
Caesium — это простой инструмент с открытым кодом, который предназначен для сжатия PNG, JPG и BMP. Это достаточно удобная в использовании программа. Нажмите кнопку Add/Добавить, выберите изображения, выберите папку куда будут загружены обработанные изображения — Output, нажмите кнопку Compress/ Сжатие, и через несколько секунд вы получите результат.
Сжатие BMP не представляет для нас интереса, как редко используемое при создании сайтов, и в технологии сжатия JPG также не нашлось для нас ничего особенного. В программе нет возможности сжатия без потери качества, она просто перекодирует файл в выбранной настройке качества.
Caesium действительно обеспечивает поддержку сжатия PNG без потери качества, хотя в ней и есть некоторые ограничения. Он может выводить только 24-битные изображения, в противном случае, вероятно, будет увеличиваться размер изображения. Результаты программы наглядно иллюстрируют проблему, так как большинство наших тестовых изображений веб-графики PNG c глубиной цвета в 48 бит на самом деле увеличиваются в размерах. Даже при тщательной настройке общий размер нашего изображения уменьшался всего на 1,2%.
сайт
3. FILEminimizer Pictures 3.0
Платформа: Windows
FILEminimizer Pictures использует более радикальный подход к сжатию изображений, чем большинство ее конкурентов. По умолчанию при попытке сжать ваши фотографии она может изменить формат и размер изображения, перекодировать файлы JPEG с понижением качества и вырезать метаданные. Большую часть этих опций можно задать в настройках программы.
В использовании программа придерживается общепринятого принципа. После того как вы указали ей исходный файл, выбрали папку для полученного результата, возможно, настроили одну или две опции, достаточно одного щелчка мыши, чтобы начать оптимизацию. Все это выполняется довольно быстро, так что вам не надо слишком долго ждать.
Насколько хорошо выполняется сжатие? Все варьируется в зависимости от формата, по крайней мере, в наших тестах. Сжатие PNG — ничего особенного — 26,8% (некоторые инструменты делают лучше без потери качества), сжатие GIF было выше среднего — 16,5%, а вот наша интернет-графика JPG уменьшилась в размере на 39,3%, — наибольшее сжатие в исследуемой группе. Но во всех тестах потеря качества визуально была заметна.
сайт
4. FileOptimizer 2.10.135
Платформа: Windows
Возможности программы FileOptimizer достаточно велики. Она не только может сжимать изображения JPG, GIF и PNG, но также может работать с исполняемыми файлами, архивами, документами Microsoft Office, файлами PDF, — список можно продолжать достаточно долго.
Удивительно, но при этом пользоваться ей абсолютно не сложно. На самом деле у программы один из самых простых интерфейсов: перетащите изображения в FileOptimizer, щелкните правой кнопкой мыши, выберите Optimize/ Оптимизировать — и наслаждайтесь полученным результатом. Однако у этой простоты есть и обратная сторона — исходные файлы заменяются программой. Оригиналы отправляются в корзину, поэтому их придется восстанавливать (если они вам нужны, конечно).
Но первостепенное значение имеет, конечно же, сжатие, и здесь FileOptimizer обеспечивает хорошие результаты. Например, программа уменьшила нашу тестовую графику PNG на 42,2% — это лучшее сжатие без потери качества в данной группе. Сжатие JPEG и GIF было выше стандартного на 17,7% и 15,9% соответственно, но в этой программе еще много полезных опций, которые вы сможете использовать с FileOptimizer для сжатия других файлов на своем сайте.
сайт
5. ImageOptim 1.4.0
Платформа: Mac
ImageOptim — это Mac-инструмент, который оптимизирует изображения GIF, JPEG и PNG, а также выступает в качестве интерфейса для множества других приложений: PNGOUT, AdvPNG, Pngcrush, расширенное OptiPNG, JpegOptim, jpegrescan, jpegtran и Gifsicle.
Программа выполняет сжатие почти без потерь: скорее, удаляются комментарии, цветовые профили и прочее, без перекодирования или уменьшения количества цветов. Интерфейс ImageOptim тоже весьма удобен. Перетащите один файл, группу или папку с нужными файлами, и программа сразу же начинает сжимать каждое изображение и отображать результаты. Она не самый быстрый инструмент, но даже если вы отправите на обработку тысячу файлов JPEG в высоком разрешении, для нее это вряд ли будет проблемой.
Конечные результаты были внушительные, но не захватывающие. Наша веб-графика GIF уменьшилась в размерах на 16,2%, PNG — на 17,8%, JPG-файлы — на 18,3%. Вы можете сделать лучше с помощью отдельных инструментов. Но если вам нужен простой Mac-инструмент, который может обрабатывать файлы GIF, JPEG и PNG, то ImageOptim — вполне разумный выбор.
сайт
6. JPEGmini
Платформа: Mac
JPEGmini — интересное Mac-приложение с нестандартным подходом к сокращению формата JPEG.
Во-первых, в нем используется интеллектуальный алгоритм, чтобы выяснить, насколько изображения можно сжать без видимого эффекта (то есть не простое перекодирование с какой-то фиксированной настройкой качества). В программе используется собственный кодер JPEG, чтобы попытаться получить, по возможности, самые компактные файлы. Обработка производится в фоновом режиме. Просто перетащите ваши фотографии в программу (в бесплатной версии максимум 20 в день), и она будет заменять оригиналы сжатыми версиями.
А вот разброс результатов оказался огромный. Наша картинка JPG уменьшилась всего на 8,2%, но когда мы отправили на обработку 25 больших цифровых фотографий, то они уменьшились на 71,3% с небольшой видимой потерей качества. С простой веб-графикой JPEGmini не делает ничего слишком удивительного. Использовать ее лучше всего для обработки изображений больших размеров.
сайт
7. jStrip 3.3
Платформа: Windows
jStrip -это инструмент для сжатия без потери качества файлов JPEG, который удаляет несущественную информацию: эскизы, комментарии, цветовые профили, дополнительные байты в начале или в конце файла и различные другие биты и куски. А вот сжатие файлов будет небольшим, поскольку программа не использует повторное кодирование. Это было особенно заметно, когда мы поместили в JStrip фотографии JPG с высоким разрешением, которые программа смогла уменьшить примерно на 1%.
Если файлы, которые вы хотите сжать, уже сами по себе небольшие, сжатие, вероятно, будут гораздо значительнее. Когда мы пропустили нашу подборку веб-графики JPEG через jStrip, изображения уменьшились в среднем на 16,1%. Стоит омтетить, что работа программы не отличается стабильностью. По умолчанию она, заменяет изображения, которые вы указали, на сжатые версии, так что для обработки лучше использовать копии. В целом jStrip — это быстрый и простой способ незначительно уменьшить размер изображений JPEG.
сайт
8. OptiPNG 0.7.3
Платформа: Windows
OptiPNG — это популярный инструмент сжатия PNG без потери качества использующий командную строку, который регулярно применяется в других программах (например, в PNGGauntlet) для обработки и оптимизации изображений.
Программа намного лучше задокументирована, чем многие аналогичные пакеты, так что даже если вы не работали с командной строкой, то разобраться будет несложно. Инсталяционные файлы закачиваются вместе с файлом PDF, где поясняются различные переключатели и опции, что весьма удобно (хотя все равно надо будет попрактиковаться в оптимизации изображений, чтобы полностью понять, как она работает). Если вы хотите объединить несколько инструментов с командной строкой, чтобы получить наилучшие результаты, то в их число стоит включить OptiPNG.
Результаты, даже с настройками сжатия по умолчанию, оказались весьма приемлемыми: наша тестовая веб-графика PNG уменьшилась в размере в среднем на 32,2%.
сайт
9. PNGGauntlet 3.1.2.0
Платформа: Windows
PNGGauntlet — это довольно интересный инструмент, по существу, являющийся оболочкой для трех других программ с открытым кодом (PNGOUT, OptiPNG, DeflOpt), предназначенных для сжатия изображений.
В процессе работы она действует так же, как и конкуренты. Перетащите исходные изображения, выберите выходную папку, нажмите кнопку «Optimize!/Оптимизировать»! и ждите.
Не исключено, что вам придется ждать, и ждать, и ждать… Предположительно такое длительное ожидание связано с тем, что она сочетает в себе работу трех инструментов для обработки. PNGGauntlet может быть очень медленной, в нашем случае ей понадобилось 50 минут 44 секунды для сжатия 25 фотографий с высоким разрешением в формате PNG.
Однако полученные результаты впечатляют. При обработке нашей тестовой веб-графики PNG программа уменьшила наши 50 изображений в среднем на 41,3% и даже фотографии уменьшились на 7,75% без видимой потери качества. Иногда же этого достаточно, чтобы оправдать проблемы с производительностью. Поэтому если вам нужен качественный инструмент сжатия PNG, то PNGGauntlet действительно надо включить в ваш список.
сайт
10. PNGOptimizer 2.2
Платформа: Windows
При крошечном размере в 146 кб PNGOptimizer — это самая легковесная из представленных в данном обзоре программ, поэтому неудивительно, что интерфейс у нее максимально простой и специализируется она только на файлах PNG.
Используя PNGOptimizer 2.2 вы получаете возможность управления удивительно большим количеством параметров обработки. PNGOptimizer может удалить чересстрочную кадровую развёртку, сохранить, удалить или заменить цвет фона, а также удалить текст или физические размеры изображения в пикселях. Программа может даже импортировать файлы GIF, BMP и TGA, сохраняя их в PNG в соответствии с выбранными опциями.
А вот обойти конкурентов в сжатии изображений программа не смогла, это видно по результатам теста. PNGOptimizer уменьшила фотографии с высоким разрешением PNG в среднем всего на 3,6%. Намного лучше она справилась с небольшими графическими изображениями, в среднем сжатие составило 39,8%. Если вам нужен маленький и простой инструмент для сжатия PNG, то PNGOptimizer — то, что надо.
сайт
11. PNGOUTWin 1.5.0
Платформа: Windows
PNGOUT — один из лучших инструментов для сжатия изображений. К сожалению, он довольно неудобен в использовании, потому что создан на основе командной строки без поддержки пакетной обработки. Но если для вас это проблема, вы всегда можете выбрать его коммерческий интерфейс: PNGOUTWin.
Программа легко конфигурируется. Вы можете использовать PNGOUTWin, чтобы переписать ваши оригинальные изображения или сохранить выходные в новой папке. Также есть возможности сохранить файловые атрибуты времени, настроить уровень сжатия, реализована возможность хранить некоторые (или все) куски PNG, и т. д.
Она также проста в использовании. Перетащите изображение в окно программы, и она сразу же начнет процесс сжатия, используя несколько потоков для работы одновременно с несколькими изображениями. Результаты также отличные, наша веб-графика PNG уменьшилась в размере на 40,5% (неплохо для сжатия без потери качества).
К сожалению, в настоящее время бесплатной для нее является лишь интерфейс PNGOUT, такой же как и PNGGauntlet, который тоже очень простой в использовании программы (на самом деле можно достичь еще более высокого уровня сжатия, если объединить его с другими инструментами). Хотя PNGOUTWin и мощная программа, вероятно, она все-таки не стоит $ 14.95 (персональная лицензия) / $ 29.95 (корпоративная лицензия), которые за нее просят.
сайт
12. PUNYpng
Платформа: web
Гораздо более универсальным, чем можно предположить из его названия, является PUNYpng — веб-сервис, который может действительно применять сжатие без потерь для изображений в формате GIF, JPG и PNG. Регистрация и создание учетной записи бесплатны, но для бесплатных аккаунтов действуют ограничения: можно загрузить только 15 изображений в пакетном режиме, каждое не более 150 кб.
В целом сервис довольно удобен. Нажмите кнопку Upload Images/Загрузить Изображения на сайте, а затем подождите, пока фотографии загружаются и сжимаются. Появляется отчет о проделанных операциях, и все можно скачать в виде ZIP-архива.
Для тестирования мы использовали бесплатный аккаунт. PUNYpng показал хорошие результаты и сжал различные тестовые комплекты файлов на 16-32%. За $2 в месяц, можно проапгрейдить свой аккаунт до PRO, с которым можно получить дополнительную опцию сжатия с меньшей потерей качества и загрузить больше файлов.
сайт
13. RIOT 0.4.6
Платформа: Windows
RIOT бесплатна, но зато это одна из немногих программ, которая пытается установить дополнительное программное обеспечение в процессе настройки. Обязательно снимите соответствующий флажок во время установки, если вы не заинтересованы в таком дополнительном ПО.
Все остальное очень просто. Четкий и понятный интерфейс позволяет легко сжимать отдельные изображения GIF, PNG или JPG и сравнивать результаты, пока пакетный интерфейс обрабатывает несколько файлов на очень высокой скорости.
К сожалению, здесь нет сжатия без потери качества. RIOT, скорее, сокращает количество цветов в изображении и перекодирует в формате JPEG с низким значением качества. Несмотря на это, программа умудрилась сделать некоторые из наших тестовых изображений значительно больше. Поэтому рекомендуем вам внимательно проверить выходные настройки RIOT, прежде чем использовать ее для обработки.
С поставленной задачей программа все же справилась хорошо, в частности, наши GIF-файлы ей удалось уменьшить в среднем на 42,8%. Но прежде понадобилась подробная конфигурация — показатели «по умолчанию» были значительно хуже.
сайт
14. ScriptJPG
Платформа: Windows
ScriptJPG — один из наиболее примитивных пакетов, по существу, это просто скрипт для Windows, который действует как интерфейс для нескольких инструментов на основе командной строки. Перетащите ваши файлы JPG в сценарий, выберите параметры сжатия (либо без потери качества, либо с настройкой особого качества JPEG), и ScriptJPG уменьшит ваши изображения. Так, по карйней мере, было заявлено в описании. По некоторым причинам, работала программа с нашей веб-графикой JPG не так, как было обещано, и стартовое меню даже не отображалось.
Мы смогли протестировать пакет на нашей фотографии JPEG, и получили неплохие результаты. Его опция сжатия без потери качества сократила размеры нашего изображения почти на 10%. Если вы специалист по работе с графикой, то ScriptJPG может представлять для вас интерес. Вы сможете диагностировать проблемы по мере их возникновения и, возможно, изменить сценарий, настроить параметры сжатия в соответствии с вашими потребностями. Если вы предпочитаете более понятные и простые инструменты, советуем использовать один из аналогов с графическим интерфейсом. Есть много более мощных альтернатив и, конечно, они гораздо проще в использовании.
сайт
15. ScriptPNG
Платформа: Windows
Как вы уже, наверное, догадались из названия, ScriptPNG — это ближайший родственник ScriptJPG. Он представляет собой пакетный файл Windows, который использует четыре утилиты, чтобы сжимать файлы PNG до нужных размеров. Также, как и в ScriptJPG, здесь очень скудные возможности настройки. Перетащите изображение в файл, и в командной строке открываются девять возможных вариантов сжатия. Выберите тот, который вам нужен, и программа сразу же начнет сокращать каждый файл по очереди (и заменять оригинальные изображения выходными, поэтому работать лучше с копиями).
Еще одна проблема у нас была в том, что старзу после установки вылетел pngout.exe. На выполнении сценария это не отобразилось, но нам пришлось вручную каждый раз закрывать диалоговое окно ошибки, как только оно появлялось. Несмотря на это, результаты сжатия были довольно впечатляющими. Наша веб-графика PNG потеряла до 40,1% объема без видимого ухудшения качества изображений.
сайт
16. Smush. It
Платформа: web
Большинство веб-сервисов для сжатия изображений отличаются большими ограничениями, но Smush. It на Yahoo — это редкое исключение. Единственное ограничение — размер файлов (не более 1 Мб), но зато в систему можно загрузить столько изображений, сколько вам нужно. В ней нет регистрации, нет создания учетной записи, нет ежедневных квот. Изображения сжимаются с помощью различных инструментов, а результаты можно получить в виде ZIP файла.
У такого подхода всего лишь одна проблема — у вас нет доступа к самим инструментам сжатия. Вы не можете настроить или изменить их. Вы видите результаты, которые получите, и ничего не можете сделать, чтобы изменить их. Была обнаружена какая-то проблема с JPG-файлами, так как Smush. It удалось уменьшить наши тестовые изображения всего на 1%. Сжатие PNG было более эффективным — 35,3%, хотя наши GIF-файлы потеряны впечатляющие 23,9% объема (лучшее сжатие без потери качества во всех тестах).
сайт
17. TinyPNG
Платформа: web
Как и Smush. It, TinyPNG — это бесплатный веб-сервис, который может оптимизировать изображения для вас. Просто перетащите свои файлы на веб-страницу, она сожмет их и предоставит ссылки для скачивания. У системы есть некоторые недостатки: ограничение размера файла до 2 Мб, возможность загрузить за один раз только 20 файлов и отсутствие возможности пакетной закачки.
В TinyPNG также четко виден подход к сжатию за счет качества, в отличие от большинства других инструментов, причем в ней пересматривается палитра, чтобы уменьшить (иногда значительно) количество используемых цветов. Неудивительно, что это оправдывает себя в части, касающейся необработанных рисунков, с помощью сжатия нашей веб-графики PNG на 48% — лучший результат в этом тесте. В большинстве случаев очень было трудно обнаружить какие-либо отличия между исходными изображениями и сжатыми версиями.
Кстати, лучший показатель сжатия без потери качества среди локально устанавливаемых программ 40%. Поэтому, если ваш главный приоритет — качество изображения, или вы просто не хотите, постоянно сравнивать графику, пытаясь увидеть, есть ли разница, то TinyPNG может быть вам интересен.
сайт
18. Trout’s GIF Optimizer 2.3
Платформа: Windows
Trout’s GIF Optimizer — инструмент для сжатия, не требующий установки. Параметры у него, конечно, немного ограничены. Как вы догадались из названия, программа выполняет лишь сжатие файлов GIF, поэтому у нее нет никаких глобальных параметров конфигурации, вызывающих особый интерес (хотя можно вручную оптимизировать палитру отдельных изображений различными способами).
Тем не менее, с Trout’s GIF Optimizer, очень легко работать. Просто импортируйте выбранные фотографии, уменьшение размера для каждого изображения отображается сразу же (это очень быстро), можно сохранить их с помощью всего лишь нескольких щелчков мыши. Но, к сожалению, результаты сжатия не особо впечатляют: наша веб-графика GIF уменьшилась в среднем всего на 16,7%.
сайт
Сводная таблица по всем тестируемым сервисам
Протестировано | Платформа | Сжатие | Уменьшение PNG (в%) | Уменьшение JPG (в%) | Уменьшение GIF (в%) |
---|---|---|---|---|---|
AdvanceComp 1.15 | Windows | Без потери качества | -14.20% | ||
Caesium 1.4.1 |
Windows | С потерей / Без потери качества | +18.7% | ||
FILEminimizer 3.0 | Windows | С потерей / Без потери качества | -26.8% | -39.3% | -16.5% |
FileOptimizer 2.10.135 |
Windows | Без потери качества | -42.2% | -17.7% | -15.9% |
ImageOptim 1.4.0 | Mac | Без потери качества | -17.8% | -18.3% | -16.2% |
JPEGmini Lite 1.4.1 | Mac | Без потери качества | -8.2% | ||
jStrip 3.3 | Windows | Без потери качества | -16.1% | ||
OptiPNG 0.7.3 | Windows | Без потери качества | -32.3% | ||
PNGGauntlet 3.1.2.0 | Windows | Без потери качества | -41.3% | ||
PNGOptimizer 2.2 | Windows | С потерей / Без потери качества | -39.8% | ||
PNGOutWin 1.5.0 | Windows | Без потери качества | -40.5% | ||
PUNYpng | Web | Без потери качества | -32.1% | -27.5% | -16.1% |
RIOT 0.4.6 | Windows | С потерей качества | -21.7% | -39% | -42.8% |
ScriptJPG | Windows | С потерей / Без потери качества | -10% | ||
ScriptPNG | Windows | Без потери качества | -40.1% | ||
Smush. It | Web | Без потери качества | -35.3% | -1% | -23.9% |
TinyPNG | Web | С потерей качества | -48% | ||
Trout’s GIF Optimizer 2.3 | Windows | С потерей / Без потери качества | -16.7% |
Выводы
После многочасового тестирования и общего разложения программ-участниц на этапы, можно сделать вывод — сжатие изображений действительно эффективный инструмент оптимизации и дает достаточно неплохой результат. Все наших тестовые файлы PNG можно было уменьшать на 30 — 40%, и даже файлы в формате JPEG удалось сжать на 16-18%. Во всех случаях использовалось сжатие без потери качества, поэтому качество изображения не снизилось, изображения выглядят точно так же, только загружаются быстрее.
Точные результаты которые получите вы, конечно же могут отличаться. Но если вы не пробовали раньше сжимать изображения, то, определенно, стоит взять лучшие из наших программ и попробовать, чтобы посмотреть, чем они могут быть полезны для ваших сайтов.
В целом FileOptimizer оказался лучше аналогов для Windows при сжатии без потери качества, продемонстрировав превосходное сжатием (до 42,2%) наших тестовых файлов. Файлы с расширением JPGи GIF он тоже неплохо сжимает, а также в нем имеются и другие полезные опции (например, сжатие PDF).
Но если эта программа вас по какой либо причине не устроит, то PNGGauntlet и ScriptPNG также обеспечивают хорошее сжатие PNG, а ImageOptim полезна для Mac, так как она дает хороший уровень сжатия JPEG и GIF.
Хотя мы нашли, что веб-сервисы при тестировании оказались менее удобными в использовании, мы бы не стали полностью их исключать. PUNYpng был лучшим при сжатии JPG без потери качества, а Smush. It победил всех конкурентов при сжатии GIF, оба могут оказать большую помощь в уменьшении объемов вашей веб-графики.
Источник
P.S. к сожалению в данном обзоре не упомянут еще один очень эффективный инструмент (спасибо dersmoll и alekskorovin заметившим это при подготовке еженедельного дайджеста), который уже упоминался на Хабре.
UPD Спасибо большое пользователям которые поделились собственными вариантами:
@yourway за Color quantizer (действительно интересная, на мой взгляд).
azproduction за очень нужный вариант для OSX & Linux imgo
LuckyReveal за kraken.io
Плюсы: Высокая степень сжатия, быстрота, API публичный(бесплатно).
Минусы: Лимитированное количество запросов в сутки. (50 в сутки, каждое не более 500kb).
Может быть установлен как плагин для Chrome: goo.gl/aDSQ6, Firefox: goo.gl/mlxd0.
Сжать JPEG: уменьшить размер файла JPEG или уменьшить размер изображения
Загрузить изображение в формате JPEGЗагрузите сжатые изображения в формате JPEG, нажав на ссылку для скачивания
| FAQ’s
|
Алгоритмы сжатия изображений / Хабр
Легко подсчитать, что несжатое полноцветное изображение, размером 2000*1000 пикселов будет иметь размер около 6 мегабайт. Если говорить об изображениях, получаемых с профессиональных камер или сканеров высокого разрешения, то их размер может быть ещё больше. Не смотря на быстрый рост ёмкости устройств хранения, по-прежнему весьма актуальными остаются различные алгоритмы сжатия изображений.Все существующие алгоритмы можно разделить на два больших класса:
- Алгоритмы сжатия без потерь;
- Алгоритмы сжатия с потерями.
Когда мы говорим о сжатии без потерь, мы имеем в виду, что существует алгоритм, обратный алгоритму сжатия, позволяющий точно восстановить исходное изображение. Для алгоритмов сжатия с потерями обратного алгоритма не существует. Существует алгоритм, восстанавливающий изображение не обязательно точно совпадающее с исходным. Алгоритмы сжатия и восстановления подбираются так, чтобы добиться высокой степени сжатия и при этом сохранить визуальное качество изображения.
Алгоритмы сжатия без потерь
Алгоритм RLE
Все алгоритмы серии RLE основаны на очень простой идее: повторяющиеся группы элементов заменяются на пару (количество повторов, повторяющийся элемент). Рассмотрим этот алгоритм на примере последовательности бит. В этой последовательности будут чередовать группы нулей и единиц. Причём в группах зачастую будет более одного элемента. Тогда последовательности 11111 000000 11111111 00 будет соответствовать следующий набор чисел 5 6 8 2. Эти числа обозначают количество повторений (отсчёт начинается с единиц), но эти числа тоже необходимо кодировать. Будем считать, что число повторений лежит в пределах от 0 до 7 (т.е. нам хватит 3 бит для кодирования числа повторов). Тогда рассмотренная выше последовательность кодируется следующей последовательностью чисел 5 6 7 0 1 2. Легко подсчитать, что для кодирования исходной последовательности требуется 21 бит, а в сжатом по методу RLE виде эта последовательность занимает 18 бит.
Хоть этот алгоритм и очень прост, но эффективность его сравнительно низка. Более того, в некоторых случаях применение этого алгоритма приводит не к уменьшению, а к увеличению длины последовательности. Для примера рассмотрим следующую последовательность 111 0000 11111111 00. Соответствующая ей RL-последовательность выглядит так: 3 4 7 0 1 2. Длина исходной последовательности – 17 бит, длина сжатой последовательности – 18 бит.
Этот алгоритм наиболее эффективен для чёрно-белых изображений. Также он часто используется, как один из промежуточных этапов сжатия более сложных алгоритмов.
Словарные алгоритмы
Идея, лежащая в основе словарных алгоритмов, заключается в том, что происходит кодирование цепочек элементов исходной последовательности. При этом кодировании используется специальный словарь, который получается на основе исходной последовательности.
Существует целое семейство словарных алгоритмов, но мы рассмотрим наиболее распространённый алгоритм LZW, названный в честь его разработчиков Лепеля, Зива и Уэлча.
Словарь в этом алгоритме представляет собой таблицу, которая заполняется цепочками кодирования по мере работы алгоритма. При декодировании сжатого кода словарь восстанавливается автоматически, поэтому нет необходимости передавать словарь вместе с сжатым кодом.
Словарь инициализируется всеми одноэлементными цепочками, т.е. первые строки словаря представляют собой алфавит, в котором мы производим кодирование. При сжатии происходит поиск наиболее длинной цепочки уже записанной в словарь. Каждый раз, когда встречается цепочка, ещё не записанная в словарь, она добавляется туда, при этом выводится сжатый код, соответствующий уже записанной в словаре цепочки. В теории на размер словаря не накладывается никаких ограничений, но на практике есть смысл этот размер ограничивать, так как со временем начинаются встречаться цепочки, которые больше в тексте не встречаются. Кроме того, при увеличении размеры таблицы вдвое мы должны выделять лишний бит для хранения сжатых кодов. Для того чтобы не допускать таких ситуаций, вводится специальный код, символизирующий инициализацию таблицы всеми одноэлементными цепочками.
Рассмотрим пример сжатия алгоритмом. Будем сжимать строку кукушкакукушонкукупилакапюшон. Предположим, что словарь будет вмещать 32 позиции, а значит, каждый его код будет занимать 5 бит. Изначально словарь заполнен следующим образом:
Эта таблица есть, как и на стороне того, кто сжимает информацию, так и на стороне того, кто распаковывает. Сейчас мы рассмотрим процесс сжатия.
В таблице представлен процесс заполнения словаря. Легко подсчитать, что полученный сжатый код занимает 105 бит, а исходный текст (при условии, что на кодирование одного символа мы тратим 4 бита) занимает 116 бит.
По сути, процесс декодирования сводится к прямой расшифровке кодов, при этом важно, чтобы таблица была инициализирована также, как и при кодировании. Теперь рассмотрим алгоритм декодирования.
Строку, добавленную в словарь на i-ом шаге мы можем полностью определить только на i+1. Очевидно, что i-ая строка должна заканчиваться на первый символ i+1 строки. Т.о. мы только что разобрались, как можно восстанавливать словарь. Некоторый интерес представляет ситуация, когда кодируется последовательность вида cScSc, где c — это один символ, а S — строка, причём слово cS уже есть в словаре. На первый взгляд может показаться, что декодер не сможет разрешить такую ситуацию, но на самом деле все строки такого типа всегда должны заканчиваться на тот же символ, на который они начинаются.
Алгоритмы статистического кодирования
Алгоритмы этой серии ставят наиболее частым элементам последовательностей наиболее короткий сжатый код. Т.е. последовательности одинаковой длины кодируются сжатыми кодами различной длины. Причём, чем чаще встречается последовательность, тем короче, соответствующий ей сжатый код.
Алгоритм Хаффмана
Алгоритм Хаффмана позволяет строить префиксные коды. Можно рассматривать префиксные коды как пути на двоичном дереве: прохождение от узла к его левому сыну соответствует 0 в коде, а к правому сыну – 1. Если мы пометим листья дерева кодируемыми символами, то получим представление префиксного кода в виде двоичного дерева.
Опишем алгоритм построения дерева Хаффмана и получения кодов Хаффмана.
- Символы входного алфавита образуют список свободных узлов. Каждый лист имеет вес, который равен частоте появления символа
- Выбираются два свободных узла дерева с наименьшими весами
- Создается их родитель с весом, равным их суммарному весу
- Родитель добавляется в список свободных узлов, а двое его детей удаляются из этого списка
- Одной дуге, выходящей из родителя, ставится в соответствие бит 1, другой — бит 0
- Шаги, начиная со второго, повторяются до тех пор, пока в списке свободных узлов не останется только один свободный узел. Он и будет считаться корнем дерева.
С помощью этого алгоритма мы можем получить коды Хаффмана для заданного алфавита с учётом частоты появления символов.
Арифметическое кодирование
Алгоритмы арифметического кодирования кодируют цепочки элементов в дробь. При этом учитывается распределение частот элементов. На данный момент алгоритмы арифметического кодирования защищены патентами, поэтому мы рассмотрим только основную идею.
Пусть наш алфавит состоит из N символов a1,…,aN, а частоты их появления p1,…,pN соответственно. Разобьем полуинтервал [0;1) на N непересекающихся полуинтервалов. Каждый полуинтервал соответствует элементам ai, при этом длина полуинтервала пропорциональна частоте pi.
Кодирующая дробь строится следующим образом: строится система вложенных интервалов так, чтобы каждый последующий полуинтервал занимал в предыдущем место, соответствующее положению элемента в исходном разбиении. После того, как все интервалы вложены друг в друга можно взять любое число из получившегося полуинтервала. Запись этого числа в двоичном коде и будет представлять собой сжатый код.
Декодирование – расшифровка дроби по известному распределению вероятностей. Очевидно, что для декодирования необходимо хранить таблицу частот.
Арифметическое кодирование чрезвычайно эффективно. Коды, получаемые с его помощью, приближаются к теоретическому пределу. Это позволяет утверждать, что по мере истечения сроков патентов, арифметическое кодирование будет становиться всё более и более популярным.
Алгоритмы сжатия с потерями
Не смотря на множество весьма эффективных алгоритмов сжатия без потерь, становится очевидно, что эти алгоритмы не обеспечивают (и не могут обеспечить) достаточной степени сжатия.
Сжатие с потерями (применительно к изображениям) основывается на особенностях человеческого зрения. Мы рассмотрим основные идеи, лежащие в основе алгоритма сжатия изображений JPEG.
Алгоритм сжатия JPEG
JPEG на данный момент один из самых распространенных способов сжатия изображений с потерями. Опишем основные шаги, лежащие в основе этого алгоритма. Будем считать, что на вход алгоритма сжатия поступает изображение с глубиной цвета 24 бита на пиксел (изображение представлено в цветовой модели RGB).
Перевод в цветовое пространство YCbCr
В цветовой модели YCbCr мы представляем изображение в виде яркостной компоненты (Y) и двух цветоразностных компонент (Cb,Cr). Человеческий глаз более восприимчив к яркости, а не к цвету, поэтому алгоритм JPEG вносит по возможности минимальные изменения в яркостную компоненту (Y), а в цветоразностные компоненты могут вноситься значительные изменения. Перевод осуществляется по следующей формуле:
Выбор Kr и Kb зависит от оборудования. Обычно берётся Kb=0.114;Kr=0.299. В последнее время также используется Kb=0.0722;Kr=0.2126, что лучше отражает характеристики современных устройств отображения.
Субдискретизация компонент цветности
После перевода в цветовое пространство YCbCr выполняется дискретизация. Возможен один из трёх способов дискретизации:
4
- :4:4 – отсутствует субдискретизация;
- 4:2:2 – компоненты цветности меняются через одну по горизонтали;
- 4:2:0 – компоненты цветности меняются через одну строку по горизонтали, при этом по вертикали они меняются через строку.
При использовании второго или третьего способа мы избавляется от 1/3 или 1/2 информации соответственно. Очевидно, что чем больше информации мы теряем, тем сильнее будут искажения в итоговом изображении.
Дискретное косинусное преобразование
Изображение разбивается на компоненты 8*8 пикселов, к каждой компоненте применятся ДКП. Это приводит к уплотнению энергии в коде. Преобразования применяются к компонентам независимо.
Квантование
Человек практически не способен замечать изменения в высокочастотных составляющих, поэтому коэффициенты, отвечающие за высокие частоты можно хранить с меньшей точностью. Для этого используется покомпонентное умножение (и округление) матриц, полученных в результате ДКП, на матрицу квантования. На данном этапе тоже можно регулировать степень сжатия (чем ближе к нулю компоненты матрицы квантования, тем меньше будет диапазон итоговой матрицы).
Зигзаг-обход матриц
Зигзаг-обход матрицы – это специальное направление обхода, представленное на рисунке:
При этом для большинства реальных изображений в начале будут идти ненулевые коэффициенты, а ближе к концу будут идти нули.
RLE- кодировние
Используется особый вид RLE-кодирования: выводятся пары чисел, причём первое число в паре кодирует количество нулей, а второе – значение после последовательности нулей. Т.е. код для последовательности 0 0 15 42 0 0 0 44 будет следующим (2;15)(0;42)(3;44).
Кодирование методом Хаффмана
Используется описанный выше алгоритм Хаффмана. При кодировании используется заранее определённая таблица.
Алгоритм декодирования заключается в обращении выполненных преобразований.
К достоинствам алгоритма можно отнести высокую степень сжатие (5 и более раз), относительно невысокая сложность (с учётом специальных процессорных инструкций), патентная чистота. Недостаток – артефакты, заметные для человеческого глаза.
Фрактальное сжатие
Фрактальное сжатие – это относительно новая область. Фрактал – сложная геометрическая фигура, обладающая свойством самоподобия. Алгоритмы фрактального сжатия сейчас активно развиваются, но идеи, лежащие в их основе можно описать следующей последовательностью действий.
Процесс сжатия:
- Разделение изображения на неперекрывающиеся области (домены). Набор доменов должен покрывать всё изображение полностью.
- Выбор ранговых областей. Ранговые области могут перекрываться и не покрывать целиком всё изображение.
- Фрактальное преобразование: для каждого домена подбирается такая ранговая область, которая после аффинного преобразования наиболее точно аппроксимирует домен.
- Сжатие и сохранение параметров аффинного преобразования. В файл записывается информация о расположении доменов и ранговых областей, а также сжатые коэффициенты аффинных преобразований.
Этапы восстановления изображения:
- Создание двух изображений одинакового размера A и B. Размер и содержание областей не имеют значения.
- Изображение B делится на домены так же, как и на первой стадии процесса сжатия. Для каждого домена области B проводится соответствующее аффинное преобразование ранговых областей изображения A, описанное коэффициентами из сжатого файла. Результат помещается в область B. После преобразования получается совершенно новое изображение.
- Преобразование данных из области B в область A. Этот шаг повторяет шаг 3, только изображения A и B поменялись местами.
- Шаги 3 и 4 повторяются до тех пор, пока изображения A и B не станут неразличимыми.
Точность полученного изображения зависит от точности аффинного преобразования.
Сложность алгоритмов фрактального сжатия в том, что используется целочисленная арифметика и специальные довольно сложные методы, уменьшающие ошибки округления.
Отличительной особенностью фрактального сжатия является его ярко выраженная ассиметрия. Алгоритмы сжатия и восстановления существенно различаются (сжатие требует гораздо большего количества вычислений).
Это тот факт, что существует и еще очень долго будет существовать, пока люди будут работать с изображениями и цифровыми фотографиями. Файлы нужно сжимать, сами фотографии нужно обрабатывать таким образом, чтобы и качество имели приличное, и можно было их без труда использовать в веб-дизайне, отправлять по e-mail. В нашем случае, то есть в веб-дизайне, особенно важен этот факт, поскольку, чем сильнее можно сжать файл и сохранить качество, тем больше красоты можно создать, большее количество изображений разместить и так далее.
Поскольку формат JPEG — это основной формат для изображений, несмотря на существование PNG или WebP, в течение уже более двух десятков лет, сжатие его происходит уже при сохранении файла. Но и качество обычно страдает, хотя не всегда можно это заметить, особенно если смотреть на картинки на компьютере. Тем не менее, при попытке сохранить/распечатать/изменить размер такого изображения и проявляются все недостатки сжатия JPEG.
Благодаря Photoshop и его одному очень редкому режиму смешивания, можно увидеть, насколько повлияет сжатие Jpeg и как этих самых ужасов можно избежать. Иными словами, мы не просто поговорим и рассмотрим детально, как можно сжимать Jpeg-изображения и как осознанно к этому подойти, мы также рассмотрим возможности Photoshop по предотвращению искажения.
С учетом того, как много разных изображений и фотографий используется в веб-дизайне, такие возможности уж точно пригодятся творцам. Поскольку материал достаточно насыщенный – сразу и перейдем к делу.
Режим смешивания
Для того чтобы точно узнать и увидеть, что происходит с изображением при его уменьшении, мы используем режим наложения Photoshop – Разница. Мы немного о нем уже упоминали ранее. Напомним, что режим получил свое название от того, что он ищет различия между двумя слоями. Любые области на обоих слоях, что выглядят одинаково (например, черный цвет) и области, отличающиеся друг от друга (с проявлениями странных и чужеродных цветов). При работе со спецэффектами режим Разница обычно не используется и если читатели блога вспомнят наши практические материалы, то данного режима нигде и не было.
Но при этом Разница проделывает огромную работу, демонстрируя пользователям, как много «мусора» мы добавляем к нашим изображениям, когда сжимаем их. Это совершенно не означает, что теперь нужно перестать сжимать файлы, использовать jpeg вообще и так далее. В реальном мире это попросту невозможно. Но это помогает понять нам, что происходит с картинкой и как можно избежать ухудшения. Тем более, если учесть то, что в веб-дизайне используются огромные по разрешению фотографии, а если их открыть на мониторах с разрешением более 1080р, то и «артефакты», и «мусор» будут явно видны и создастся негативное отношение и к самому сайту, и к работе дизайнера.
У нас два изображения, одно из которых пережато на 60%. Но какое из них где? Проявления искажений могут быть обманчивыми, особенно на экране компьютера. Истина заключается в том, что это два совершенно разных изображения. Слева – оригинал, справа – сжатое на 60%. В это сложно поверить на слово, но если действительно увеличить их и сравнить, то можно увидеть лишние элементы, размытость или отсутствие пикселей. Если их не нужно печатать, то можно использовать в веб-дизайне и в таком виде, но иметь в виду, что в дальнейшем при любом изменении сжатого варианта, «огрехи» будут все явнее и четче.
Обратимся к режиму Разница, который ищет различия между двумя слоями. Давайте испытаем его в действии. Открываем наш оригинал и создаем копию Ctrl+J. Ничего переименовывать не будем. Выбираем Слой 1 и в списке режимов наложения выбираем Разница.
Все покрыто черным цветом и это говорит о том, что оба слоя идентичны друг другу. То есть никаких изменений режим не обнаружил.
Но давайте попробуем удостовериться, что изменений действительно нет и черный цвет полностью однороден. Добавим к Слой 1 корректирующий слой Уровни.
В появившемся диалоговом окне появится гистограмма. Если каждый пиксель в изображении отображает чистый черный цвет, который должен быть в данном случае (при одинаковых слоях), то все, что мы увидим на гистограмме – одна вертикальная полоска по левому краю. Таким образом, в нашем изображении нет никаких лишних цветовых пикселей, нет артефактов и нет мусора. Оно идеально. И так всегда, если мы создаем копию оригинального изображения, она есть 100% копия и никак иначе.
Но идем дальше…
Оставим только наш фоновый слой-изображение и удалим Слой 1 и Уровни. Вернемся к самому началу, иными словами. Но теперь сравним наш оригинал с изображением, которое подвергается маломальскому сжатию или обработке. У нас два документа открыты в окнах, и выбрав инструмент Перемещение, мы сжатый вариант перемещаем на окно оригинала (клик по нужному документу, зажимаем, «тащим» на другой и отпускаем). Таким образом, второй файл открывается у нас, как новый слой.
Важно: когда будете перемещать, то вокруг оригинального изображения появится белая рамка, сообщающая о том, что в эту область создается перемещение.
Поскольку мы перетаскивали наше сжатое изображение, то и отображаться оно будет в слегка сдвинутом виде. Поправим его, зажав Shift или по направляющим.
Таким образом, у нас снова появилось два слоя, но один из них имеет «в себе» изображение, пережатое на 60%. Применим к Слой 1 режим смешивания Разница. И если разницы между двумя вариантами нет, то мы должны видеть снова чистый черный цвет. Вы можете видеть чисто черный или небольшие артефакты, но мы видим явные примеси (мы ближе к монитору).
Добавим корректирующий слой Уровни. И если ранее у нас была одна тонкая полоска слева по вертикали, то теперь она более широкая и форма у нее иная. И она явно демонстрирует то, что нечто чужеродное в изображении есть. В чисто черном цвете есть что-то еще, а это означает, что два изображения совершенно не идентичны друг другу, хотя изначально именно так и может показаться.
Что же в них не так? Мусор. Сжимая одну версию, мы по факту использовали чистую, нетронутую информацию изображения и добавили к ней целую кучу мусора. Шум, мусор, артефакты – называйте это, как вам нравится. Суть заключается в том, что мы повредили оригинал. Сколько мусора добавляет JPEG сжатие? Это сложно увидеть даже через режим смешивания или гистограмму Уровней. Но можно сдвинуть все ползунки Уровней влево. Не будем долго вдаваться в рассуждения, просто отметим, что таким образом слабый шум на изображении сделается гораздо ярче и его станет лучше видно.
При этом стоит помнить, что все странные места непонятных цветов (красные, желтые и др.) это как раз и есть те самые области, что отличаются от оригинала и которые повредились при сжатии. Не очень красиво выглядит, но это как раз есть то, что называется «артефакты сжатия». Таким нехитрым способом можно очень хорошо узнать, как сильно повреждено изображение при пересохранении и в каких местах.
По возможности в этих места веб-дизайнер можно поместить надписи, блоки (если изображение используется как фоновое) и так далее. То есть, «прикрыть» их.
Настройки сжатия jpeg
Хорошо, мы знаем, что при сжатии на 60% наше изображение было повреждено достаточно сильно. Как же теперь выбрать оптимальное сжатие, которое и не очень повредит, и сделает размер файла небольшого размера? В Photoshop существует шкала сжатия от 0 до 12, где последнее – наилучшее качество. И если логичным было бы от 0 до 10, где 10 соответствовало бы 100%, то у Adobe все совершенно иначе.
Если после многих сравнений посмотреть на таблицу, то становится видно, что некоторые параметры шкалы попросту не имеют смысла. Сравните 80%, 77% и 84%. По факту, это соответствует 10 и 11 по шкале Adobe. Но на деле ничего не меняется. Если вы сравните результат сжатия 11 и 9, то разница будет очевидна. Аналогично отсутствует видимая разница в качестве сжатия между 12 и 11.
Мы сохранили наше изображение со сжатием в 11 и провели анализ мусора. Как видите, его… нет, даже на гистограмме Уровней.
А вот результат сжатия 10 дает более утолщенную линию на Гистограмме Уровней, хотя кажется, что черный цвет полностью однороден.
Из чего следует, что иногда смело можно сжимать на много единиц сразу и тогда уже начинать сравнение и смотреть, проявились ли «артефакты» или нет.
Сохранение для Web
В новейших версиях Photoshop до сих пор осталась функция Сохранения для Web, хотя она и получила приписку «Старая версия». Она прячется в Экспортировании. Здесь сжатие происходит по другому алгоритму. Да, это еще один вариант. В данном случае уже можно увидеть процентное сжатие от 0 до 100, множественные дополнительные настройки, а размер файла при этом может очень уменьшаться без потери качества.
Дело в том, что Adobe решили намеренно создать алгоритм, идеально подходящий для интернета, в отличие от иных методов. Мы сохранили наше изображение при максимальных настройках сжатия (100%), получили в разы уменьшенный размер файла, но и искажений нет ни при режиме смешивания, ни на гистограмме Уровней.
И еще вариант.
Завершение
Для многих фотографий даже 77% (10 по шкале) бывает очень малым сжатием, что создает и большой файл, но и при малом искажении. Если же выбрать хотя бы 9, то можно увидеть и малое искажение оригинала, и небольшой размер файла, что уже более приемлемо для большинства случаев. Бывают варианты изображений, когда получается и на 62% – 54% сделать отличный вариант, который и распечатать не стыдно.
Иными совами, конкретно выбор уровня, метода и параметров сжатия в формат jpeg зависят от самого оригинала. Но так или иначе, все это может очень пригодиться в веб-дизайне, особенно, если изображений много, а уменьшенные варианты нужно размещать на сайте и сервере и для экономии, и для ускорения загрузки, и так далее. Чтобы выиграть сражение с пытливыми пользователями и заказчиками, никогда не будет лишним удостовериться, что вы не просто сжали изображения, но еще и почти максимально сохранили их качество, не перенасытили мусором и шумом, размытием по краям и так далее.
А это, в свою очередь, положительно скажется не только на веб-проекте в целом, но и на отношении к веб-дизайнеру, на его профессиональном уровне.
Как сжать JPG онлайн и на ПК: ТОП способов
01 июня, 2020
Автор: Maksim
Изображения в формате JPG способны занимать много нужного пространства на винчестере или флешке. Особенно это касается тех снимков, которые сделаны в высоком разрешении.
Поэтому часто возникает необходимость уменьшить вес ДЖПЕГ, сделать его, меньше не теряя при этом исходного качества или не меняя разрешения. Обо всех способах сделать это — читайте ниже.
Вы уже знаете, как уменьшить размер файла jpg. В данном материале мы рассмотрим все способы, как сжать JPG быстро и без потери качества онлайн и с помощью специального софта.
Сжать JPG фото файл программами
Рассмотрим на примере трех хороших просмотрщиков изображений для операционной системы Windows 10, 7 и других ее версий.
IrfanView
Страница: IrfanView
1. Откройте ДЖПЕГ в программе, нажмите в меню на «Файл» — «Сохранить как», в появившемся окне задайте параметры сжатия. Качество можно указать с помощью ползунка, но ниже 60 для своего фотоальбома устанавливать не рекомендую, т.к. могут появиться довольно заметные артефакты.
2. Также можно сразу задать конечный вес файла, в этом случае IrfanView автоматически сам подберет параметры.
Дополнительно можете вначале изменить размер картинки, для этого, еще до сохранения щелкните по «Изображение» — «Изменить размер» и поменяйте значения здесь.
XnView
Страница: XnView
1. Откройте JPG, щелкните в меню по «Файл» — «Сохранить как» и в открывшемся окне нажмите на «Опции».
2. При помощи ползунка укажите степень сжатия и нажмите на «ОК» и сохраните. Также, до этого можно и изменить разрешение в пикселях, делается это в меню — «Изображение» — «Изменение размера».
FastStone Image Viewer
Страница: FastStone Image Viewer
1. Откройте JPEG, в меню кликните по «Файл» — «Сохранить как» и далее по кнопке «Опции».
2. При помощи ползунка укажите качество сжатия. В окне справа можно сразу будет увидеть, как будет выглядеть результат и сколько будет весить ДЖПЕГ в килобайтах.
3. Нажмите на «ОК» и сохраните результат. Разрешение меняется в «Правка» — «Изменить размер».
Сжать JPG онлайн
Optimizilla
Адрес: Optimizilla
1. Загрузите JPG на сервис, и ползунком справа выберите степень сжатия, результат будет сразу же виден, как и новый вес к Кбайтах.
2. Нажмите на кнопку сохранения и скачайте готовый результат к себе на компьютер/ноутбук.
IMG2GO
Адрес: IMG2GO
1. Загрузите картинку на сайт, ползунком укажите степень сжатия в разделе с дополнительными настройками и кликните по «Начать». Также, можно просто указать параметры в настройках не трогая ползунок, что в первую очередь укажете, с теми параметрами и будет обработан загруженный снимок.
2. Файл будет моментально обработан и результат скачается к вам на компьютер или ноутбук автоматически. Если этого не произошло, то щелкните по соответствующей кнопке.
hipdf
Адрес: hipdf
1. Загрузите ДЖПЕГ на сайт, установите галочку у необходимой степени сжатия и нажмите на кнопку обработки.
2. Обработка пройдет быстро и готовый результат сразу скачается на компьютер автоматически, если же нет, то сделайте это, кликнув по соответствующей кнопке.
I Love IMG
Адрес: I Love IMG
1. Загрузите JPEG на сайт и кликните по кнопке сжатия. Сервис сам выберет наилучшие параметры, чтобы исходное качество сохранилось таким же. Этот сайт рекомендуется использоваться тем, кто не хочет возиться с ползунками и сразу хочет получить хорошо оптимизированную картинку.
2. Фото будет обработано и автоматически скачается к вам на компьютер. Конечный вес в Кбайтах также можно будет сразу увидеть.
В заключение
Это были самые простые способы уменьшения размера JPEG с помощью программ и онлайн сервисов. Надеюсь вам был полезен данный материал и интересных вам снимков.
Этот онлайн-компрессор изображений позволяет сжимать и изменять размеры изображений JPG или PNG для экономии места на диске.
Можно указать степень сжатия изображения и размеры изображения, чтобы значительно уменьшить размер файла.
Выберите несколько изображений в формате JPEG, PNG или BMP (конвертирует PNG в формат JPG):
Можно загрузить до 25 изображений, 0–30 МБ на файл, 0–50 МБ на изображение.
Все ваши изображения будут удалены автоматически через час.
Сжатие изображений
Изменить размер изображения
Сжать JPEG
PDF в JPG
Webp к JPG
Нажмите кнопку «Сжать изображения», чтобы сжать (оптимизировать) ваши изображения JPEG.
Рекомендации
1.Методы A к методу E — сжатие с потерями. JPEG — это формат с потерями. Преобразование изображения из других форматов (например, PNG, BMP) в формат JPEG приведет к снижению качества. Однако сжатие существующего изображения JPEG с помощью методов F и G не изменит качество, преобразование без потерь, что позволяет легко уменьшить размер изображения без потери качества.
2. Сжатие без потерь работает только тогда, когда не применяется изменение размера. Если вы не хотите терять качество изображения, не изменяйте размер изображения, устанавливая оба поля «W» и «H» в ноль.
3. С помощью этого бесплатного онлайн-оптимизатора изображений вы можете оптимизировать свои фотографии, снятые с помощью iPhone 6S, iPhone 7S, GoPro HERO4, Canon, Nikon, Sony, Olympus, или фотографии актеров, актрис, певцов, веб-сайты. вам нравятся комики, такие как PewDiePie, SNSD, Yoona, OneHallyu и др.
Часто задаваемые вопросы
|
Сжать файл JPEG — IMG онлайн
Обработка фотографий JPEG онлайн.
Выберите изображение на своем компьютере или телефоне, установите желаемое качество JPEG от 1 до 100 (уровень сжатия), а затем нажмите кнопку OK в нижней части этой страницы. Все остальные настройки уже установлены по умолчанию. При необходимости здесь можно определить уровень качества (сжатия) любого изображения jpg.
Основным параметром, который уменьшает размер файла, является « качество » JPEG (или уровень сжатия).Более низкое качество (60-70) дает меньший размер файла. Сэмплирование в настройках позволяет оптимизировать детали изображения для дальнейшего уменьшения размера файла в килобайтах. Subsampling 1×1 больше подходит для небольших изображений. Subsampling 2×1 является наиболее распространенным и используется почти во всех цифровых камерах, этот параметр подходит для больших изображений размером более 1 мегапикселя или> 1366×768. Subsampling 2×2 дает наименьший размер файла, но качество изображения может быть низким, этот вариант подходит для очень размытых изображений.
Исходное изображение не изменилось. Вам будет предоставлено другое обработанное изображение в формате JPG.
Обработка обычно длится 0,5-20 секунд.
На фотографиях «Красный перец после дождя» показан уровень качества JPEG для сравнения:
Размеры этого jpg изображения в зависимости от уровня качества (Q — качество, КБ — размер в килобайтах):
Q 10 = 2 КБ; Q 15 = 2,7 КБ; Q 30 = 4,3 КБ; Q 50 = 5,9 КБ; Q 60 = 6,7 КБ; Q 70 = 7,9 КБ; Q 80 = 9,8 КБ; Q 90 = 14,1 КБ; Q 100 = 46,5 КБ.
Также вы можете сжать JPG, указав желаемый размер файла в килобайтах или уменьшить размер картинки в пикселях.
,Статьи
Сравнение большого инструмента сжатия изображений
В сети много статей об онлайн-инструментах сжатия изображений, большинство из которых очень поверхностные. Обычно они заканчиваются простым: «Он генерирует меньшие картинки, поэтому он должен быть лучше».
Узнайте, почему такие заявления в большинстве случаев бессмысленны, разберитесь в технических основах и выясните, какой инструмент следует использовать сегодня.
Читать статью
Наконец, понимание JPEG
Если вы всегда хотели знать, как работает сжатие JPEG, я рекомендую вам эту статью. Для меня было важно написать статью, подходящую для любого уровня понимания.
Кроме того, он содержит 7 ценных приемов, позволяющих уменьшить размер файлов JPEG с использованием технических возможностей алгоритма сжатия JPEG.
Читать статью
, наконец, понимание PNG
Вы когда-нибудь задумывались, почему некоторые из ваших PNG имеют большой размер файла, а похожие PNG такие маленькие?
Поскольку этот вопрос возникает так часто, я написал продолжение моей статьи «Понимание JPEG», чтобы объяснить с точки зрения непрофессионала, что необходимо для алгоритма сжатия PNG.
В конце вы также получите 7 советов о том, как получить ваши PNG-файлы с ДЕЙСТВИТЕЛЬНО маленьким размером файла.
Читать статью
,