InspectEdgeWidth

InspectEdgeWidth 関数は、InspectEdge 関数によって返されるエッジペアに関する詳細なエッジ解析を行うためのエッジモデルを構築するために使用します。このデータは、エッジペアを検出して、それらの間の距離を解析するために使用されます。

InspectEdgeWidth概要

スプレッドシートにこの関数を挿入した後に、InspectEdge 関数によって出力された 検査 データ構造体に対する参照を作成する必要があります。InspectEdge 関数への参照が確立されると、InspectEdgeWidth 関数のパラメータを設定することによってエッジモデルが作成されます。エッジモデルでは次の項目が定義されます。

  • エッジを検出する方向。
  • エッジ変化のタイプ - 白から黒または黒から白。
  • 不必要なエッジをフィルタ処理するために使用するエッジ得点付け基準。
  • 最適ラインから不必要なエッジをフィルタ処理するために使用する最適ライン基準。
  • 幅の偏差、欠陥とギャップの両方またはいずれかの検出に使用する許容値。
  • 位置の偏差の許容値 (ビードパスを検出する場合)。

エッジモデルが確立されると、この関数によってエッジ候補がエッジモデルと比較され、モデルからの偏差が報告されます。

:  InspectEdgeWidth 関数を InspectEdgeTrainBeadPath 関数および InspectEdge 関数と組み合わせて使用すると、ビードパスに関連する幅と位置のエラーを判別できます。InspectEdgeWidth 関数の [InspectEdge] パラメータは、InspectEdgeTrainBeadPath 関数を参照している InspectEdge 関数によって出力された 検査 データ構造体を参照している必要があります。

InspectEdgeWidthの入力パラメータ

Syntax:InspectEdgeWidth(エッジ検査関数,エッジ方向の検出,エッジ: 第1,エッジ: 第2,エッジ得点.得点しきい値,エッジ得点.エッジ規則,エッジ得点.コントラスト上限,エッジ得点.ペアサイズ,詳細なフィルタ.得点再計算,詳細なフィルタ.最適ライン,詳細なフィルタ.外れ値の削除,詳細なフィルタ.最適距離フィルタ,欠陥/ギャップ最大数,欠陥.最小幅,欠陥.最大幅,欠陥.サイズ,欠陥.最小サイズ,欠陥.最大サイズ,欠陥.面積有効,欠陥.最小面積,欠陥.最大面積,欠陥.ソート基準,ギャップ.有効,ギャップ.ギャップ最小値,ギャップ.ギャップ最大値,ギャップ.最大移動距離,ギャップ.終端ギャップを無視,ギャップ.ソート基準,位置.有効,位置.最小距離,位置.最大距離,位置.サイズ,位置.最小サイズ,位置.最大サイズ,位置.面積,位置.最小面積,位置.最大面積,位置.ソート基準,キャリパインデックス,表示)

エッジ検査関数 InspectEdge 関数によって返された有効な検査データ構造体を含むスプレッドシートセルへの参照を指定します。
エッジ方向の検出

エッジを検出する方向を指定します。エッジを検出する方向をグラフィックス表示するために、暗い緑の矢印が追加されます。最適ラインには、画像内にグラフィックス表示でラベルが付けられます。最初の最適ラインには 0、2 番目の最適ラインには 1 が付けられます。

:  参照している InspectEdge 関数の ROI がカーブしている場合、検査はカーブの中心に対して行われます。[エッジ方向の検出] パラメータが [左→右] に設定されている場合は、カーブの中心方向に向かって検査され、[右→左] に設定されている場合はカーブの中心から外側へ向かって検査されます。

0 = 左→右

ROI の左から右に向かってエッジを検出します。

1 = 右→左

ROI の右から左に向かってエッジを検出します。

3 = 内→外 (デフォルト)

ROI の中心から ROI の上の境界および下の境界に向かってエッジを検出します (検出されたエッジの順序は、ROI の「X」矢印とは反対の方向の順になります)。

:  このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
2 = 外→内

ROI の上下の境界から ROI の中心に向かってエッジを検出します (検出されたエッジの順序は、ROI の「X」矢印とは反対の方向の順になります)。

:  このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
エッジ: 第1

[エッジ方向の検出] パラメータに従って、検出された最初のエッジのコントラスト変化を指定します。

