Какое качество изображения теряется при повторном сохранении изображения JPEG в MS Paint? - Фотопедия
3 голосов
/ 19 февраля 2013

Кто-нибудь когда-нибудь замечал, что если вы откроете изображение в mspaint (.jpg, .jpeg), а затем просто сохраните его, размер изображения будет уменьшен во много раз. Я использую этот метод, чтобы уменьшить размер файла.

Однако я не уверен насчет потери качества из-за этого. Может ли кто-нибудь сказать / объяснить потери качества, если таковые имеются с помощью этого метода?

Ответы [ 4 ]

5 голосов
/ 19 февраля 2013

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

Если вы просматриваете изображение и масштабируете его до масштаба 1: 1 или более, обычно можно увидеть артефакты, вызванные сжатием JPEG.

Сжатие выполняется путем создания блоков 8x8 пикселей с цветовым градиентом, чтобы они максимально напоминали исходные данные, после чего разница между этой мозаикой и исходными данными сохраняется с точностью, соответствующей выбранному уровню качества. Чем выше сжатие, тем больше мозаики видно.

Вот пример того, как артефакты сжатия видны по краям объекта (кленовый лист) на гладком фоне (небо):

enter image description here

4 голосов
/ 19 февраля 2013

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

Цифровые инструменты позволяют нам избежать потери качества поколений при использовании форматов без потерь (форматов, в которых хранится вся доступная информация без ухудшения качества), однако форматы без потерь требуют гораздо больше места и, следовательно, редко используются для окончательного вывода

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

Размер файла обычно дает приблизительную оценку потери детализации, если вы кодируете в рамках одной схемы сжатия, по крайней мере, когда размеры файлов уменьшаются. Однако можно увеличить размер изображения (например, у вас было изображение без потерь, вы сохранили его в формате JPEG 10 качества, а затем сохранили его в формате JPEG 100 качества). Хотя размер файла будет расти, он будет хранить шум с высоким качеством, а не информацию из исходного изображения.

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

4 голосов
/ 19 февраля 2013

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

Лучшим подходом является использование инструмента, который позволяет вам выбрать настройку качества, чтобы вы могли сами решить, какая потеря качества является приемлемой при поиске файлов меньшего размера.

1 голос
/ 26 июля 2013

Я превращаю свой комментарий в ответ, чтобы объяснить, почему я считаю, что меньший размер не обязательно означает потерю качества, хотя часто это так.

В целом, я полагаю, что MSPaint ухудшит качество ваших изображений, когда вы сохраните их по точным причинам, показанным Гуффой. Однако, это не всегда меняет качество, даже если оно может изменить размер файла. Один файл, который я только что попробовал, на самом деле вырос на 10%, а качество было точно таким же.

Вы можете проверить разницу в качестве, открыв оба изображения в Photoshop и смешав их с разницей. Различия обычно довольно тонкие, но вы увидите несколько нечетных пикселей, близких к черному, но не совсем, которые указывают на разницу.

Теперь у MSPaint нет способа установить качество jpeg, при котором вы сохраняете изображение, поэтому мы можем только предполагать, что оно сохраняется с качеством, возможно, 75% (кто знает?).

Другие программы могут дать вам более точный контроль над настройками качества, но я только что создал три файла одного и того же изображения, и все три имеют разные размеры, даже если между этими файлами нет разницы в пикселях. Они имеют размер изображения 940x350 пикселей и имеют размер файла 194 571; 188924; и 170,074.

Первый был сохранен из Photoshop CS5 с использованием параметров «Качество: 10» и «Базовые» «Стандартные», второй был сохранен с использованием параметров «Качество: 10» и «Оптимизированный базовый уровень», а третий был сохранен с помощью опции «Сохранить для Web и устройств», которая предлагает немного больше контроля над настройками качества файла. Здесь я использовал качество 80% и установил флажок «оптимизировано». Все эти изображения идентичны пиксель за пикселем.

Суть в том, что файл jpeg меньше, но это не значит, что произошла некоторая потеря качества.

Почему бы и нет? Что происходит?

Если вы возьмете файл jpeg с большими областями аналогичного цвета и сохраните его «оптимизированным», он может фактически потерять значительный размер, потому что существует другой алгоритм, называемый кодированием Хаффмана, который применяется после блокировки jpeg.

Итак, чтобы ответить на ваш вопрос : единственный способ точно узнать о потере качества - это сделать попиксельное сравнение со слоем «Разница». Хорошая ставка на то, что с MSPaint вы фактически теряете качество.

Вот ссылка на дополнительную информацию о кодировании Хаффмана

Некоторые приложения имеют фиксированную таблицу Хаффмана, которую они используют для всех изображений. В то время как другие попытаются создать «оптимизированную» таблицу Хаффмана, специфичную для данных в этом файле.

...