DeepStream 02: Quickstart Guide

Quickstart Guide

Posted by NAB on December 19, 2022

NVIDIA® DeepStream Software Development Kit (SDK) là một trình tăng tốc AI framework để xây dựng các pipeline phần tích video thông minh (IVA - Intelligent Video Analytics). DeepStream chạy trên NVIDIA® T4, NVIDIA® Ampere và nền tảng như NVIDIA® Jetson AGX Xavier™, NVIDIA® Jetson Xavier NX™, NVIDIA® Jetson AGX Orin™.

Jetson Setup

Phần này giải thích cách chuẩn bị thiết bị Jetson trước khi cài đặt SDK DeepStream

Install Jetson SDK component

Tải xuống NVIDIA SDK Manager từ JetPack SDK. Bạn sẽ sử dụng nó để cài đặt JetPack 5.0.2 Revision 1 (tương ứng với bản phát hành L4T 35.1)

  • NVIDIA SDK Manager là một ứng dụng dụng đồ họa flash và cài đặt JetPack packages
  • Quy trình flash mất khoảng 10 - 30 phút, phụ thuộc vào hệ thống máy chủ.

Lưu ý: Nếu bạn sử dụng Jetson Xavier NX developer kit, bạn có thể tải xuông SD card image từ JetPack SDK. Nó đi kèm với CUDA, TensorRT, và cuDNN.

Install Dependencies

Nhập các lệnh sau để cài đặt các gói yêu cầu cần thiết:

sudo apt install libssl1.1 \
         libgstreamer1.0-0 \
         gstreamer1.0-tools \
         gstreamer1.0-plugins-good \
         gstreamer1.0-plugins-bad \
         gstreamer1.0-plugins-ugly \
         gstreamer1.0-libav \
         libgstreamer-plugins-base1.0-dev \
         libgstrtspserver-1.0-0 \
         libjansson4 \
         libyaml-cpp-dev

Install librdkafka (to enable Kafke protocol adaptor for message broker)

  1. Clone librdkafka repository từ
git clone https://github.com/edenhill/librdkafka.git
  1. Cấu hình và xây dựng thư viện
cd librdkafka
git reset --hard 7101c2310341ab3f4675fc565f64f0967e135a6a
./configure
make
sudo make install
  1. Sao chép các thư viện đã tạo vào thư viện deepstream
sudo mkdir -p /opt/nvidia/deepstream/deepstream-6.1/lib
sudo cp /usr/local/lib/librdkafka* /opt/nvidia/deepstream/deepstream-6.1/lib

Install latest NVIDIA BSP package

Cài đặt JetPack 5.0.1 GA Revision 1 sẽ đảm bảo rằng các gói NVIDIA BSP mới nhất được cài đặt.

Install the DeepStream SDK

  • Phương pháp 1: Sử dụng SDK Manager

Chọn DeepStreamSDK từ phần Additional SDKs cùng với JP 5.0.2 GA Revision 1 thành phần phần mềm để cài đặt.

  • Phương pháp 2: Sử dụng DeepStream tar package:

https://developer.nvidia.com/deepstream_sdk_v6.1.1_jetson.tbz2

  1. Tải xuống DeepStream 6.1.1 Jeton tar package deepstream_sdk_v6.1.1_jetson.tbz2 cho thiết bị Jetson.

  2. Nhập các lệnh sau để giải nén và cài đặt DeepStream SDK:

sudo tar -xvf deepstream_sdk_v6.1.1_jetson.tbz2 -C /
cd /opt/nvidia/deepstream/deepstream-6.1
sudo ./install.sh
sudo ldconfig
  • Phương pháp 3: Sử dụng DeepStream Debian package:

https://developer.nvidia.com/deepstream-6.1_6.1.1-1_arm64.deb

Tải xuống DeepStream 6.1.1 Jetson Debian package deepstream-6.1_6.1.1-1_arm64.deb xuống thiết bị Jetson. Nhập lệnh sau:

sudo apt-get install ./deepstream-6.1_6.1.1-1_arm64.deb
  • Phương pháp 4: Sử dụng Docker container: các DeepStream docker containers có sẵn trên NGC. Xem phần Docker Containers để tìm hiểu về phát triển và triển khai DeepStream sử dụng docker containers.

Run deepstream-app (the reference application)

  1. Chuyển đến thư mục mẫu trên bộ công cụ phát triển.
  2. Nhập lệnh sau để chạy ứng dụng:
deepstream-app -c <path_to_config_file>

Trong đó <path_to_config_file> là tên đương dẫn của một trong các tệp cấu hình của ứng dụng tham khảo, được tìm thấy trong configs/deepstream-app/. Xem Package Contents để xem một danh sách các tệp có sẵn.

  • Các file config có thể chạy với deepstream-app:
    • a. source30_1080p_dec_infer-resnet_tiled_display_int8.txt
    • b. source30_1080p_dec_preprocess_infer-resnet_tiled_display_int8.txt
    • c. source4_1080p_dec_infer-resnet_tracker_sgie_tiled_display_int8.txt
    • d. source4_1080p_dec_infer-resnet_tracker_sgie_tiled_display_int8_gpu1.txt (dGPU only)
    • e. source1_usb_dec_infer_resnet_int8.txt
    • f. source1_csi_dec_infer_resnet_int8.txt (Jetson only)
    • g. source2_csi_usb_dec_infer_resnet_int8.txt (Jetson only)
    • h. source6_csi_dec_infer_resnet_int8.txt (Jetson only)
    • i. source2_1080p_dec_infer-resnet_demux_int8.txt
    • j. source4_1080p_dec_infer-resnet_tracker_sgie_tiled_display_int8.yml
    • k. source30_1080p_dec_infer-resnet_tiled_display_int8.yml
  • Bạn có thể tìm thấy các tệp cấu hình mẫu trong thư mục /opt/nvidia/deepstream/deepstream-6.1/samples. Nhập lệnh này để xem việc ứng dụng sử dụng:
