0

次のような画像ピクセル データを取得しています。

var p = c.getImageData(x, y, 1, 1).data;
var red = p[0];
var green = p[1];
var blue p[2];

申し訳ありませんが、私の質問はコードに関するものではありません.RGBのどの範囲が青色と見なされますか? (たとえば、赤い色は青い色でも構成されている場合がありますが、私たちはそれを赤と呼んでいます。どのように決定すればよいでしょうか?)

4

1 に答える 1

6

180 から 300 までの色相範囲の色は、支配的な原色であるため、青と見なすことができます。ただし、二次色も考慮する場合、範囲は 210 から 270 です。次に、「まだシアンに見える」(緑は青よりも知覚的にはるかに明るいため) などを考慮に入れる必要があります。厳密な定義はありません。

したがって、「if( max( red, green, blue) == blue) then it is blue」と言うことができ、誰もあなたを責めることはできません。

于 2013-07-16T07:45:51.290 に答える