Vision Assistantでパターンマッチングを行う

更新しました Dec 8, 2020

環境

ソフトウェア

  • Vision Development Module

Vision Assistantでパターンマッチングを行うことができます。パターンマッチングを行うことで、画像の中に特定の対象物がいくつあるか調べたり、それぞれの対象物に対してさらに他の処理を行うことができます。この資料ではパターンマッチングを行う際の手順を紹介しています。
以下では、画像内に特定の形状の物体、赤枠で囲った部品がいくつあるかを検出することを考えていきます。

 
 
 
 

1. Vision Assistantでファイルメニューから画像を開くを選択して対象画像を開き、マシンビジョンのカテゴリにあるパターンマッチングを選択します。

2. 別ウィンドウでテンプレートエディタが表示されます。こちらの画面で、これからマッチングする形状のテンプレートを作成します。(既にテンプレートがある場合にはキャンセルをします)

3. テンプレートとなる画像を選びます。選択範囲で図のように対象となる画像を囲みます。

4. 選択した領域からさらに特定の形状を抽出します。マッチング判定に対して無視する領域をペイントの要領で塗りつぶしていきます。マジックワンドオートマスクを活用することで綺麗に仕上げることができます。

5. マッチングした場合の中心点を決めます。パターンマッチングをして数を数えるだけであればこの設定はデフォルトの状態で問題ありません(マッチング後にこの中心点を基に新たな座標系を設定する必要があるときに調整できます)

6. パターンマッチングの設定の画面で検出するマッチ数を指定します。デフォルトでは1となっているため、想定される個数を指定する必要があります。

7. パターンマッチングの設定テンプレートを編集すると、より詳しくマッチングの設定を行えます。例えばマッチングの際の形状の編集を行うために、曲線を定義のタブでエッジ2値化の値を変えたり、検出されない部分に対してマッチングさせたい形状の追加を行います。

8. スコアをカスタマイズのタブでは後述するスコアの判定時に無視する領域を指定できます。

9. またパターンマッチングの設定を変更しているうえで、望まない部分が検出されることがあります。

10. その場合、パターンマッチングの設定オプションを選択して、パラメータを編集することで望まないマッチングを回避できるかもしれません。ここでは、最低マッチスコアをデフォルトの値から編集したとします。

11. マッチングのスコアを高くすることで、よりテンプレートに近い画像しか検出されないように設定することができます。

12. 他にも、例えばテンプレートと比べて対象とする形状の向きが異なる場合も考えられます。このときには、パターンマッチングの設定において回転を設定することでどの程度テンプレートから回転していてもよいかの許容範囲を設定できます。


13. 設定を終えたら、他の画像も使用してマッチングされるか確かめます。