1 = 黒→白 エッジは、黒ピクセルから白ピクセルに変化します。
2 = 白→黒 (デフォルト) エッジは、白ピクセルから黒ピクセルに変化します。
3 = 任意 エッジは黒→白または白→黒のいずれかに変化でき、この関数は適切な変化を決定します。変化を指定すると、関数のパフォーマンスが改善します。
エッジ: 第2

[エッジ方向の検出] パラメータに従って、検出された 2 番目のエッジのコントラスト変化を指定します。

:  このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
1 = 黒→白 (デフォルト) エッジは、黒ピクセルから白ピクセルに変化します。
2 = 白→黒 エッジは、白ピクセルから黒ピクセルに変化します。
3 = 任意 エッジは黒→白または白→黒のいずれかに変化でき、この関数は適切な変化を決定します。変化を指定すると、関数のパフォーマンスが改善します。
エッジ得点

指定した基準をエッジが満たすかどうかを判別するために使用する、エッジ得点モードを指定します。

得点しきい値 得点付けのしきい値を指定します。この値 (0 ~ 100、デフォルト = 10) より小さい得点のエッジはフィルタで除去されます。
エッジ規則

得点を計算するときに最も重要になるエッジのタイプを指定します。

1 = 最初のエッジ 検出された最初のエッジに注目します。
2 = エッジ強度

最強のコントラスト変化を持つエッジに注目します。

:  [エッジペアの検査] パラメータがオンになっている場合、スコアは、2 つのエッジの平均コントラスト値に基づきます。
3 = 最初のエッジ/エッジ強度 (デフォルト) 最初に検出され、最強のコントラスト変化を持つエッジに注目します。
4 = エッジペアサイズ [ペアサイズ] パラメータに最も近いサイズで検出されたエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
5 = 最初のエッジ/エッジペアサイズ [ペアサイズ] パラメータに最も近いサイズで検出された最初のエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
6 = エッジ強度/エッジペアサイズ 最強のコントラスト変化を持ち、[ペアサイズ] パラメータに最も近いサイズで検出されたエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
7 = 最初のエッジ/エッジ強度/エッジペアサイズ 最強のコントラスト変化を持ち、[ペアサイズ] パラメータに最も近いサイズで検出された最初のエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
コントラスト上限

エッジとみなすエッジコントラスト変化の上限 (2 ~ 255、デフォルト = 255) を指定します。この値を超えるエッジコントラスト変化を持つエッジの得点は、すべて同じ最高得点になります。

:  このパラメータを有効にするには、[エッジ規則] パラメータを、[エッジ強度]、[最初のエッジ/エッジ強度]、[エッジ強度/エッジペアサイズ]、[最初のエッジ/エッジ強度/エッジペアサイズ] のいずれかに設定しておく必要があります。
ペアサイズ

最高得点を記録するエッジペアサイズを指定します (有効な範囲は、In-Sight ビジョンシステムの画像幅の 1 ~ 3 倍。デフォルト = 5)。このパラメータが有効な場合、この値の上下で検出されたエッジペアはこの値に比例して得点付けされます。例えば、[ペアサイズ] が 10 に設定されており、値が 8 と値が 14 の 2 つのエッジペア候補が検出された場合は、値 8 のエッジペアが選択されます。これは、2 番目のエッジペアより [ペアサイズ] に近いためです。

:  このパラメータを有効にするには、[エッジペアの検査] パラメータを ON にし、[エッジ規則] パラメータを [エッジペアサイズ]、[最初に検出されたエッジペアサイズ]、[エッジ強度/エッジペアサイズ]、または [最初のエッジ/エッジ強度/エッジペアサイズ] のいずれかに設定しておく必要があります。
詳細なフィルタ

最適ラインを構築する方法を指定します。

得点再計算

最適ラインにより近いエッジを選択するために、エッジを得点再計算するように指定します。

0 = OFF (デフォルト) 除外距離を考慮するためにエッジを得点再計算しません。
1 = ON 計算時に除外距離エッジを考慮するために得点再計算を行います。
最適ライン

検出されたエッジから作成する最適ラインの種類を指定します。

1 = 最適直線 関数は、検出されたエッジから最適直線を作成します。
2 = 最適円 関数は、検出されたエッジから最適円を作成します。
3 = 自動調整 (デフォルト) 関数は、参照先領域に基づいて最適直線または最適円のいずれかを自動的に作成します。
外れ値の削除

[最適距離フィルタ] パラメータで指定されている距離より遠い点を最適ラインから削除するように指定します。

