Белый цвет — это 0 или 255?

Белый цвет — интересный цвет с точки зрения цифрового представления. В вычислениях цвета часто представляются с помощью цветовой модели RGB, которая определяет цвет с точки зрения его красного, зеленого и синего компонентов. Каждый компонент представлен числом от 0 до 255, где 0 представляет отсутствие интенсивности этого цвета, а 255 представляет полную интенсивность. Так какое же число представляет белый цвет — 0 или 255? Ответ заключается в том, что оба могут представлять белый цвет в зависимости от контекста.

Понимание цвета RGB

Давайте сначала разберемся, как работает цветовая модель RGB. Значение цвета RGB записывается как (R, G, B), где R, G и B — целые числа от 0 до 255, представляющие красный, зеленый и синий компоненты соответственно. Например:

Цвет Значение RGB
Красный (255, 0, 0)
Зеленый (0, 255, 0)
Синий (0, 0, 255)

Смешивая разное количество красного, зеленого и синего света, мы можем получить большинство цветов, которые может воспринимать человеческий глаз. Например, равное количество красного, зеленого и синего света дает белый цвет:

(255, 255, 255)

Это представляет полную интенсивность красного, зеленого и синего света, смешанного вместе. Сложение света всех цветов дает белый цвет.

0 представляет черный цвет

В цвете RGB 0 представляет отсутствие света. Поэтому (0, 0, 0) представляет черный цвет:

Цвет Значение RGB
Черный (0, 0, 0)

Без интенсивности красного, зеленого или синего света результат будет черным.

Так что в этом смысле 0 представляет белый цвет — отсутствие всякого света.

255 представляет белый

Но мы также видели ранее, что (255, 255, 255) представляет белый цвет. Здесь 255 используется для представления максимальной интенсивности красного, зеленого и синего света, сложенных вместе.

Так что в этом смысле 255 представляет белый цвет, когда речь идет об объединении полной интенсивности всех цветов света.

Это зависит от битовой глубины

То, представляет ли 0 или 255 белый цвет, также зависит от битовой глубины, используемой для представления каждого цветового канала. Например:

Битовая глубина на канал Максимальное значение
8 бит 255
16 бит 65 535

При 8 битах на канал максимальное значение равно 255. Но при 16 битах на канал максимальное значение намного выше — 65 535.

Таким образом, в 8-битном цветовом пространстве RGB 255 представляет полную интенсивность и, следовательно, белый цвет. Но в 16-битном цветовом пространстве RGB 65 535 будет представлять белый цвет.

Количество бит, используемых для каждого цветового канала, определяет максимально возможное значение. Таким образом, значение, представляющее «белый», зависит от этой битовой глубины.

0 часто представляет черный

Вкратце:

  • 0 обычно представляет отсутствие света или черный цвет в цвете RGB.
  • 255 (или максимальное значение) представляет полную интенсивность красного, зеленого и синего света вместе взятых или белый цвет.
  • Конкретное значение, представляющее белый цвет, зависит от битовой глубины, используемой для каждого цветового канала.

Таким образом, хотя и 0, и 255 могут представлять белый цвет в разных контекстах, 0 чаще ассоциируется с черным цветом в цвете RGB. А 255 (или максимальное значение) чаще ассоциируется с белым в цветовом пространстве RGB с глубиной цвета 8 бит на канал.

Примеры в программах для работы с изображениями

Вот несколько примеров того, как белый и черный представлены в обычных программах для редактирования и обработки изображений:

Adobe Photoshop

Цвет Значение RGB
Черный (0, 0, 0)
Белый (255, 255, 255)

По умолчанию Photoshop использует цвет RGB с глубиной цвета 8 бит на канал. Таким образом, черный цвет — это (0, 0, 0), а белый — это (255, 255, 255).

OpenCV

OpenCV представляет интенсивность пикселей в диапазоне от 0 до 255. 0 представляет черный цвет, а 255 представляет белый цвет.

Цифровые изображения

Большинство цифровых изображений используют 8-битный цвет RGB. Таким образом, 0 — это черный цвет, а 255 — это белый цвет полной интенсивности. JPEG и PNG следуют этому соглашению.

CSS/HTML

В CSS и HTML черный цвет определяется как rgb(0, 0, 0), а белый — как rgb(255, 255, 255). Снова следуя соглашениям 8-битного RGB.

Когда 0 будет представлять белый цвет?

Есть некоторые случаи, когда 0 может представлять белый цвет в цвете RGB:

  • В цветовом пространстве RGB с более высокой битовой глубиной, таком как 16-битный RGB, 0 может представлять белый цвет, если это максимальное значение.
  • В инвертированных интенсивностях пикселей, где 0 переназначается на максимальное значение.
  • В цветоразностных представлениях, таких как Y'UV, где (0, 0, 0) представляет текущую белую точку.

Но эти случаи встречаются реже, чем стандартный 8-битный RGB. Поэтому в большинстве случаев 0 будет представлять черный цвет, а 255 (или максимальное значение) будет представлять белый цвет.

Заключение

Подводя итог, можно сказать, что хотя и 0, и 255 могут представлять белый цвет в цвете RGB, соглашения таковы:

  • 0 обычно представляет черный цвет или отсутствие света.
  • 255 (или максимальное значение) обычно представляет белый цвет или полную интенсивность красного, зеленого и синего цветов вместе.
  • Конкретное значение, отображаемое на белый цвет, зависит от битовой глубины на канал.

Поэтому в большинстве современных приложений цифровой обработки изображений, использующих 8-битный цвет RGB, 0 представляет черный цвет, а 255 представляет белый цвет. Интерпретация зависит от контекста и используемого цветового пространства. Но 0 как черный цвет и 255 как белый цвет является наиболее распространенным соглашением.