Yolov5缺陷检测/目标检测 Jetson nx部署Triton server
使用AI目标检测进行缺陷检测时,部署到Jetson上即小巧算力还高,将训练好的模型转为tensorRT再部署到Jetson 上供http或GRPC调用。
1 Jetson nx 刷机
找个ubuntu 系统NVIDIA官网下载安装Jetson 的sdkmanager一步步刷机即可。
本文刷的是JetPack 5.1, 其中包含
CUDA 11.4
cuDNN 8.6.0
TensorRT 8.5.2.2
Python 3.8.10
Ubuntu 20.04
2 下载解压/安装/测试Triton Server
其实triton server 不用安装,直接下载解压开箱即用,要安装的是一堆依赖。
下载triton server 软件包,Release 2.35.0 corresponding to NGC container 23.06
找到下面tritonserver2.35.0-jetpack5.1.2.tgz下载到Jetson并解压到home。
根据jetson.md安装triton server 的依赖包,如果不在jetson上使用triton 客户端可以不装triton client 的依赖。
将Triton server main分支下的docs文件夹下载后放到home/tritonserver2.35.0-jetpack5.1.2/tritonserver中,
$ cd docs/examples
$ ./fetch_models.sh
下载示例模型,cd 到home/tritonserver2.35.0-jetpack5.1.2/tritonserver/bin
$./tritonserver --model-repository=…/docs/examples/model_repository --backend-directory=…/backends
如果看到下图8001/8000/8002 说明示例打开成功,triton server 安装成功。 
3 Train yolov5 model
使用ultralytics的yolov5 模型train 一个自己的model, 我选用的是yolov5l6,略微大一些, best.pt 153.1MB。
4 .pt 转ONNX 转TensorRT
个人认为只有使用TensorRT模型部署NVIDIA显卡才是推理速度最极致的体验。
Jetson 上官网下载一个Pycharm 软件压缩包,新建python环境。
安装yolov5的依赖,参考Deploy on NVIDIA Jetson using TensorRT and DeepStream SDK
安装到pytorch 和torchvision 即可,
再使用yolov5文件夹内export.py
修改615行 --weights default ROOT / ‘best.py’
修改619行增加default=True使用半精度
修改638行default=[‘engine’]

Terminal $python3 export.py 可以看到log是先生成best.onnx再生成best.engine

半小时后转化完毕。

5部署yolov5 到triton sever
在examples文件夹下新建自己的模型仓库文件夹zz_model_repository
新建模型文件夹yolov5l6再新建名称为1 的文件夹将best.engine copy进来改名为model.plan
在yolov5l6下新建文件config.pbtxt输入以下内容:
name: "yolov5l6"
platform: "tensorrt_plan"
max_batch_size: 1
input [{name: 'images'data_type: TYPE_FP16format: FORMAT_NCHWdims: [3, 640, 640]}
]
output [{name: 'output0'data_type: TYPE_FP16dims: [25500, 8]}
]
backend: 'tensorrt'

同样cd 到home/tritonserver2.35.0-jetpack5.1.2/tritonserver/bin
$./tritonserver --model-repository=…/docs/examples/zz_model_repository --backend-directory=…/backends
出现下图说明模型加载成功。

