0

そこで、アルゴリズムを使用してargb値を変更することにより、画像を手動で白黒に変換するプロジェクトがあります。RGB値を平均化してみたところ、ほぼ完全にグレースケールの画像が得られましたが、まだ色のヒントが残っています。aRGBのピクセルを手動でグレースケールに変換するアルゴリズムの例はありますか?

これは私がこれまでやってきたことです:

            //Apply the filter
            reds = ((reds+greens+blues)/3);
            greens = ((reds+greens+blues)/3);
            blues = ((reds+greens+blues)/3);
4

2 に答える 2

4

右側の入力を変更しているように見えますが、その値は一定のままです。これを使ってみませんか?

reds = (reds + greens + blues) / 3;
greens = reds;
blues = reds;
于 2013-02-24T15:00:26.333 に答える
2

私は常に、赤、緑、青の波長に対する目の感度が異なるため、グレースケールは次のように計算する必要があるという印象を受けてきました。

(int) (0.299 * red + 0.587 * green + 0.114 * blue)

何年も前は、これは簡単に見つけられる情報でしたが、今ではあまりにも多くの情報源を見つけることができません。 ウィキペディアのグレースケールに関するエントリは 1 つです。

于 2013-02-24T20:20:45.377 に答える