AxisカメラACAP技術での姿勢推定
アクシスコミュニケーションズ社のAI対応 IPカメラ上でDocker、Python、Flask※1を駆使して姿勢推定を行うサンプルをご紹介します。
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)対応カメラには下記のような製品があります。
2023/6/12追記
2023/8月から10月まで受講者募集中。マンツーマンでオリジナルAIカメラを作成する講座です。作成したAIカメラはそのままお持ち帰りいただけます。