Кольори на вашому екрані неправильні
Якщо ви помістите барвисте зображення у фотошоп чи інстаграм і розмиєте його, то побачите дивну темну межу між сусідніми яскравими кольорами.
Жах!
У реальному світі кольори, що не у фокусі, змішуються плавно, переходячи від червоного до жовтого і до зеленого, а не від червоного до коричневого і до зеленого.
Ця проблема змішування кольорів не обмежується розмиттям цифрових зображень.
Практично щоразу, як комп'ютер розмиває зображення, або намагається використовувати прозорі краї, ви побачите той самий брудний колір.
Існує дуже просте пояснення такого ефекту і простий спосіб його виправити.
Все починається з того, як само ми сприймаємо яскравість.
Людський зір, як і слух працює у відносному, приблизно логарифмічному масштабі.
Це означає, що перехід від певної величини інтенсивності світла до вдвічі більшого значення змінює видиму нами яскравість набагато сильніше, ніж перехід від інтенсивності у 101 одиницю до інтенсивності, що дорівнює 102 одиницям, не зважаючи на те, що в обох випадках було додано однакову величину інтенсивності.
Наші очі та мозок просто краще виявляють невеликі відмінності в абсолютній яскравості для темних сцен і погано виявляють такі ж відмінності у яскравих сценах.
З іншого боку, комп'ютери та цифрові світлочутливі матриці визначають яскравість виключно на основі кількості фотонів, які потрапляють на фотодетектор.
Тому додаткові фотони дають незмінне зростання яскравості, незалежно від навколишньої сцени.
При зберіганні цифрового зображення комп'ютер записує значення яскравості для кожного кольору - червоного, зеленого та синього у кожній точці зображення.
Як правило, нуль представляє нульову яскравість, а одиниця - 100% яскравості.
То 0,5 означає удвічі меншу яскравість ніж 1.
Правильно?
Ні.
Цей колір може виглядати так, ніби він розташований посередині між чорним та білим, але через наше логарифмічне бачення це не так.
Абсолютна фізична яскравість цього кольору становить лиш п'яту частину яскравості білого.
Іще дивнішим є те, що значенню 0,25 відповідає одна двадцята яскравості білого.
Цифрова візуалізація має вагому причину бути темнішою, ніж це повинно було б бути згідно з числами.
Пам'ятаєте, людський зір краще виявляє невеликі відмінності у яскравості для темних сцен?
Інженери-програмісти використали цей факт як спосіб заощадження дискового простору на початку ери цифрових зображень.
Суть проста: коли цифрова камера захоплює зображення, то замість того, щоб зберігати значення яскравостей, вона записує квадратні корені цих значень, зберігаючи більше точок даних для градацій темних відтінків і менше точок даних для світлих відтінків, приблизно імітуючи характеристики людського зору.
Коли вам потрібно вивести зображення на дисплей, просто піднесіть значення яскравості до квадрата, щоб правильно відобразити кольори сусідніх пікселів.
Це працює добре аж доки ви не вирішите змінити файл зображення.
Розмиття, наприклад, досягається заміною кожного пікселя середнім значенням кольорів сусідніх пікселів.
Достатньо просто.
Але, залежно від того, коли знаходити середнє значення - до чи після добування квадратних коренів - у вас будуть різні результати й, на жаль, переважна більшість комп'ютерних програм робить це неправильно.
Наприклад, якщо активно розмити червоно-зелену межу, ви очікуєте, що середина буде наполовину червоною і наполовину зеленою.
І більшість програм намагаються зробити це примітивним усередненням значень яскравості, що записані у файлі, не враховуючи того факту, що реальні значення яскравості були занесені під корінь камерою задля зменшення обсягу даних.
Тож середня величина зрештою стає надто темною саме через те, що середнє значення двох квадратних коренів завжди менше ніж квадратний корінь з середнього.
Щоби правильно змішати зелений з червоним, та уникнути негарної темної межі, комп'ютер повинен спочатку піднести до квадрата кожну з величин яскравості, щоб скасувати обернену дію камер, тоді знайти їхнє середнє значення і лиш після цього добути корінь з отриманих значень.
Погляньте, наскільки кращим став результат.
На жаль, значна частина програмного забезпечення, включно з багатьма відомими додатками, застосовують примітивний, невдалий і неправильний підхід до обробки значення яскравості.
І хоча у фотошопі й інших професійних графічних програм є розширені налаштування, які дозволяють увімкнути використання математично та фізично правильно змішування кольорів, хіба не повинен вдаліший і правильний варіант бути увімкненим за замовчуванням?