6.1 Windows/Linux SDK
現状リリースしているWindows SDKのみ、M20とホストWindowsマシーンとのUSBによるシリアル通信機能の実装のためにQTの機能を使用しているため、QT環境でご利用いただく必要があります。なお、次のバージョンからはこの制限がなくなる予定です。
ここでは、Windows/Linux SDKで使用可能なAPIについて説明します。
本SDKの開発環境はQT/C#/VC++/CLIを想定しています。また下記APIの戻り値については特に指定がない場合はint型です。
WindowsSDKでアプリケーションを開発するにはQtの開発環境で開発いただく必要があります。Qtの開発環境のインストール方法についてはのQtのインストールを参照ください。
6.1.1 Equipment control section
init( )
alias: initDev
parameter: null
return: handle*
deInit( )
alias: deInitDev
parameter: handle*
return: null
enumDevice( )
parameter:
Name | Type | Remark |
videoDevBuf | char* | |
videoDevSize | int | "|"で区切られます |
serialBuf | uchar* | |
serialSize | int |
return:
検出されたデバイスの総数(ビデオデバイスの数+シリアルデバイスの数)を返します。
connectSerial( )
parameter:
Name | Type | Remark |
dev | handle* | |
portName | char* | Windows上では"com *" Linux上では"ttyacm *" |
return code:
Status Code | Remark |
0x00 | success |
0x01 | failed |
connectCamera( )
parameter:
Name | Type | Remark |
dev | handle* | |
camName | char* | Windows上では"UVC Camera" |
return code:
Status Code | Remark |
0x00 | success |
0x01 | failed |
disconnectSerial( )
parameter:
Name | Type | Remark |
dev_handle | handle* |
return:
Status Code | Remark |
0x00 | success |
0x01 | failed |
disconnectCamera( )
parameter:
Name | Type | Remark |
dev_handle | handle* |
return:
Status Code | Remark |
0x00 | success |
0x01 | failed |
Data instruction section
addImageByCamera( )
スナップショットにより画像を追加します。
parameter:
Name | Type |
dev_handle | handle* |
imageId | char* |
imageIdLength | uint |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 追加失敗 顔情報がありません |
0x02 | 追加失敗 顔情報が複数あります |
0x03 | 追加失敗 顔サイズが小さすぎます |
0x04 | 追加失敗 アラインスコアが小さすぎます |
0x05 | 追加失敗 横顔です |
0x06 | 追加失敗 顔情報が曖昧すぎます |
0x07 | 追加失敗 顔との距離が離れています |
0x08 | 追加失敗 初期化に失敗しました |
0x09 | 追加失敗 不正なパラメーターが入力されました |
0x0A | 追加失敗 featureが存在しません |
0x0B | 追加失敗 暗号化チップエラー |
0x0C | 追加失敗 このIDが存在しません |
0x0F | 追加失敗 この製品のベースは上限に達しました |
0x10 | 追加失敗 IDが無効です |
0x11 | 追加失敗 ファイルの保存に失敗しました |
0x12 | 追加失敗 ファイルの種類がJPEGではありません |
0x13 | 追加失敗 RPCの呼び出しに失敗しました |
0x14 | 追加失敗 タグ情報が不明です |
0xA0 | 追加失敗 AIサービスが初期化を完了しませんでした |
addImageByCameraImage( )
キャプチャとベース画像のエクスポートします。
parameter:
Name | Type | Remark |
dev | handle* | |
imageId | char* | |
imageIdLength | uint | |
ret | char** | 受信する画像データ (null pointerを転送してください) |
length | uint | retのデータ長 |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 追加失敗 顔情報がありません |
0x02 | 追加失敗 顔情報が複数あります |
0x03 | 追加失敗 顔サイズが小さすぎます |
0x04 | 追加失敗 アラインスコアが小さすぎます |
0x05 | 追加失敗 横顔です |
0x06 | 追加失敗 顔情報が曖昧すぎます |
0x07 | 追加失敗 顔との距離が離れています |
0x08 | 追加失敗 初期化に失敗しました |
0x09 | 追加失敗 不正なパラメーターが入力されました |
0x0A | 追加失敗 featureが存在しません |
0x0B | 追加失敗 暗号化チップエラー |
0x0C | 追加失敗 このIDが存在しません |
0x0F | 追加失敗 この製品のベースは上限に達しました |
0x10 | 追加失敗 IDが無効です |
0x11 | 追加失敗 ファイルの保存に失敗しました |
0x12 | 追加失敗 ファイルの種類がJPEGではありません |
0x13 | 追加失敗 RPCの呼び出しに失敗しました |
0x14 | 追加失敗 タグ情報が不明です |
0xA0 | 追加失敗 AIサービスが初期化を完了しませんでした |
addImageByPc( )
ホストコンピューターから画像を本デバイス側にアップロードします。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
imageId | char* | |
imageIdLength | uint | |
data | char* | 受信した画像データ |
length | uint | dataのデータ長 |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 追加失敗 顔情報がありません |
0x02 | 追加失敗 顔情報が複数あります |
0x03 | 追加失敗 顔サイズが小さすぎます |
0x04 | 追加失敗 アラインスコアが小さすぎます |
0x05 | 追加失敗 横顔です |
0x06 | 追加失敗 顔情報が曖昧すぎます |
0x07 | 追加失敗 顔との距離が離れています |
0x08 | 追加失敗 初期化に失敗しました |
0x09 | 追加失敗 不正なパラメーターが入力されました |
0x0A | 追加失敗 featureが存在しません |
0x0B | 追加失敗 暗号化チップエラー |
0x0C | 追加失敗 このIDが存在しません |
0x0F | 追加失敗 この製品のベースは上限に達しました |
0x10 | 追加失敗 IDが無効です |
0x11 | 追加失敗 ファイルの保存に失敗しました |
0x12 | 追加失敗 ファイルの種類がJPEGではありません |
0x13 | 追加失敗 RPCの呼び出しに失敗しました |
0x14 | 追加失敗 タグ情報が不明です |
0xA0 | 追加失敗 AIサービスが初期化を完了しませんでした |
uploadAddImageSlice( )
スライス(1スライスあたり最大8080バイト)の手法によって、大きな画像データを転送するために使用されます。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
imageId | char* | |
imageIdLength | uint | |
sliceData | char* | スライスされたデータ |
sliceDataLength | uint | スライスされたデータの長さ |
position | int | スライスされたデータの開始位置(たとえば、最初のデータは0から始まり、2番目は0 +最初のスライスデータの長さです) |
imageTotalLength | uint | 画像データ全体の長さ |
islastSlice | int | 最後のスライスされたデータかどうかを確認 0x00:NO 0x01:YES |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 追加失敗 顔情報がありません |
0x02 | 追加失敗 顔情報が複数あります |
0x03 | 追加失敗 顔サイズが小さすぎます |
0x04 | 追加失敗 アラインスコアが小さすぎます |
0x05 | 追加失敗 横顔です |
0x06 | 追加失敗 顔情報が曖昧すぎます |
0x07 | 追加失敗 顔との距離が離れています |
0x08 | 追加失敗 初期化に失敗しました |
0x09 | 追加失敗 不正なパラメーターが入力されました |
0x0A | 追加失敗 featureが存在しません |
0x0B | 追加失敗 暗号化チップエラー |
0x0C | 追加失敗 このIDが存在しません |
0x0F | 追加失敗 この製品のベースは上限に達しました |
0x10 | 追加失敗 IDが無効です |
0x11 | 追加失敗 ファイルの保存に失敗しました |
0x12 | 追加失敗 ファイルの種類がJPEGではありません |
0x13 | 追加失敗 RPCの呼び出しに失敗しました |
0x14 | 追加失敗 タグ情報が不明です |
0xA0 | 追加失敗 AIサービスが初期化を完了しませんでした |
getDeviceFaceID( )
一番下のデータベースのFaceIDを取得しJSON形式で返します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
ret | char* | Mandatory |
ret_buf_size | uint | Mandatory |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | アルゴリズムインターフェースの呼び出しに失敗しました |
0x02 | ファイルの長さの取得に失敗しました |
0x03 | フラグメントデータの場所が無効です |
0x04 | ファイルの読み込みに失敗しました |
-1 | unknown error |
-2 | ret_buf_sizeの長さが足りません |
deleteImage( )
parameter:
Name | Type | Remark |
dev_handle | handle* | |
mode | int | |
imageId | char* | |
imageIdLength | uint |
return:
Status Code | Remark |
0x00 | 成功 |
ID does not exist | IDが存在しません |
-1 | unknown error |
-2 | ImageIDを空にすることはできません |
queryId( )
parameter:
Name | Type | Remark |
dev_handle | handle* | |
mode | int | |
imageId | char* | |
imageIdLength | uint |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | IDが存在しません |
0x02 | 照会に失敗しました |
-1 | unknown error |
-2 | ImageIDを空にすることはできません |
setRecognizeCount( )
parameter:
Name | Type | Remark |
dev_handle | handle* | |
recognizeCount | char* | クエリの認証回数を返却します |
recognizeCount_size | unsigned int | クエリの認証回数のデータサイズを返却します、1バイト |
return:
Status Code | Remark |
0x00 | 成功 |
0x01~0x16 | 失敗 |
-1 | unknown error |
-2 | サイズが違います |
getRecognizeCount( )
parameter:
Type | Remark |
handle* | |
char* | クエリの認証回数を返却します、1バイト |
unsigned int | クエリの認証回数のデータサイズを返却します、1バイト |
char* | クエリの生体のカウント数を返却します、1バイト |
unsigned int | クエリの生体のカウント数のサイズを返却します、1バイト |
return:
Status Code | Remark |
0x00 | 成功 |
0x01~0x16 | 失敗 |
-1 | unknown error |
-2 | サイズが違います |
setTemplateUpdate( )
※設定を更新するたびに、モジュールを再起動して有効にする必要があります。
parameter:
Name | Type | Remark |
dev_handle | handle* | 0x00:アップデートを閉じます |
templateMode | int | 0x01:アップデートを開きます(デフォルト) |
return:
Status Code | Remark |
0x00 | 成功 |
-1 | 失敗 |
-2 | パラメーターエラー |
getTemplateUpdate ( )
parameter:
Name | Type | Remark |
dev_handle | handle* | |
templateMode | char* | テンプレートの更新を有効にするかどうかのクエリを返却します 0x00:Close 0x01:Open |
templateMode _size | unsigned int |
return:
Status Code | Remark |
0x00 | 成功 |
-1 | 失敗 |
-2 | パラメーターエラー |
inputImage( )
parameter:
Name | Type | Remark |
dev_handle | handle* | 0x00:スナップショットによるコントラスト |
mode | int | 0x00:デバイス側で撮影された際のコントラスト 0x01:ホストコンピューターからアップロードされた際のコントラスト |
data | char* | モードが0x01の場合の画像データ |
length | uint | モードが0x01の場合の画像データの長さ |
ret | char* | 比較結果として返却されるデータ |
ret_size | uint | 比較結果として返却されるデータサイズ |
return:
Status Code | |
0x00 | 成功 |
-1 | unknown error |
-2 | ret_sizeが小さすぎます |
addFeature( )
parameter:
Name | Type | Remark |
dev_handle | handle* | |
featureId | conset char* | 固有値を使用してライブラリの下部に追加します。IDはaddimageのIDと同じです。 |
featureIdLength | uint | IDの長さ |
data | char* | featureのデータ(長さが約1500バイトのBase64エンコードの文字列) |
length | uint | featureのデータの長さ |
return:
Status Code | Remark |
0x00 | 成功 |
-1 | unknown error |
-2 | ret_sizeが小さすぎます |
queryFeature( )
parameter:
Name | Type | Remark |
dev_handle | handle* | |
featureId | conset char* | featureのID |
featureIdLength | uint | featureのIDの長さ |
ret | char* | 出力パラメータ、返却されるクエリ固有値 |
ret_size | uint | 返却されるクエリ固有値のサイズ |
return:
Status Code | Remark |
0x00 | 成功 |
-1 | unknown error |
-2 | ret_sizeが小さすぎます |
startOnetoNumRecognize( )
1: Nの顔認証を開始します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
reomode | int | 1 生体検知かつ認証パターン 0 認証のみのパターン |
mulmode | int | 1 複数パターン 0 シングルパターン |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | サポート外 |
0x02 | ライブラリ例外 |
-1 | unknown error |
startOnetoOneRecognize( )
1: 1の顔認証を開始します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
reomode | int | 1 生体検知かつ認証パターン 0 認証のみのパターン |
mulmode | int | 1 複数パターン 0 シングルパターン |
data | char* | 1:1顔認識の下部データベースの画像データ |
length | uint | dataの長さ |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | サポート外 |
0x02 | ライブラリ識別 |
exceptions | 例外 |
-1 | unknown error |
resumeRecognize( )
認証を再開します。
parameter:
Name | Type | Remark |
dev_handle | handle* |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
pauseRecognize( )
認証を停止します。
parameter:
Name | Type | Remark |
dev_handle | handle* |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
queryRecognize( )
顔認識ステータスの照会を行います。
parameter:
Name | Type | Remark |
dev_handle | handle* |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
setReoconfig( )
顔認証の設定を行います。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
mode | int | 0x00 アルゴリズムの設定 |
jsonData | char* | 以下に具体的な説明を記載 |
jsonDataLength | uint |
return:
Status Code | Remark |
0x00 | 成功 |
0x0 | 失敗 |
-1 | unknown error |
getReoconfig( )
顔認証の設定情報をします。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
mode | int | 0x00 アルゴリズムの設定 |
ret | char* | |
ret_buf_size | uint |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
openAutoUploadAiInfo( )
認証結果のシリアルポートデータのアクティブレポートスイッチをオンにします(このAPIを呼び出すと、顔認識データレポートが利用可能になります。登録されたコールバック関数registerRecoReportCb、registerTrackReportCb、registerImageReportCb、registerFeatureReportCbに対応します)。
※画像認識と特徴値が取得できない場合は、アクティブレポートをオンにしないことをお勧めします。
後述するopenAutoUploadFaceInfoInFrameを使用するには、フレームデータレポートのみを有効にする必要があります。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
mode | int | 0x00: 全情報をレポートします |
0x02: 画像と認証結果をレポートします | ||
0x03: 特徴量と認証結果をレポートします | ||
0x04: 認証結果をレポートします | ||
imageMode | int | 0x00:RGB顔、RGB背景、IR画像はレポートされません |
0x01:RGB顔画像がレポートされます | ||
0x02:RGB背景がレポートされます | ||
0x03:RGB顔画像と背景のマップがレポートされます | ||
0x04:IRのチャートがレポートされます | ||
0x05:IR画像とRGB顔画像がレポートされます | ||
0x06:IRとRGB背景画像がレポートされます | ||
0x07:RGB顔、RGB背景、IR画像がレポートされます |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
-2 | モデルエラー |
closeAutoUploadAiInfo( )
認証結果シリアルポートデータアクティブレポートスイッチをオフにします(このAPIを呼び出すと、参照登録コールバック関数registerRecoReportCb、registerTrackReportCb、registerImageReportCb、registerFeatureReportCbに対応する顔認識データレポートがオフになります)。
parameter:
Name | Type | Remark |
dev_handle | handle* |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
registerRecoReportCb( )
コールバックレポート認証関数を登録します(この関数は、要件をアクティブにレポートし、コールバックして認証結果データを取得します)。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
handler_func | CallBackPtr_t | コールバック関数のハンドル |
return:
void
registerTrackReportCb( )
コールバックレポート追跡関数を登録します(この関数は、需要をアクティブに報告し、コールバックして追跡結果データを取得します)。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
handler_func | CallBackPtr_t | Handle to the callback function |
return:
void
registerImageReportCb( )
画像をレポートするコールバック関数を登録します(この関数は画像をアクティブにレポートし、コールバックして認識画像の結果データを取得します)。
parameter:
Name | Status Code | Remark |
dev_handle | handle* | |
handler_func | CallBackPtr_t | コールバック関数のハンドル |
return:
void
registerFeatureReportCb( )
コールバックレポート固有値関数を登録します(この関数は要件アクティブレポートです。コールバックは固有値結果を識別するデータを取得します)。
※モジュール認識結果が多すぎる場合、一部の認識機能の値は報告されません。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
handler_func | CallBackPtr_t | Handle to the callback function |
return:
void
registerReOpenCameraCb( )
登録コールバックが再度開かれると、上位のコンピューターとの接続が切断されます。そのため、新規接続を開始した際、モジュールの自己起動に対応します。最後の接続に関するアクティブなレポートを有効にする場合、新規の接続状態を維持することもできます。
parameter:
Name | Type | Remark |
handler_func | CallBackPtr_t | コールバック関数のハンドル |
return:
void
openAutoUploadFaceInfoInFrame( )
認証結果をフレームデータに挿入するスイッチをオンにします(このインターフェイスを呼び出して顔認識データを取得し、getFrame関数を呼び出して顔認識情報を取得します)。
parameter:
Name | Type | Remark |
dev_handle | handle* |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
closeAutoUploadFaceInfoInFrame( )
認識結果をフレームデータに挿入するスイッチをオフにします。
parameter:
Name | Type | Remark |
dev_handle | handle* |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
ping( )
parameter:
Name | Type | Remark |
dev_handle | handle* | |
data | char* | オプション |
length | uint | オプション(デフォルト0) |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
uploadPackageSlice( )
parameter:
Name | Type | Remarks |
dev_handle | handle* | |
position | int | 現在のデータスライスの開始位置 最初のスライスは0、2番目のスライスは0に最初のスライスの長さを加えたものです。 |
data | char | |
length | uint |
return:
Status Code | Remark |
0 | 成功 |
< 0 | 失敗 |
applyUpgrade( )
parameter:
Name | Type | Remark |
dev_handle | handle* | |
hash | char* | 取り込んだMD5のデータを受信 |
length | uint |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
getSysVer( )
parameter:
Name | Type | Remark |
dev_handle | handle* | |
ret | char* | システムバージョン情報を取得するための出力パラメーター |
ret_buf_size | uint | retのサイズ |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
0x02 | エラー |
-1 | unknown error |
-2 | ret_buf_sizeが小さすぎます |
reboot( )
reboot
parameter:
Name | Type | Remark |
dev_handle | handle* | |
mode | int | 0x00:直接再起動 0x01:USBメモリによるユーザーモードで再起動 0x02:USBメモリ以外によるユーザーモードで再起動 0x03:USBメモリによるファクトリーモードで再起動 0x04:USBメモリ以外によるファクトリーモードで再起動 |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
setUmodeToEngin( )
システムの再起動(USBメモリ以外によるファクトリーモードでの再起動と同様)します。
parameter:
Name | Type | Remark |
dev_handle | handle* |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
reset( )
システム再起動(ダイレクトリスタートと同様)します。
parameter:
Name | Type | Remark |
dev_handle | handle* |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
recovery( )
ファクトリー設定を復元します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
mode | int | 0x00 : ユーザー設定消去 0x01 : ユーザー設定保存 |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
getDevSn( )
デバイスのシリアルナンバーを取得します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
ret | char* | |
ret_buf_size | uint |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
-2 | ret_buf_sizeが小さすぎます |
getDevModel( )
デバイスモデルを取得します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
ret | char* | |
ret_buf_size | uint |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
-2 | ret_buf_sizeが小さすぎます |
setCameraStream( )
カメラを切り替えます。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
disposeMode | int | 0x00:カメラを有効にする 0x01:カメラを無効にする |
cameraMode | int | 0x00:RGBカメラ 0x01:IRカメラ |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
getCameraStream( )
カメラスイッチの状態を取得します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
cameraMode | int | 0x00:RGB camera 0x01:IR camera |
ret | char* | 0x00:Camera off 0x01:Camera on |
ret_buf_size | uint |
return:
Status Code | Remark |
0x00 | success |
0x01 | failed |
-1 | unknown error |
-2 | ret_buf_sizeが小さすぎます |
switchCamRgbIr( )
parameter:
Name | Type | Remark |
dev_handle | handle* | |
mode | int | 0x00:RGBに変更 0x01:IRに変更 |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
setIRlight()
IRライトの輝度を設定します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
luminance | int | IR ライト輝度,0-200 |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
-2 | 輝度エラー |
setIRlightAndTime( )
IRライトを自動でOFFにする時間を設定します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
luminance | int | IRライト輝度,0-200 |
time | int | IRライトが自動的に消灯する時間。単位は秒、範囲は0〜12(0x00〜0x78)。 0の場合、検出は行われません。最後の顔の検出時間が計算され、最大誤差は1秒です。現在の値のみが有効で、再起動は無効です。設定値が範囲を超える場合は、制限値を優先します。デフォルト値:30 |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
-2 | 輝度エラー |
getIRlight( )
IRライトの輝度を取得します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
ret | char* | |
ret_buf_size | uint |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
-2 | ret_buf_sizeが小さすぎます |
setFrameRate( )
フレームレートを設定します。
parameter:
Name | Status Code | Remark |
dev_handle | handle* | |
frame_rate | int | フレームレート,10-25 |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
-2 | フレームレートエラー |
getFrameRate( )
フレームレートを取得します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
ret | char* | |
ret_buf_size | uint |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
-2 | ret_buf_sizeが小さすぎます |
setResolution( )
画面サイズを設定します(360pに変更する際はご注意ください)。USB電源をすぐにオフにしないで、モジュールが同期して設定されるまで5秒間待ちます。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
mode | int | 360:360P 720:720P |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
getScreenDirection( )
スクリーンモードの取得
parameter:
Name | Type | Remark |
dev_handle | handle* | |
ret | ||
ret_buf_size |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
-2 | ret_buf_sizeが小さすぎます |
setDeviceNoFlickerHz( )
アンチフリッカー状態を設定します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
camera_id | int | 0x00:ID 0のカメラ 0x01:ID 1のカメラ |
Hz | int | 0x00:50HZ 0x01:60HZ |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
getDeviceNoFlickerHz( )
アンチフリッカー状態を取得します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
camera_id | int | 0x00:ID 0のカメラ 0x01:ID 1のカメラ |
ret | char* | |
ret_buf_size | uint |
return:
Status Code | |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
-2 | ret_buf_sizeが小さすぎます |
getLuminousSensitivityThreshold( )
現在の感光性の値を取得します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
ret | char* | |
ret_buf_size | int |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
getModuleAppVersion( )
デバイスにインストールされたアプリケーションのバージョン情報を取得します。
parameter:
Name | Type | Remark |
dev_handle | handle* | |
ret | char* | |
ret_buf_size | uint |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | 失敗 |
-1 | unknown error |
6.1.2 Media section
SetDecoding( )
ビデオデコーダーの設定に使用します。 connectCameraを実行した後、カメラは自動的に再接続します。異なるデコーダーの効率は異なる場合があります。実際の状況に応じて選択してください。現在のインターフェースは無効に設定されており、MJPEGのみをサポートします。
parameter:
Name | Type | Remark |
dev | handle* | |
mode | int | 0 - MJPEG 1 - H.264 |
getFrameWidth( )
フレームの幅を取得します。バッファサイズは幅 x 高さ x 4です。
parameter:
Name | Type |
dev | handle* |
getFrameHeight( )
フレームの高さを取得します。バッファサイズは幅 x 高さ x 4です。
parameter:
Name | Type |
dev | handle* |
getFrame( )
画像のフレームと検証情報を取得します。画像の保存形式はビットマップで、順序はBBGGRRAAです。呼び出し元は、最新の画像を取得するためにAPIをポーリングする必要があります。これらのアイテムの1つについて、バッファサイズをゼロに設定して、1つのアイテムのみが取得されるようにできます。たとえば、imageBufとimageSizeが0の場合、verifyBufが通常渡されると、画像の代わりに顔認識情報を取得できます。
parameter:
Name | Type |
dev | handle |
imageBuf | char* |
imageSize | int |
verifyBuf | char* |
verifySize | int |
return:
Status Code | Remark |
0x00 | 成功 |
0x01 | バッファが小さすぎるか、画像サイズと一致しません |
0x02 | 検証情報用のバッファが小さすぎます |
-1 | 新しい画像はまだありません |
Verifybufはデバイスから送信された検証情報をJSONの形式で保存します。
Verifybufのデータ構造における各フィールド名称とその説明は以下の通りです。
Name | Type | Remark |
faceinfo | array | |
rect | object | |
bottom | int | |
right | int | |
left | int | |
top | int | |
recognition_status | int | 認証結果の状態を示す値: 0:まだ認証されていない 1:非生体 2:ライブラリに保存されている人物 3:未登録者 4:識別結果 |
recognition_id | string | UNKNOWN NOLIVENESS PERSON ID STRANGER |
recognize_score | float | 初回成功時のみ取得可能です |
liveness_score | floa | 上記と同様です |
Verifybufの例:
trackinfoとして説明すると以下となります。
説明 | ||
track_info (認証結果) | recognition_id (取り得る値はPERSON ID, UNKNOW, STRANGER,NONLIVENESS) | |
recognition_status (取り得る値は0,1,2,3,4) | ||
liveness_score (生体検知のスコアは認証が成功した後に取得できます) | ||
recognize_score (認証スコアは認証が成功した後に取得できます) | ||
face_info (顔情報) | rect (顔の座標) | |
track_id (顔追尾ID) | ||
masksign (マスクをしているかどうか) -1:マスクをしているかどうかの判定なし 1:マスクをしていない 2:マスクをしている 3:マスクが正しい位置に無い | setreoconfigの設定が必要です。 enable mask_signがfalseに設定されている場合、mask_signは常に-1になります。 マスク検知がオンになっている場合は、追跡結果を含むJSONではなく、認証スコアと生体検知スコア項目を使用してJSONを識別することをお勧めします。 | |
safety_hat 安全ヘルメットを検出します | 安全ヘルメット検出をオンにすることはお勧めしません。デフォルトではオフになっています。 |
setReoconfig jsonDataについて
AIサービスの構成情報を設定するjsonDataのデータ構造について説明します。具体的には以下の構造となります。
各々のパラメーターについては以下で説明します。
パラメーター名 | パラメータータイプ | パラメーター範囲とデフォルト値 |
work_mode | enum | 0: 1:N 認証 1: 1:1 認証 デフォルト値: 0 |
recognize_mode | enum | 0:認証のみ 1:認証と生体検知 2:生体検知のみ デフォルト値: 1 |
face_mode | enum | 0:1つの顔に対応 1:複数の顔に対応 デフォルト値: 1 |
enable_qr_code | Boolean | false:QRコード設定モードをOFF true: QRコード設定モードをON デフォルト値: false |
enable_track_box | Boolean | false:track feedback box を無効にする true: rack feedback box を有効にする デフォルト値: true |
liveness_thresh | Float | 生体認証しきい値 データの取得範囲 0~1 デフォルト値: 0.98 |
recognition_thresh | Float | 認証しきい値 データの取得範囲 0~1 デフォルト値: 0.90 |
verify_thresh | float | 1:1 認証しきい値 データの取得範囲 0~1 デフォルト値: 0.90 |
recognition_interval | Int | 同じ顔追跡IDを連続認証する際の時間間隔 デフォルト値: 5 |
report_interval | Int | データベースに同じユーザーIDを継続してレポートする際の時間間隔 デフォルト値: 5 |
max_face_cnt | Int | 顔追尾可能な顔最大数 デフォルト値: 4 |
face_size | Int | フィルタできる顔ピクセルの最大値 デフォルト値: 10 |
enable_feature_export | boolean | false:featureを返送しない true:featureを返送する デフォルト値:false |
enable_image_export | boolean | false: ライブ画像を返送しない true:ライブ画像を返送する デフォルト値:true |
ae_mode | int | 0:モジュールに備えられたAE機能 1:個人で開発したAE機能 デフォルト値:0 |
ae_flicker_freq | int | AEアンチフリッカー周波数 0:アンチフリッカーをON 50:50HzでアンチフリッカーをON 60:60HzでアンチフリッカーをON デフォルト値:0 |
enable_safety_hat | Boolean | false:safety_hat検知を無効にする true:safety_hat検知を有効にする デフォルト値: false |
enable_mask_sign | Boolean | false:マスク検知を無効にする true:マスク検知を有効にする デフォルト値: false |
Last updated