?? rgb2hsi.cpp
字號:
/********************************************************************
* 函數(shù)名稱:rgb2hsi
* 功能:實現(xiàn)rgb到hsi的轉(zhuǎn)換
* 參數(shù):hsi - 長度為3的雙精度數(shù)組
* rgb - 長度為3的雙精度數(shù)組
*******************************************************************/
void rgb2hsi(double *hsi, double *rgb)
{
double& R = rgb[0];
double& G = rgb[1];
double& B = rgb[2];
double& H = hsi[0];
double& S = hsi[1];
double& I = hsi[2];
double min = R;
if (G < min)
min = G;
if (B < min)
min = B;
I = (R+G+B)/3.0;
S = 1 - min/I;
if (S == 0.0)
{
H = 0.0;
}
else
{
H = ((R-G)+(R-B))/2.0;
H = H/sqrt((R-G)*(R-G) + (R-B)*(G-B));
H = acos(H);
if (B > G)
{
H = 2*PI - H;
}
H = H/(2*PI);
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -