8-битный цвет

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Глубина цвета

битовое изображение
8-битная шкала серого

8-битный цвет
15/16-bit: Highcolor
24-bit: Truecolor
30/36/48-bit: Deep Color

См. также

Цветовая модель RGB
Цветовая модель CMYK
Цветовая палитра
Видимое излучение

Цвета в Web (Цвета HTML)

8-би́тный цвет в компьютерной графике — это метод хранения информации изображения в памяти компьютера либо в файле изображения, при этом каждый пиксель кодируется одним 8-битным байтом (октетом). Соответственно максимальное количество цветов, которые могут быть отображены одновременно,— 256 (28).

Применение[править | править вики-текст]

8-битные видеорежимы появились вместе с ростом объёмов памяти компьютеров. Основное своё распространение получили с конца 80-х, когда появились MSX2 и VGA. В середине 90-х, с появлением доступных 1—2-мегабайтных видеоплат, на рабочих столах ОС 8-битные режимы уступили пальму первенства 16-битным. В играх они продержались несколько дольше из-за высокой скорости — например, StarCraft (1998) работал в режиме 640×480×8 и не замедлялся на компьютерах класса Pentium-100 даже в массовых боях. Вышедший в 2000 году Grand Prix 3 использовал 8-битные режимы в программном рендеринге.

В настоящее время простые мобильные видеочипы работают как минимум с 12-битным цветом; на настольных машинах применяется 24- или 32-битный truecolor. Однако 8-битные GIF и PNG всё ещё широко используются как метод сжатия графики. Некоторые программы удалённого управления (Virtual Network Computing, Remote Desktop Protocol) могут использовать 8-битные цвета для увеличения пропускной способности.

Форматы 8-битного цвета[править | править вики-текст]

В компьютерной графике существуют такие форматы 8-битного цвета:

Индексированный цвет[править | править вики-текст]

Наиболее часто используемый формат — палитровый (индексированный). В этом случае из широкого цветового пространства (в VGA — 64³ = 262 144 цветов, на более поздних видеоадаптерах — 256³ = 16 777 216) выбираются любые 256 цветов. Их значения R, G и B хранятся в специальной таблице — палитре. В каждом из пикселей изображения хранится номер цвета в палитре — от 0 до 255.

8-битные графические форматы эффективнее (по сравнению с truecolor-форматами) сжимают картинки, у которых не более 256 различных цветов. Также варьирование количества цветов — один из методов сжатия с потерями.

Большинство 8-битных форматов изображений хранят используемую палитру из 256 цветов вместе с картинкой. Если такое изображение отображается на 8-битном графическом аппаратном обеспечении, палитра загружается в видеоплату. В этом случае цветовые гаммы других изображений на экране пострадают, так как их палитры могут быть несовместимы с вновь загруженной палитрой.

Преимущество индексированных цветов в высоком качестве изображения — широкий цветовой охват сочетается с небольшим расходом памяти. Также на 8-битном аппаратном обеспечении можно делать очень быстрые палитровые спецэффекты, принципиально недостижимые в 16- и 24-битном режиме на компьютерах того времени (начало-середина 90-х годов). Наконец, вместе с одной картинкой можно хранить несколько палитр (получается несколько картинок разных цветов).

Недостатком является то, что если в 8-битном видеорежиме надо отобразить одновременно несколько 8-битных картинок, приходится сводить их к одной общей палитре (при этом страдает качество). Также построение оптимальной палитры для полноцветного изображения может занять много времени. Поэтому в случаях, когда требуется скорость (веб, воспроизведение видео на truecolor-кодеке), применяют чёрно-белые или однородные палитры. Во времена 8-битных видеоплат широко применялись 8-битные кодеки — Smacker, Escape и другие.

Чёрно-белая палитра[править | править вики-текст]

Чёрно-белое изображение с 8-битной разрядностью: от чёрного (0) до белого (255) получается 256 градаций серого.

Однородные палитры[править | править вики-текст]

Другой формат представления 8-битных цветов — это «реальное» описание красной, зелёной и синей составляющей с низкой разрядностью. Такая форма представления цвета в компьютерной графике обычно называется «8-битным TrueColor» или «однородной палитрой» (англ. uniform palette). Вот некоторые из широко употребляемых однородных палитр.

  • 8×8×4 (R3G3B2)
В этой палитре используется 3-битный красный цвет, 3-битный зелёный и 2-битный синий.
Бит     07 06 05 04 03 02 01 00
Данные   R  R  R  G  G  G  B  B  (где R-красная, G-зелёная, B-синяя составляющие)
Применялась в платформе бытовых компьютеров MSX2. Преимущество: простота аппаратной реализации (R, G и B — битовые поля). Недостаток в низкой разрядности по синему цвету (даже несмотря на то, что люди менее чувствительны к оттенкам синего).
  • 6×6×6 (палитра Netscape)
Безопасная палитра Netscape — палитра, в которой красная, зелёная и синяя компонента принимают значения от 0 до 5 (всего 6³ = 216 цветов). В truecolor «безопасными» являются цвета, у которых все три компоненты принимают значения 00, 33, 66, 99, CC или FF — например, 6633FF.
Применялась на заре веба — в середине 90-х годов, когда количество пользователей с 256-цветными видеоплатами всё ещё было значительным. Преимущество в простоте запоминания; также системе остаётся достаточно цветов на собственные нужды. Недостаток в том, что 8-битная разрядность используется не полностью, даже с учётом «системных» цветов.

Изредка применяются и другие палитры:

  • 6×7×6 = 252 цвета.
  • 6×8×5 = 240 цветов.

См. также[править | править вики-текст]