InspectEdge

InspectEdge 関数を使用して、詳細なエッジ解析を実行します。関数の参照される対象領域 (ROI) で、インデックス付きのエッジ検出サブ領域 (キャリパと呼ばれます) の配列によって、画像内のエッジまたはエッジペアを検索することで特徴の正確な位置に関する詳細な情報を作成します。この情報を使用して、エッジまたは特徴の位置、エッジペアの位置と間隔を判定したり、画像内の対象物の幅を測定したりできます。

InspectEdge概要

InspectEdge 関数が挿入されると、関数自身の内部領域を使用して、または EditMaskedRegion 関数や EditPolylinePath 関数などの外部 ROI の参照として ROI が確立され、ツールがエッジまたはエッジペアを検出する画像内の領域が決定されます。参照される ROI は個別のキャリパに分割され、各キャリパに含まれるピクセルがエッジ解析のために 1 つの畳み込みに渡されます。

ROI が設定されると、次の手順で適切に関数を適用する必要があります。

InspectEdge 関数が配置されると、1 つの InspectEdge 関数を入力として使用して、複数の検査を実行できます。例えば、1 つの InspectEdge ROI 内で、InspectEdgeForDefect 関数が位置的な欠陥を判定する関数を参照する一方で、InspectEdgeWidth 関数が別の幅計測を実行し、InspectEdgePosition 関数が別のエッジに最適なラインを決定するといったことができます。

:  InspectEdge 関数は、InspectEdge ビジョンツールの中で最長の実行時間を必要とします。ROI 内のキャリパの数が増加すると、関数の計算時間は長くなります。

InspectEdgeの入力パラメータ

Syntax:InspectEdge(画像 ,フィクスチャ.行 ,フィクスチャ.列 ,フィクスチャ.角度 ,領域.X ,領域.Y ,領域.高さ ,領域.幅 ,領域.角度 ,領域.カーブ ,外部領域またはパス ,キャリパ.高さ ,キャリパ.繰り返しオフセット値 ,キャリパ.初期オフセット値 ,最小コントラスト ,エッジ幅 ,全キャリパに適合 ,キャリパグラフインデックス ,ポリライン幅 ,表示)

画像

 
画像データ構造体を含んだスプレッドシートセルを参照するように指定します。デフォルトでは、このパラメータは、AcquireImage 画像データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールのグラフィックス関数や、座標補正関数により返された、そのほかの画像データ構造体も参照できます。

フィクスチャ

 

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 (デフォルト = 0) 画像座標での行オフセット。
列 (デフォルト = 0) 画像座標での列オフセット
角度 (デフォルト = 0) 画像座標系での方位角

領域

 

これは対象領域 (ROI) とも呼ばれ、エッジ解析の対象となる画像の領域を表します。変換および回転可能な矩形の画像領域を作成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。黄色の点線は、エッジを検出する方向を示しています。

X フィクスチャ座標での原点の X オフセット
Y フィクスチャ座標での原点の Y オフセット
高さ 領域の X 軸に沿った寸法。
領域の Y 軸に沿った寸法。
角度 フィクスチャ座標での角度。
カーブ 領域の X 軸と反対側の境界線との間の角度変位。
:  [フィクスチャ] および [領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。
外部領域またはパス

AnnulusRegionEditAnnulusEditMaskedRegionEditPolylinePath、または EditRegion の各関数を含んだスプレッドシートセルへの参照を指定します。このパラメータを使用すると、関数は [領域] と [フィクスチャ] の設定を無視し、参照先領域で指定された画像領域を検査します。

:  
  • このパラメータが外部定義領域の参照として設定されている場合に、この関数の内部領域を使用するには、セル参照に値 0 を入力し、このパラメータを手動で 0 に設定する必要があります。それ以外の場合、この関数は引き続き外部定義領域を参照します。
  • このパラメータが EditPolylinePath を参照する場合、この関数は InspectEdgeForDefect 関数または InspectEdgePosition 関数への参照として使用することはできません。使用すると #ERR が返されます。

キャリパ

 

検出可能な欠陥やギャップのサイズを定義するために使用する ROI 内のキャリパ配列を指定します。検出可能な欠陥またはギャップのサイズは、検出可能なエッジの数によって決定されます。検出可能なエッジの数は、エッジに沿って配置されたキャリパの数によって決まります。InspectEdge セルがハイライトされているか、[表示] パラメータが [すべて表示] に設定されている場合、キャリパは ROI 内で赤い矩形として表示され、キャリパ内で検出されたエッジは緑色で表示されます。

:  検査する欠陥のタイプに応じて、キャリパをオーバラップして配置することができます。ただし、ROI に適用されるキャリパ数が増えるほど、関数の実行時間は長くなります。

高さ 検査方向に沿って解析されるキャリパあたりのピクセル数を指定します。有効な範囲は、1 から In-Sight ビジョンシステムの画像の幅までです。デフォルト値は 5 です。
繰り返しオフセット値 各キャリパの開始間のピクセル数を指定します。有効な範囲は、0 から In-Sight ビジョンシステムの画像の幅までです。デフォルト値は 5 です。[全キャリパに適合] が有効な場合を除き、最後のキャリパは領域の終わりにオーバラップすることがあります。
初期オフセット値 領域内の最初のキャリパのオフセットを指定します。有効な範囲は、0 から In-Sight ビジョンシステムの画像の幅までです。デフォルト値は 0 です。

最小コントラスト

 

エッジとみなされるグレースケールコントラストの最小変化値を指定します (0 ~ 255、デフォルト = 5)。インデックス付きキャリパごとに、青色で描画されたコントラストグラフが画像上に表示されます。グラフ内の値は、0 ~ 100 の値に自動的にスケール変更されます。このパラメータの適用時にこのグラフを使用すると、値を適切に調整できます。

エッジ幅

 
エッジ変化が起きるピクセル距離を指定します (1 ~ 領域の幅、デフォルト = 3)。この設定値は、エッジが抽出される前のグレースケールプロジェクションのフィルタ処理に使用されるピクセル演算子の大まかなサイズです。この設定値を使用して、画像からノイズをフィルタします。

全キャリパに適合

 

すべてのキャリパを ROI 内に配置するかどうかを指定します。

0 = OFF (デフォルト) 関数が [キャリパ繰り返しオフセット値] パラメータおよび [初期オフセット値] パラメータに厳密に従うように指定します。この場合、キャリパが ROI を覆ってしまうことがあります。
1 = ON ROI 内にすべてのキャリパを確実に配置するために、関数が [キャリパ繰り返しオフセット値] パラメータおよび [初期オフセット値] パラメータを自動的に再計算するように指定します。

キャリパグラフインデックス

 
画像上に表示するキャリパを指定します (キャリパは緑色に囲まれて表示されます)。デフォルトで表示されるキャリパは 0 です。
ポリライン幅 EditPolylinePath 関数の高さ (1 ~ 領域の高さ値、デフォルト = 20) を指定します。このパラメータを InspectEdgeTrainBeadPath 関数と組み合わせて使用すると、検査領域内を検査できます。

表示

 

画像上の InspectEdge グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) InspectEdge 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ キャリパグラフと指定したキャリパが常に表示されます。
2 = 入力と結果のグラフィックス 入力画像領域、キャリパグラフ、および指定したキャリパが常に表示されます。
3 = すべて表示: 入力、結果、およびキャリパ 入力画像領域、キャリパグラフ、ROI 内のすべてのキャリパが常に表示されます。

InspectEdgeの出力

戻り値 画像内で検出されたエッジとキャリパ数を含む検査データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 ROI 内のキャリパの数。