Преминаване към съдържанието

Компресия със и без загуба на качество

Какво всъщност премахва компресията, защо обикновено не можете да го забележите и в кой момент става видимо.

Компресията без загуба (lossless) съхранява изображението така, че то да може да бъде възстановено абсолютно точно, докато компресията със загуба (lossy) перманентно премахва информация, която човешкото око е малко вероятно да забележи. Тази единствена разлика е причината една снимка да може да стане 10 пъти по-малка без видима промяна и защо същият трик е неуспешен при екранна снимка.

Уловката при компресията със загуба е, че загубата се натрупва. Всяко запазване премахва още малко, така че многократното отваряне и повторно запазване на JPEG влошава качеството му по начин, по който отварянето на PNG никога не го прави. Пазете оригинал без загуба, експортирайте копия със загуба за разпространение и експортирайте отново от оригинала, а не от копието.

Какво всъщност премахва компресията със загуба

Компресията със загуба премахва фините детайли и фините цветови разлики, с които човешкото зрение се справя трудно. Изборът се основава на измерените граници на възприятието, а не на предположения.

Човешките очи улавят промените в яркостта много по-точно, отколкото промените в цвета, затова JPEG съхранява цветовата информация с намалена разделителна способност, а детайлите за яркостта запазва непокътнати. Форматът също така опростява фината текстура в малки блокове от изображението, тъй като леко загладено петно с трева все още изглежда като трева, но струва малка част от данните.

Как работи компресията без загуба

Компресията без загуба намира повтарящи се модели и ги описва по-кратко, без да изхвърля нищо. Възстановяването на файла произвежда пиксели, които са идентични с оригинала, байт по байт.

Ред от 400 идентични бели пиксела може да бъде записан като една инструкция вместо като 400 стойности, поради което плътните цветове се компресират драстично, а фотографският шум почти не се компресира. PNG работи по този начин, както и WebP в своя режим без загуба, а също и компресията в ZIP архив.

Кои формати какви са

ФорматТипПрозрачностНай-подходящ за
JPEGСамо със загубаНеСнимки
PNGСамо без загубаДаЕкранни снимки, лога, диаграми
WebPИ двата режимаДаПочти всичко в мрежата
AVIFИ двата режимаДаГолеми снимки
HEICСъс загуба, възможна без загубаДаСъхранение на снимки от телефон
GIFБез загуба, 256 цвятаДа, един цвятМалки изображения, предимно заменен
BMPПрактически некомпресиранОграниченаНищо съвременно

WebP и AVIF са най-полезните опции, тъй като и двата предлагат и двата режима. Следователно един формат може да се справи правилно както със снимка, така че и с лого, което нито JPEG, нито PNG могат да направят сами.

Защо повторното запазване уврежда JPEG

Всяко запазване със загуба премахва детайли от изображение, което вече е загубило детайли, и щетите се натрупват. Второто запазване не може да възстанови това, което първото е премахнало, и премахва още повече от останалото.

След 5 или 6 цикъла ефектът става видим като пикселизация в гладките зони и ореоли около острите ръбове. Проблемът се появява най-често при изображения, които се споделят многократно, тъй като снимка, препратена през няколко приложения за съобщения, може да премине през 4 или 5 кодирания, преди някой да я редактира. Работата от оригинала всеки път избягва целия този проблем.

Кога компресията със загуба е правилният избор

  • Снимки в уебсайт, където намаляването на размера със 70 процента е невидимо за посетителите.
  • Изображения на продукти в магазин, където скоростта на страницата влияе пряко на продажбите.
  • Снимки за формуляри за качване, където строгото ограничение в KB не оставя друга алтернатива.
  • Изображения в имейли, където всеки килобайт се изтегля на телефон.
  • Публикации в социалните мрежи, където мрежата така или иначе ще компресира файла отново.

Кога компресията без загуба е правилният избор

  • Оригинални файлове и източници, които ще бъдат редактирани или експортирани отново по-късно.
  • Екранни снимки и диаграми, където острите ръбове и текстът страдат при компресия със загуба.
  • Лога и бранд активи, предоставени на други хора за използване в техни собствени материали.
  • Медицински, правни и научни изображения, където променените пиксели могат да имат сериозни последици.
  • Всичко с прозрачност, което трябва да остане абсолютно точно по краищата.

Обяснение на настройката за качество

Стойността за качество контролира колко агресивно се премахват детайлите и тя не е процент от нищо съществено. Качество 50 не означава наполовина по-лошо качество, а качество 100 не означава компресия без загуба.

