HSV色空間
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/07/16 07:46 UTC 版)
HSVからRGBへの変換
Hが色相を配置した色環に沿って0.0から360.0の範囲で変化する角度で表記され、彩度を意味するS、明度を意味するVがそれぞれ0.0から1.0の間で変化する。このような(H,S,V)値によって定義されたある色が与えられているとするとき、次の式を通してこれに対応する(R,G,B)カラーを決定することができる。
まず、もしSが0.0と等しいなら、最終的な色は無色もしくは灰色である。このような特別な場合、R、G、およびBは単純にVと等しい。上記の通り、この場合Hは無意味となる。
円柱モデルからの変換
円錐モデルからの変換
ソフトウェアでの変換処理
以下の処理を行うことで変換することができる。
※HSV/RGBを0.0~1.0の浮動小数点数で表現した円柱モデルの場合[要検証 ]
// (float h, float s, float v)
float r = v;
float g = v;
float b = v;
if (s > 0.0f) {
h *= 6.0f;
final int i = (int) h;
final float f = h - (float) i;
switch (i) {
default:
case 0:
g *= 1 - s * (1 - f);
b *= 1 - s;
break;
case 1:
r *= 1 - s * f;
b *= 1 - s;
break;
case 2:
r *= 1 - s;
b *= 1 - s * (1 - f);
break;
case 3:
r *= 1 - s;
g *= 1 - s * f;
break;
case 4:
r *= 1 - s * (1 - f);
g *= 1 - s;
break;
case 5:
g *= 1 - s;
b *= 1 - s * f;
break;
}
}
HSV色空間と同じ種類の言葉
- HSV色空間のページへのリンク