Стискання зображень із втратами і без втрат

Коли ми стискаємо файл, ми робимо це через те, що хочемо тимчасово зменшити його об’єм (наприклад, для надсилання електронною поштою), або через те, що хочемо назавжди зробити його меншим (наприклад, для показу зображень у інтернеті).

Методики стискання без втрат передбачають тимчасове зменшення об’єму даних. Як можна зрозуміти з назви, стискання відбувається без втрати даних. Зразком стискання без втрат є використання у тексті абревіатур. Усі знають, що «див.» — скорочення від «дивись», у якому ми замість шести літер слова «дивись» використовуємо стиснуту форму з чотирьох знаків — «див.».

У форматах зображень прикладом такого стискання є використання «індексованих» кольорів: ми створюємо список усіх кольорів зображення, а потім просто пов’язуємо із кожним з них одне число. Доті, при описі пікселів нам достатньо вказати відповідне число — потреби у повному записі визначення кольору вже немає.

Методики стискання із втратами передбачають зменшення розмірів файла зображення без можливості відновлення початкової якості. Таке стискання є необхідним для остаточних продуктів, для яких важливим є розмір файла, зокрема для сайтів. Припущення про те, що редагування зображення більше не відбуватиметься, надає змогу скористатися контекстом кожного пікселя для стискання шляхом використання психологічних та статистичних трюків.

Наприклад, однією із основних речей, які виконуються під час стискання у форматі JPEG, є субдискретизація за насиченістю, тобто поділ зображення на зображення у відтінках сірого та дві кольорові версії (одну із даними щодо усіх контрастностей червоний-зелений, а іншу для усіх контрастностей синій-жовтий), із наступним зменшенням розмірів кольорових версій. Практичною основою можливості такого стискання є те, що людське око є набагато чутливішим до різниці в освітленості, ніж до різниці у відтінках і насиченості.

Ще одним перетворенням є використання синусоїд для опису контрастності на зображенні. Це означає, що JPEG та інші формати зберігання даних з втратами, де використано ту саму методику, добре працюють у описі поступових переходів між кольорами, але призводять до появи дефектів на ділянках із різкими контрастами.

І навпаки, методики стискання зображень без втрат є дуже добрими для зберігання зображень, на яких є небагато кольорів, отже багато різких контрастів, але малопридатні для зберігання зображень із багатьма градієнтами.

Це однією визначною відмінністю між зображеннями із втратою якості та без втрати якості є те, що якість зображення у форматах із втратою якості погіршується після перепаковування. Тобто, якщо ви завантажите JPEG до Krita, виконаєте незначне редагування, збережете дані, знову виконаєте редагування, ще раз збережете дані… кожного разу частина даних втрачатиметься. Це фундаментальна особливість стискання зображень з втратами і основна причина для використання для проміжного зберігання даних особливого формату.

Дивись також

Якщо ви цікавитеся різними методиками стискання даних, добрим джерелом даних є стаття у Вікіпедії щодо стискання зображень, хоча її вміст і є дещо технічним.