小柳です。こんばんは。 どうも文章だと分かりにくいので、数値で考えてみました。 0 から 1 の数値を 0 と 1 で近似することを考えます。 0 と 1 は混ぜ合わせることにより、0, 0.25, 0.5, 0.75, 1 の 5つの数値になります。 I.Tak さんの方法だと、 0 <= x < 0.125 のとき x = 0 0.125 <= x < 0.375 のとき x = 0.25 0.375 <= x < 0.625 のとき x = 0.5 0.625 <= x < 0.875 のとき x = 0.75 0.875 <= x <=1 のとき x = 1 最大誤差は 0.125 です。 川合さんの方法だと、 0 <= x < 0.2 のとき x = 0 0.2 <= x < 0.4 のとき x = 0.25 0.4 <= x < 0.6 のとき x = 0.5 0.6 <= x < 0.8 のとき x = 0.75 0.8 <= x <=1 のとき x = 1 最大誤差は 0.2 です。 でも、最初に使用する数値を、0と 1 から、0.1 と 0.9 に変えれば、 0 <= x < 0.2 のとき x = 0.1 0.2 <= x < 0.4 のとき x = 0.3 0.4 <= x < 0.6 のとき x = 0.5 0.6 <= x < 0.8 のとき x = 0.7 0.8 <= x <=1 のとき x = 0.9 川合さんの方法で最大誤差は 0.1 になり、I.Tak さんの方法より誤差が小さく なります。 つまり、川合さんの減色方法そのものに問題はないと思います。パレットを 正しく選択すれば。 4色を使う場合は、255*1/26, 255*9/26, 255*17/26, 255*25/26 の数値を使って 13区間を塗り分ければ良いことになります。 というのが計算結果ですが、パレットを正しく選択して川合さんの方法を使った 場合の絵は作っていないので作ってみて下さい。>川合さん -- 小柳 雅明(http://homepage1.nifty.com/dreaming/) 「人の足を止めるのは"絶望"ではなく"諦観" 人の足を進めるのは"希望"ではなく"意志"」 -- ARMS