|
85 / 77 / 13
Регистрация: 03.09.2009
Сообщений: 346
|
||||||
Как смешать 4 RGB цвета?30.01.2011, 00:58. Показов 9781. Ответов 10
Метки нет (Все метки)
Если нарисовать сетку из чередующихся линий 4-х цветов и посмотреть на нее с некоторого удаления - она сливается в один цвет. Кто знает по какой формуле?
Вот этот метод дает неправильный результат, а других не нашел:
с1 - (0, 255, 0) с2 - (255, 91, 15) с3 - (174, 15, 255) с4 - (255, 240, 242) при смешивании должен получится результат - (213,183,191)
0
|
||||||
| 30.01.2011, 00:58 | |
|
Ответы с готовыми решениями:
10
|
|
(Yellow_Duck)
1261 / 130 / 15
Регистрация: 16.10.2008
Сообщений: 733
|
||||||
| 30.01.2011, 23:39 | ||||||
Добавлено через 12 минут Я проверил, в данном примере, что вы написали, получается более темный цвет, согласно этой функции. Видимо цвета нельзя так смешивать последовательно. Получается (202, 167, 186).
0
|
||||||
|
6 / 6 / 0
Регистрация: 24.11.2010
Сообщений: 25
|
|
| 31.01.2011, 10:29 | |
|
Доброго времени суток
![]() Цвета можно складывать по закону Грассмана. Например: Та=wa1*P1+wa2P2+wa3P3 Тв=wв1*P1+wв2P2+wв3P3 Та + Тв = (wa1 + wb1) * P1 + (wa2 + wb2) * P2 + (wa3 + wb3) * P3 но есть фишка, цветовое пространство RGB, наложено на длинны волн излучения с перекрытием (см. картинку1) Если зафиксировать значение яркости для четырех цветов, предполагая. что источник один, а смешивается отражательная способность предмета, то можно получить: rR + gG + bB = Const rr = rA(r1 + r2 + r3 + r4) gg = gA(g1 + g2 + g3 + g4) bb = bA(b1 + b2 + b3 + b4) rR + gG + bB = rrR + ggG + bbB Множитель можно вынести за цвета, получив универсальную константу rgbC, которая уравновесит все: rR + gG + bB = rgbC (R(r1 + r2 + r3 + r4) + G(g1 + g2 + g3 + g4) + B(b1 + b2 + b3 + b4)) В приведенном выше посте от MadMag, при сложении 2-х цветов пример: возьмем 4 числа 1, 2, 1, 2 если 1 + 2 + 1 + 2 = 6, и 6/4= 1,5 , то (1 + 2 = 3) 3/2 = 1,5 (1,5 + 1 = 2,5) 2,5/2 = 1,25 (1,25 + 2 = 3,25) 3,25/2= 1,625 Как же сложить последовательно цвета, и сохранить яркость? Если мы знаем, что значение цвета в RGB системе цветов, меняется от 0 до 255 то предполагаем минимальную яркость 0, а максимальную 3 * 255 = 765 мы можем нормировать значения, и использовать взвешенные коэффициенты: берем последовательность 1, 2, 1, 2 допустим это R (1/255)R1 + (2/255)R2 = (x/255)R12 -не получается чего-то ![]() х = 3 и та-же фигня. , или нет... (3/255)R12 + (1/255)R3 = (x/255)R123 x = 4 (4/255)R123 + (2/255)R4 = (x/255)R1234 x = 5 просто складывать тоже не дело, яркость суммируется попробуем перемножить: 1/255*2/255= (3,0757400999615532487504805843906e-5) * 1/255 = 1,2061725882202169602943061115257e-7 * 2/255 = 9,460177162511505570935734208045e-10 тоже фигня какая то попробуем приводить к единице R1 + R2 +... =1 тогда (1 + 2)x = 1 x = 1/3 (1+2)x/2= 0.5 (0.5 + 1)x = 1 x = 0,66666666666666666666666666666667 (0.5+1)x/2 = 0.5 (0.5+2)x = 1 x = 0.4 (0.5+2)x/2 = 0.5 Мы получили три числа, о чем они непонятно: 1/3 0,66666666666666666666666666666667 0.4 если использовать как коэффициент, то получим: (1+2)*1/3=1 (1+1)*2/3=4/3 = 1(1/3) (4/3+2)*0,4= 1(1/3) их сумма 1,4 среднее 0,46666666666666666666666666666667 а если (1 + 2)x = 1 x = 1/3 (1+2)x/2= 0.5 2 * (1/3) + 1 = 5/3 = 1,6666666666666666666666666666667 (5/3 + 1)х = 1 х = 3/8 (5/3 +1)х/2 = 1(1/3) 1 * (3/8) + 5/3 = 9/24 + 40/24 = 49/24 = 2 (1/24) Если посмотреть для последовательности 1,2,1,2 описательную статистику, то получим: Mean 1,5 Standard Error 0,288675135 Median 1,5 Mode 1 Standard Deviation 0,577350269 Sample Variance 0,333333333 Kurtosis -6 Skewness 0 Range 1 Minimum 1 Maximum 2 Sum 6 Count 4 Largest(1) 2 Smallest(1) 1 Confidence Level(95,0%) 0,918693116 и сравним ее с последовательностью 1,2,1 Mean 1,333333333 Standard Error 0,333333333 Median 1 Mode 1 Standard Deviation 0,577350269 Sample Variance 0,333333333 Kurtosis #DIV/0! Skewness 1,732050808 Range 1 Minimum 1 Maximum 2 Sum 4 Count 3 Largest(1) 2 Smallest(1) 1 Confidence Level(95,0%) 1,434217577 то ничегошеньки непонятно. Короче я загнался, может, чтото из рассуждений пригодится
0
|
|
|
85 / 77 / 13
Регистрация: 03.09.2009
Сообщений: 346
|
|
| 02.02.2011, 01:57 [ТС] | |
|
Вроде бы в первых двух постах сложение как раз по закону Грассмана, но результат темнее.
В то же время я взял в фотошопе нарисовал многократную последовательность тонких линий 4-х цветов. Взял, уменьшил масштаб так, чтобы картинка слилась в однотонный цвет, сделал скриншот и посмотрел полученный RGB-цвет (см. пост 1). На глаз соответствие хорошее, но как было получено это значение не совсем понятно. Подозреваю, что при смешении как-то нужно учитывать различное ощущение яркости между R, G и B. Т.е. (0,0,255) кажется темнее, чем (0,255,0), хотя по правилам они одинаковы по яркости.
0
|
|
|
240 / 218 / 46
Регистрация: 17.04.2010
Сообщений: 526
|
||||
| 02.02.2011, 11:35 | ||||
|
Ключевой момент
0
|
||||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
| 03.02.2011, 07:44 | |
|
Кто объяснит такую загадку: цвет 0000FF на глаз темнее, чем 00FF00, но FFFFFF на глаз белый?
0
|
|
|
6 / 6 / 0
Регистрация: 24.11.2010
Сообщений: 25
|
|
| 03.02.2011, 08:49 | |
|
Зачем смешивать восприятие и физические величины. Ощущение света. вообще субъективно, колбочки палочки, и прочие биологические вещи. Инфракрасное, и ультрафиолетовое излучение, вообще не видно, однако и интенсивность, и яркость у них есть.
0
|
|
|
240 / 218 / 46
Регистрация: 17.04.2010
Сообщений: 526
|
|
| 03.02.2011, 10:10 | |
|
taras atavin, это не загадка, а аддитивная цветовая модель.
0
|
|
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
| 04.02.2011, 08:39 | |
|
Про аддитивность я знаю. Мне не ясно, почему при при смешении основных цветов, воспринимаемых, как цвета различной яркости результирующий цвет не имеет зеленоватого оттенка.
0
|
|
|
I ♥ C#
470 / 262 / 25
Регистрация: 07.05.2010
Сообщений: 567
|
|
| 04.02.2011, 11:40 | |
|
Шестнадцатеричная RGB-запись цвета не имеет ничего общего с длинами волн и их интенсивностью воздействия на определенные колбочки глаза человека. Ну то есть, связь-то конечно есть, но она не такая линейная и очевидная, как FF0000 + 00FF00 + 0000FF = FFFFFF.
Ссылки по теме: http://ru.wikipedia.org/wiki/Зрение_человека http://ru.wikipedia.org/wiki/Колбочки http://ru.wikipedia.org/wiki/Метамерия_(цвет) http://ru.wikipedia.org/wiki/LAB
0
|
|
|
240 / 218 / 46
Регистрация: 17.04.2010
Сообщений: 526
|
|
| 04.02.2011, 12:02 | |
|
0
|
|
| 04.02.2011, 12:02 | |
|
Помогаю со студенческими работами здесь
11
Как в DBChart добавить цвета RGB? Как отсканировать Picturebox и получить цвета по RGB?
Как переделать код чтоб использовать RGB цвета, а не стандартные? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Рецензия / Мнение/ Перевод
Сайт называется reddit: The Thinkpad X220 Tablet is the best budget school laptop period.
Это. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|