はじめに 先日以下の記事が話題となり、とてもワクワクしたので自分も実装して色々実験してみました。 実装するうちに理解が深まったので一度、 誤差拡散法の元ネタ紹介から 数式の解説、 ED法の弱点、 行列計算を使用した実装と簡単なテスト結果、 実装上の工夫 までまとめてみたいと思います。 誤差拡散(Error Diffusion)法 もともとは画像の2値化において失われる情報を周囲のピクセルで補うことで、遠目に元の画像の濃淡が残っているように見せる技術(ハーフトーン処理の一種)です。 Error diffusion -Wikipedia(英語版) 左の画像をちょうど半分の明るさをしきい値として2値化すると中央の画像のようになりますが、誤差拡散法を適用すると2値化後も右の画像のようにある程度濃淡を保存・表現できます。 誤差拡散法(画像処理)のサンプルコード コメントアウト箇所はFloyd, St