考察:「解析的パターン認識」

by 小山明雄



 点が連なって曲線を構成するとか、テクスチャーが面図形を構成しているような場合のパターン認識はテンプレートマッチングや特徴点の配置マッチング技術ではないでしょう。今回は、このようなパターンを解析していく技術を考えて行ってみたいと思います。


 パターン解析にはフォーカスの設定がまずあることでしょう。私は今まで、2次元マップの点を右上から、左下まで順次解析していく・・・という手法をもっぱら取っていました。ですが、認識結果を合成するという技術を思いついてから、人間みたいに、フォーカスを任意に設定して、そのフォーカスを点から面へと広げていくという手法がよいかなと思うに至りました。技術が汎用的で、実空間に生活するロボットとして必要な処理をしているように感じるのです。考えることは、

(1) 点列を曲線として認識すること

(2) ドットの群れを囲む領域を認識すること

(3) 領域のなす帯の中心線を抽出すること


 点列は、最短距離にある点を結ぶ線分の羅列とすることですね。これが基本です。点がスパースになっているときはこれでよいのですが、近傍に無数の点列がある場合困ります。これは領域・・・帯を形作ります。そのため、大局の画像の大きさと、点列の最短距離の比較を行い、近傍距離というものを計算します。その近傍に複数の点列があったら領域と判断するのですね。また、あまりにも最短距離が小さい場合には雑音と判断するのです。この辺は投票法できめていくことになります。曖昧性が入るから、あるていどの解析結果の揺らぎは考慮すべきでしょう。


 ドットが作る領域は、接線を考えて、片側だけにドットがある場合に境界点として抽出すると良いでしょう。これも、フォーカスを点から面へと拡大していくという技法が生きてくる手法です。


 領域のなす帯の中心線は、境界点をなぞっていきながら、その対岸の点のなかで最短距離の点となす中点を計算して中心線を構成する点としていきます。あとはスプラインカーブを求めればいいでしょう。




おわり