yolov4_trt

2024-02-29 03:20
文章标签 yolov4 trt

本文主要是介绍yolov4_trt,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

环境:

  • tensorRT5.1.6-1
  • xavier
  • cuda10
  • python2.7

tensorRT简介及原理:

tensorRT是由Nvidia推出的一款GPU推理引擎(GIE: GPU Inference Engine)。由于训练好的神经网络权重已经确定,后续使用中无需后向传播以及高精度计算,因此在模型的部署过程中可以通过使用低精度如FP16(16位的float型)来对前向传播过程进行加速推断。Tensorrt正是利用此类原理来优化 GPU 资源使用的深度学习推理计算框架,其工作主要分为两个阶段:引擎构建和推理。在引擎构建阶段,TensorRT 接收外部提供的网络定义(也可包含权值 weights)和超参数,根据当前编译的设备进行网络运行的优化(optimization)并生成推理引擎 inference engine;在执行阶段,通过运行推理引擎调用 GPU 计算资源,整个流程如图 所示:
在这里插入图片描述

使用:

下载yolov4cfg与weights:

yolov4cfg下载.
yolov4weights下载.

使用python接口生成tensorrt加速引擎:

1、 python yolov4_onnx.py --model name
(示例:python yolov4_onnx.py --model yolov4-608)
程序运行完成后会生成yolov4-608.onnx
2、 python onnx_to_trt.py 生成.trt引擎文件

使用c++接口生成tensorrt加速引擎:

1、 python yolov4_onnx.py --model name 生成.onnx文件
2、cd c++ 修改test/generateEngine.cpp 中的onnxfile路径
3、cd c++
4、mkdir build
5、cmake …
6、make
7、cd …/bin
8、./generateEngine 生成cached_model.bin
9、将生成的引擎拷贝到yolo目录下
cp cached_model.bin darknet_ros/darknet_ros/yolo_network_config/engine/yolov4_fp16.trt

这篇关于yolov4_trt的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/757417

相关文章

darknet/YOLOV4 预训练时冻结参数,停止反向传播

目录 1.首先获取预训练模型 2.修改cfg文件 3.训练 平时我们在训练模型时,会利用预训练模型做迁移学习,但是有时候我们想前面的几层直接复用预训练模型的参数,然后只训练后面的几个网络层,这时候需要冻结前面几层的参数,停止反向传播。 1.首先获取预训练模型 darknet partial cfg/cspdarknet53.cfg cspdarknet53.weights cspd

yolov4训练自己的数据集,基于darknet框架

目录 一:安装darknet 二:首先以VOC的数据格式准备好自己的数据 三:制作darknet需要的label以及txt文件。 四:准备data文件 五:准备names文件 六:修改cfg文件 七:开始训练 八:单张图片测试 一:安装darknet git clone https://github.com/AlexeyAB/darknet/ 修改makefile里面的值

【YOLOV4】FPN+PAN结构

yolo4的neck结构采用该模式,我们将Neck部分用立体图画出来,更直观的看下两部分之间是如何通过FPN结构融合的。 如图所示,FPN是自顶向下的,将高层特征通过上采样和低层特征做融合得到进行预测的特征图。Neck部分的立体图像,看下两部分是如何通过FPN+PAN结构进行融合的。 和Yolov3的FPN层不同,Yolov4在FPN层的后面还添加了一个自底向上的特征金字塔。这样结合操

c++项目中使用YOLOv4模型简单案例

主要是使用yolo_v2_class.hpp文件 1、hpp文件 #ifndef DEMO_HPP#define DEMO_HPP#ifndef OPENCV#define OPENCV#endif#include<yolo_v2_class.hpp>#include<darknet.h>using namespace cv;using namespace std;class

修改ModelLink在RTX3090完成预训练、微调、推理、评估以及TRT-LLM转换、推理、性能测试

修改ModelLink在RTX3090完成预训练、微调、推理、评估以及TRT-LLM转换、推理、性能测试 1 参考文档2 测试环境3 创建容器4 安装AscendSpeed、ModelLink5 下载LLAMA2-7B预训练权重和词表6 huggingface模型的推理及性能测试7.1 修改torch,deepspeed规避缺失npu环境的问题7.2 修改点ModelLink规避缺失npu环

基于YoloV4汽车多目标跟踪计数

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介    一、项目背景与意义 随着城市交通的快速发展,交通流量和车辆密度的不断增加,对交通管理和控制提出了更高的要求。传统的交通流量计数方法通常依赖于人工统计或者简单的传感器设备,这些方法不仅效率低下,而且容易出错。因此,开发一个能够自动、准确地

使用YoloV4深度学习对图像上的车辆进行检测计数

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 三、系统四. 总结 一项目简介    一、项目背景与意义 随着智能交通系统(ITS)的快速发展,对道路监控视频中车辆进行准确、实时的检测与计数已成为一项重要的技术需求。传统的车辆检测方法往往依赖于人工或简单的图像处理技术,这些方法不仅效率低下,而且容易受到环境、光照、遮挡等因素的影

YOLOv4重磅发布,五大改进,二十多项技巧实验,堪称最强目标检测万花筒

点击上方蓝色字体,关注我们 今年2月22日,知名的 DarkNet 和 YOLO 系列作者 Joseph Redmon 宣布退出 CV 界面,这也就意味着 YOLOv3 不会再有官方更新了。但是,CV 领域进步的浪潮仍在滚滚向前,仍然有人在继续优化 YOLOv3。今日,著名的AlexeyAB版本发布了 YOLOv4的论文。该论文提出了五大改进,二十多个技巧的实验,可以说 YOLOv4是一项非

YOLOV4目标检测--计数方法draw_detections_v3

YOLOv4检测图片添加置信度和计数 YOLOv4检测图片添加置信度和计数   本文章向大家介绍 YOLOv4检测图片添加置信度和计数 ,主要包括 YOLOv4检测图片添加置信度和计数 使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。   主要修改的image.c文件,在darknet目录下直接ctrl+f搜即可,然后打开,找到draw_d

【万字长文】看完这篇yolov4详解,那算是真会了

前言 目标检测作为计算机视觉领域的一个核心任务,其目的是识别出图像中所有感兴趣的目标,并给出它们的类别和位置。YOLO(You Only Look Once)系列模型因其检测速度快、性能优异而成为该领域的明星。随着YOLOv4的推出,目标检测的性能得到了进一步的提升。本文将详细介绍YOLOv4相对于前代YOLO模型的改进点,以及它在目标检测领域的新贡献。 YOLO系列概述 YOLO系列自20