IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> yoloV4+deepstream部署 -> 正文阅读

[人工智能]yoloV4+deepstream部署

yoloV4+deepstream部署

overview

  • 单检测器+跟踪器部署

模型转换(darknet–>onnx–>TensorRT)

转为onnx模型可以在本地或tx2上进行;转tensorRT模型只能在目标设备上转换

本地模型转换


需要准备pytorch和onnx。pytorch版本:

  • Pytorch 1.4.0 for TensorRT 7.0 and higher
  • Pytorch 1.5.0 and 1.6.0 for TensorRT 7.1.2 and higher
  • pip install onnxruntime

  1. git clone 转换代码
    git clone https://gitee.com/Mr_xiaolong/pytorch-YOLOv4.git

    git clone https://github.com/Tianxiaomo/pytorch-YOLOv4.git

  2. darknet模型转onnx:将模型权重及配置文件放入文件夹内,执行
    python demo_darknet2onnx.py yolov4-tiny-416.cfg yolov4-tiny-416.weights data/dog.jpg -1
    模型转换

    生成Onnx模型及demo图像
    生成onnx

  3. onnxz转TensorRT模型。将上一步得到的模型移动到tensorRT路径下
    sudo mv yolov4_-1_3_416_416_dynamic.onnx /usr/src/tensorrt/bin
    执行模型转换命令:
    sudo ./trtexec --onnx=yolov4_-1_3_416_416_dynamic.onnx \ --minShapes=input:1x3x416x416 --optShapes=input:4x3x416x416 --maxShapes=input:8x3x416x416 \ --workspace=2048 --saveEngine=yolov4_-1_3_416_416_dynamic.engine --fp16
    请添加图片描述
    请添加图片描述

Tx2模型转换(不推荐,需要额外安装pytorch,onnxruntime)

  1. git clone 转换代码
    git clone https://gitee.com/Mr_xiaolong/pytorch-YOLOv4.git

    git clone https://github.com/Tianxiaomo/pytorch-YOLOv4.git
  2. darknet模型转onnx:将模型权重及配置文件放入文件夹内(此处模型由本机放入Document文件夹中),执行
    python demo_darknet2onnx.py yolov4-tiny-416.cfg yolov4-tiny-416.weights data/dog.jpg -1
    keypoint:
    a. 模型输入尺寸可选320 * 320, 416 * 416, 512 * 512 或 608 * 608等,可以根据帧率/精度进行动态调整,但需要满足以下要求:
    height = 320 + 96 * n, n in {0, 1, 2, 3, …}
    width = 320 + 96 * m, m in {0, 1, 2, 3, …}
    b. 为了方便调整参数进行测试,这里转换为动态模型(batchsize可以在范围内进行调整)
    模型转换参考地址

模型部署

  1. 下载NVIDIA官方提供的YOLOV4代码。这里官方提供了两种部署方式,可以直接运行生成的tensorRT模型,也可以结合deepstream框架进行部署。
    git clone https://github.com/NVIDIA-AI-IOT/yolov4_deepstream.git
    将其中的deepstream_yolov4文件夹复制到/opt/nvidia/deepstream/deepstream/sources路径下(在此目录下clone代码)

  2. 将转换好的模型移动到此文件夹
    sudo mv yolov4_-1_3_416_416_dynamic.engine /opt/nvidia/deepstream/deepstream/sources/deepstream_yolov4/

  3. 编译 nvdsparsebbox_Yolo.cpp :
    编译
    sudo make CUDA_VER=10.2
    若编译失败或有类别数(默认类别数为80)修改,
    需重新编译,执行清理,然后重新编译。
    sudo make clean CUDA_VER=10.2
    sudo make CUDA_VER=10.2

  4. 更新配置文件
    在config_infer_primary_yoloV4.txt中更新模型路径,标签等信息:
    在这里插入图片描述

    在deepstream_app_config_yoloV4.txt中更新以下信息,属性介绍
    a. [tiled-display] 显示设置,多路视频输出时设置展示行列数、图像分辨率

    b. [source] 设置输入源,多路输入通过 source%d来实现。demo中仅给了1-3的Type,这里设置 tpye=4为rtsp输入。其余属性设置(跳帧等)参照属性介绍。

    c. [sink]设置输出方式及端口(rtsp)

    d. [streammux]设置批处理的batch-size大小,是否作为实时输入

    e. [primary-gie]设置推理模块所用模型及标签,batch-size大小与[streammux]保持一致可以有最佳性能。

    f. [tracker]设置跟踪所用的动态链接库。可以根据性能\精度表现进平衡
    请添加图片描述

  5. 运行‘deepstream-app -c deepstream_app_config_yoloV4.txt’
    在这里插入图片描述
    在这里插入图片描述

相关问题解决方案

  1. GStreamer pipeline相关问题,清理缓存即可:
    rm ${HOME}/.cache/gstreamer-1.0/registry.aarch64.bin

参考资料

  1. 调优相关说明
  2. 多模型部署triton
  3. deepstream镜像运行及部署
  4. 获取和设置Bounding Box
  5. 结构体参考文档

deepstream源文件路径

  1. /opt/nvidia/deepstream/deepstream/sources/apps/sample_apps/deepstream-app
  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-08-04 11:12:44  更:2021-08-04 11:14:46 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 10:20:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码