CalibrateAdvanced

CalibrateAdvanced 関数で、ユーザ指定の 1 ~ 32 個の点を使用して、ピクセル座標系とワールド座標系の間で変換を行うための 2D 変換を作成します。このプロセスで、CalibrateAdvanced 関数は線形および非線形の歪みを補正し、5 組以上のポイントペアを使用して、Calibrate 関数よりも高い精度を提供します。

概要

ちょうど Calibrate 関数と同じように、CalibrateAdvanced 関数でユーザ指定のポイントを 2 つの異なる座標系で表す必要があります。取り込む対象物はワールド座標系、対象物の画像はピクセル座標で表します。

さらに、Calibrate 関数のように、CalibrateAdvanced 関数ではビジョンツールを使用して、画像から特徴を抽出する必要があります。ただし、これら 2 つの関数の違いは、位置として使用できる特徴の数、およびこれらの特徴の位置をワールド座標とピクセル座標の両方で入力する方法です。CalibrateAdvanced 関数では、ポイントペアと呼ばれる、1 ~ 32 個のピクセルとワールド座標の組み合わせが可能であるのに対して、Calibrate 関数では 4 組のポイントペアが必要です。

CalibrateAdvanced 関数を使用すると、キャリブレーションフェーズで、ワールド座標での位置が分かっている 1 ~ 32 個の異なる特徴を含んでいる画像が取り込まれます。ExtractBlobsFindPatterns、または FindLine などのビジョンツールを使用して、画像内の特徴を探してピクセル座標で報告します。

:  ピクセル座標の原点は、常に左上のピクセルの左上の角です。

次に、ピクセル座標とワールド座標の両方を引数として入力します。ピクセル座標の場合、ビジョンツールの [行] と [列] の値へのセル参照を使用できますが、ワールド座標を表すには、数値を入力することができます。次に、ワールド座標とピクセル座標の間で 2D 変換が計算され、この変換を表す キャリブ構造体が作成されます。

:  
  • CalibrateAdvanced 関数にはプロパティシートはありません。この関数は、何組かのポイントペアによって表される 1 ~ 32 個の可変引数に基づきます。例えば、CalibrateAdvanced 関数がスプレッドシートに挿入され、5 つの異なるブロブを報告した ExtractBlobs 関数を使用してシステムをキャリブレーションした場合、ピクセル座標は、報告された ExtractBlobs ツールの [行] と [列] の値へのセル参照として表されます。次に、特定のワールド座標の値に従ってワールド座標が設定され、次の式となります。CalibrateAdvanced($D$11,$D$12,0,0,$E$11,$E$12,2,0,$F$11,$F$12,2,2,$G$11,$G$12,0,2,$H$11,$H$12,1,2).
  • セルに入力できる最大文字数は 255 文字です。255 を超える文字を使用して可変引数を指定すると、エラーメッセージが表示されます。可変引数の指定に使用した文字列が 255 文字の制限を超える場合は、セル範囲を使用します。ワールド座標は、X および Y の値を直接セルに入力することによって、セル範囲に含めることもできます。例えば、セル範囲を使用して 32 組のポイントペアを指定する場合、次の式を使用することができます。CalibrateAdvanced(C11:F42)

CalibrateAdvanced 関数では次の変換を実行します。

  • 2 次元での変換 (1 組以上のポイントペアを使用)
  • 3 本の軸まわりの回転 (4 組以上のポイントペアを使用)
  • 2 次元でのスケーリング (2 組以上のポイントペアを使用)
  • 遠近歪み (4 組以上のポイントペアを使用)
  • パラレログラミングまたはスキュー (4 組以上のポイントペアを使用)
:  
  • Calibrate 関数、CalibrateAdvanced 関数、または CalibrateGrid 関数を使用する場合、物理セットアップと光学セットアップ (レンズ、センサ、およびセンサと取り込まれるシーンの間の物理的関係) はキャリブレーション操作とランタイム操作の両方で同一にする必要があります。このうちのいずれかが変更された場合、システムを再キャリブレーションする必要があります。したがって、キャリブレートとランタイム画像の処理の両方で、同じセンサとレンズを使用することを推奨します。センサとレンズでは、元のセットアップおよびキャリブレーション設定を変更しないようにする必要があります。例えば、画像取り込みフォーマットの変更 (解像度の変更による) またはセンサの移動を行うと、ピクセルをワールド座標にマッピングする 2D 変換が不正になります。
  • In-Sight 5604 ラインスキャンビジョンシステムは、ピクセル座標でのみ動作します。In-Sight 5604 で実行されているジョブに Calibrate 関数が追加されていると、不正な結果がもたらされます。

CalibrateAdvancedの入力パラメータ

Syntax:CalibrateAdvanced(ピクセルポイント 0.行,ピクセルポイント 0.列,ワールドポイント 0.X,ワールドポイント 0.Y,...,ピクセルポイント 31.行,ピクセルポイント 31.列,ピクセルポイント 31.列,ワールドポイント 31.X,ワールドポイント 31.Y)

ピクセルポイント 0-31

ピクセルとワールドの関連付けのピクセル座標系を指定します。

画像の行座標。

画像の列座標。

ワールドポイント 0-31

ピクセルとワールドの関連付けのワールド座標系を指定します。

X

ワールド値での X 軸座標。

Y

ワールド値での Y 軸座標。

CalibrateAdvancedの出力

戻り値

2 つの座標系間の変換を定義する係数を含んでいるキャリブデータ構造体