Глубина цвета

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая 77.244.21.10 (обсуждение) в 03:02, 25 декабря 2013 (LCD Displays: Добавил ссылку на определение дизеринга). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску
Глубина цвета
См. также

Глубина́ цве́та (ка́чество цветопереда́чи, би́тность изображе́ния) — термин компьютерной графики, означающий объём памяти в количестве бит, используемых для хранения и представления цвета при кодировании одного пикселя растровой графики или видеоизображения.

Часто выражается единицей бит на пиксел (англ. bits per pixel, bpp).

Индексированные цвета и палитры

Возможные варианты представления цветовых палитр:

4-битное изображение
  • 1-битный цвет (21 = 2 цвета) бинарный цвет, чаще всего представляется чёрным и белым цветами (или черный и зелёный)
  • 2-битный цвет (2² = 4 цвета) CGA, градации серого цвета NeXTstation
  • 3-битный цвет (2³ = 8 цветов) Множество устаревших персональных компьютеров с TV-выходом
  • 4-битный цвет (24 = 16 цветов) известен как EGA и в меньшей степени как VGA-стандарт с высоким разрешением
  • 5-битный цвет (25 = 32 цвета) Original Amiga chipset
  • 6-битный цвет (26 = 64 цвета) Original Amiga chipset
  • 8-битный цвет (28 = 256 цветов) Устаревшие Unix-рабочие станции, VGA низкого разрешения, Super VGA, AGA
  • 12-битный цвет (212 = 4096 цветов) некоторые Silicon Graphics-системы, цвет NeXTstation-систем, и Amiga-систем HAM-режима.
8-битное изображение

«Реальные» цвета

С увеличением количества бит в представлении цвета, количество отображаемых цветов стало становиться непрактично-большим для цветовых палитр (20-битная глубина цвета требует больше памяти для сохранения цветовой палитры, чем памяти для сохранения самих пикселей изображения). При большой глубине цвета на практике обычно кодируют яркости красной, зелёной и синей составляющих — такое кодирование обычно называют RGB-моделью.

8-битный «реальный» цвет

Сильно ограниченная, однако «реальная» цветовая схема, в которой по 3 бита (по 8 возможных значений) для красной (R) и зелёной (G) составляющих, и два оставшихся бита на пиксель для кодирования синей (B) составляющей (4 возможных значения), позволяют представить 256 (8 × 8 × 4) различных цвета. Нормальный человеческий глаз менее чувствителен к синей составляющей, чем к красной и зелёной, поэтому синяя составляющая представляется одним битом меньше. Такая схема использовалась в MSX2-серии компьютеров в 1990-х.

Не следует путать такую схему с 8bpp индексным цветом, который может быть представлен выбором различных цветовых палитр.

12-битный «реальный» цвет

12-битный «реальный» цвет кодируется 4 битами (по 16 возможных значений) для каждой R, G и B-составляющих, что позволяет представить 4096 (16×16×16) различных цветов. Такая глубина цвета иногда используется в простых устройствах с цветными дисплеями (например, в мобильных телефонах).

HighColor

Highcolor или HiColor разработан для представления оттенков «реальной жизни», то есть наиболее удобно воспринимаемый человеческим глазом. Такой цвет кодируется 15 или 16 битами:

  • 15-битный цвет использует 5 бит для представления красной составляющей, 5 для зелёной и 5 для синей, то есть 25 = 32 возможных значения каждого цвета, которые дают 32768 (32×32×32) объединённых цвета.
  • 16-битный цвет использует 5 бит для представления красной составляющей, 5 для синей, но (так как человеческий глаз более чувствителен при восприятии к зелёной составляющей) 6 бит для представления зелёной, соответственно 64 возможных значения. Таким образом получаются 65536 (32×64×32) цвета. 16-bit цвет упоминается как «тысячи цветов» («thousands of colors») в системах Macintosh.

LCD Displays

Большинство современных LCD-дисплеев отображают 18-битный цвет (64×64×64 = 262 144 комбинаций), но благодаря технологии dithering разница с truecolor-дисплеями на глаз незначительна.

Truecolor

24-битное изображение

TrueColor приближен к цветам «реального мира», предоставляя 16,7 миллионов различных цветов. Такой цвет наиболее приятен для восприятия человеческим глазом различных фотографий, для обработки изображений.

  • 24-битный Truecolor-цвет использует по 8 бит для представления красной, синей и зелёной составляющих, 28 = 256 различных варианта представления цвета для каждого канала, или всего 16 777 216 цветов (256×256×256). 24-bit цвет упоминается как «миллионы цветов» («millions of colors») в системах Macintosh.

32-битный «реальный» цвет

«32-битный цвет» — это пример неправильного употребления термина при описании глубины цвета. Заблуждением является то, что 32-битный цвет позволяет представить 2³² = 4 294 967 296 различных оттенка.

В реальности 32-битный цвет является 24-битным (Truecolor) с дополнительным 8-битным каналом, который либо заполнен нулями (не влияет на цвет), либо представляет собой Альфа-канал, который задаёт прозрачность изображения для каждого пикселя.

Причиной, по которой используют «пустой» канал, является стремление оптимизировать работу с видеопамятью, которая у большинства современных компьютеров имеет 32-битную адресацию и 32-битную шину данных.

Сверх-Truecolor

В конце 1990-х некоторые high-end графические системы, например SGI, начали использовать более 8 бит на канал, например 12- или 16-бит. Программы профессионального редактирования изображений стали сохранять по 16 бит на канал, предоставляя «защиту» от накапливания ошибок округления, погрешностей при вычислении в условиях ограниченной разрядной сетки чисел.

Для дальнейшего расширения динамического диапазона изображений, включая High Dynamic Range Imaging (HDRI), числа с плавающей запятой позволяют описывать в изображениях наиболее аккуратно интенсивный свет и глубокие тени в одном и том же цветовом пространстве. Различные модели описывают такие диапазоны, применяя более 32 бит на канал. Можно отметить новый Industrial Light & Magic (ILM) формат, использующий 16-битные числа с плавающей запятой, которые позволяют представить цветовые оттенки лучше, чем 16-битные целые числа. Предполагается, что такие схемы представления цвета заменят стандартные схемы, как только аппаратное обеспечение сможет с достаточной скоростью и эффективностью поддерживать новые форматы.

Телевизионный цвет

Аддитивное смешение цветов

Множество современных телевизоров и компьютерных дисплеев отображают изображения варьируя интенсивностью трёх основных цветов: синий, зелёный и красный. Яркий жёлтый, например, является композицией одинаковых по интенсивности красной и зелёной составляющих без добавления синей компоненты. Однако это только приближение, которое не даёт в действительности яркий жёлтый цвет. Именно поэтому последние технологии, как например Texas Instruments BrilliantColor расширяют типовые красные, зелёные и синие каналы новыми: голубым (сине-зелёным), пурпурным и желтым цветами[1]. Mitsubishi и Samsung используют упомянутую технологию в некоторых телевизионных системах.

Подразумевая использование 8-битных каналов 6-цветные изображения кодируются 48-битными цветами.

ATI FireGL V7350 видеоадаптеры поддерживают 40- и 64-битные цвета[2].

Источники

  1. Hutchison, David C. (2006-04-05). "Wider color gamuts on DLP display systems through BrilliantColor technology". Digital TV DesignLine. Дата обращения: 16 августа 2007. {{cite journal}}: Проверьте значение даты: |date= (справка)
  2. [Tony] ATI unwraps first 1GB graphics card. Hardware.co.uk (20 марта 2006). Дата обращения: 3 октября 2006.

См. также