Skip to content

Instantly share code, notes, and snippets.

@rzhukov
rzhukov / rgb_hsi.h
Created February 21, 2014 06:05
RGB to HSI and HSI to RGB color space conversion
inline void HSI2RGB(double h, double s, double i, double* r, double* g, double* b)
{
double x = i * (1 - s);
if(h < 2 * M_PI / 3)
{
double y = i * (1 + (s * cos(h)) / (cos(M_PI / 3 - h)));
double z = 3 * i - (x + y);
*b = x; *r = y; *g = z;
}
else if(h < 4 * M_PI / 3)