周囲座標(External)の取得
Namespace: FVIL.BlobAssembly: FVILbasic (in FVILbasic.dll) Version: 3.1.0.0 (3.1.0.17)
Syntax
C# |
---|
public virtual PNT_T_ARRAY GetBoundary() |
Visual Basic |
---|
Public Overridable Function GetBoundary As PNT_T_ARRAY |
Return Value
Type: PNT_T_ARRAYブローブの境界点列(外周)を取得します。
領域が複数ある場合は境界点列にストッパー(座標に System.Int32.MinValue が格納された点)が含まれます。
Remarks
この関数は CFviBlobData.Boundary の改良版です。 データコピーやインスタンス生成のコストを削減できるため、高速に取得できます。
領域の周囲座標列です。 領域の境界には external boundary と internal boundary の2種類がありますが、 本関数は external boundary のみを抽出します。(下図参照)
また、周囲座標は4連結と8連結の場合で座標が異なることがあります。
本ライブラリでは境界座標は画像座標系で反時計回りに探索(右手の法則)します。
※注意
- 周囲座標は連結性の設定により値が変化します。
- 連結性の設定は、 Neighborhood にて設定します。 ブローブ解析の場合は、前景ブローブの連結性と背景ブローブの連結性が逆になりますので注意してください。
処理に失敗した場合は例外を発行します。 例外の原因と発生位置を特定するには、発行された例外クラスの ErrorCode メンバと Function メンバを参照してください。
エラーコード:
値 | ErrorCode メンバ | 内容 |
---|---|---|
51 | FVIL.ErrorCode.LICENSE_ERROR | ライセンスキーが見つからない為、実行できません。 または、 FVIL._SetUp.InitVisionLibrary が実行されていません。 |
12 | FVIL.ErrorCode.INVALID_OBJECT | ブローブ解析結果ハンドルが無効です。 |
11 | FVIL.ErrorCode.INVALID_PARAMETER | ブローブ番号が無効です。 |
1 | FVIL.ErrorCode.FAILED_TO_ALLOCATE | メモリ確保に失敗しました。 |
関連する FIE 関数:
fnFIE_measure_get_boundary
Exceptions
Exception | Condition |
---|---|
FVIL..::..CFviException | この例外の原因については、上記のエラーコード表をご参照ください。 |