「グレースケール変換」の版間の差分
imported>Administrator 編集の要約なし |
imported>Administrator 編集の要約なし |
||
| 1行目: | 1行目: | ||
グレースケール変換とは、カラー画像をクレースケール画像に変換する処理をいう。 | |||
一般的にグレースケールは「輝度を一定の数値範囲に丸め込んだもの」なので、「[[輝度]]」を求める計算式とほぼ同じである。 | |||
== Rec.709輝度値を使った方法 == | == Rec.709輝度値を使った方法 == | ||
[[PC]]におけるRGBで表現されるカラー画像をグレースケール画像に変換する方法の中でももっとも手軽だとされている方法がこれ。輝度値が[[Rec. 709]]に準拠している場合に使用できる。よほど特殊な[[コンピューター]]でもない限り準拠している。 | [[PC]]におけるRGBで表現されるカラー画像をグレースケール画像に変換する方法の中でももっとも手軽だとされている方法がこれ。輝度値が[[Rec. 709]]に準拠している場合に使用できる。よほど特殊な[[コンピューター]]でもない限り準拠している。 | ||
2019年9月24日 (火) 05:59時点における版
グレースケール変換とは、カラー画像をクレースケール画像に変換する処理をいう。
一般的にグレースケールは「輝度を一定の数値範囲に丸め込んだもの」なので、「輝度」を求める計算式とほぼ同じである。
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