0 = OFF (デフォルト) 除外距離エッジを考慮しません。
1 = ON 計算時に除外距離エッジを考慮します。
最適距離フィルタ 最適ライン再計算で利用するためにエッジが元の最適ラインから離れている必要がある距離をピクセル単位で指定します (有効な範囲は In-Sight ビジョンシステムの画像幅の 1 ~ 3 倍。デフォルト = 2)。この設定は、欠陥が最適ラインに影響を与えないようにする場合に有効です。この設定を有効にするには、[外れ値の削除] が ON になっている必要があります。
欠陥/ギャップ最大数 検出する欠陥とギャップの両方またはいずれかの最大数を指定します (1 ~ 4096、デフォルト = 5)。この値は、欠陥とギャップに個別に適用されます。例えば、値を 5 に設定すると、最大 5 つの欠陥と 5 つのギャップが検出されます。この設定は、スプレッドシートにデータアクセス結果テーブルを構築するために使用されます。
欠陥

最適ラインのエッジの欠陥を判別するためのパラメータを指定します。

最小幅 検出されたエッジペアの間の距離をピクセル単位で指定します。この値より小さい場合は欠陥であると判別されます。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ~ 3 倍です。デフォルトは 3 ピクセルです。
最大幅

検出されたエッジペアの間の距離をピクセル単位で指定します。この値より大きい場合は欠陥であると判別されます。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ~ 3 倍です。デフォルトは、ビジョンシステムの画像幅の 3 倍です。

:  この値が [最小幅] パラメータより小さい場合、関数の結果は #ERR になります。
サイズ有効

サイズ欠陥を考慮するかどうかを指定します。サイズ欠陥では、検出されたエッジペアの長さに沿った幅偏差が考慮されます。

:  [サイズ有効] と [面積有効] が両方ともに ON の場合は、両方の条件に不適合だった欠陥のみが表示されます。
0 = OFF サイズ欠陥を考慮しません。
1 = ON (デフォルト) [最小サイズ] および [最大サイズ] パラメータの設定値に基づいて、サイズ欠陥を考慮します。
最小サイズ 最小欠陥サイズをピクセル単位で指定します。最適ラインからの連続した偏差がこの値より小さい場合は欠陥とはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ~ 3 倍です。デフォルトは 3 ピクセルです。
最大サイズ 最大欠陥サイズをピクセル単位で指定します。最適ラインからの連続した偏差がこの値より大きい場合は欠陥とはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ~ 3 倍です。デフォルトは、ビジョンシステムの画像幅の 3 倍です。
面積有効

面積欠陥を考慮するかどうかを指定します。面積欠陥では、最適ラインに沿った長さ、および欠陥エッジの最適ラインからの距離が考慮されます。

:  [サイズ有効] と [面積有効] が両方ともに ON の場合は、両方の条件に不適合だった欠陥のみが表示されます。
0 = OFF 面積欠陥を考慮しません。
1 = ON (デフォルト) [最小面積] および [最大面積] パラメータの設定値に基づいて、面積欠陥を考慮します。
最小面積 最小欠陥面積をピクセル単位で指定します (有効な範囲は  0.001 ~ 100000倍。デフォルト = 10)。この値より小さい面積は欠陥とはみなされません。
最大面積 最大欠陥面積をピクセル単位で指定します (有効な範囲は  0.001 ~ 1000000倍。デフォルト = 1000000)。この値より大きい面積は欠陥とはみなされません。
ソート基準

検出された欠陥をソートする方法を指定します。

サイズ (デフォルト) 検出された欠陥を、サイズの大きい順にソートします。
面積 検出された欠陥を、面積の大きい順にソートします。
位置 検出された欠陥を、キャリパインデックス順にソートします。
検出された欠陥を、幅の大きい順にソートします。
ギャップ

エッジ内のギャップを判別するためのパラメータを指定します。

有効

検出されたエッジペア内のギャップを考慮するかどうかを指定します。

