WINBIO_PREStandard Edition NCE 構造体
プレゼンスが監視されている個人のプレゼンスに関する情報が含まれます。
構文
typedef struct _WINBIO_PRESENCE {
WINBIO_BIOMETRIC_TYPE Factor;
WINBIO_BIOMETRIC_SUBTYPE SubFactor;
HRESULT Status;
WINBIO_REJECT_DETAIL RejectDetail;
WINBIO_IDENTITY Identity;
ULONGLONG TrackingId;
WINBIO_PROTECTION_TICKET Ticket;
WINBIO_PRESENCE_PROPERTIES Properties;
} WINBIO_PRESENCE, *PWINBIO_PRESENCE;
メンバー
-
要素
-
個人のプレゼンスを監視するために使用される生体認証要素。
-
SubFactor
-
個人のプレゼンスを監視するために使用される生体認証因子の生体認証サブファクター修飾子。
-
状態
-
個人の識別手順の状態。
-
RejectDetail
-
個々のユーザーを認識できないというエラーに関する追加情報 (エラーの修正方法を説明するフィードバックを含む)。
-
ID
-
プレゼンスが監視されている個人の ID (その個人が特定された後)。
-
TrackingId
-
アダプターによって生成され、個人を一意に識別する整数。 アダプターが特定の個人に割り当てる追跡識別子は、そのユーザーがカメラ フレーム内に留まっている限り、一定であることが保証されます。
-
Ticket
-
予約済み。 アダプターによって 0 に設定されます。
-
[プロパティ]
-
個人の位置に関する因子固有の情報。
解説
EngineAdapterIdentifyAll 関数は、WINBIO_PREStandard Edition NCE 構造体の配列を作成し、この配列を生体認証サービスに送信します。 生体認証サービスは、配列を使用して、コンピューターの近くにいる人の内部モデルを更新します。
この更新の結果によっては、生体認証サービスによって、アクティブなプレゼンス モニターを持つクライアントの WinBioMonitorPresence 関数に対して WINBIO_ASYNC_RESULT 構造体が生成される場合があります。 構造体のメンバーである WINBIO_ASYNC_RESULT.Operaiont には、 WINBIO_OPERATION_MONITOR_PRESENCE を含み、 WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeType メンバーは、個人の状態に関する追加情報を提供します。
エンジン アダプターが特定の追跡識別子に関連付ける個人が初めて入力ストリームに表示されると、生体認証サービスは、クライアント側の WINBIO_ASYNC_RESULT 構造体をクライアント側に生成します。この時、WINBO_ASYNC_Result.Parameters.MonitorPresence.ChangeType のメンバーは、WINBIO_CHANGE_TYPE_ARRIVAL です。 この構造体は、WINBIO_ASYNC_RESULTする他の WINBIO_ASYNC_RESULT 構造体の前に、アプリケーション コールバック関数またはアプリケーション メッセージ キューに送信されます。この時、WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.PresenceArray には、WINBIO_PRESENCE.TrackingId と同じ値を持つWINBIO_PREStandard Edition NCE 構造体が含まれています。
WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.PresenceArray メンバーが、個人の状態における特定の種類の変更を示す WINBIO_PREStandard Edition NCE 構造体の配列内の値の次の組み合わせ。
カメラ フレームに個人が映されているが、エンジンが個人を識別しようとしている場合、WINBIO_PREStandard Edition NCE 構造体のメンバーには、次の表に示すような値があります。
メンバー 値 TrackingId エンジンに対して個人を識別する整数。 状態 S_OK Identity.Type WINBIO_ID_TYPE_NULL この場合、生体認証サービスは個人の有効期限を延長し、WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeType メンバーが WINBIO_CHANGE_TYPE_RECOGNIZE である追跡識別子に対するクライアント側の WINBIO_ASYNC_RESULT 構造体を生成しません。
1 つ以上の WINBIO_ASYNC_RESULT 構造体が Status メンバーが WINBIO_E_BAD_CAPTURE の WINBIO_PREStandard Edition NCE 構造体を含んだあとで、 StatusメンバーがS_OK で、 Identity.Type メンバーが WINBIO_ID_TYPE_NULL の WINBIO_PRESENCE 構造体が WINBIO_ASYNC_RESULT 構造体に初めて含まれる場合、プレゼンス モニターは、 WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeType メンバーが WINBIO_CHANGE_TYPE_TRACK の単一の WINBIO_ASYNC_RESULT 構造体を追跡識別子に生成します。 この WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeType メンバーが WINBIO_CHANGE_TYPE_TRACK である WINBO_ASYNC_RESULT は、WINBIO_E_BAD_CAPTURE エラーの原因となった問題が解決されたことをクライアントに通知します。 WINBIO_PREStandard Edition NCE 構造体の Status が WINBIO_E_BAD_CAPTURE である場合の状況の詳細については、エンジン アダプターがこれらの認識エラーを修正するためのフィードバックをユーザーに提供する方法に関する説明を後述の注釈で参照してください。
カメラ フレームに人が映されているが、まだエンジンがその人を識別しようとしていて、認識エラーの修正に関するフィードバックをユーザーに提供したい場合、WINBIO_PREStandard Edition NCE 構造体のメンバーには、次の表に示すような値があります。
メンバー 値 TrackingId エンジンに対して個人を識別する整数。 状態 WINBIO_E_BAD_CAPTURE Identity.Type WINBIO_ID_TYPE_NULL Properties.FacialFeatures.BoundingBox、Factor の値が WINBIO_TYPE_FACIAL_FEATURES の場合 カメラ フレーム内における個人の顔の位置。 Properties.Iris.BoundingBox、Factor の値が WINBIO_TYPE_IRIS の場合 カメラ フレーム内における個人の虹彩の位置。 この場合、生体認証サービスは個人の有効期限を延長し、WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeType メンバーが WINBIO_CHANGE_TYPE_TRACK である追跡識別子に対する WINBIO_ASYNC_RESULT 構造体を生成します。
カメラ フレームに個人が映されていて、エンジン アダプターが個人を識別した場合、WINBIO_PREStandard Edition NCE 構造体のメンバーには、次の表に示すような値があります。
メンバー 値 TrackingId エンジンに対して個人を識別する整数。 状態 S_OK Identity.Type WINBIO_ID_TYPE_SID Identity.Value.AccountSid 個人のセキュリティ識別子 (SID)。 この場合、生体認証サービスは個人の SID に追跡識別子を関連付け、WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeType メンバーが WINBIO_CHANGE_TYPE_RECOGNIZE である追跡識別子に対するクライアント側の WINBIO_ASYNC_RESULT 構造体を生成します。 生体認証サービスは、個人がカメラ フレームから離れない限り、追跡識別子に対してクライアント側の WINBIO_ASYNC_RESULT 構造を追加で生成しません。
カメラ フレームに個人が映されていて、エンジン アダプターがその個人が登録されていないと特定した場合、WINBIO_PREStandard Edition NCE 構造体のメンバーには、次の表に示すような値があります。
メンバー 値 TrackingId エンジンに対して個人を識別する整数。 状態 WINBIO_E_UNKNOWN_ID Identity.Type WINBIO_ID_TYPE_NULL この場合、生体認証サービスは個人の追跡識別子に UNKNOWN という ID を関連付け、WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeType メンバーが WINBIO_CHANGE_TYPE_RECOGNIZE である追跡識別子に対するクライアント側の WINBIO_ASYNC_RESULT 構造体を生成します。 生体認証サービスは、個人がカメラ フレームから離れない限り、追跡識別子に対してクライアント側の WINBIO_ASYNC_RESULT 構造を追加で生成しません。
エンジン アダプターが特定の追跡識別子に関連付けた個人がカメラ フレームを離れ、映り込む回数が EngineAdapterIdentifyAll 関数が値を返すように設定されている値を下回ると、追跡識別子は最終的に期限切れになります。 追跡識別子の有効期限が切れると、生体認証サービスは、WINBIO_ASYNC_RESULT.Parameters.MonitorPresence.ChangeType メンバーがWINBIO_CHANGE_TYPE_DEPART のWINBIO_ASYNC_RESULT 構造体をクライアント側で生成します。 これらの注釈で前述されているように、エンジン アダプターは、WINBIO_PRESENCE.Status メンバーが S_OK で、WINBO_PRESENCE.Identity.Type メンバーが WINBIO_ID_TYPE_NULL のWINBIO_PREStandard Edition NCE 構造体を EngineAdapterIdentifyAll が返す配列に含めることで、WINBIO_CHANGE_TYPE_DEPART の値によって生体認証サービスがこの構造体を生成することを防ぐことができます。 このアクションにより、クライアント側のアクティビティを発生することなく、追跡識別子の期限を延長することができます。
必要条件
要件 | Value |
---|---|
サポートされている最小のクライアント |
Windows 10 [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
Windows Server 2016 [デスクトップ アプリのみ] |
ヘッダー |
|