誤差拡散法(2)

8月 27, 2012 by · Leave a Comment
Filed under: Coding の素 
Bookmark this on Delicious
[`livedoor` not found]
[`yahoo` not found]

前回は誤差拡散法の概観を見ました。
今回は誤差の拡散(差分値の振り分け)はどのようなアルゴリズムでおこなわれるのか、その種類を見てみます。
いきなり wonderfl 投稿コードから。それぞれのボタンをクリックすると、それぞれのアルゴリズムに基づいた結果を表示します。

Error Diffusion – wonderfl build flash online

併せて、英語版ウィキペディアの "Dither" のだいぶ下の方に各種の誤差拡散法で2値化した画像がずらっと並んでいることもお知らせします(ディザ法によるものが上段、中段と下段に誤差拡散法によるものが4種類ずつ計8種類示されています)。

Read more

誤差拡散法(1)

8月 23, 2012 by · Leave a Comment
Filed under: Coding の素 
Bookmark this on Delicious
[`livedoor` not found]
[`yahoo` not found]

カラーイメージを2値化しながらも、自然な濃淡を感じさせる手法ハーフトーニング。
それを実現するための2つの方法のうちの2つ目、誤差拡散法について見てみます。

前々回見たディザ法のうちの「組織的ディザ法」というのは、名が体を表していないのではないか、ということを述べましたが、この誤差拡散法ってのもの、ちょっとどうかと思う名づけです。といっても英語の Error Diffusion を直訳したもんなんですけどね。
じゃあどう呼ぶのか? 「差分振り分け法」というのが適切なんじゃないかなぁと思います。

この方法はどのようなことをするのか。

Read more

ディザ法(2)

8月 22, 2012 by · Leave a Comment
Filed under: Coding の素 
Bookmark this on Delicious
[`livedoor` not found]
[`yahoo` not found]

カラーイメージを2値化しながらも、自然な濃淡を感じさせる手法ハーフトーニング。
それを実現するための2つの方法のうちの1つ、ディザ法について前回、見ました。

ディザ法にはランダム・ディザ法と組織的ディザ法の2つがある。

ランダム・ディザ法はその名のとおり、ビットマップデータの各ピクセルごとにランダムで閾値を設定して2値化する方法。

組織的ディザ法は 4×4 のマトリックスの各要素に閾値を格納し、それを型紙として、ビットマップデータと突き合わせて2値化する方法。
そして 4×4 のマトリックスの各要素にどのような順番で閾値を格納するかで6つのパターンがある、ということまで見ました。

Read more

ディザ法(1)

8月 21, 2012 by · Leave a Comment
Filed under: Coding の素 
Bookmark this on Delicious
[`livedoor` not found]
[`yahoo` not found]

白と黒の2色だけで、カラーイメージの自然な濃淡を表現する方法。今回はディザ法について見てみます。

閾値法は、イメージデータの全ピクセルを同一の閾値で判定し、白か黒に置き換える方法でした。対してディザ法は、ピクセルごとに異なる閾値で判定し、白か黒に置き換える方法です。
如何にしてピクセルごとに異なる閾値を設定するのか。その設定手段により、ディザ法は以下の2つに分けられます。

  1. ランダム・ディザ法
  2. 組織的ディザ法

その他にもディザ法はあるっぽいんですが、この2つだけを扱います。

Read more

ハーフトーニング

8月 20, 2012 by · Leave a Comment
Filed under: Coding の素 
Bookmark this on Delicious
[`livedoor` not found]
[`yahoo` not found]

今のコンピュータはリソースが潤沢なので、画像処理における2値化といえば、閾値による2値化(閾値法)だけを注目してればいいんじゃないか、というのが個人的な印象。
ところで閾値法はイメージデータの全ピクセルを同一の閾値で処理するから、黒い領域と白い領域がベタっと分離してしまいますよね。

かつてコンピュータがモノクロ表示しかできなかった時代、あるいはモノクロプリンタで印刷する場合、カラーイメージをどのようにして表示ないしは印刷するか、ということを追求し、閾値法とは異なる2値化の方法で、自然な濃淡が表現されたとのこと。

で、これからしばらくは、その自然な濃淡を表現する2値化の種類と ActionScript 3.0 による実装の話。

Read more

« 前ページへ次ページへ »