AI カメラ(車両分析)の応用

・ 目次
分析対象車両の表示
監視カメラに認識エンジンを搭載
車両番号の認証
車両の監視
車両情報の音声通知
自動車番認識の SDK 使用方法
アラーム/イベントの受信
ANPR(Automatic Number Plate Recognition) 自動車認識の API
警戒モードでのアラーム/イベントの受信
リスニングモードでのアラーム/イベントの受信
API:NET_DVR_SetDVRMessageCallBack_V50
API:NET_DVR_StartListen_V30
構造体:NET_ITC_PLATE_RECOG_REGION_PARAM (ナンバープレート認識領域パラメータ)

分析対象

ANPR 車の色 ブランド
プレートタイプ サブブランド サンバイザー
イエローレーベルカー 車体の色 ベルト

■ リアルタイムビデオ構造分析
■ 履歴ビデオ構造分析
■ アップロードビデオ構造分析


分析対象車両の表示


監視カメラに認識エンジンを搭載

図柄入りも問題なく、認証できます。


車両番号の認証


車両の監視


車両情報の音声通知


自動車番認識の SDK 使用方法

・ 目次
自動車番認識の SDK 使用方法
アラーム/イベントの受信
ANPR(Automatic Number Plate Recognition) 自動車認識の API
警戒モードでのアラーム/イベントの受信
リスニングモードでのアラーム/イベントの受信
API:NET_DVR_SetDVRMessageCallBack_V50
API:NET_DVR_StartListen_V30
構造体:NET_ITC_PLATE_RECOG_REGION_PARAM (ナンバープレート認識領域パラメータ)


アラーム/イベントの受信

アラームがトリガーされた時、または、イベントが発生した時にデバイスからのアラーム/イベント情報をサードパーティのプラットフォーム
または、システムで受信できます。
アラームの受信には、警戒モードとリスニングモードの 2つのモードが使用できます。

■ 警戒モード
・ サードパーティのプラットフォームは、自動的にデバイスに接続します。
・ アラームがトリガーされるとプラットフォームは、アラームのアップロードコマンドをデバイスに送信します。
・ デバイスは、アラームをプラットフォームにアップロードします。

■ リスニングモード
・ アラームがトリガーされるとデバイスは、自動的にアラームをアップロードします。
・ サードパーティのプラットフォームは、認定されたリスニングホスト(リスニングアドレスとポートを設定する必要があります)経由で
     アップロードされたアラームを受信します。
・ リスニングモードは、デバイスへログインせずにアラーム/イベント情報を 1つのサードパーティプラットフォームにアップロードする
     複数のデバイスに適用できます。
・ デバイスの再起動はアラーム/イベントのアップロードに影響しません。
・ 但し、デバイスがサポートできるのは、1つ または、2つのリスニングアドレスとポートの構成のみです。


ANPR(Automatic Number Plate Recognition) 自動車認識の API

名前 種別 説明
NET_ITC_PLATE_RECOG_PARAM 構造体 ANPR パラメータ
NET_ITC_PLATE_RECOG_REGION_PARAM 構造体 ナンバープレート認識領域パラメータに関する情報
NET_ITS_PLATE_RESULT 構造体 ANPR 結果
NET_DVR_VEHICLE_INFO 構造体 車両情報
NET_DVR_PLATE_INFO 構造体 取得されたナンバープレート情報
NET_DVR_VEHICLE_ADDINFO 構造体
NET_DVR_SetDVRMessageCallBack_V50 API 動画データを取得するためのコールバック関数を設定します
(アラーム/イベント情報を返すコールバック関数を設定します)
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 リスニングを停止します(複数のスレッドをサポートします)
VLR_VEHICLE_CLASS 列挙型 車両の親ブランド
VTR_RESULT 列挙型 車両タイプの認識結果
COUNTRY_INDEX 列挙型 国名


警戒モードでのアラーム/イベントの受信

アラームがトリガーされるか、イベントが発生すると二次開発されたサードパーティプラットフォームが自動的に接続して、
デバイスにアラーム/イベントアップロード コマンドを送信します。
デバイスはアラーム/イベント情報をプラットフォームにアップロードして受信します。

※ 注意
・ 設定されたアラームがトリガーされるか、イベントが発生すると アラーム/イベント情報がデバイスによってアップロードされ、
    コールバック関数で返されます。
・ アラーム/イベントを表示し、いくつかの処理操作を実行できます。
・ デバイスネットワーク SDK (HCNetSDK) を介した統合の場合、様々なタイプのアラーム/イベント情報を受信するには、設定されたコールバック関数の
    パラメーター「lCommand」(アップロードされるデータタイプ)が異なる必要があります。
