二値化(2)
2010/03/06 20:53 - AS3.0
前回、BitmapData#threshold の mask がよくわからんという話をしましたが、画像の二値化は、まずグレイスケールから処理が始まる、ということが、"Foundation ActionScript 3.0 Image Effects" や「OpenGL+GLSLによる画像処理プログラミング
」等、各種画像処理本に書いてあります。
グレイスケール化するということは R、G、B 全部同じ値になるから、どれか一つだけ着目していれば良いということなので、今後は余計なことは考えず一番下位の B に着目することにします。
そうすると引数 mask の値は 0x000000FF に固定。引数 threshold の値は 0x0 ~ 0xFF の間をとれば良い、ということですね。
それに基づいて組んだサンプルが→。 原画像のヒストグラムも表示させてみました。
ついでに、グレイスケールじゃなく、RGB 各色のチャンネルでモノクロ化したデータで二値化するとどうなるかも試してみた結果は以下のとおり。