yolov5部署_jetson_deepstream_tensorrtx

news/2024/10/22 10:38:07/

此文档使用yolov5-v5.0以及对应版本的tensorrtx包

一、安装依赖包

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

二、下载并安装deepstream sdk

1)下载DeepStream 5.1 Jetson tar package deepstream_sdk_v5.1.0_jetson.tbz2
#链接:https://pan.baidu.com/s/1LGP1QMwWf0ZTauXAO4pu4Q    提取码:80ij 
2)解压并安装
sudo tar -xvf deepstream_sdk_v5.1.0_jetson.tbz2 -C /
cd /opt/nvidia/deepstream/deepstream-5.1
sudo ./install.sh
sudo ldconfig

三、在电脑端完成模型pt转wts

(此处务必检查yolov5与tensorrtx包的版本)
git clone -b v5.0 https://github.com/ultralytics/yolov5.git
git clone -b yolov5-v5.0 https://github.com/wang-xinyu/tensorrtx.git
cp {tensorrtx}/yolov5/gen_wts.py {ultralytics}/yolov5
cd {ultralytics}/yolov5
python gen_wts.py -w best.pt -o best.wts

四、在jetson上完成wts转engine

1)在jetson上克隆v5.0版本tensorrtx
git clone -b yolov5-v5.0 https://github.com/wang-xinyu/tensorrtx.git
2)编译
#检查yolov5.cpp中的模型权重NET,默认的是s
#检查yololayer.h中CLASS_NUM的数量,默认的是80
cd tensorrtx/yolov5
mkdir build
cd build
cmake ..
make
3)复制best.wts到tensorrtx/yolov5/build目录下
4)生成yolov5s.engine
sudo ./yolov5 -s best.wts yolov5s.engine s
sudo ./yolov5 -d yolov5s.engine ../samples

五、DeepStream部署yolov5模型

1)设置权限
sudo chmod -R 777 /opt/nvidia/deepstream/deepstream-5.1/sources/
2)拷贝项目文件yolov5.zip到/opt/nvidia/deepstream/deepstream-5.1/sources/并解压
#链接:https://pan.baidu.com/s/1DX_DtoJMbwugGVEaWuF1bw    提取码:q0e2 
#该文件对应yolov5-v5.0,若需使用其他版本,自行修改其中yololayer.h、yololayer.cu等文件
3)编译
#修改config_infer_primary.txt中的num
#修改labels.txt
##如要改变NMS_THRESH, 编辑文件nvdsinfer_custom_impl_Yolo/nvdsparsebbox_Yolo.cpp
##如要改变CONF_THRESH, 编辑文件config_infer_primary.txt
cd /opt/nvidia/deepstream/deepstream-5.1/sources/yolov5
CUDA_VER=10.2 make -C nvdsinfer_custom_impl_Yolo

六、测试

1)测试视频文件推理
cd /opt/nvidia/deepstream/deepstream-5.1/sources/yolov5
deepstream-app -c deepstream_app_config.txt
2)USB摄像头测试
deepstream-app -c source1_usb_dec_infer_yolov5.txt
3)CSI摄像头测试
deepstream-app -c source1_csi_dec_infer_yolov5.txt

http://www.ppmy.cn/news/152366.html

相关文章

矢量点积与矢量叉乘的微分

矢量点积与矢量叉乘的微分 ​ 在对矢量点积与叉乘的微分公式进行推导之前,我们先看看这两个公式长什么样 矢量点积的微分: d ( F ⃗ ⋅ x ⃗ ) x ⃗ d F ⃗ F ⃗ d x ⃗ (1) d(\vec{F}\cdot \vec{x}) \vec{x}d\vec{F} \vec{F}d\vec{x} \tag{1} d(…

备战2023 b组国赛 倒计时10天 (dfs的复习)

今天打算复习dfs的题目: 1.连通性模型 1112. 迷宫 - AcWing题库 一天Extense在森林里探险的时候不小心走入了一个迷宫,迷宫可以看成是由 n∗n�∗� 的格点组成,每个格点只有2种状态,.和#,前者…

概率论中常见分布的数学期望、方差及特征函数推导(二)连续型随机变量

目录 1.正态分布2.均匀分布3.指数分布4.伽玛分布5.贝塔分布6.卡方分布7.柯西分布 1.正态分布 X ∼ N ( μ , σ ) X\thicksim N(\mu,\sigma) X∼N(μ,σ) f ( x ) 1 2 π σ e − ( x − μ ) 2 2 σ 2 , …

正态分布推导瑞利分布,瑞利信道的模型

从高斯分布推导瑞利分布 瑞利分布是无线通信中常见的信道模型,这里就来推导一下,所谓瑞利分布就是两个垂直分量服从独立且相同的标准高斯分布叠加之后的模。先来看看高斯分布的表达式 f ( x ) 1 2 π σ exp ⁡ ( − ( x − μ ) 2 2 σ 2 ) f(x) \f…

10行代码,带你理解自然底数e、自然指数ln

引言 我们知道,e是一种常数,和 π \pi π类似,都是一种被计算出来的常数,在实际中具有非常广泛的应用。 基于自然底数e,我们常常会用到自然指数 e x e^x ex,自然对数 l n ( x ) ln(x) ln(x),但…

高数不定积分72题解答

题目来源:这72道积分题目会积了,绝对是高高手 题目作者: 湖心亭看雪 第一题 原式 ∫ 1 5 x 3 d x 1 5 ∫ 1 5 x 3 d ( 5 x 3 ) 1 5 l n ( 5 x 3 ) C \begin{aligned} \text{原式}&\int \frac{1}{5x3}dx \\ &\frac{1}{5} \i…

不定积分 基本积分表

一些简单的练习 常用公式,供反复练习 区分两个函数 指数函数:x在指数上 y a x ya^x yax 幂函数: y x a yx^a yxa 基本积分表 ∫ s i n x d x \int sinx dx ∫sinxdx ∫ 1 x 2 d x ∫ x − 2 d x \int\frac{1}{x^2}dx\int x^{-2}dx …

【scipy】用python的库 scipy 求一重积分

scipy求二重(多重)积分:点击跳转. sympy求积分:点击跳转. 问题1:求解如下一重积分: F ( x ) ∫ 0 1 x 2 e x 1 d x . F(x) \int_0^1 x^{2}e^{x}1 ~dx\,. F(x)∫01​x2ex1 dx. 程序1. import scipy.integrate as integrate …