6Triton client 调用模型
这一部分就是开发相机,图像前处理,调用模型,图像后处理部分了,略过。
相关文章:
Yolov5缺陷检测/目标检测 Jetson nx部署Triton server
使用AI目标检测进行缺陷检测时,部署到Jetson上即小巧算力还高,将训练好的模型转为tensorRT再部署到Jetson 上供http或GRPC调用。1 Jetson nx 刷机 找个ubuntu 系统NVIDIA官网下载安装Jetson 的sdkmanager一步步刷机即可。 本文刷的是JetPack 5.1, 其中包…...
MobaXterm 中文乱码, 及pojie
中文解决方法: 把“连字”去掉! MobaXterm网页,可以生成一个授权文件Custom.mxtpro。放在安装目录就可以了 MobaXterm Keygen (husbin.top)http://b70.husbin.top:5000/...
java: 程序包sun.misc不存在
启动失败,rebuild时也报错:java: 程序包sun.misc不存在 问题出在JDK版本上,这个包在JDK9的时候已经被弃用了,这里改回JDK8即可 步骤如下:...
WSL2Linux 子系统(五)
WLS2Linux 子系统编译 Android 上一篇文章中讲解 《WLS2Linux 子系统迁移/恢复》,从C盘迁移到D盘。既可以防止C盘爆红,又可以释放磁盘空间。有更大存储空间意味大有可为,比如说编译Android系统。本文则以开源 firefly Android10代码为例简单…...
java 企业工程管理系统软件源码 自主研发 工程行业适用 em
工程项目管理软件(工程项目管理系统)对建设工程项目管理组织建设、项目策划决策、规划设计、施工建设到竣工交付、总结评估、运维运营,全过程、全方位的对项目进行综合管理 工程项目各模块及其功能点清单 一、系统管理 1、数据字典&#…...
IPO观察丨困于门店扩张的KK集团,还能讲好增长故事吗?
KK集团发起了其IPO之路上的第三次冲击。 近日,KK集团更新了招股书,继续推进港交所上市进程,此前两次上市搁置后终于有了新动向。从更新内容来看,KK集团招股书披露了公司截至2023年一季度的最新业绩,交出一份不错的“成…...
【iOS】RunLoop
前言-什么是RunLoop? 什么是RunLoop? 跑圈?字面上理解确实是这样的。 Apple官方文档这样解释RunLoop RunLoop是与线程息息相关的基本结构的一部分。RunLoop是一个调度任务和处理任务的事件循环。RunLoop的目的是为了在有工作的时候让线程忙起来&#…...
数据包传输方式:单播、多播、广播、组播、泛播
数据包传输方式 单播、多播、广播、组播、泛播 网络中假设X代表所有的机器,Y代表X中的一部分机器,Z代表一组机器,1代表一台机器,那么 1:1 那就是单播;1:Y 那就是多播;1࿱…...
WebRTC基础知识
文章目录 基础概念NAT (Network Address Translation) 打洞STUN(Session Traversal Utilities for NAT)基于STUN协议的DDoS反射攻击 # TODO TURN(Traversal Using Relays around NAT)ICE(Interactive Connectivity Est…...
积累常见的有针对性的python面试题---python面试题001
1.考点列表的.remove方法的参数是传入的对应的元素的值,而不是下标 然后再看remove这里,注意这个是,删除写的那个值,比如这里写3,就是删除3, 而不是下标. remove不是下标删除,而是内容删除. 2.元组操作,元组不支持修改,某个下标的内容 可以问他如何修改元组的某个元素 3.…...
在springboot使用websocket时mapper无法注入
直接上代码 package cn.ujoined.combined.utils;import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org.springframework.stereotype.Componen…...
前端加密与解密的几种方式
1.base64加密方式 1. base64是什么? Base64,顾名思义,就是包括小写字母a-z、大写字母A-Z、数字0-9、符号""、"/"一共64个字符的字符集,(另加一个“”,实际是65个字符,至于…...
详解Spring Bean的生命周期
详解Spring Bean的生命周期 Spring Bean的生命周期包括以下阶段: 1. 实例化Bean 对于BeanFactory容器,当客户向容器请求一个尚未初始化的bean时,或初始化bean的时候需要注入另一个尚未初始化的依赖时,容器就会调用createBean进…...
详解Shell 脚本中 “$” 符号的多种用法
通常情况下,在工作中用的最多的有如下几项: $0:Shell 的命令本身 1到9:表示 Shell 的第几个参数 $? :显示最后命令的执行情况 $#:传递到脚本的参数个数 $$:脚本运行的当前进程 ID 号 $*&#…...
Redis如何实现Session存储
在Redis中实现Session存储,主要有两种方式:使用Spring Session和手动存储。 使用Spring Session:Spring Session是Spring框架提供的一个模块,用于简化Session管理,并将Session数据存储到外部数据存储中,如Redis。使用Spring Session,你只需要在Spring Boot项目中添加相应…...
安防视频监控汇聚EasyCVR平台接入Ehome告警,公网快照不显示的原因排查
智能视频监控汇聚平台TSINGSEE青犀视频EasyCVR可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等,视频监控管理平台…...
【Springboot】@ComponentScan 详解
文章目录 ComponentScanComponentScan ANNOTATION 和 REGEXComponentScan CUSTOMComponentScan ASSIGNABLE_TYPE ComponentScan ComponentScan 是 Spring 框架中的一个注解,用于自动扫描和注册容器中的组件。 使用 ComponentScan 注解可以告诉 Spring 在指定的包或…...
flask-----信号
安装: flask中的信号使用的是一个第三方插件,叫做blinker。通过pip list看一下,如果没有安装,通过以下命令即可安装blinker: pip install blinker flask其中有内置的信号 template_rendered _signals.signal(temp…...
10_Vue3 其它的组合式API(Composition API)
Vue3 中的其它组合式API 1.shallowReactive 与 shallowRef 2. readonly 与 shallowReadonly 3.toRaw 与 markRaw 4.customRef 5.provide 与 inject 6.响应式数据的判断...
COCOS项目运行的时候图片模糊的原因
1、首先。用X坐标来分析,如果size*Anchor Position有小数,如上图57*0.5667695.5。这样就会导致x模糊。如果y同样计算结果包含小数,那么y也会模糊。xy同时模糊的情况是最模糊的。 2、如果当前node没有问题,那么就要检查上级node是…...
Linux开发实战:Shell脚本与构建系统进阶指南
1. Linux开发者工具箱:从基础到进阶的实用指南作为一名在Linux环境下摸爬滚打多年的开发者,我深知高效工具链对生产力提升的重要性。这个系列文章最初只是我个人工作笔记的整理,后来逐渐发展成覆盖Linux开发全流程的实用指南。不同于教科书式…...
seo推广外包需要多少投入_seo推广外包如何避免被算法惩罚
SEO推广外包需要多少投入_SEO推广外包如何避免被算法惩罚 在当今数字化经济时代,SEO(搜索引擎优化)推广已经成为企业提升网站流量和品牌知名度的重要手段。随着搜索引擎算法的不断更新,企业在进行SEO推广外包时,不仅需…...
Linux端口占用排查:工具与实战技巧
1. 网络端口占用排查的必要性遇到"Address already in use"错误提示时,每个Linux系统管理员都会心头一紧。这种端口冲突问题不仅影响服务启动,还可能导致关键业务中断。我刚入行时就曾因为Nginx和Apache争抢80端口,导致公司官网瘫痪…...
Go语言的网络编程:从TCP到WebSocket
Go语言的网络编程:从TCP到WebSocket 网络编程的重要性 在现代软件开发中,网络编程是一项基本技能。通过网络编程,我们可以: 构建客户端-服务器应用程序实现分布式系统开发 Web 应用和 API实现实时通信功能与其他服务进行集成 Go 语…...
破局与重塑:大模型浪潮下机器学习工程师的生存指南
十字路口的困惑与机遇当大语言模型(LLM)与生成式AI(GenAI)以前所未有的速度席卷全球,身处技术浪潮中心的机器学习工程师们,正经历着一场深刻的职业震荡。曾经引以为傲的XGBoost、卷积神经网络(C…...
大以论文与万方、维普、WPS AI 综合对比(2026)
毕业季论文格式问题频发,手动排版耗时、通用模板不匹配、公式图表易错乱是常态。万方、维普以查重为主,WPS AI 偏向通用办公,而大以论文作为7 年专注毕业论文排版的老牌工具,在专业性、稳定性与院校适配性上更具优势。一、核心对比…...
丧尸危机模拟:灾备系统的终极压力测试
对于软件测试从业者而言,压力测试早已是日常工作的一部分。我们习惯于用并发用户数、吞吐量、响应时间等冰冷指标,去描绘一个系统在极限负载下的“抗压能力”。然而,当我们将这些概念投射到一个更宏大、更富有冲击力的隐喻——丧尸危机之中时…...
注意力机制:AI 也会“走神“和“专注“——信息选择的智慧
注意力机制:AI 也会"走神"和"专注"——信息选择的智慧(Version B) 📚 《从零到一造大脑:AI架构入门之旅》专栏 专栏定位:面向中学生、大学生和 AI 初学者的科普专栏,用大白话和生活化比喻带你从零理解人工智能 本系列共 42 篇,分为八大模块: 📖…...
C++ 模板元编程性能优化技巧
C模板元编程性能优化技巧 在现代C开发中,模板元编程(TMP)因其编译期计算能力而备受推崇,能够在运行时实现零开销抽象。不当使用可能导致编译时间膨胀或代码可读性下降。本文将介绍几项关键优化技巧,帮助开发者高效利用…...
开源 + 国产算力:香橙派AIpro打通ROS与大模型,具身智能不再属于少数实验室
从能帮你拿快递的服务机器人,到能在工厂里灵活装配的机械臂,人们不满足于AI只会聊天——我们想要的是能看、能听、能行动的智能体,也就是具身智能机器人。问题来了:要做出一个具身智能机器人,是不是还得像几年前一样&a…...