deepstream-app --help
  • Để lưu file TensorRT Engine/Plan, chạy lệnh sau:
sudo deepstream-app -c <path_to_config_file>
  1. Để hiển thị nhãn trong chế độ xem 2D Tiled display view, hãy mở rộng source of interest bằng cách bấm chuột trái vào nguồn. Để quay lại màn hình tiled, bấm chuột phải vào bất kỳ đâu trong cửa số.
  2. Lựa chọn bàn phím của nguồn cũng được hỗ trợ. Trên bảng điều khiển nơi ứng dụng đang chạy nhấn phím z theo sau là chỉ mục hàng mong muốn (0 đến 9), sau đó nhấn chỉ mục cột (0 đến 9) để mở rộng source. Để khôi phục chế ddooh xem màn hình 2D Tiled, hãy nhấn lại z.

Boost the clocks

Run precomplied sample applications

dGPU Setup for Ubuntu

Remove all preivious DeepStream installations

Nhập các lệnh sau để gỡ bỏ tất cả các phiên bản DeepStream 3.0 hoặc các cài đặt trước:

sudo rm -rf /usr/local/deepstream /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnv* /usr/bin/deepstream* /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libnvdsgst* /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream* /opt/nvidia/deepstream/deepstream*
sudo rm -rf /usr/lib/x86_64-linux-gnu/libv41/plugins/libcuvidv4l2_plugin.so*

Để gỡ bỏ DeepStream 4.0 hoặc các cài đặt sau đó:

  1. Mở file uninstall.sh trong opt/nvidia/deepstream/deepstream
  2. Đặt PREV_DS_VER là 4.0
  3. Chạy các dòng lệnh bằng cách
sudo ./uninstall.sh

Install Dependencies

Nhập các lệnh sau để cài đặt những packages cần thiết trước khi cài đặt DeepStream SDK:

sudo apt install libssl1.1 \
                  libgstreamer1.0-0 \
                  gstreamer1.0-tools \
                  gstreamer1.0-plugins-good \
                  gstreamer1.0-plugins-bad \
                  gstreamer1.0-plugins-ugly \
                  gstreamer1.0-libav \
                  libgstreamer-plugins-base1.0-dev \
                  libgstrtspserver-1.0-0 \
                  libjansson4 \
                  libyaml-cpp-dev \
                  gcc \
                  make \
                  git \
                  python3

Install CUDA Toolkit 11.7.1 (CUDA 11.7 Update 1) and NVIDIA driver 515.65.01

Cài NVIDIA Driver 515:

  • Xem danh sách các phiên bản NVIDIA Driver
apt-cache search nvidia-utils
  • Cài đặt NVIDIA Driver 515
sudo apt install nvidia-utils-515

Chạy các lệnh sau (tham khảo, https://developer.nvidia.com/cuda-downloads):

wget https://developer.download.nvidia.com/compute/cuda/11.7.1/local_installers/cuda-repo-debian11-11-7-local_11.7.1-515.65.01-1_amd64.deb
sudo dpkg -i cuda-repo-debian11-11-7-local_11.7.1-515.65.01-1_amd64.deb
sudo rm /etc/apt/sources.list.d/*cuda*
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /"
sudo apt-get update
sudo apt-get -y install cuda

Lưu ý:

Install TensorRT 8.4.1.5

Chạy các lệnh

sudo apt-get install libnvinfer8=8.4.1-1+cuda11.6 libnvinfer-plugin8=8.4.1-1+cuda11.6 libnvparsers8=8.4.1-1+cuda11.6 \
                      libnvonnxparsers8=8.4.1-1+cuda11.6 libnvinfer-bin=8.4.1-1+cuda11.6 libnvinfer-dev=8.4.1-1+cuda11.6 \
                      libnvinfer-plugin-dev=8.4.1-1+cuda11.6 libnvparsers-dev=8.4.1-1+cuda11.6 libnvonnxparsers-dev=8.4.1-1+cuda11.6 \
                      libnvinfer-samples=8.4.1-1+cuda11.6 libcudnn8=8.4.1.50-1+cuda11.6 libcudnn8-dev=8.4.1.50-1+cuda11.6 \
                      python3-libnvinfer=8.4.1-1+cuda11.6 python3-libnvinfer-dev=8.4.1-1+cuda11.6

Install librdkafka (to enable Kafke protocol adaptor for message broker)

Install the DeepStream SDK

  • Phương pháp 1: Sử dụng DeepStream Debian Package

Tải xuống DeepStream 6.1.1 dGPU Debian Package deepstream-6.1_6.1.1-1_amd64.deb: https://developer.nvidia.com/deepstream-6.1_6.1.1-1_amd64.deb

Nhập lệnh sau:

sudo
 apt-get install ./deepstream-6.1_6.1.1-1_amd64.deb
  • Phương pháp 2: Tải xuống DeepStream tar Package

  • Phương pháp 3: Sử dụng Docker container DeepStream docker containers có sẵn trên NGC. Xem phần Docker Containers để tìm hiểu thêm

Run deepstream-app (the reference application)

Run precomplied sample applications

dGPU Setup for RedHat Enterprise Linux (RHEL)

Running without an X server

Platform and OS Compatibility

DeepStream Triton Inference Server Usage Guidelines

dGPU

Jetson

Using DLA for inference

Separate processes

Single process


References