InspectEdge
InspectEdge 関数を使用して、詳細なエッジ解析を実行します。関数の参照される対象領域 (ROI) で、インデックス付きのエッジ検出サブ領域 (キャリパと呼ばれます) の配列によって、画像内のエッジまたはエッジペアを検索することで特徴の正確な位置に関する詳細な情報を作成します。この情報を使用して、エッジまたは特徴の位置、エッジペアの位置と間隔を判定したり、画像内の対象物の幅を測定したりできます。
InspectEdge概要
InspectEdge 関数が挿入されると、関数自身の内部領域を使用して、または EditMaskedRegion 関数や EditPolylinePath 関数などの外部 ROI の参照として ROI が確立され、ツールがエッジまたはエッジペアを検出する画像内の領域が決定されます。参照される ROI は個別のキャリパに分割され、各キャリパに含まれるピクセルがエッジ解析のために 1 つの畳み込みに渡されます。
ROI が設定されると、次の手順で適切に関数を適用する必要があります。
- 対象のエッジを分離する [キャリパ]、[最小コントラスト]、および [エッジ幅] パラメータの値を指定します。
- InspectEdgeForDefect 関数、InspectEdgePosition 関数、InspectEdgeTrainBeadPath 関数または InspectEdgeWidth 関数を使用して、対象のエッジまたはエッジペアを規定するエッジモデルを定義します。
InspectEdge 関数が配置されると、1 つの InspectEdge 関数を入力として使用して、複数の検査を実行できます。例えば、1 つの InspectEdge ROI 内で、InspectEdgeForDefect 関数が位置的な欠陥を判定する関数を参照する一方で、InspectEdgeWidth 関数が別の幅計測を実行し、InspectEdgePosition 関数が別のエッジに最適なラインを決定するといったことができます。
InspectEdgeの入力パラメータ
Syntax:InspectEdge(画像 ,フィクスチャ.行 ,フィクスチャ.列 ,フィクスチャ.角度 ,領域.X ,領域.Y ,領域.高さ ,領域.幅 ,領域.角度 ,領域.カーブ ,外部領域またはパス ,キャリパ.高さ ,キャリパ.繰り返しオフセット値 ,キャリパ.初期オフセット値 ,最小コントラスト ,エッジ幅 ,全キャリパに適合 ,キャリパグラフインデックス ,ポリライン幅 ,表示)
画像データ構造体を含んだスプレッドシートセルを参照するように指定します。デフォルトでは、このパラメータは、AcquireImage 画像データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールのグラフィックス関数や、座標補正関数により返された、そのほかの画像データ構造体も参照できます。 | |||||||||||||
フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。 デフォルト設定は画像の左上隅で、(0, 0, 0) になります。
|
|||||||||||||
これは対象領域 (ROI) とも呼ばれ、エッジ解析の対象となる画像の領域を表します。変換および回転可能な矩形の画像領域を作成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。黄色の点線は、エッジを検出する方向を示しています。
|
|||||||||||||
注 : [フィクスチャ] および [領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。
|
|||||||||||||
外部領域またはパス |
Annulus、Region、EditAnnulus、EditMaskedRegion、EditPolylinePath、または EditRegion の各関数を含んだスプレッドシートセルへの参照を指定します。このパラメータを使用すると、関数は [領域] と [フィクスチャ] の設定を無視し、参照先領域で指定された画像領域を検査します。 注 :
|
||||||||||||
検出可能な欠陥やギャップのサイズを定義するために使用する ROI 内のキャリパ配列を指定します。検出可能な欠陥またはギャップのサイズは、検出可能なエッジの数によって決定されます。検出可能なエッジの数は、エッジに沿って配置されたキャリパの数によって決まります。InspectEdge セルがハイライトされているか、[表示] パラメータが [すべて表示] に設定されている場合、キャリパは ROI 内で赤い矩形として表示され、キャリパ内で検出されたエッジは緑色で表示されます。 注 : 検査する欠陥のタイプに応じて、キャリパをオーバラップして配置することができます。ただし、ROI に適用されるキャリパ数が増えるほど、関数の実行時間は長くなります。
|
|||||||||||||
エッジとみなされるグレースケールコントラストの最小変化値を指定します (0 ~ 255、デフォルト = 5)。インデックス付きキャリパごとに、青色で描画されたコントラストグラフが画像上に表示されます。グラフ内の値は、0 ~ 100 の値に自動的にスケール変更されます。このパラメータの適用時にこのグラフを使用すると、値を適切に調整できます。 |
|||||||||||||
エッジ変化が起きるピクセル距離を指定します (1 ~ 領域の幅、デフォルト = 3)。この設定値は、エッジが抽出される前のグレースケールプロジェクションのフィルタ処理に使用されるピクセル演算子の大まかなサイズです。この設定値を使用して、画像からノイズをフィルタします。 | |||||||||||||
すべてのキャリパを ROI 内に配置するかどうかを指定します。
|
|||||||||||||
画像上に表示するキャリパを指定します (キャリパは緑色に囲まれて表示されます)。デフォルトで表示されるキャリパは 0 です。 | |||||||||||||
ポリライン幅 | EditPolylinePath 関数の高さ (1 ~ 領域の高さ値、デフォルト = 20) を指定します。このパラメータを InspectEdgeTrainBeadPath 関数と組み合わせて使用すると、検査領域内を検査できます。 | ||||||||||||
画像上の InspectEdge グラフィックスオーバレイの表示モードを指定します。
|
InspectEdgeの出力
戻り値 | 画像内で検出されたエッジとキャリパ数を含む検査データ構造体。入力パラメータが無効であれば #ERR を返します。 |
結果 | ROI 内のキャリパの数。 |