Що таке index color

Що таке Index Color

Як уже говорив раніше, на зорі комп'ютерної ери монітори не могли відображати велику кількість кольорів, і був придуманий індексний спосіб кодування (кожен колір в зображенні, отримав свій порядковий номер, за допомогою цих номерів описувалися колір всіх пікселів). Далі більш докладно про конвертацію зображення в Index Color.

Що таке index color

  1. При конвертації зображення в модель Index Color, генерується індивідуальна палітра кольорів. Палітра може бути створена за кількома алгоритмам:
    Selective - складається з найбільш часто зустрічаються в зображенні квітів;
    Adaptive - включає кольору, якими залиті найбільші ділянки зображення і кольору зображень; Web-палітри. і Perceptual - включає кольору тієї частини спектра, де око найбільш чутливе до деталей.
  2. Colors - кількість квітів в індексованих зображенні, (розмір палітри). Цей параметр має сенс тільки для алгоритмічних палітр, т. К. В фіксованих палітрах він заданий жорстко. Чим менше кольорів використано в зображенні, тим менше його розмір, але гірше перенесення кольорів.
  3. Forced - задаються набори квітів, що вводяться в таблицю «примусово». Це можуть бути чорний і білий кольори, Primaries (Базові) (синій, червоний, зелений, пурпурний, жовтий, блакитний, чорний і білий) або інші.
  4. Transparency - якщо зображення містить прозорість, то параметр потрібно включити
  5. Matte - спосіб обробки напівпрозорих областей
  6. Dithering - алгоритми згладжування для імітації перехідних кольорів
  7. Amount - сила згладжування
  8. Preserve Exact Colors - змушує алгоритм згладжування «обходити» пікселі, кольори яких знаходяться в палітрі зображення

Як використовувати Index Color

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

Права картинка значно гірше, але в три рази легше.

А ось та ж картинка, але в RGB (jpg).

Що таке index color

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

І для наочності ось ще кілька картинок.

Що таке index color
Що таке index color
Що таке index color
Що таке index color

Дивлячись на ці фрагменти графіків я не бачу різниці в якості.

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

Більш того для графіки (де немає напівтонів) навіть краще використовувати Index Color (GIF або PNG), якщо використовувати JPG, то на кордонах між різними кольорами будуть видні артефакти від JPG-стиснення.