ExtractColor

ExtractColor 関数は、TrainExtractColor 関数によって返された抽出カラーライブラリデータ構造体を参照し、TrainExtractColor カラーライブラリ内で選択した登録カラーモデルと一致する、対象領域 (ROI) 内にあるピクセルの数を判定します。抽出されたカラーモデルは、ピクセル数が最高のカラーモデルに対応します。

ExtractColor 関数はカラーデータ構造体を出力し、ここには抽出されたカラーモデル、およびその他の In-Sight ビジョンツールによって参照することができる出力画像のピクセル数が含まれています。

ExtractColorの入力パラメータ

[全般] タブ

Syntax:ExtractColor(画像,フィクスチャ.行,フィクスチャ.列,フィクスチャ.角度,領域.X,領域.Y,領域.高さ,領域.幅,領域.角度,領域.カーブ,外部領域,カラーライブラリの抽出,ピクセル計数,出力画像,表示)

画像

この引数は、AcquireImage 関数によって出力された有効なカラー画像データ構造体、または別の ExtractColor 関数によって出力されたカラーデータ構造体を参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される画像データ構造体が含まれています。

:  このパラメータはカラー画像を参照している必要があります。
フィクスチャ

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

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

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

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

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

このパラメータは、AnnulusCircleRegionEditAnnulusEditCircleEditCompositeRegionEditPolygon、または EditRegion の各関数を含むスプレッドシートセルを参照できます。このパラメータを使用すると、関数は [領域] と [フィクスチャ] の設定を無視し、参照先領域で指定された画像領域を検査します。EditCompositeRegion 関数コントロールを参照している場合は、検査領域がさまざまな形状の混合となることがあります。合成領域内の各形状は、検査領域に対して加算または減算 (マスキング) されるように割り当てることができます。

:  このパラメータが外部定義領域の参照として設定されている場合に、この関数の内部領域を使用するには、セル参照に値 0 を入力し、このパラメータを手動で 0 に設定する必要があります。それ以外の場合、この関数は引き続き外部定義領域を参照します。
カラーライブラリの抽出

適切なカラーライブラリおよびカラーモデルを含んでいる TrainExtractColor 関数への参照を否定します。

:  これは、TrainExtractColor データ構造体を参照している必要があります。この関数は、TrainMatchColor 関数によって出力されたマッチカラーライブラリデータ構造体を参照することはできません。参照すると、ExtractColor 関数は #ERR を返します。
ピクセル計数

ピクセル計数のオンまたはオフを指定します。

:  ピクセル計数が不要の場合は、このパラメータをオフにして処理時間を節約してください。ピクセル計数のみが必要な場合は、このパラメータをオンにして、[出力画像] パラメータを [画像なし] に設定すると、処理時間が最高速となり、メモリへの影響は最小限になります。
0 = OFF ピクセル計数をオフにします。
1 = ON (デフォルト) ピクセル計数をオンにします。
出力画像

出力される画像のタイプを指定します。出力画像は、他の In-Sight ビジョンツールの [画像] パラメータによって参照することができます。

ExtractColor 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。

0 = マークした画像

マークした画像が出力されるように指定します。この出力画像で、有効なカラーモデルとマッチするピクセルがマークしたカラーに設定されます。これは、カラーモデル内にある最初の色のピークと反対の色です。

:  この出力画像には非常に有用なユーザのフィードバック情報が含まれていますが、非常に長い処理時間を必要とします。
1 = バイナリ画像 (デフォルト)

バイナリのグレースケール画像が出力されるように指定します。この出力画像では、有効なカラーモデルにマッチする各ピクセルを白 (255) に、それ以外のピクセルを黒 (0) に設定します。この画像は、ExtractBlobs 関数などの他の In-Sight ビジョンツールによって使用することができます。

:  この出力画像は最速の画像出力であり、メモリへの影響を最小限にします。
2 = カラー画像

カラー画像が出力されるように指定します。この出力画像では、有効なカラーモデルにマッチする各ピクセルは元の値を保持しますが、その他すべてのピクセルは 0,0,0 (RGB) に設定されます。この画像は、他の In-Sight ビジョンツールによって使用することができます。

:  この出力画像は RGB および明度の情報を含んでいるので、サイズはバイナリ画像の 4 倍です。
3 = 画像なし

画像が出力されないように指定します。

:  この設定は、最高速の実行時間を必要とするジョブで適用できます。ピクセル計数のみが必要な場合は、[ピクセル計数] パラメータをオンにして、[出力画像] パラメータを [画像なし] に設定すると、処理時間が最高速となり、メモリへの影響は最小限になります。
表示

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

0 = 非表示 (デフォルト) ExtractColor 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
2 = 結果のグラフィックスのみ 入力画像領域が常に表示されます。
3 = 入力と結果のグラフィックス 入力画像領域と抽出された色のアウトラインの両方が常に表示されます。

[カラーモデル] タブ

参照する TrainExtractColor 抽出カラーライブラリデータ構造体から抽出するカラーモデルを指定します。デフォルトでは、参照するライブラリ内に登録されているカラーモデルがすべて自動的に有効になります。

:  SetExtClrColorModelState 関数を使用して、スプレッドシートからカラーモデルを有効にすることもできます。

ExtractColorの出力

戻り値 ピクセル計数および出力画像を含んでいるカラーデータ構造体 ([出力画像] パラメータで [画像なし] が指定されている場合以外)。入力パラメータが無効であれば #ERR を返します。
結果 ExtractColor 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。

ExtractColorデータアクセス関数

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

インデックス GetExtClrModelByRank(色, ランク) ランク別のカラーモデルインデックス。
モデルカラーの抽出 GetActiveExtClrModelNa me(色, インデックス) インデックス別のカラーモデル名。
ピクセル計数 GetPixelCountByIndex(色, インデックス) インデックス別のピクセル計数。
全体のピクセル計数 GetOverallPixelCount(色) すべてのアクティブなカラーモデルのピクセル計数。