2014-01-21 2 views
0

У меня есть список названий цветов:Перевести HTML цвета HSV

bunchofcolornames = [ 
      "aliceblue", 
      "antiquewhite", 
      "aqua", 
      "cyan"] #this list is actually much longer... 

Для моих Matplotlib участков, я хочу, чтобы выбрать те, которые появляются довольно темно на белом фоне. Для этого я хотел бы получить значение оттенка в представлении HSV этого имени цвета. Как это сделать лучше всего?

+0

В «оттенке, насыщенности, значении» нет тени. Вы хотите, чтобы вы ценили ценность? –

+1

Надеюсь, вы планируете его правильно реализовать и в том числе [унаследованное поведение netscape] (http://stackoverflow.com/questions/8318911/why-does-html-think-chucknorris-is-a-color) ... – will

+0

Да , Я испортил это ... – asPlankBridge

ответ

0

Проверьте комплект color, который поддерживает преобразование имен цветов в HSL.

+0

Хотя пакет 'color' действительно соответствует требованиям OP, вы могли бы предоставить небольшой пример, показывающий, как эта библиотека обеспечивает именно этот перевод. Как бы то ни было, ваш ответ мог быть комментарием, поскольку он содержит не что иное, как ссылку. –

1

Я не знаю, питона, но я могу ответить на этот язык агностик часть этого:

Значение часть RGB в HSV является наиболее простой частью; это максимум компонентов R, G и B, разделенных на 255,0. (Представления HSL и HSI несколько отличаются, когда HSL усредняет самый большой и наименьший из трех компонентов RGB, а HSI усредняет все три).

Для прогнозирования контраста вам может быть полезно использовать luma, который для цветового пространства sRGB равен R ÷ 255.0 × 0.21 + G ÷ 255.0 × 0.72 + B ÷ 255.0 × 0.07. Для других цветовых пространств он немного отличается (например, с телевизорами NTSC это R ÷ 255.0 × 0.3 + G ÷ 255.0 × 0.59 + B ÷ 255.0 × 0.11), но для того, чтобы угадать, сочетаться ли с черным или белым, просто придерживаться sRGB следует дать разумные результаты.

Смежные вопросы