by ご近所のきよきよ
立秋が過ぎて、いよいよ暑くなってきました。パソコンは西日の当たる冬向きの部屋にあるため、今時の昼間はとても作業になりません。ということで、昼間は寝て、深夜起き出して朝までコーディングするという毎日になっています。コーディング以外の作業が有るときは、昼間ちゃんと起きて、夜ちゃんと寝てますけれど、本当に夏は深夜が命です。
1週間ばかり掛かって、テクスチャの解析プログラムを作っていました。ドットパターンの輪郭や線分列の輪郭ですね、それを求めるプログラムです。
a.ドットパターン
b.線分列パターン
考えて、試した方法は次の3通りでした。
ドットパターンの解析で、ドット分布を近接する三角形の頂点群として分類して、その三角形を塗りつぶす、というものです。
三角形分割
イメージaの三角形分割法解析の結果
線と点でできたパターンの解析で、各点から放射線を発して交わる点との間に線分を引いて、この放射線分でできる三角形群を塗りつぶすというものです。
放射線イメージ
イメージaの放射線法解析の結果
イメージを正方形分割して点密度をその正方形で求めます。その正方形内の点の濃度をその密度で表します。正方形を次第に小さくしていき、最後には1ドットに絞ります。濃度値の最大値を最終的な点の濃度とします。
点密度解析イメージ
イメージaの点密度分布
この点濃度分布は、普通の濃淡イメージの解析に帰着でき、領域解析ができます。詳しい境界はおおざっぱな領域切り出しを行い、その領域での実際の最外郭の点や線分を求めていけば決定できます。計算量の問題ですね。
点密度法の発展として、ガウス分布などの点からの距離を点密度に反映させる方法も考えられます。今回試した点密度法はご覧の通り、あまりよい指標になっていませんので、点からの距離が点密度に反映される方法を指向すべきでしょう。そのとき、複数点からの寄与をどうするかという問題があります。多くの点からの寄与が有るほど点密度を濃くするということですね。例えば、相対性理論の速度合成測を援用して、
B=(B1+B2)/(1+B1*B2/C*C)
なんて、点密度合成を行えばいいでしょう。
(0=<B1,B2<=Cならば0<=B<=Cです。しかもB1,B2<=B)
おわり