Значения RGB видимого спектра.

Мне нужен алгоритм или функция для сопоставления каждой длины волны видимого диапазона спектра с ее эквивалентными значениями RGB. Есть ли структурная связь между системой RGB и длиной волны света? как это изображение: alt text
(source: kms at www1.appstate.edu)

sorry if this was irrelevant :-]

40
задан Glorfindel 4 August 2019 в 21:10
поделиться

3 ответа

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

См. http://en.wikipedia.org/wiki/HSL_and_HSV для математических расчетов и обратите внимание, что вам нужно будет придумать наилучшее предположение для отображения Hue ⇔ Frequency. Я ожидаю, что это эмпирическое отображение не будет линейным.

8
ответ дан 27 November 2019 в 01:35
поделиться

Partial «Приблизительные значения RGB для видимых длин волн»

Предоставлено: Дэн Брутон - Наука о цвете

Исходный код FORTRAN @ ( http://www.physics.sfasu.edu/astro/color/spectra.html )

Возвращается гладко (непрерывно ) спектр, тяжелый на красной стороне.

w - длина волны, R, G и B - компоненты цвета

Игнорирование гаммы и интенсивности, простые листья:

if w >= 380 and w < 440:
    R = -(w - 440.) / (440. - 380.)
    G = 0.0
    B = 1.0
elif w >= 440 and w < 490:
    R = 0.0
    G = (w - 440.) / (490. - 440.)
    B = 1.0
elif w >= 490 and w < 510:
    R = 0.0
    G = 1.0
    B = -(w - 510.) / (510. - 490.)
elif w >= 510 and w < 580:
    R = (w - 510.) / (580. - 510.)
    G = 1.0
    B = 0.0
elif w >= 580 and w < 645:
    R = 1.0
    G = -(w - 645.) / (645. - 580.)
    B = 0.0
elif w >= 645 and w <= 780:
    R = 1.0
    G = 0.0
    B = 0.0
else:
    R = 0.0
    G = 0.0
    B = 0.0
10
ответ дан 27 November 2019 в 01:35
поделиться

Это большая часть того, с чем имеют дело цветовые профили . По сути, для данного устройства (сканер, камера, монитор, принтер и т. Д.) Цветовой профиль сообщает, какие фактические цвета света будут воспроизводиться определенным набором входных сигналов.

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

Без цветового профиля (или эквивалентной информации) вам не хватает информации, необходимой для сопоставления значений RGB с цветами. Значение RGB чистого красного обычно соответствует самому красному цвету, который устройство способно воспроизводить / распознавать (и аналогично, чистый синий - самому синему цвету), но этот «самый красный» или «самый синий» может и будет варьироваться (в широких пределах) исходя из устройства.

4
ответ дан 27 November 2019 в 01:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: