人数カウンタの SDK 使用方法
・ 目次
▼人数カウント機能の概要
▼人数カウンタの API/構造体
▼人数カウントを有効にする手続き
▼構造体:NET_DVR_PDC_RULE_COND (人数カウントルールの設定条件の構造体)
▼構造体:NET_DVR_PDC_RULE_CFG_V42 (人数カウントルールの設定条件の構造体)
▼構造体:NET_DVR_PDC_ALRAM_INFO (人数カウント統計のアラーム情報)
▼構造体:NET_DVR_PDC_RESULT (人数カウントデータ検索の結果の構造体)
▼NET_DVR_PDC_ENTER_DIRECTION (人数カウント統計の方向)
▼NET_DVR_PDC_QUERY_COND (人数カウントデータ検索の条件)
人数カウント機能は、指定された時間帯内でラインを越える人物 または、物体の統計情報を提供します。
統計タイプには、リアルタイム統計と周期的統計の 2種類があります。
■ リアルタイム統計
・ リアルタイム統計(デバイス再起動によるクリア、手動クリア、または、前日のゼロ時点での自動クリアによるクリア後に計算を開始)は、
カウントが変更されるとアップロードされます。
・ カウントが頻繁に変更される場合、この統計情報は 1秒毎に更新されます。
■ 周知的統計
・ 設定された統計期間内で増加した数を示します。
・ 更新頻度は設定された統計期間です。(デフォルトの期間は 15分で、最短期間は 1分、最長期間は 60分です。)
名前 | 種別 | 説明 |
NET_DVR_PDC_RULE_CFG_V42 | 構造体 | 人数カウントルールの設定パラメータ |
NET_DVR_PDC_RULE_COND | 構造体 | 人数カウントルールの設定条件 |
NET_DVR_PDC_ALRAM_INFO | 構造体 | 人数カウント統計のアラーム情報 |
NET_DVR_PDC_RESULT | 構造体 | 人数カウントデータ検索の結果 |
NET_DVR_PDC_ENTER_DIRECTION | 構造体 | 人数カウント統計の方向 |
NET_DVR_PDC_QUERY_COND | 構造体 | 人数カウントデータ検索の条件 |
NET_DVR_SetupAlarmChan_V50 | API | アラーム/イベント情報を受信するための永続的な接続をセットアップします (アラーム/イベントのサブスクリプションをサポート) |
NET_DVR_CloseAlarmChan_V30 | API | アラームアップロードチャンネルを閉じます |
NET_DVR_GetDVRConfig | API | デバイスの構成情報を取得します |
NET_DVR_SetDVRConfig | API | デバイスパラメータを設定します |
NET_DVR_StartListen_V30 | API | アラーム/イベント情報を受信するためのコールバック関数を登録し、リッスンを開始します (マルチスレッドをサポート) |
NET_DVR_StopListen_V30 | API | リスニングを停止します(複数のスレッドをサポートします) |
人数カウント中、入場、退場、または、通過した人数(大人 及び、子供を含む)をカウントすることができます。
1.「NET_DVR_GetDeviceAbility」を呼び出し、dwAbilityType を「DEVICE_ABILITY_INFO」(マクロ定義値:0x011)に設定します。
VCA チャンネルの能力を取得するためのメッセージ「XML_Desc_VcaChanAbility」を plnBuf に設定して、このデバイスが人数カウントを
サポートしているかどうかを確認します。
VCA チャンネルの能力は、pOutBuf によって、メッセージ「XML_VcaChanAbility」に返されます。
サポートされている場合、能力メッセージにノード<PDC>が返されるので、以下の手順を続行できます。
それ以外の場合、デバイスは人数カウントをサポートしていないため、このタスクを終了してください。
2. オプション「NET_DVR_GET_PDC_RULECFG_V42」(コマンド番号:3405)を使用して、「NET_DVR_GetDeviceConfig」を呼び出し、
lplnBuffer を「NET_DVR_PDC_RULE_COND」として指定します。
検出領域(ライン)、警報スケジュール、連動アクションなどを含む人数カウントパラメータを取得できます。
人数カウントパラメータは、lpOutBuffer によって「NET_DVR_PDC_RULE_CFG_V42」構造体に返されます。
3.「NET_DVR_SetDeviceConfig」を呼び出し、「NET_DVR_SET_PDC_RULECFG_V42」(コマンド番号:3406)を使用します。
lplnBuffer を「NET_DVR_PDC_RULE_COND」として指定し、人数カウントを有効に設定します。
パラメータを設定するために lplnParamBuffer を「NET_DVR_PDC_RULE_CFG_V42」に設定します。
※ 注意
・ プラットフォームでアラームを受信するには、連動アクションを「center」(センターにアップロード)に設定する必要があります。
・ 人数カウントパラメータの設定は、デバイスにウェブページ経由でログインしても行うことができます。
4. オプション:アラーム/イベントコールバック関数「MSGCallBack」の Command を「COMM_ALARM_PDC」(コマンド番号:0x1103)に設定します。
人数カウントが有効な場合に警戒モード(警戒モードでのアラーム/イベントの受信を参照)または、リスニングモード(リスニングモードでの
アラーム/イベントでの受信を参照)で、構造体「NET_DVR_PDC_ALRAM_INFO」によって、人数カウントデータを自動アップロードするためのものです。
5. オプション:人数カウントデータを検索し、レポートを取得します。
構造体:NET_DVR_PDC_RULE_COND (人数カウントルールの設定条件の構造体)
構造体定義
struct{
DWORD dwSize;
DWORD dwChannel;
BYTE byRes[64];
}NET_DVR_PDC_RULE_COND, *LPNET_DVR_PDC_RULE_COND;
パラメーター | 説明 |
dwSize | 構造体のサイズ |
dwChannel | チャネル番号 |
byRes | 予約済みフィールド、0 に設定されています |
構造体:NET_DVR_PDC_RULE_CFG_V42 (人数カウントルールの設定条件の構造体)
構造体:NET_DVR_PDC_ALRAM_INFO (人数カウント統計のアラーム情報)
構造体:NET_DVR_PDC_RESULT (人数カウントデータ検索の結果の構造体)
NET_DVR_PDC_ENTER_DIRECTION (人数カウント統計の方向)
構造体定義
struct{
NET_VCA_POINT struStartPoint;
NET_VCA_POINT struEndPoint;
}NET_DVR_PDC_ENTER_DIRECTION, *LPNET_DVR_PDC_ENTER_DIRECTION;
パラメーター | 説明 |
struStartPoint | 開始点のパラメーター |
struEndPoint | 終了点のパラメーター |