Вопрос: Как цвета заполняются бит i.e либо 1 или 0? [закрыто]


Этот вопрос просто из любопытства, и я попытался его найти. Но большая часть сайта говорит о двоичном представлении и 256 комбинациях в 8 бит. Это я уже знаю. Я знаю, что у RGB есть комбинации (255, 255, 255). Но просто рассмотрим R с 255 комбинациями от черного до белый. Как компьютер генерирует красный цвет только из-за электричества. Или это цвет, заполненный трубами экрана или монитора, которые используются для отображения? Также, если RGB принимает (255, 255, 255) комбинаций, значит, это означает, что RGB занимает 3 байта цветовой комбинации. Заранее спасибо за решение вопроса?


-1
2018-06-15 14:17


Источник


В общем, это зависит от того, какую библиотеку вы используете для загрузки изображения (например, формат по умолчанию SDL-поверхности - 32-разрядный ARGB (без запаса без альфа-канала), тогда как OpenCV использует упакованный 24-битный формат RGB, что затрудняет 32-битный согласованный доступ без предварительной обработки данных пикселя). - Breakthrough
@Tog Я уже отметил правильный ответ, что хотел. Человек, который дал ответ, уже понял, о чем я просил. Тогда как может быть непонятен вопрос? - rash.tay


Ответы:


Внутри компьютера каждый пиксель хранится как триплет RGB, каждый со значением (обычно от 0 до 255). Это 8-битные значения, что означает, что каждый из них представлен комбинацией из восьми 1 и 0 (как вы уже знаете). Потому что есть 3 цвета, и каждый из них представлен 8 битами, что приводит к сумме 24-битных цветов (следовательно, 24-разрядных изображений) или 3 байта на пиксель.

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

Для цифровых систем отображения (DVI, HDMI и т. Д.) Бинарные данные отправляются на экран для интерпретации. Для аналоговых систем (VGA) интерпретация выполняется самим компьютером и результатами, отправленными на дисплей.

Интерпретация в основном преобразует каждый из 3 байтов в напряжение. Это делается с помощью устройства, называемого ЦАП, или цифроаналогового преобразователя. Он принимает двоичное значение, которое представляет от 0 до 255 и выводит дискретное напряжение для каждого другого значения. Так, например, двоичное значение 0 может выводить напряжение 0 В. Бинарное значение 255 может выводить напряжение 5 В. Следовательно, двоичное значение 93 будет выводить напряжение 1,823529412 В.

Обычно используются три модуля ЦАП, по одному для каждого цвета, а полученные напряжения используются дисплеем для управления яркостью этого конкретного пикселя. В старой ЭЛТ используется для установки интенсивности электронного пучка. В TFT используется для установки непрозрачности субпикселя (из которых обычно 3 - один красный, один зеленый и один синий).

Обычно экраны TFT не могут отображать полный диапазон цветов 0-255 с 8-разрядными деталями, поэтому часто вы получаете меньше фактических отображаемых цветов. 256K цветов или 18 бит, являются общими для TFT, тогда как CRT способны отображать полный 24-битный диапазон. Также можно получить (если вы платите десятки тысяч долларов) мониторы «HDRI» (High Dynamic Range Imagery), которые способны отображать больше, чем обычные 18- или 24-битные детали цвета, но они очень редки и используется только для конкретных высокопроизводительных рабочих мест.


2
2018-06-15 15:41



Хех, спасибо. Это помогает, что я построил VGA-карту с нуля с помощью микроконтроллера;) - Majenko
@ Маженко Fabulous .. Именно то, что я искал. - rash.tay