Ako funguje kompresia obrázkov v prehliadači
Tento nástroj zmenšuje dátovú veľkosť súborov JPEG, PNG a WebP priamo vo vašom webovom prehliadači. Pri predvolenom nastavení zostáva šírka a výška obrázka v pixeloch nezmenená. To znamená, že sa nemenia fyzické rozmery, ale optimalizuje sa spôsob, akým sú jednotlivé pixely popísané v bajtoch. Kompresia vo svojej podstate znamená vzdanie sa časti obrazových detailov, pričom o miere tohto ústupku rozhoduje zvolená intenzita kompresie.
Spracovanie prebieha okamžite po pridaní súborov bez nutnosti predchádzajúceho nastavovania. Každý súbor sa štandardne vráti vo svojom pôvodnom formáte a s pôvodnými rozmermi, iba s menším objemom dát. Po dokončení procesu sa zobrazí celkový prehľad s informáciou o ušetrenom mieste. K dispozícii je posuvník na vizuálne porovnanie originálu s komprimovanou verziou, zoznam všetkých obrázkov s ich pôvodnou a novou veľkosťou a možnosť stiahnuť si každý súbor samostatne alebo všetky naraz v jednom archíve ZIP.
Ak výsledok nespĺňa vaše predstavy o veľkosti alebo ostrosti, panel s názvom „Nie je dosť malý alebo nie je dosť ostrý?“ umožňuje upraviť parametre a spustiť kompresiu znova. Môžete tu zmeniť intenzitu kompresie, výstupný formát alebo obmedziť maximálne rozmery.
Čo určuje dátovú veľkosť obrázka
Dátový objem grafického súboru závisí od troch hlavných faktorov: počtu pixelov (rozlíšenia), množstva farebných informácií priradených každému pixelu a schopnosti kompresného algoritmu predpovedať a efektívne zakódovať nasledujúce pixely.
Rozlíšenie určuje celkovú plochu. Obrázok s rozmermi 4000 × 3000 pixelov obsahuje 12 miliónov bodov. Každý z týchto bodov vyžaduje bajty na definovanie svojej farby a jasu. Ak sa tieto informácie neoptimalizujú, súbor bude extrémne veľký.
Druhým faktorom je charakter samotného obrazu. Algoritmy vyhľadávajú v obrázku opakujúce sa vzory a plochy s rovnakou farbou. Fotografický záber s množstvom jemných detailov, šumu a plynulých prechodov (gradientov) poskytuje minimum príležitostí na jednoduché opakovanie, preto bude po kompresii vždy väčší ako schematický diagram, logo alebo snímka obrazovky s veľkými jednofarebnými plochami.
Stratová verzus bezstratová kompresia v praxi
Rozdiel medzi stratovou a bezstratovou kompresiou sa najvýraznejšie prejavuje pri formáte PNG. Formát PNG bol navrhnutý ako bezstratový, čo znamená, že po rozbalení musí byť každý pixel identický s originálom. Ak sa pokúsite komprimovať fotografiu uloženú v PNG čisto bezstratovo, úspora bude minimálna, pretože jemné detaily a šum neumožňujú efektívne repakovanie.
Tento nástroj preto aplikuje na formát PNG stratový prístup prostredníctvom redukcie farieb. Počet unikátnych farieb v obrázku sa zníži na paletu s maximálne 255 farbami a až následne sa súbor bezstratovo zabalí. Tento krok natrvalo odstráni časť farebných informácií z výsledného súboru.
Pri redukcii farieb sa testuje niekoľko úrovní kvality. Každý kandidát sa porovnáva s originálom a ak je vizuálny rozdiel príliš veľký, systém ho zahodí. Všetky tri predvolené intenzity kompresie využívajú redukciu farieb:
- Ostrejšie: Skúša iba najjemnejší krok redukcie a uplatňuje prísne kritériá zhody.
- Odporúčané: Používa stredný rozsah redukcie.
- Menšie: Testuje najširší rozsah a akceptuje výraznejšie vizuálne zmeny.
Ak žiadna úroveň redukcie farieb neprejde testom kvality (čo sa stáva pri fotografiách v PNG alebo pri obrázkoch, ktoré už majú indexovanú paletu), nástroj vykoná iba bezstratové prebalenie. V takom prípade sa pri obrázku zobrazí poznámka: „Tento obrázok má príliš veľa jemných detailov na to, aby sa dal viac zmenšiť bez viditeľnej straty kvality, preto zostal pixel po pixeli rovnaký.“.
Pri formátoch JPEG a WebP sa uplatňuje stratová kompresia založená na frekvenčnej analýze obrazu. Algoritmus zakóduje obrázok s rôznymi nastaveniami kvality, porovná výsledky s originálom a vyberie najmenší súbor, ktorý si zachováva dostatočnú vizuálnu zhodu.
Výber správneho formátu: JPEG, PNG a WebP
Voľba formátu zásadne ovplyvňuje výslednú veľkosť aj kvalitu obrázka:
| Formát | Podpora priehľadnosti | Vhodné použitie | Správanie pri kompresii |
|---|---|---|---|
| JPEG | Nie (priehľadnosť sa nahradí bielou farbou) | Fotografie, zložité scény s gradientmi | Stratová kompresia, zahadzuje vysokofrekvenčné detaily. |
| PNG | Áno | Logá, grafika, snímky obrazovky s textom | Stratová redukcia farieb na paletu max. 255 farieb, následne bezstratové zabalenie. |
| WebP | Áno | Univerzálna náhrada za JPEG aj PNG | Moderný formát s vysokou efektivitou. Často dosahuje polovičnú veľkosť oproti JPEG/PNG pri rovnakej kvalite. |
Ak nástroj zistí, že by rovnaký obrázok mal vo formáte WebP menej ako polovičnú veľkosť oproti aktuálnemu formátu, zobrazí upozornenie: „Tento obrázok by bol vo formáte WebP oveľa menší. Skúste zmeniť výstupný formát nižšie.“. Rozhodnutie o zmene formátu je však plne na vás, predvolená možnosť „Zachovať pôvodný format“ striktne rešpektuje pôvodný typ súboru.
Práca s presnou cieľovou veľkosťou
Ak potrebujete splniť prísny limit pre nahranie súboru, voľba „Presná veľkosť“ umožňuje zadať cieľovú hodnotu v rozmedzí od 10 KB do 50 MB.
Algoritmus sa snaží priblížiť k tomuto limitu v opakovaných cykloch. Ak samotné zníženie kvality kódovania nestačí na dosiahnutie cieľa, nástroj začne obrázok postupne zmenšovať o približne desatinu rozmerov v každom kole. Toto zmenšovanie sa zastaví pri splnení jednej z dvoch podmienok:
- Rozlíšenie obrázka klesne na približne jednu tretinu pôvodného počtu pixelov (napr. z 12 megapixelov na 4 megapixely, čo zodpovedá približne 58 % dĺžky každej strany).
- Dlhšia strana obrázka dosiahne limit 800 pixelov.
Ak sa limit podarí dosiahnuť, zobrazí sa stav „Cieľ: Dosiahnuté“. V opačnom prípade sa zobrazí „Cieľ: Najbližší možný výsledok“. Tento stav znamená, že algoritmus narazil na jeden z dvoch spomínaných limitov rozmerov a ďalšie zmenšovanie už nevykoná, hoci súbor môže byť stále väčší ako požadovaný cieľ. V takom prípade je potrebné manuálne zvýšiť cieľovú veľkosť alebo akceptovať menšie rozmery.
Pravidlá spracovania a obmedzenia
- Limit počtu súborov: Naraz môžete vybrať maximálne 20 obrázkov. Pri prekročení sa zobrazí chybové hlásenie: „Naraz môžete vybrať najviac
{max}obrázkov.“. - Podporované formáty: Akceptované sú výhradne súbory JPEG, PNG a WebP. Iné formáty vyvolajú chybu: „Podporované sú iba súbory JPEG, PNG a WebP.“.
- Poškodené súbory: Ak je súbor nečitateľný, zobrazí sa správa: „Tento súbor sa nepodarilo otvoriť ako obrázok. Môže byť poškodený, prázdny alebo to v skutočnosti nie je obrázok.“. Ostatné súbory v dávke sa napriek tomu spracujú a na konci sa zobrazí celkový počet zlyhaní, napríklad: „
{count}súborov sa nepodarilo spracovať.“. - Ochrana pamäte: Veľmi veľké obrázky s rozlíšením nad približne 24 miliónov pixelov sú automaticky zmenšené, aby sa predišlo vyčerpaniu pamäte prehliadača. Tento stav je označený štítkom „Automaticky obmedzené kvôli pamäti“.
- Metadáta a rotácia: Kompresia kompletne prepisuje štruktúru súboru. EXIF dáta, informácie o polohe GPS, dátum vzniku a nastavenia fotoaparátu sa do nového súboru neprenášajú. Jedinou výnimkou je prípad, kedy nástroj vráti pôvodný súbor bez zmien s poznámkou „Tento súbor je už taký malý, ako sa dá, takže sa zachoval originál.“. Vtedy zostávajú všetky metadáta zachované. Rotácia zaznamenaná v metadátach sa pred kompresiou aplikuje priamo na obrazové dáta, takže snímky z telefónu sa neotočia nabok.
Často kladené otázky
Nahrávajú sa moje obrázky? Nie. Kompresor funguje priamo vo vašom prehliadači a súbory obrázkov zostávajú vo vašom zariadení. Na server BroBroGo sa nič nenačítava.
Aké formáty obrázkov sú podporované? Podporuje vstupné formáty JPEG, PNG a WebP s možnosťou výstupu v JPEG, WebP a PNG.
Zníži kompresia kvalitu obrázka? Inteligentná kompresia otestuje rôzne úrovne kvality a zachová najmenší výsledok, ktorý stále vyzerá ostro.
Môžem nastaviť presnú cieľovú veľkosť súboru? Áno. Režim cieľovej veľkosti vyhľadá zodpovedajúcu úroveň kvality a v prípade potreby jemne zmenší rozmery.