PatMax SA(Scene Alignment)はどうやって使うの?

PatMaxを使ったバリエーションのテクノロジとして下記の4種類をよく紹介しています。

PatQuick
高速なPatMax
PatFlex
ぐにゃぐにゃな変形をピシッと真っ平らに戻す
PatMax XLC
コントラスト、高ノイズ用のPatMax。eXtream Low Contrastの略

:PatMax SA:モデルが画面の外にはみ出しても大丈夫モード。Scene Alignmentの略

この中でPatMax SA以外は、PatMaxツールのアルゴリズムとして選択できるため使い方もわかりやすいのですが、PatMax SAだけは、専用のアルゴリズムが見当たりません。

では、どうやって設定するのか実際にやってみましょう。

設定方法

モデルは普通のPatMax/PatQuickと同じように登録します。

PatMax SAとして動作させるには、「サーチ領域」にある「外部領域得点付パラメータ」を変更します。
変な名前のパラメタ(英語では"Outside Region Scoring Parameters")ですが意味は、サーチ領域外にはみ出してもスコア計算に影響しない特徴量の割合(%)を指定します。
デフォルトは、0.0で、ちょっとでもはみ出すとその分スコアが低下します。
たとえば、0.3(30%)を指定すると特徴の30%が画面の外にはみ出しても、スコアは低下しません。見えている部分のスコアだけ計算します。
この数値を多くしていって、たとえば(90%)の場合90%の特徴がはみ出しても残り10%部分でのみ評価スコア評価します。

動かしてみましょう



このようにはみ出してもちゃんと見つかっています。

またサーチ結果には以下の2種類の情報も表示されます。設定した割合より多くはみ出している場合はその影響でスコアが下がっていることも検知できます。
:外部領域特徴(OutsideRegionFeatureProportion):検索領域の外にあるパターンの特徴の割合

外部領域エリア(OutsideRegionAreaProportion)
検索領域外にあるパターン面積の割合


注意

PatMax SAはこのように便利な機能ですが用途は選びます。
位置決め用にPatMaxを使う場合にはとても便利です。特にオペレータに適切なモデル領域を設定させるのが困難な場合など、画面全体を自動的にモデルに登録するような使い方もできます。
しかし、はみ出した部分は評価されないので、パターンの検査の場合は使えません。はみ出した部分の欠陥は検知することができないからです。

まとめ

PatMax SAの用途として上にも書いたような、モデル領域の指定の違いによる性能のばらつきを回避するために、大きなモデル(最大で画面全体)を自動的に登録するような運用があります。それ以外にも位置決めモデルが画面から多少はみ出しても見つけたい場合には便利な機能です。
ただ、あまりに大きな値を設定すると、画面内に残っている特徴量が少なくなりすぎて誤検出の可能性が高くなるのでほどほどに。