0 = OFF ギャップを考慮しません。
1 = ON (デフォルト) ほかのギャップパラメータの設定に基づいて、ギャップを考慮します。
ギャップ最小値 ギャップ最小値をピクセル単位で指定します。この値より小さいギャップはギャップとはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ~ 3 倍です。デフォルトは 3 ピクセルです。
ギャップ最大値 ギャップ最大値をピクセル単位で指定します。この値より大きいギャップはギャップとはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ~ 3 倍です。デフォルトは、ビジョンシステムの画像幅の 3 倍です。
最大移動距離 ギャップとみなされる、領域の中心からエッジペアの中心までの最大移動距離をピクセル単位で指定します。有効な範囲は、In-Sight ビジョンシステムの画像幅の 1 ~ 3 倍です。デフォルトは、ビジョンシステムの画像幅の 3 倍です。
終端ギャップを無視

ROI の始まりと終わりで検出されたギャップを考慮するかどうかを指定します。

0 = OFF ROI の始まりと終わりで検出されたギャップを考慮しません。
1 = ON (デフォルト) ROI の始まりと終わりで検出されたギャップを考慮します。
ソート基準

検出されたギャップをソートする方法を指定します。

サイズ (デフォルト) 検出されたギャップを、サイズの大きい順にソートします。
位置 検出されたギャップを、キャリパインデックス順にソートします。
位置

エッジペア内の位置欠陥を判別するためのパラメータを指定します。パラメータは、InspectEdgeTrainBeadPath 関数によって出力されたモデルパスの中心からの偏差として欠陥を定義しています。これらのパラメータは、InspectEdgeTrainBeadPath 関数を参照する InspectEdge 関数を参照している場合にのみ使用します。

有効

検出されたエッジペア内の位置欠陥を考慮するかどうかを指定します。

0 = OFF (デフォルト) 位置欠陥を考慮しません。
1 = ON 他の位置パラメータの設定に基づいて、位置欠陥を考慮します。

最小距離

検出されたビードパスの中心からの最小位置移動距離をピクセル単位で指定します。この値より小さい位置偏差は、位置欠陥とはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ~ 3 倍です。デフォルトは 3 ピクセルです。

最大距離

検出されたビードパスの中心からの最大位置移動距離をピクセル単位で指定します。この値より大きい位置偏差は、位置欠陥とはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ~ 3 倍です。デフォルトは、ビジョンシステムの画像幅の 3 倍です。

サイズ有効

サイズ欠陥を考慮するかどうかを指定します。サイズ欠陥では、検出されたエッジペアの長さに沿った幅偏差が考慮されます。

:  [サイズ有効] と [面積有効] が両方ともに ON の場合は、両方の条件に不適合だった欠陥のみが表示されます。
0 = OFF サイズ欠陥を考慮しません。
1 = ON (デフォルト) [最小サイズ] および [最大サイズ] パラメータの設定値に基づいて、サイズ欠陥を考慮します。
最小サイズ 最小欠陥サイズをピクセル単位で指定します。最適ラインからの連続した偏差がこの値より小さい場合は欠陥とはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ~ 3 倍です。デフォルトは 3 ピクセルです。
最大サイズ 最大欠陥サイズをピクセル単位で指定します。最適ラインからの連続した偏差がこの値より大きい場合は欠陥とはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ~ 3 倍です。デフォルトは、ビジョンシステムの画像幅の 3 倍です。
面積有効

面積欠陥を考慮するかどうかを指定します。面積欠陥では、最適ラインに沿った長さ、および欠陥エッジの最適ラインからの距離が考慮されます。

:  [サイズ有効] と [面積有効] が両方ともに ON の場合は、両方の条件に不適合だった欠陥のみが表示されます。
0 = OFF 面積欠陥を考慮しません。
1 = ON (デフォルト) [最小面積] および [最大面積] パラメータの設定値に基づいて、面積欠陥を考慮します。
最小面積 最小欠陥面積をピクセル単位で指定します。この値より小さい領域は欠陥とはみなされません。有効な範囲は 0.001 ~ 100000 で、デフォルトは 10 です。
最大面積 最大欠陥面積をピクセル単位で指定します。この値より大きい領域は欠陥とはみなされません。有効な範囲は 0.001 ~ 1000000 で、デフォルトは 1000000 です。
ソート基準

検出された欠陥をソートする方法を指定します。

サイズ (デフォルト) 検出された欠陥を、サイズの大きい順にソートします。
面積 検出された欠陥を、面積の大きい順にソートします。
位置 検出された欠陥を、キャリパインデックス順にソートします。
検出された欠陥を、幅の大きい順にソートします。
キャリパインデックス 画像上に表示するキャリパを指定します (キャリパは緑色に囲まれて表示されます)。デフォルトで表示されるキャリパは 0 です。
表示

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

