Алгоритм RGB To HSL?
Я видел много алгоритмов и формул для преобразования данных RGB в HSL, но ни один из них не был успешным.
Так где же взять несколько алгоритмов / формул для конвертации.
2 ответа
Если производительность не критична, приведенная выше ссылка является хорошим примером.
Если вам нужно, чтобы это было в несколько раз быстрее, чем реализация C, описанная выше, вы можете сделать это с помощью инструкций SSE. Пример RGB для HSV находится в ahsv_from_argb_sse2
функция в: (РЕДАКТИРОВАТЬ: Обновленная ссылка)
https://github.com/kobalicek/simdtests/blob/master/rgbhsv/rgbhsv_sse2.cpp
Преобразование в HSL не сильно отличается. Вы можете увидеть разницу в коде по адресу:
http://ariya.blogspot.com/2008/07/converting-between-hsl-and-hsv.html
Используйте этот алгоритм easyrgb.com/index.php?X=MATH&H=18#text18
Отлично работает.