AxisカメラACAP技術での姿勢推定

  •                            
  • このエントリーをはてなブックマークに追加

AXIS —

AxisカメラACAP技術での姿勢推定

アクシスコミュニケーションズ社のAI対応 IPカメラ上でDocker、Python、Flask※1を駆使して姿勢推定を行うサンプルをご紹介します。

リンク: AxisCommunications / acap-computer-vision-sdk-examples

Pythonで記述されたこのサンプルでは、192×192ピクセルの画像を入力として受け取り、人体の17個のキーポイントの位置をそれぞれの信頼度とともに検出し、Flask経由で出力しています。

カメラ内部で3つのDockerコンテナが動作しています。

アプリケーションコンテナ OpenCVを使用して画像を取得し、モデルに合うよう編集します、推論結果はFlask経由で表示します。
推論コンテナ AIアクセラレータを使用して推論を実行する
モデルコンテナ モデルが配置と共有

アクシスコミュニケーションズ社ではAIへの取り組みを強化しており、従来はQシリーズなどの上位機種のみで、AIアクセラレータを使用できましたが、最新のSoC(Artpec8)ではAIアクセラレータ機能が統合されており、廉価なP、Mシリーズでも利用可能になってきており、2022年8月現在、30機種で本機能が利用できます。

カメラ固有の部分も若干ありますが、Docker、Python、Flask、OpenCVなどオープンな技術が使われていますので、是非、お持ちのAIモデルをカメラに搭載してみてはいかがでしょうか?
AIサーバなどが不要でカメラ単体でAIが使用できるようになるため、拡張性に優れ、とても便利な機能だと思います。

補足1:Axis AIアクセラレータ対応カメラの検索方法

手順1:Axisプロダクトセレクター
手順2:コンピューティング機能でDLPUを選択します。

※1:Flask:Pythonのwebアプリケーションフレームワーク(認識結果を表示するために利用)

※2:AxisカメラのSDKは従来、ADPパートナーサイトにて提供されていましたが、GitHUBに移行したようです。今回紹介したサンプル以外にもクラウドサービス(AWS、Azure、google cloud)との連携など多くのサンプルが公開されています。

※3:Axis SoC(Artpec8)に関する記事(英語)

※4:ACAP4に関するドキュメント(英語)
ACAPはカメラ内部にユーザ独自の機能を追加することができるSDKです。

図1:姿勢推定結果の出力例

姿勢推定結果の出力例

対応カメラ

今回のサンプルが動作するAIアクセラレータ(DLPU)対応カメラには下記のような製品があります。