RGBからグレースケールに変換するのに多くの公式を使用しましたが、GIMPに比べて良い結果は得られませんでした。CでRGBからグレースケールに変換
は、私はすでに次の式をテストした:
gray = (int)(0.299 * r + 0.587 * g + 0.144 * b);
gray = (int)(0.299 * r + 0.587 * g + 0.114 * b);
gray = (int)(0.2126 * r + 0.7152 * g + 0.0722 * b);
gray = (int) (0.35*r + 0.50*g + 0.15*b);
gray = ((r * 61) + (g * 174) + (b * 21))/256;
gray = (int)((4897 * r + 9617 * g + 1868 * b) >> 14);
gray = r; if(g > gray) gray = g; if(b > gray) gray = b;
プログラミングの質問よりも。つまり、GIMPはオープンソースなので、それが何をしているのか見てみましたか? – Useless
'libgimp'を使ってあなたのためにやることはできませんか? – teppic
目は緑色で感度が最大であるため、第1または第4の式のように見えます。 –