0 = 非表示 (デフォルト) InspectEdgeWidth 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ 最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらかが常に表示されます。
2 = 結果のグラフィックスと検出されたエッジ class="ParameterArgumentDescription">最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらか、および検出されたエッジ点が常に表示されます。
3 = 結果のグラフィックスとキャリパの詳細 class="ParameterArgumentDescription">最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらか、検出されたエッジ点、およびインデックス付きキャリパウィンドウが常に表示されます。
4 = すべて表示: 入力と結果のグラフィックス class="ParameterArgumentDescription">入力領域、最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらか、および検出されたエッジ点が常に表示されます。

InspectEdgeWidthの出力

戻り値 検出された欠陥、除外距離、およびギャップを含む 検査 データ構造体。入力パラメータが無効であれば #ERR を返します。
結果

初めてInspectEdgeWidthセルに挿入すると、スプレッドシートに結果テーブルが作成されます

:  [欠陥/ギャップ最大数] パラメータの値がゼロより大きい場合、InspectEdgeWidth 関数は、最初の 10 個の欠陥/ギャップ/エッジ/エッジペアに対応する「最大」10 個のエントリを含む結果テーブルを自動的にデータ構造体に挿入します。追加のエントリを表示する場合は、最後の行をコピーして末尾に追加の行を貼り付けることによってテーブルを拡張することができます。

InspectEdgeWidthデータアクセス関数

次のデータアクセス関数が、データ構造体結果テーブルを作成するためにスプレッドシートに自動挿入されます。

スプレッドシート名

関数名

説明

総数 GetTotalCount(検査) 結果の総数を返します。
欠陥/ギャップ/位置 GetWidthCount(検査, 欠陥/ギャップ/位置) 指定した欠陥またはギャップの総数を返します (欠陥 = 0、ギャップ = 1、位置 = 2)。
欠陥/ギャップ/位置
サイズ/面積/幅/位置 GetDefectGapValue(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス, サイズ/面積/幅) 欠陥またはギャップのサイズ、面積、または幅を返します (欠陥 = 0、ギャップ = 1、位置 = 2、サイズ = 0、面積 = 1、幅 = 2)。
GetDefectGapBoundsRow(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス) 欠陥に外接する矩形の行座標を返します。
GetDefectGapBoundsCol(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス) 欠陥に外接する矩形の列座標を返します。
高さ GetDefectGapBoundsHigh(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス) 欠陥に外接する矩形の高さを返します。
GetDefectGapBoundsWide(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス) 欠陥に外接する矩形の幅を返します。
角度 GetDefectGapBoundsAngle(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス) 欠陥に外接する矩形の角度を返します。
カーブ GetDefectGapBoundsCurve(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス) 欠陥に外接する矩形のカーブを返します。
始まり/終わり GetDefectGapCaliperIndex(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス, 欠陥の始まり/終わり) 欠陥が始まるキャリパまたは終わるキャリパを返します (始まり = 0、終わり = 1)。
除外距離 - 最も遠い点 1/2
キャリパ GetExtremeWidth(検査, 最薄/最厚) 指定した極端な幅を含むキャリパのインデックスを返します (最薄 = 0 および最厚 = 1)。
GetWidth(検査, キャリパインデックス) インデックス付きキャリパ内のエッジの幅を返します。インデックス付きキャリパ内でエッジが検出されなかった場合は 0 を返します。
行 (始まりおよび終わり) GetEdgePairRow(検査, キャリパインデックス, エッジペアインデックスまたはエッジインデックス) 参照したエッジの行座標を返します。
列 (始まりおよび終わり) GetEdgePairCol(検査, キャリパインデックス, エッジペアインデックスまたはエッジインデックス) 参照したエッジの列座標を返します。
:  
  • InspectEdgeWidth 関数の数式はすべて次の条件に適合しています。
  • 検査 = InspectEdgeWidth 関数によって出力された 検査 データ構造体
  • キャリパインデックス = 0 ~ N (キャリパの総数は、InspectEdgeForDefect 関数が参照している InspectEdge 関数によって出力されたキャリパの数と同じ)
  • エッジペアインデックス = 0 または 1
  • エッジインデックス = 0 ~ N
  • 点インデックス = 0 ~ 1
  • [位置.有効] パラメータが ON の場合、Vision Data Access 関数の追加セクションが位置エラーに関連するスプレッドシートに挿入されます。