グレースケール変換

提供: MonoBook
2019年9月24日 (火) 05:59時点におけるimported>Administratorによる版
ナビゲーションに移動 検索に移動

グレースケール変換とは、カラー画像をクレースケール画像に変換する処理をいう。

一般的にグレースケールは「輝度を一定の数値範囲に丸め込んだもの」なので、「輝度」を求める計算式とほぼ同じである。

Rec.709輝度値を使った方法

PCにおけるRGBで表現されるカラー画像をグレースケール画像に変換する方法の中でももっとも手軽だとされている方法がこれ。輝度値がRec. 709に準拠している場合に使用できる。よほど特殊なコンピューターでもない限り準拠している。

グレースケール変換用の輝度値

R = 0.2126
G = 0.7152
B = 0.0722

ピクセルRGB値と上記のRec709輝度値のドット積をとるとグレースケールになる。

const float3 luma = float3(0.2126, 0.7152, 0.0722);
loop (全ピクセル) {
    float  gray = dot(color.rgb, luma);
}

Rec. 601輝度値を使った方法

アナログテレビの時代はちょっと違った。

グレースケール変換用の輝度値

R = 0.299
G = 0.587
B = 0.114

関連項目