・ テキストプロトコルによる統合の場合、「lCommand」を「COMM_ISAPI_ALARM」(コマンド番号:0x6009)に設定し、
    コールバック関数「MSGCallBack」の入力パラメータ pAlarminfo を「NET_DVR_ALARM_ISAPI_INFO」に設定する必要があります。


リスニングモードでのアラーム/イベントの受信

一定時間、監視画像に車両が映り、認識パラメータが設定されている場合、ANPR カメラが自動的に車両の画像を撮影します。
カメラがナンバープレートを分析し、ANPR アラームがトリガーされます。

※ 注意
・ デバイスネットワーク SDK (HCNetSDK) を介した統合の場合、様々なタイプのアラーム/イベント情報を受信するには、設定されたコールバック関数の
    パラメーター「lCommand」(アップロードされるデータタイプ)が異なる必要があります。
・ テキストプロトコルによる統合の場合、「lCommand」を「COMM_ISAPI_ALARM」に設定し、コールバック関数「MSGCallBack」の
    入力パラメータ pAlarminfo を「NET_DVR_ALARM_ISAPI_INFO」に設定する必要があります。


API:NET_DVR_SetDVRMessageCallBack_V50

構造体定義
BOOL NET_DVR_SetDVRMessageCallBack_V50(
int ilndex,
MSGCallBack fMessageCallBack,
void *pUser
);

パラメーター 説明
ilndex [IN] コールバック関数のインデックス番号、0 から 15 までの範囲です
fMessageCallBack [IN] コールバック関数
pUser [IN] ユーザーデータ
戻り値 成功した場合は TRUE を返し、失敗した場合は FALSE を返します
FALSE が返された場合、エラーコードを取得するために「NET_DVR_GetLastError」を呼び出します

● 備考
・ この API は、異なるチャンネル用に複数のコールバック関数を同時に設定できます。(最大 16チャンネルまでサポート)
・ 設定されたコールバック関数は、インデックス番号で区別されます。
・ 全ての警報/イベント情報は、各設定されたコールバック関数 (MSGCallBack) 内の pAlarminfo を使用してデバイスを識別できます。


API:NET_DVR_StartListen_V30

構造体定義
LONG NET_DVR_StartListen_V30(
char *sLocallP,
WORD wLocalPort,
MSGCallBack DataCallback,
void *pUserData
);

パラメーター 説明
sLocallP [IN] ローカル PC の IP アドレス、null に設定できます
wLocalPort [IN] ローカル PC のリスニングポート番号、ユーザーによって設定され、
デバイスのポート番号と同じである必要があります
DataCallback [IN] 警報/イベント情報のコールバック関数
pUserData [IN] ユーザーデータ
戻り値 失敗の場合は -1 を返し、「NET_DVR_StopListen_V30」のハンドルパラメーターに対する他の値を返します
-1 が返された場合、エラーコードを取得するために「NET_DVR_GetLastError」を呼び出すことができます
この API の利用可能なエラーコードは 0、3、6、12、17、41、44、47、72、75 です

● 備考
・ デバイスから送信された警報/イベント情報を受信するには、デバイスの管理ホストサーバーアドレス または、リスニングホストサーバーアドレスを
     PC の IP アドレスに設定(sLocallP と同じである必要があります)するか、管理ホストサーバーポート または、リスニングホストサーバーポートを
     PC のリスニングポート番号に設定(wLocalPort と同じである必要があります)する必要があります。
・ この API のコールバック関数は、他のコールバック関数よりも優先されます。
・ この API でコールバック関数が設定されている場合、他のコールバック関数は警報情報を受信しません。
・ 全てのデバイスの警報情報は同じコールバック関数内で返され、警報デバイス情報(pAlarminfo)を使用してデバイスを識別できます。


構造体:NET_ITC_PLATE_RECOG_REGION_PARAM (ナンバープレート認識領域パラメータ)

構造体定義
struct{
BYTE byMode;
BYTE byRes1[3];
union{
NET_VCA_RECT struRect;
NET_ITC_POLYGON struPolygon;
}uRegion;
BYTE byRes[16];
}NET_ITC_PLATE_RECOG_REGION_PARAM,
*LPNET_ITC_PLATE_RECOG_REGION_PARAM;

パラメーター 説明
byMode エリアのタイプ
0:矩形エリア
1:多角形エリア
byRes1 予約済み
struRect 矩形エリア
struPolygon 多角形エリア
byRes 予約済み