FindCircleMinMax

エッジからの最小または最大偏差およびエッジ上のすべての点の半径の標準偏差を検出することで、連続するエッジの循環性を検査します。

:  FindCircleMinMax 関数は、円形状エッジを探す場合には使用しません。FindCircle 関数を使用して円形状エッジを探します。

FindCircleMinMaxの入力パラメータ

Syntax:FindCircleMinMax(画像,フィクスチャ.行,フィクスチャ.列,フィクスチャ.角度,ドーナツ領域.X,ドーナツ領域.Y,ドーナツ領域.内側半径,ドーナツ領域.外側半径,極性,最小コントラスト,エッジ幅,表示)

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

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

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

画像座標での行オフセット。
画像座標での列オフセット
角度 画像座標系での方位角
ドーナツ領域

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

X フィクスチャ座標での原点の X オフセット
Y フィクスチャ座標での原点の Y オフセット
内側の半径 内側の半径のサイズ。
外側の半径 外側の半径のサイズ。
:  [フィクスチャ] パラメータと [ドーナツ領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。
極性

領域のスキャン方向に相対的に円の内側から外側に移動する、検出対象のエッジの極性を指定します。この関数は、指定した極性のエッジのみを報告します。

0 = 黒→白 (デフォルト)
1 = 白→黒
最小コントラスト 円に沿った各点でのグレースケールコントラストの最小値 (0 ~ 255、デフォルト = 10) を指定します 。
エッジ幅 エッジ変化が起きるピクセル距離を指定します (1 ~ 50、デフォルト = 3)[エッジ幅] は、エッジが抽出される前に画像をフィルタ処理するために使用されます。
表示

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

0 = 非表示 (デフォルト) FindCircleMinMax 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ 円状形エッジと偏差の最低および最高ポイントが常に表示されます。
2 = 入力と結果のグラフィックス 入力画像領域、円状形エッジ、および偏差の最低と最高ポイントが常に表示されます。

FindCircleMinMaxの出力

戻り値 単一の円状形エッジを含むエッジデータ構造体。入力パラメータが無効であれば #ERR を返します。
結果 FindCircleMinMax 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。

FindCircleMinMaxデータアクセス関数

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

中心行 GetRow(エッジ) 円形状エッジの中心行
中心列 GetCol(エッジ) 円形状エッジの中心列
半径 GetRadius(エッジ) 円形状エッジの半径
最小 GetMin(エッジ) 円形状エッジの最小偏差
最大 GetMax(エッジ) 円形状エッジの最大偏差
標準偏差 GetSDev(エッジ) 連続するエッジのすべての点の半径からの標準偏差
得点 GetScore(エッジ)

円形状エッジの半径および標準偏差に基づいた、連続するエッジの循環性の計測値。標準偏差が小さいと得点が高くなり、標準偏差が大きいと得点は低くなります。

「得点」は次の式で計算します。

       得点 = 100 × (1 - 2 × 標準偏差 ÷ 半径)

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

最小行 GetRow(エッジ, 1) 円形状エッジの最小半径点の行
最大行 GetRow(エッジ, 2) 円形状エッジの最大半径点の行
最小列 GetCol(エッジ, 1) 円形状エッジの最小半径点の列
最大列 GetCol(エッジ, 2) 円形状エッジの最大半径点の列
コントラスト GetContrast(エッジ) 円形状エッジの前景と背景の間の平均コントラスト (グレースケール階調で、0 ~ 255)。コントラストは黒→白の場合は正の値、白→黒の場合は負の値。