Числото съответства на това колко енкодерът опростява всеки блок от изображението. JPEG при качество 100 все още премахва информация, поради което тази настройка по-скоро хаби място, отколкото да запазва всичко. Различните формати използват скалата по различен начин, така че WebP при 80 и AVIF при 60 изглеждат съпоставими с JPEG при 85.

Как да изградите работен процес, който запазва качеството

За да избегнете натрупването на щети в библиотеката си, следвайте тези 5 правила.

  1. Пазете оригиналния файл от камерата или дизайна непокътнат, в папка, от която никога не експортирате.
  2. Правете редакции върху копие без загуба, а не върху вече експортиран JPEG.
  3. Експортирайте копията за разпространение от оригиналния файл всеки път, а не от предишния експорт.
  4. Избирайте формата за разпространение според дестинацията, като използвате WebP за уеб и JPG за формуляри и имейл.
  5. Експортирайте отново, вместо да компресирате повторно, когато е необходим нов размер или формат.

Правило 3 е най-често нарушаваното. Повторното компресиране на съществуващ експорт е по-бързо в момента, но добавя ново поколение загуба на качество всеки път, когато се случва.

Защо ZIP файлът не намалява размера на JPEG

Компресирането на папка с JPEG файлове в ZIP архив не спестява почти нищо, тъй като изображенията вече са компресирани. ZIP архив с 200 снимки обикновено е само с 1 до 3 процента по-малък от самите снимки.

ZIP прилага компресия без загуба, която работи чрез намиране на повторения, а енкодерът със загуба вече е премахнал повечето от наличните повторения. Същата папка с некомпресирани BMP файлове би се свила драстично, тъй като с нея все още нищо не е правено. ZIP остава полезен за обединяване на много файлове в едно изтегляне, което е по-скоро удобство, отколкото намаляване на размера.

Можете ли да разберете колко е компресирано едно изображение

Сравнете размера на файла с броя на пикселите, тъй като снимка с размер под 1 байт на пиксел е била компресирана сериозно. Снимка с размери 1000 на 1000 пиксела при 60 KB е била компресирана агресивно, докато същото изображение при 400 KB не е.

Визуалната проверка също работи, след като разберете къде да гледате. Увеличете до 100 процента и проверете гладките зони за бледи квадратни петна, а острите ръбове – за ореоли. И двата артефакта се появяват на абсолютно едни и същи места, независимо кой инструмент е произвел файла, така че проверката е бърза и надеждна.

Могат ли да се поправят щетите от компресия със загуба

Не, премахнатите детайли не могат да бъдат възстановени, тъй като информацията не се съхранява никъде във файла. Конвертирането на повреден JPEG в PNG произвежда по-голям файл, съдържащ същите дефекти.

Някои инструменти за редактиране заглаждат JPEG артефактите, което по-скоро скрива щетите, отколкото да ги отстранява, и омекотява реалните детайли заедно с тях. Единственото истинско решение е да се върнете към оригиналния файл. Това е практическата причина да пазите оригиналите и причината папка с оригинални снимки от камерата да си струва дисковото пространство.

Къде се появяват тези думи в реалните инструменти

Софтуерът рядко използва думите „със загуба“ и „без загуба“ директно, като вместо това предлага плъзгач за качество или предварително зададени настройки за експортиране. Знанието кой от тях използвате е по-важно от етикета, който му е поставен.

  • Плъзгач за качество означава компресия със загуба, независимо как се нарича форматът.
  • Save for web в софтуера за дизайн означава експортиране със загуба при предварително зададено качество.
  • Оптимизиране или компресиране на PNG означава реорганизация без загуба, освен ако не се намаляват цветовете.
  • Експортиране като PNG 8 означава намаляване на палитрата, което променя изображението перманентно.
  • Целеви размер в KB означава, че инструментът ще намалява качеството, докато файлът се събере в лимита, така че винаги е със загуба.

Прилагане на правилния режим в цялата библиотека

Първо разделете изображенията на снимки и графики, след което приложете компресия със загуба за едната група и без загуба за другата. Смесена папка, обработена с една и съща настройка, винаги уврежда половината от файловете.

Пуснете до 500 файла наведнъж, задайте качеството и формата за тази група и обработете втората група отделно. Всичко се изпълнява във вашия браузър на вашия собствен процесор, така че оригиналите, клиентската работа и непубликуваните дизайни никога не достигат до сървър. Тъй като нищо не се качва, оригиналните файлове остават точно там, където сте ги оставили, и се променят само експортираните копия.

Назад към блога