NumberFound リザルト
適用
ビジョンオブジェクト: ArcFinder、ArcInspector、Blob、CodeReader、ColorMatch、Contour、Correlation、Coordinates、DefectFinder、Edge、Geometric、Line、LineFinder、LineInspector、OCR、Point、Polar
解説
サーチウィンドウ内に検出された、対象物の数を返します。
用法
VGet Sequence.Object.NumberFound, var
- Sequence
- シーケンス名かシーケンス名を示す文字列変数
- Object
- オブジェクト名かオブジェクト名を示す文字列変数。オブジェクトは指定されたシーケンスに存在していなければなりません。
- var
- リザルトの値を示す整数変数
値
検出数の有効範囲:0からNumberToFindプロパティー値
詳細説明
Blob、Correlation、Edge、およびGeometricのオブジェクトは、1つのサーチウィンドウ内で複数の対象物を検出できる機能があります。NumberToFindプロパティーは、検索する対象物の数を定義します。
NumberFoundリザルトは、実際に検出された対象物の数を返します。
NumberFoundリザルトは、特殊なリザルトです。CurrentResultプロパティーの設定値にかかわらず、指定されたビジョンオブジェクトで検出された対象物の数を返します。リザルトリストにはCurrentResultプロパティーにて選択されたリザルトが表示されます。
Blobリザルトの場合は、検出されたブローブのサイズによって、その大きい順に表示されます。(例えば、Result 1 (CurrentResult = 1)は、検出されたもっとも大きいブローブの結果を示します。)
Correlationリザルトの場合は、Scoreリザルトの高かった順に表示されます。(例えば、Result 1 (CurrentResult =1)は、もっともスコア値の高かった対象物のリザルトを示します。)
検出される順序は、Sortプロパティーの設定で変更することができます。
参照
ArcFinderオブジェクト, ArcInspectorオブジェクト, Blobオブジェクト, ColorMatchオブジェクト, Contourオブジェクト, Correlationオブジェクト, CurrentResult プロパティー, DefectFinderオブジェクト, Edgeオブジェクト, Found リザルト, Geometricオブジェクト, Lineオブジェクト, LineFinderオブジェクト, LineInspectorオブジェクト, NumberToFind プロパティー, Sort プロパティー, CodeReaderオブジェクト, OCRオブジェクト, Pointオブジェクト, Polarオブジェクト
使用例
下記のSPEL+言語のプログラム例では、Corr01というCorrelationオブジェクトを含むmtestという名前のビジョンシーケンスを実行しています。Corr01は、あらかじめ、サーチウィンドウで複数(3つ)の対象物を検出するように設定されています。下記のプログラムは、シーケンスを実行し、Corr01に対して適正な数(3つ)の対象物が検出されたか確認し、スコアリザルトを高い順に表示しています。
Function main
# define NUM_TO_FIND 3
Integer numfound
Integer score
VRun mtest
VGet mtest.Corr01.NumberFound, numfound
If numfound = NUM_TO_FIND Then
Print "The Proper Number of features(3) were found"
Else
Print "Only (", numfound, ") features were found"
Exit Function
EndIf
VGet mtest.Corr01.Score(1), score
Print "1st feature score (Best): ", score
VGet mtest.Corr01.Score(2), score
Print "2nd feature score (Medium): ", score
VGet mtest.Corr01.Score(3), score
Print "3rd feature score (Worst): ", score
Fend