Deepstream 6.1.1 以及 Python Binding Docker 安装

Deepstream 6.1.1 以及 Python Binding Docker 安装

这里将详细介绍我们如何通过 docker 运行 Deepstream 6.1.1 以及 Python Binding。我们使用的硬件设备是 Jetson NX Dev Kit(系统通过SD Image 烧录)。



Deepstream 6.1.1 docker中运行

首先,我们根据Nvidia Container 官网 把 image pull下来。

docker pull nvcr.io/nvidia/deepstream-l4t:6.1.1-samples

注意,这里我们选用的是Jetson对应的指令,image选用的是deepstream-l4t:6.1.1-samples

然后

xhost +

目的是Allow external applications to connect to the host's X display。我们将docker run起来:

sudo docker run -it --rm --net=host --runtime nvidia  -e DISPLAY=$DISPLAY -w /opt/nvidia/deepstream/deepstream-6.1 -v /tmp/.X11-unix/:/tmp/.X11-unix nvcr.io/nvidia/deepstream-l4t:6.1.1-samples

这里具体的指令含义就不解释了,参见官网链接。我们输入上面的指令后,便可以在terminal中进入这个docker。接下来输入

/opt/nvidia/deepstream/deepstream/user_additional_install.sh

这是官网中包含的一些额外依赖。我也不知道是否有用,但我还是装了一下。

然后,我们可以尝试运行一下 deepstream-app,我的结果是可以运行起来,但由于是第一次生成engine,所以会比较慢:

cd /opt/nvidia/deepstream/deepstream-6.1/samples/configs/deepstream-app
deepstream-app -c source4_1080p_dec_infer-resnet_tracker_sgie_tiled_display_int8.txt

接下来就是安装python bindings了。

Deepstream 6.1.1 Python Binding 安装与运行

在这之前,我安装了以下Deepstream 6.1.1 安装步骤官网上面的依赖,发现有的依赖并没有被安装过。这部分或许可以跳过,但我也附在这里了:

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

一些预先需要安装的依赖

(注意,这里我们使用的是Ubuntu 20.04)

apt install python3-gi python3-dev python3-gst-1.0 python-gi-dev git python-dev \
    python3 python3-pip python3.8-dev cmake g++ build-essential libglib2.0-dev \
    libglib2.0-dev-bin libgstreamer1.0-dev libtool m4 autoconf automake libgirepository1.0-dev libcairo2-dev

安装,Compile Binding

cd /opt/nvidia/deepstream/deepstream/sources
git clone https://github.com/NVIDIA-AI-IOT/deepstream_python_apps
cd /opt/nvidia/deepstream/deepstream/sources/deepstream_python_apps/
git submodule update --init
apt-get install -y apt-transport-https ca-certificates -y
update-ca-certificates
cd 3rdparty/gst-python/
./autogen.sh
make
make install
cd /opt/nvidia/deepstream/deepstream/sources/deepstream_python_apps/bindings
mkdir build
cd build
cmake ..  -DPYTHON_MAJOR_VERSION=3 -DPYTHON_MINOR_VERSION=8 \
    -DPIP_PLATFORM=linux_aarch64 -DDS_PATH=/opt/nvidia/deepstream/deepstream/
make
pip3 install ./pyds-1.1.4-py3-none*.whl
python3 -m pip install --upgrade pip

Run deepstream-app Python Binding Example

cd /opt/nvidia/deepstream/deepstream/sources/deepstream_python_apps/apps/deepstream-test1
python3 deepstream_test_1.py /opt/nvidia/deepstream/deepstream-6.1/samples/streams/sample_qHD.h264

保存更新过的container到image中

最后,让我们来保存一下这个container,下次可以继续用。我们需要在系统环境中的terminal内输入(不是container中):

sudo docker commit 828d1bf2b3e7 ds6.1.1-py:v2

下一次再打开这个image只需要

sudo docker run -it --rm --net=host --runtime nvidia  -e DISPLAY=$DISPLAY -w /opt/nvidia/deepstream/deepstream-6.1 -v /tmp/.X11-unix/:/tmp/.X11-unix ds6.1.1-py:v2

我们可以通过 sudo docker image ls 以及 sudo docker container ls 来查看保存的image以及正在运行的container。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

破浪会有时

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值