階層化誤差拡散

一気に量子化してそのまま誤差拡散をすると、誤差が大きすぎていまいち綺麗に出なかったので
ちょっとずつ量子化するようにしてみた。


処理量子化bitが目標量子化bitよりも小さい時は伝播する範囲を2の階乗で広げてブロック全体に誤差を配るようにする。


http://takamatsu.cool.ne.jp/tattyu/p55/dither2/


その結果5:5:5bitくらいまではかなり綺麗になったんだけどそれ以下がちょっといまいちな結果になってしまった。



2bitとかむちゃくちゃきたねぇ


ぐぐってみたら似たようなことをやってる人はいるんだけどこれだけじゃ良く分からん。
http://wwwsoc.nii.ac.jp/iieej/trans/HP_WG/jcode/abstract/ab95020.htm


アルゴリズムとか単純なので無いとは思うんだけど、特許とかもしあるなら指摘お願いします。


ちなみに今のプロジェクトで使うのは15,16bitのテクスチャなので5bit量子化で綺麗ならぜんぜん問題なかったりする。