Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Теория - [решено] Нахождение близости цвета к белому/черному

Ответить
Настройки темы
Теория - [решено] Нахождение близости цвета к белому/черному

Старожил


Сообщения: 198
Благодарности: 51


Конфигурация

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: png anti-darkness.png
(51.1 Kb, 6 просмотров)
Добрый день.
Возникла такая задача: необходимо надписать цветной сплошно закрашенный объект белым/черным цветом в зависимости от темноты закраски, таким образом, чтоб надпись была хорошо читаема.
То есть например, синий надо подписать белым, а желтый черным. В противном случае надпись не будет различима.
Проблема состоит в том, как определить является ли объект светлым или темным.
Изначально пробовал перевести в hsl (нормированную) и посмотреть его светлость (l). Но таким способом получается, что его светлость равна 0.5 для всех комбинаций содержащей одну или две единицы (в rgb). То есть желтый и синий одинаково близки к черному, что не так. Что-то я не делаю не так, но не понимаю что.
Вопрос в том, как же решить данную задачу?
Заранее благодарен.

Отправлено: 00:30, 18-07-2012

 

Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


А если посмотреть в сторону RGB цвета? однозначно ведь будет понятно, что 255,255,255 - это белый, а 0,0,0 - черный. И в зависимости от чисел вывести закономерность и печатать?

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)


Отправлено: 01:13, 18-07-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Не хотите посмотреть в сторону LAB:

Это сообщение посчитали полезным следующие участники:

Отправлено: 02:05, 18-07-2012 | #3


Аватара для CyberDaemon

DOOMer


Сообщения: 3254
Благодарности: 438

Профиль | Отправить PM | Цитировать


Как вариант что-нибудь типа
(11*R+30*G+59*B)/100 и посмотреть, к чему ближе результат.

-------
"640 K ought to be enough for anybody" Bill Gates, 1981


Отправлено: 06:56, 18-07-2012 | #4


Старожил


Сообщения: 154
Благодарности: 39

Профиль | Отправить PM | Цитировать


вы знаете - желтый (255.255.0) имеет HSL (60.100.100), синий (0.0.255) имеет HSL (240.100.100) и это значит что они одинаково далеки как от белого так и черного.
а разные они потому что желтый и синий сами по себе ближе и дальше от черного как цвет, не осветленный и не затемненный. Вот тут на рисуночке это очень хорошо показано - там внешний круг - цвета, внутренний - отношение к черному.
как определить точное отношение цвета к черному? попробуйте в paint.net залить квадрат, а затем применить операцию перехода в "серую" палитру - должно помочь

Отправлено: 07:00, 18-07-2012 | #5


Старожил


Сообщения: 198
Благодарности: 51

Профиль | Отправить PM | Цитировать


Спасибо всем откликнувшимся. Решил остановиться на совете Iska (особое спасибо за наглядность). Перевожу RGB в Lab, и сравниваю параметр L c 50, если меньше считаю цвет темным (подписываю белым), иначе светлым (подписываю черным). Тему считаю решенной.

Отправлено: 17:21, 18-07-2012 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Теория - [решено] Нахождение близости цвета к белому/черному

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Нахождение суммарного объема файлов XFNeo Скриптовые языки администрирования Windows 5 11-12-2011 15:56
CMD/BAT - [решено] нахождение txt. Чин Хон Скриптовые языки администрирования Windows 8 21-01-2011 12:05
CMD/BAT - Нахождение и выбор папки и её копирование ikif Скриптовые языки администрирования Windows 1 30-12-2010 12:01
Житель Нью-Йорка строит ядерный реактор в близости от жилых кварталов OSZone News Новости информационных технологий 5 01-07-2010 16:19
Теория - Нахождение внутренних углов в многоугольнике mrcnn Программирование и базы данных 8 01-06-2008 14:51




 
Переход