AI

日本システム開発株式会社からAIに関するコラムをお届けします。

推論システム開発に2017年から携わっている実績に基づき、様々な情報を発信しています。

日本システム開発の技術、
覗いてみませんか。

AIコラム 第2回「DeepStreamSDKの環境構築とサンプルアプリケーションの実行」(2/3)

前回は、DeepStreamSDKの紹介をさせて頂きました。

今回は、Jetson Nanoを用いて、実際に環境構築及び、サンプルアプリケーションを動かしてみようと思います。

尚、以下はJetson Nanoの環境をSDカードイメージ(Jetpack 4.3)で作成した場合の手順になります。

NVIDIA SDK Managerを使用している場合は、ADDITIONAL SDKSのDeepStreamにチェックを入れることでインストールすることが出来ます。

但し、NVIDIA SDK Managerで入れ忘れたという方も以下の手順で可能です。

環境構築

実環境にインストールする方法とDockerを使う方法の2パターン紹介します。

  1. 実環境にインストールして環境構築する

  1. まずは必要なパッケージをインストールします。

$ sudo apt install ¥

  libssl1.0.0 ¥

  libgstreamer1.0-0 ¥

  gstreamer1.0-tools ¥

  gstreamer1.0-plugins-good ¥

  gstreamer1.0-plugins-bad ¥

  gstreamer1.0-plugins-ugly ¥

  gstreamer1.0-libav ¥

  libgstrtspserver-1.0-0 ¥

  libjansson4=2.11-1

$ sudo apt install librdkafka1=0.11.3-1build1

  1. DeepStreamSDKの公式ページからdebianパッケージをダウンロードし、以下の通り、インストールします。 https://developer.nvidia.com/deepstream-download

$ sudo apt install ./deepstream-4.0_4.0.2-1_arm64.deb

  1. Dockerを使って環境構築する

DeepStreamSDKの環境が整ったDockerイメージが用意されているため、こちらを利用する方法もあります。

https://ngc.nvidia.com/catalog/containers/nvidia:deepstream-l4t

  1. まずはDockerイメージをNGC(NVIDIA GPU CLOUD)からpullします。

$ sudo docker pull nvcr.io/nvidia/deepstream-l4t:4.0.2-19.12-samples

  1. Dockerイメージがpull出来たら、起動させます。
    コンテナから画面を表示させたいので、ホストのXサーバーにアクセスできるように権限を付与(xhost +)し、ディスプレイ番号(環境変数DISPLAY)とUNIXドメインソケット(/tmp/.X11-unix)をホストとコンテナで共有させることで対応します。

$ xhost +

$ sudo docker run -it –rm –net=host –runtime nvidia -e DISPLAY=$DISPLAY -v /tmp/.X11-unix/:/tmp/.X11-unix nvcr.io/nvidia/deepstream-l4t:4.0.2-19.12-samples

サンプルアプリケーションの実行

ここまででDeepStreamSDKを動かす準備は出来ましたので、実際にサンプルアプリケーションを実行してみましょう。
  1. 最大限のパフォーマンスを出すために、クロックを最大にします。
    ※DeepSteramSDKのドキュメント等で公表されている数値は、クロック最大時の値になっています。

$ sudo nvpmodel -m 0

$ sudo jetson_clocks

  1. サンプルアプリケーション(deepstream-app)を実行します。
    実環境にインストールした場合は以下を実施します。

$ cd /opt/nvidia/deepstream/deepstream-4.0

Dockerコンテナの場合は以下を実施します。

$ cd ~/deepstream_sdk_v4.0.2_jetson

$ deepstream-app –c samples/configs/samples/configs/deepstream-app/source8_1080p_dec_infer-resnet_tracker_tiled_display_fp16_nano.txt

※ここで紹介するにあたり、動画を差し替えています。

 実際は同梱されているサンプル動画でアプリケーションが起動します。

最後まで御覧頂き、ありがとうございました。

次回はコンフィグファイルを編集して少しカスタマイズしてみたいと思います。

■関連サービス

AIソリューション

オープンソースを活用したAIのシステム構築・開発を支援!

車両ナンバープレート検知全国版

車両のナンバープレートをAIが検知・処理!全国のナンバープレートに対応!

人数カウントBODY_ロゴ

カメラ撮影した映像から指定領域内の滞在人数をAIが認識!

人数カウントHEAD_ロゴ

密集した空間から指定領域内の滞在人数をAIが認識!

ラインクロスカウント

来店人数のカウントや通行量調査などを自動化!

pagetop