REST APIを使用してNXTカメラのアプリから情報を取得|株式会社 ティー・イー・エム
TECHNICAL INFORMATION
技術情報
2021.08.31
小型カメラ
REST APIを使用してNXTカメラのアプリから情報を取得
IDS社のNXTカメラは、ユーザーが作成したアプリケーションをカメラ側で実行できるCPU搭載のカメラです。アプリケーションにはAIを含めることが可能で、IDS社ではAIをトレーニングするクラウドベースのAIソフトウェアIDS NXT lighthouseも提供しております。NXTカメラは、付属のIDS NXT cockpitというアプリケーション(PCにインストール)から、撮影パラメータの設定やNXTカメラ内のアプリケーションの管理などを行うことができますが、REST APIを使用してもこれらの内容を行うことができます。
本記事では、NXTカメラにプリインストールされているAIを使用するアプリケーションObject Detectorの分析結果をREST APIを用いて取得する方法についてご紹介いたします。なお、本記事は、IDS NXT cockpit 2.2.0、Object Detector1.7.7にて作成しております。
まず、NXTカメラにプリインストールされているObject DetectorをIDS NXT cockpit 2.2.0から確認します。
Object Detectorにつきましては、別ページにて使用手順を含めた内容紹介を行っておりますので、そちらをご参照ください。
・画像認識AI(物体検出:Object Detection)を簡単に実行(IDS社製 NXTカメラ)
Object Detectorには「PersonDetector」というCNNがプリインストールされておりますので、今回はこちらのCNNを使用いたします。
人の検出を行うことができるCNNですが、画像内の人の検出も行えるため、弊社のウェブサイトに記載している画像を撮影します。以下の画像から人の検出が行えていることが確認できます。赤枠の箇所に分析結果が表示されております。
内容が見づらいかと思いますので、赤枠の分析結果の箇所を切り出した画像を以下に掲載いたします。
こちらの分析結果をREST APIを用いて取得したいと思います。Object Detectorに対するREST APIの使用例がIDS社が公開しているマニュアルに記載されておりますので、こちらを参照いたします。
・ビジョンアプリ Object Detectorのマニュアル
REST APIに関する記載は9ページ目から始まります。分析結果の取得に関する説明は、12ページ下部「4.6 /vapps/objectdetector/resultsources/last 」から始まり、サンプルコードが13ページの中ほどに以下のように記載されております。
curl -X GET "http://<ip>/vapps/objectdetector/resultsources/last" -i --user admin:ids
サンプルコードの「<ip>」とadminの後の「ids」の2か所のみをご使用の環境に合わせていただくだけで、分析結果を取得するREST APIとしてお使いいただけます。「<ip>」をNXTカメラのIPアドレス、adminの後にはNXTカメラにログインする際のパスワードを記述します。今回使用しているカメラのIPアドレスが「169.254.5.52」、ログイン時のパスワードが「nxt」のため、入力すべきコマンドは以下のようになります。
curl -X GET "http://169.254.5.52/vapps/objectdetector/resultsources/last" -i --user admin:nxt
NXTカメラのIPアドレスが分からない場合は、IDS NXT cockpitの左上をご確認ください。
REST APIの入力を行うことができるアプリケーションは様々ですが、今回は正しく取得が行えるかの確認を目的としていますので、Windowsに標準搭載されているコマンドプロンプトを使用します。Windows10であれば、画面左下の「ここに入力して検索」部に「cmd」もしくは「コマンド」等と入力すると、コマンドプロンプトが検索結果に表示されますので、クリックしてコマンドプロンプトを起動します。コマンドプロントが起動したら、分析結果を取得するコマンドを入力します。
Enterキーを押すとコマンドの入力の誤りやカメラの接続が切れていなければ、分析結果が表示されます。
先ほどのIDS NXT cockpitの情報と比較すると、一致していることが確認できます。
以上のように、REST APIを使用してNXTカメラのアプリから情報を取得が行えました。今回ご紹介した内容以外の情報の取得も行えますので、是非マニュアルを参考にREST APIをご使用いただけたらと思います。IDS NXT cockpit以外からNXTカメラの制御を行いたい場合は、別マニュアルをIDS社が公開しておりますので、そちらをご参照いただけたらと思います。
・REST interfaceのマニュアル