|
1 / 1 / 1
Регистрация: 18.06.2008
Сообщений: 329
|
|
Определение цвета: белый или черный?31.01.2012, 11:06. Показов 5600. Ответов 39
Метки нет (Все метки)
Есть у меня фон, оперделяемый юзером. Как прикинуть его яркость по RGB, например, чтобы принять решение печатать мне на нем белым или черным.
Т.е фон темный или светлый? Ясен перец, что просто просуммировать составляющие RGB нельзя, ибо "G" в яркость вносит гораздо больший вклад, чем "B". Кстати, может есть пример, как сами винды определяют цвет подписи (Ч или Б) к иконкам на рабочем столе, в зависимости от выбранной юзером заливки?
0
|
|
| 31.01.2012, 11:06 | |
|
Ответы с готовыми решениями:
39
При игре пропадает изображение на мониторе и появляется белый или другого цвета экран Найти вероятность вытащить белый и черный шары |
|
1 / 1 / 1
Регистрация: 18.06.2008
Сообщений: 329
|
||
| 02.02.2012, 14:17 [ТС] | ||
|
Нет, не работает
((
А для глаза это неправильно. Глаз - нелинейный приемник. Я о чем и толкую: попробуйте рисовать [bold]белым[/bold] по RGB (0,255,0)... Винды, кстати, там подставляют черный.
0
|
||
|
6 / 6 / 3
Регистрация: 17.10.2007
Сообщений: 1,119
|
|
| 02.02.2012, 14:36 | |
|
Letter D,
Все, я "give up". Но ведь я и предупреждал, что HSL.L может быть недостаточно. Нужна, видимо, эмпирическая формула завязывающая HSL.L, HSL.S и HSL.H. Если не найдете, попробуйте спросить Микрософт. Там ребята крутые. VladConn
0
|
|
|
0 / 0 / 0
Регистрация: 07.06.2009
Сообщений: 9
|
||||||
| 06.02.2012, 00:41 | ||||||
|
Вот что придумал.
Вроде работает как в винде =)
0
|
||||||
|
0 / 0 / 0
Регистрация: 07.06.2009
Сообщений: 9
|
||||||
| 06.02.2012, 00:43 | ||||||
0
|
||||||
|
0 / 0 / 0
Регистрация: 07.06.2009
Сообщений: 9
|
||||||
| 06.02.2012, 00:46 | ||||||
|
Извиняйте за флейм, но вот этот код короче:
0
|
||||||
|
0 / 0 / 0
Регистрация: 07.06.2009
Сообщений: 9
|
||||||
| 06.02.2012, 01:04 | ||||||
|
Ошибка в прошлой месаге.
Блин полчему тут нельзя удалять свои месаги ??? Вот последняя правильная версия кода:
Нехотел честно.
0
|
||||||
|
0 / 0 / 1
Регистрация: 29.05.2009
Сообщений: 52
|
|
| 06.02.2012, 10:42 | |
|
Я думаю нужно RGB переводить в LAB. Для того чтобы проще понимать можно запустить Photoshop и в нём в RBG выбирать цвет и он сразу показывает результат в HSB, LAB, CMYK.
Пример: #00FF00 - LAB: L 88, A -79, B 81 #FFFFFF - LAB: L 100, A 0, B 0 RGB: R 25, G 128, B 0 - LAB: L 47, A -45, B 49 L в LAB это яркость (диапазон 0-100). Соответственно если она больше 50, то рисуем черным, иначе белым. А есть ещё хороший линк: Color Conversion Formulas http://www.easyrgb.com/math.html
0
|
|
|
1 / 1 / 1
Регистрация: 18.06.2008
Сообщений: 329
|
|
| 06.02.2012, 11:45 [ТС] | |
|
Dederer, да в фотошопе это легко посмотреть, а в VB??
)SCINER, спасибо, но эти коэффициенты уже выложил Mz@2... А код их обработки мне не нужен, уж сам разберусь ) З.Ы. И все-таки меня смущает, што зависимость яркости от RGB с коэффициентами линейная. Ибо если взять яркости каждого из них (чистого цвета) отдельно, и просуммировать, то получится более 100%... Смущает это меня...
0
|
|
|
Train
|
|
| 06.02.2012, 12:10 | |
|
Может Mz@2 разъяснит откуда беруться такие коэффициэнты,
и почему сумма превышает 1? |
|
|
1 / 1 / 1
Регистрация: 18.06.2008
Сообщений: 329
|
||
| 06.02.2012, 12:32 [ТС] | ||
В фотошопе та же фигня. Вот я и думаю, что какая-то нелинейная зависимость (не просто суммирование) должна быть.
0
|
||
|
Train
|
|
| 07.02.2012, 18:15 | |
|
А что фотошоп?
|
|
|
1 / 1 / 1
Регистрация: 18.06.2008
Сообщений: 329
|
|
| 07.02.2012, 18:27 [ТС] | |
|
Яркость чиста красного (FF0000) - 54%
зеленого (00FF00) - 88% синего (0000FF) - 30% Яркость белого, догадываетесь? ) - 100%
0
|
|
|
6 / 6 / 3
Регистрация: 17.10.2007
Сообщений: 1,119
|
|
| 07.02.2012, 19:04 | |
|
Esli fonovij zvet vibiraetsya tol'ko iz gotovoj palitri, to mozhno prostim "select case" ili cherez Dictionary tupo vbit' - belij/chernij.
0
|
|
|
6 / 6 / 3
Регистрация: 17.10.2007
Сообщений: 1,119
|
|
| 07.02.2012, 19:06 | |
|
Ya sdelal vash zapros na odnom iz britanskix forumov: tam rebyatki tozhe zakisli.
0
|
|
|
0 / 0 / 0
Регистрация: 07.06.2009
Сообщений: 9
|
|
| 08.02.2012, 14:43 | |
|
Так ведь я уже привел рабочий код.
Чем он Вас не устраивает ??? Вроде Всегда правильно цвет подбирает =?
0
|
|
|
6 / 6 / 3
Регистрация: 17.10.2007
Сообщений: 1,119
|
|
| 08.02.2012, 22:26 | |
|
SCINER
Ya poproboval vash kod s vbRed: font poluchaetsya belij. Vrode chernij polojhen. vladconn
0
|
|
|
6 / 6 / 3
Регистрация: 17.10.2007
Сообщений: 1,119
|
|
| 08.02.2012, 22:29 | |
|
Vprochem, ne znayu: i tak xorosho i tak xorosho.
0
|
|
|
1 / 1 / 1
Регистрация: 18.06.2008
Сообщений: 329
|
||
| 09.02.2012, 11:09 [ТС] | ||
)...КОД Я САМ НАПИШУ! Не проблема. А вот коэффициенты и их линейная зависимость вызывает сомнение, поэтому дискусцыя продолжается.
0
|
||
|
1 / 1 / 1
Регистрация: 18.06.2008
Сообщений: 329
|
|
| 09.02.2012, 11:22 [ТС] | |
|
Впрочем, работа по коэффициентам меня вполне устраивает, да и похоже, она правильно отрабатывает, поэтому вопрос по яркости (ну её в ж...) я снимаю.
Всем спасибо.
0
|
|
|
1 / 1 / 0
Регистрация: 22.04.2011
Сообщений: 47
|
|
| 13.02.2012, 23:33 | |
|
Я не совсем понял, что значит "больше 1". Вот моя формула:
Y = 0.299*R + 0.587*G + 0.114*B 0.299 + 0.587 + 0.114 = 1.000 !!! Для белого (R=255;G=255;B=255) формула дает Y=255, соответственно, для черного, Y=0. для различных цветов преобразование выглядит сл. образом: 1) Y = 0.299*R0+0.587*G0+0.114*B0 2) R1 = G1 = B1 = Y и у нас в итоге соответсвующий серый цвет, а там уж по вкусу в черно-белый. А формула (коэффициенты) - когда-то увлекался радиоэлектроникой, в т.ч. и телевидинием, в общем, из теории телевидения.
1
|
|
| 13.02.2012, 23:33 | |
|
Изменить в другой программе белый текст на черный
В приложениях белый фон поменялся на черный. и пропала контрастность в шрифтах metro
Сколькими способами можно выбрать на шахматной доске два квадрата – белый и черный? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет
Новости компьютерного мира и их обсуждение (4)
Салют, шампанское, овации!
:drink:
|
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр.
Дословно, отклонённая. . .
|
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы
Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
|
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
|
|
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2.
Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
|
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
|
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
|
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
|