サンプルアプリ一覧

SDKに同梱しているサンプルアプリの一覧です。

自由にご使用いただけます。

お客様の動作環境での動作を保証するものではありません。サンプルアプリをそのまま実運用に利用できるかはお客様にて動作を確認ください。
また、サンプルアプリの改造や新規アプリの設計について、個別のお客様からのお問い合わせには回答出来かねます。予めご了承ください。

概要

C

Python

ReadMe

アプリ名

AdamAPI(一部関数を省く*1

アプリ名

AdamAPI(一部関数を省く*2

映像または音声ストリームに付加情報を付与する

additional_info_sample_app

ADAM_AdditionalInfo_Set
ADAM_ServerResponse_Send

additional_info_sample_app

adam_additional_info_set
adam_set_appPref_callback

動作説明はこちら

一定間隔でカメラ内蔵アラームを通知する

alarm_sample_app

ADAM_Alarm_Notify
ADAM_CyclicTimer_Cancel
ADAM_CyclicTimer_Start
ADAM_GetAppDataDirPath
ADAM_ServerResponse_Send
ADAM_StopMe

alarm_sample_app

adam_alarm_notify

動作説明はこちら

GUI画面からAppPref表示、設定を行う

apppref_gui_sample_app

ADAM_GetInstallId
ADAM_ServerResponse_Send

apppref_gui_sample_app

 特筆なし

動作説明はこちら

一定間隔で音声を取得し、ログ出力を行う

audio_app

ADAM_DevRawAudio_Create
ADAM_ServerResponse_Send

audio_app

adam_dev_rawaudio_create

動作説明はこちら

GUI画面からカメラ用CGIを実行する

cgiSendCommandApp

ADAM_GetInstallId
ADAM_ServerResponse_Send

 -

 -

動作説明はこちら

複数のコンテナを利用するアプリケーション

docker_multi_images

ADAM_ServerResponse_Send

 -

 -

動作説明はこちら

カメラが撮影した映像から文字を読み取り、読み取った文字を表示する

docker_ocr_app

ADAM_GetAppTmpDirPath
ADAM_DevRawVideo_Create
ADAM_ServerResponse_SendAsIs

 -

 -

動作説明はこちら

ファイルディスクリプタイベントを受信し、ログ出力を行う

fd_sample_app

ADAM_DEBUG_SET_PRINT_LEVELS
ADAM_DevFd_Create
ADAM_ServerResponse_Send

 -

 -

動作説明はこちら

メインスレッドか ら死活監視付きサ ブスレッドを作成する

freestyle_app_with_keepalive

ADAM_KeepAlive_Add ADAM_KeepAlive_NotifyAlive
ADAM_ServerResponse_Send ADAM_KeepAlive_Remove

 -

 -

動作説明はこちら

ソケット通信を行う(クライアント側)

iac_client_sample_app

ADAM_ServerResponse_SendAsIs

 -

 -

動作説明はこちら

ソケット通信を行う(サーバ側)

iac_server_sample_app

ADAM_ServerResponse_SendAsIs

 -

 -

動作説明はこちら

アラーム入力イベントを受信し、アラーム種別の出力を行う

inputalarm_app

ADAM_DevInputAlarm_Create

ADAM_ServerResponse_SendAsIs

 -

 -

動作説明はこちら

カメラ画像をJPEG形式で保存する

※CV5Xカメラでは、jpeg_app_for_CV5Xを参照ください

jpeg_app

jpeg_app_for_CV5X

ADAM_CamPref_Get
ADAM_GET_WIDTH
ADAM_GET_HEIGHT
ADAM_DevYcVideo_Create
ADAM_ServerResponse_SendAsIs
ADAM_SET_RESOLUTION
ADAM_SET_FRAME_RATE

jpeg_app

jpeg_app_for_CV5X

adam_cv_yc2rgb
adam_cv_rgb_convert
adam_dev_rawvideo_create

動作説明はこちら

一定間隔でメタデータを送信する

meta_stream_app

ADAM_CyclicTimer_Cancel
ADAM_GetAppTmpDirPath
ADAM_MetaDataStream_SetRaw
ADAM_ServerResponse_Send

metaDataStream_sample_app

adam_meta_data_stream_set_raw
adam_get_app_data_dir_path

動作説明はこちら

映像データのMP4を作成する

mp4rec_app

ADAM_GetInstallId
ADAM_MP4Rec_FileDelete
ADAM_MP4Rec_Set_ErrCB
ADAM_MP4Rec_Start
ADAM_MP4Rec_Stop
ADAM_ServerResponse_Send

mp4rec_app

adam_mp4rec_file_delete
adam_mp4rec_set_errCB
adam_mp4rec_start
adam_mp4rec_stop

動作説明はこちら

MQTTによる通信を行う

mqtt_sample

ADAM_CamInfo_GetSerialNo
ADAM_ServerResponse_Send

mqtt_sample

 特筆なし

動作説明はありません。
※C版では下記3つの外部ライブラリ
・libpaho-mqtt3cs
・libssl
・libcrypto
Python版では下記の外部ライブラリ
・Paho MQTT Library
を用いることになります。

画像のエッジを検出し表示する

opencv_edge_detection_app

ADAM_DevYcVideo_Create
ADAM_GetAppTmpDirPath
ADAM_SET_FRAME_RATE
ADAM_SET_RESOLUTION
ADAM_ServerResponse_SendAsIs

 -

 -

動作説明はこちら

サンプルアプリのベース

skeleton_sample_app

ADAM_ServerResponse_Send

 -

 -

動作説明はこちら

GUIからSQLiteを実行する

sqlite_app

ADAM_ServerResponse_Send
ADAM_GetInstallId

sqlite_app

 特筆なし

動作説明はこちら

WEB UIでアプリに一般的に必要とされる表示や設定機能をもったサンプルアプリ

web_template_app

ADAM_AI_BlobByName
ADAM_AI_CloseNet
ADAM_AI_DeInitSSD
ADAM_AI_InitSSD
ADAM_AI_OpenNet
ADAM_AI_RunNet
ADAM_AI_RunSSD
ADAM_CamInfo_Get
ADAM_CamPref_Get
ADAM_CV_CreateBlob
ADAM_CV_DeleteBlob
ADAM_CV_GetCpuData
ADAM_CV_ImageRotate
ADAM_CV_SetCpuData
ADAM_CV_Yc2Rgb
ADAM_CV_YcResize
ADAM_CyclicTimer_Cancel
ADAM_CyclicTimer_Start
ADAM_DevInputAlarm_Create
ADAM_DevYcVideo_Create
ADAM_GetAppDataDirPath
ADAM_GetAppTmpDirPath
ADAM_GetInstallId
ADAM_PtzDigitalFlipState_Get
ADAM_ServerResponse_Send
ADAM_ServerResponse_SendAsIs

web_template_app

adam_ai_blob_by_name
adam_ai_close_net
adam_ai_deinit_ssd
adam_ai_init_ssd
adam_ai_init_ssd
adam_ai_open_net
adam_ai_run_net
adam_ai_run_ssd
adam_alarm_notify
adam_cam_info_get
adam_cam_pref_get
adam_cv_image_rotate
adam_cv_rgb_convert
adam_cv_rgb_convert
adam_cv_yc_resize
adam_cv_yc2rgb
adam_cv_yc2rgb
adam_cv_yc2rgb
adam_dev_rawvideo_create
adam_dev_rawvideo_create
adam_get_app_data_dir_path
adam_get_app_tmp_dir_path
adam_meta_data_stream_set_raw
adam_ptz_digital_flip_state_get

動作説明はこちら

YC画像を取得し、H265またはJPEGへエンコード、出力する

ycencode_sample_app

ADAM_CyclicTimer_Cancel
ADAM_DevYcEncode_GetBuf
ADAM_DevYcEncode_SetBuf
ADAM_SET_RESOLUTION
ADAM_ServerResponse_Send

ycencode_sample_app

adam_dev_yc_encode_get_buf
adam_dev_yc_encode_set_buf
adam_dev_ycencode_create_h26x
adam_dev_ycencode_create_jpeg
adam_dev_ycvideo_create

特記事項なしのため、動作説明はありません。
注意事項はこちら

カメラ上のモデルを推論、結果を出力する

yuv_dnn_app

ADAM_AI_BlobByName
ADAM_AI_CloseNet
ADAM_AI_OpenNet
ADAM_AI_RunNet
ADAM_CV_CreateBlob
ADAM_CV_DeleteBlob
ADAM_CV_GetCpuData
ADAM_CV_RgbResize
ADAM_CV_SetCpuData
ADAM_CV_Yc2Rgb
ADAM_SET_FRAME_RATE
ADAM_SET_RESOLUTION
ADAM_ServerResponse_Send

yuv_dnn_app

adam_ai_blob_by_name
adam_ai_close_net
adam_ai_open_net
adam_ai_run_net
adam_cv_rgb_resize
adam_cv_yc2rgb
adam_dev_ycvideo_create
adam_get_app_data_dir_path

動作説明はこちら

カメラ上のモデルの骨格検知を描画する

 -

 -

yuv_pose_app

adam_cv_yc_resize
adam_cv_yc2rgb
adam_ai_run_net
adam_ai_open_net
adam_ai_blob_by_name
adam_dev_ycvideo_create
adam_ai_close_net

動作説明はこちら

カメラ上のモデルにオブジェクト名と枠を描画する

yuv_ssd_app

ADAM_AI_BlobByName
ADAM_AI_CloseNet
ADAM_AI_DeInitSSD
ADAM_AI_InitSSD
ADAM_AI_OpenNet
ADAM_AI_RunNet
ADAM_AI_RunSSD
ADAM_CV_CreateBlob
ADAM_CV_DeleteBlob
ADAM_CV_SetCpuData
ADAM_CV_Yc2Rgb
ADAM_CV_YcResize
ADAM_SET_FRAME_RATE
ADAM_SET_RESOLUTION
ADAM_ServerResponse_Send

yuv_ssd_app

adam_ai_blob_by_name
adam_ai_close_net
adam_ai_deinit_ssd
adam_ai_init_ssd
adam_ai_open_net
adam_ai_run_net
adam_ai_run_ssd
adam_cv_yc2rgb
adam_cv_yc_resize
adam_dev_ycvideo_create
adam_get_app_data_dir_path

動作説明はこちら

カメラ上のモデルにオブジェクト名と枠を描画する

yuv_yolo_app

ADAM_AI_BlobByName
ADAM_AI_CloseNet
ADAM_AI_OpenNet
ADAM_AI_RunNet
ADAM_CV_CreateBlob
ADAM_CV_DeleteBlob
ADAM_CV_GetCpuData
ADAM_CV_SetCpuData
ADAM_CV_Yc2Rgb
ADAM_CV_YcResize
ADAM_SET_FRAME_RATE
ADAM_SET_RESOLUTION
ADAM_ServerResponse_Send

yuv_yolo_app

adam_ai_blob_by_name
adam_ai_close_net
adam_ai_open_net
adam_ai_run_net
adam_cv_yc2rgb
adam_cv_yc_resize
adam_dev_ycvideo_create
adam_get_app_data_dir_path

動作説明はこちら

カメラ上のモデルにオブジェクト名と枠を描画する

yuv_yolov5_app

ADAM_AI_BlobByName
ADAM_AI_CloseNet
ADAM_AI_OpenNet
ADAM_AI_RunNet
ADAM_CV_CreateBlob
ADAM_CV_DeleteBlob
ADAM_CV_GetCpuData
ADAM_CV_SetCpuData
ADAM_CV_Yc2Rgb
ADAM_CV_YcResize
ADAM_SET_FRAME_RATE
ADAM_SET_RESOLUTION
ADAM_ServerResponse_Send

yuv_yolov5_app

adam_ai_blob_by_name
adam_ai_close_net
adam_ai_open_net
adam_ai_run_net
adam_cv_yc2rgb
adam_cv_yc_resize
adam_dev_ycvideo_create
adam_get_app_data_dir_path

動作説明はこちら

カメラ上のモデルにオブジェクト名と枠を描画する

yuv_yolov8_app

ADAM_AI_BlobByName
ADAM_AI_CloseNet
ADAM_AI_OpenNet
ADAM_AI_RunNet
ADAM_CV_CreateBlob
ADAM_CV_DeleteBlob
ADAM_CV_GetCpuData
ADAM_CV_SetCpuData
ADAM_CV_Yc2Rgb
ADAM_CV_YcResize
ADAM_SET_FRAME_RATE
ADAM_SET_RESOLUTION
ADAM_ServerResponse_Send

yuv_yolov8_app

adam_ai_blob_by_name
adam_ai_close_net
adam_ai_open_net
adam_ai_run_net
adam_cv_yc2rgb
adam_cv_yc_resize
adam_dev_ycvideo_create
adam_get_app_data_dir_path

動作説明はこちら

*1下記のC版APIの記載は省略しています。

ADAM_Open
ADAM_Close
ADAM_Eventloop_Add
ADAM_Eventloop_Exit
ADAM_Eventloop_Dispatch
ADAM_Eventloop_Remove
ADAM_DEBUG_PRINT
ADAM_GetSdCardPath
ADAM_ASSERT
ADAM_RTN_ASSERT
ADAM_AppPref_Lock
ADAM_AppPref_Unlock
ADAM_AppPref_GetEnumeration
ADAM_AppPref_GetInteger
ADAM_AppPref_GetString

 

*2下記のPython版APIの記載は省略しています。

adamEventloop
adam_set_stop_callback
adam_set_http_callback
adam_cv_create_blob
adam_cv_delete_blob
adam_cv_set_cpu_data
adam_cv_get_cpu_data
adam_lock_appPref
adam_unlock_appPref
adam_get_appPref
adam_debug_print
adam_set_appPref
adam_app_pref_reset

 

【ご注意】

SDK Ver2.00にて、Python版サンプルAdamAppアプリが動作しない場合があります。
Python版サンプルAdamAppアプリが動作しない場合、下記をお試しください。

\iPRO_CAMERA_SDK_Vx_xx\src\adamapp-py\(任意のサンプルアプリ)\.c_cxx_src\main.cpp
を下記の通り、3か所全てを修正ください。

[修正前]
#if TARGET_FOR_ADAM == ambaCV5XCAZ
[修正後]
#if defined(ADAM_TARGET_PF_ipro_ambaCV5XCAZ_linux)

SDK v2.01以降では上記修正は必要ありません。(SDK v2.01未満からソースコードを移行した場合は修正が必要です。)