当前位置: 首页 > news >正文

YOLOX在启智AI GPU/CPU平台部署笔记

文章目录

  • 1. 概述
  • 2. 部署
    • 2.1 拉取YOLOX源码
    • 2.2 拉取模型文件yolox_s.pth
    • 2.3 安装依赖包
    • 2.4 安装yolox
    • 2.5 测试运行
    • 2.6 运行报错处理
      • 2.6.1 ImportError: libGL.so.1: cannot open shared object file: No such file or directory
      • 2.6.2 ImportError: libgthread-2.0.so.0: cannot open shared object file: No such file or directory
  • 3. 模型训练
  • 参考


1. 概述

本篇主要记录在启智AI平台部署YOLOX,包括遇到的问题、如何训练模型等等,感兴趣的小伙伴请点赞、收藏、转发。


2. 部署

如何在启智平台上新建项目这里就不赘述了,请参考平台操作入门文档,因为考虑到效率和资源的问题,博主没有选择实体物理平台,而是选择了免费的云平台,部署的步骤相差不大。
下图是博主在启智平台上的硬件资源:
在这里插入图片描述


注意,博主选择的镜像版本,即运行环境(cuda 11和pytorch 1.9.0)。
博主在新建项目时,选择了自带模型,但下面的步骤是从拉取YOLOX的仓库开始,一步步记录。


2.1 拉取YOLOX源码

启智平台新建好调试任务后,启动调试:
在这里插入图片描述
在浏览器的jpylab中打开一个Terminal:
在这里插入图片描述
在/code/路径下拉取YOLOX源码:

git clone https://github.com/Megvii-BaseDetection/YOLOX

拉下来后,进入YOLOX路径,目录结构如下:
在这里插入图片描述


2.2 拉取模型文件yolox_s.pth

这里博主把模型文件放在了gitee公共仓库,原始的github仓库访问比较慢。

git clone https://gitee.com/Allen_Qian/yolox_s.git

拉取完成后,将yolox_s.pth文件放在YOLOX文件下。


2.3 安装依赖包

pip install -r requirements.txt

2.4 安装yolox

python setup.py install

2.5 测试运行

python tools/demo.py image -f exps/default/yolox_s.py -c ./yolox_s.pth --path assets/dog.jpg --conf 0.3 --nms 0.65 --tsize 640 --save_result --device gpu

运行结果在/YOLOX/YOLOX_outputs/yolox_s/vis_res/路径下:
在这里插入图片描述


原始输入在/YOLOX/assets/路径下:
在这里插入图片描述


至此,说明部署OK。


2.6 运行报错处理

2.6.1 ImportError: libGL.so.1: cannot open shared object file: No such file or directory

在这里插入图片描述

apt-get update
apt-get install libgl1-mesa-glx

2.6.2 ImportError: libgthread-2.0.so.0: cannot open shared object file: No such file or directory

在这里插入图片描述

apt-get update
apt-get install libglib2.0-dev

3. 模型训练

TBD.


参考

【1】【YOLOX】训练过程の填坑记录
【2】【超详细】手把手教你使用YOLOX进行物体检测(附数据集)
【3】图解目标检测算法之 YOLO
【4】深入浅出Yolo系列之Yolox核心基础完整讲解

相关文章:

YOLOX在启智AI GPU/CPU平台部署笔记

文章目录 1. 概述2. 部署2.1 拉取YOLOX源码2.2 拉取模型文件yolox_s.pth2.3 安装依赖包2.4 安装yolox2.5 测试运行2.6 运行报错处理2.6.1 ImportError: libGL.so.1: cannot open shared object file: No such file or directory2.6.2 ImportError: libgthread-2.0.so.0: cannot…...

23种设计模式攻关

👍一、创建者模式 🔖1.1、单例模式 单例模式(Singleton Pattern),用于确保一个类只有一个实例,并提供全局访问点。 在某些情况下,我们需要确保一个类只能有一个实例,比如数据库连接…...

【jsthreeJS】入门three,并实现3D汽车展示厅,附带全码

首先放个最终效果图: 三维(3D)概念: 三维(3D)是一个描述物体在三个空间坐标轴上的位置和形态的概念。相比于二维(2D)只有长度和宽度的平面,三维增加了高度或深度这一维度…...

unity将结构体/列表与json字符串相互转化

编写Unity程序时,面对大量需要传输或者保存的数据时,为了避免编写重复的代码,故采用NewtonJson插件来将定义好的结构体以及列表等转为json字符串来进行保存和传输。 具体代码如下: using System; using System.IO; using Newtons…...

【Vue】vue2项目使用swiper轮播图2023年8月21日实战保姆级教程

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、npm 下载swiper二、使用步骤1.引入库声明变量2.编写页面3.执行js 总结 前言 swiper轮播图官网 参考文章,最好先看完他的介绍,再看…...

【算法日志】贪心算法刷题:单调递增数列,贪心算法总结(day32)

代码随想录刷题60Day 目录 前言 单调递增数列 贪心算法总结 前言 今天是贪心算法刷题的最后一天,今天本来是打算刷两道题,其中的一道hard题做了好久都没有做出来(主要思路错了)。然后再总结一下。 单调递增数列 int monotoneIncreasingDigits(int n…...

MATLAB算法实战应用案例精讲-【深度学习】模型压缩

目录 模型压缩概述 1. 为什么需要模型压缩 2. 模型压缩的基本方法 Patient-KD 1. Patient-KD 简介...

Matlab使用

Matlab使用 界面介绍 新建脚本:实际上就是新建一个新建后缀为.m的文件 新建编辑器:ctrlN 打开:打开最近文件,以找到最近写过的文件 点击路径,切换当前文件夹 预设:定制习惯用的界面 常见简单指令 ;…...

BladeX多数据源配置

启用多租户数据库隔离,会默认关闭mybatis-plus多数据源插件的启动,从而使用自定义的数据源识别 若不需要租户数据库隔离只需要字段隔离,而又需要用到多数据源的情况,需要前往LauncherService单独配置 数据源切换失败 详情请看说明…...

go里面关于超时的设计

设想一下你在接收源源不断的数据,如果有700ms没有收到,则认为是一个超时,需要做出处理。 逻辑上可以设计一个grouting,里面放一个通道,每收到一条数据进行相应处理。通道中夹杂一个timer定时器的处理,若通道在700ms内…...

Qt下使用ModbusTcp通信协议进行PLC线圈/保持寄存器的读写(32位有符号数)

文章目录 前言一、引入Modbus模块二、Modbus设备的连接三、各寄存器数据的读取四、各寄存器数据的写入五、示例完整代码总结 前言 本文主要讲述了使用Qt的Modbus模块来进行ModbusTcp的通信,实现对PLC的线圈寄存器和保持寄存器的读写,基于TCP/IP的Modbus…...

ElasticSearch学习2

1、索引的操作 1、创建索引 对ES的操作其实就是发送一个restful请求,kibana中在DevTools中进行ES操作 创建索引时需要注意ES的版本,不同版本的ES创建索引的语句略有差别,会导致失败 如下创建一个名为people的索引,settings&…...

3D角色展示

先看效果&#xff1a; 再看代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>3D卡片悬停</title><style>font-face {font-family: "Exoct";src: url("htt…...

前端面试:【Angular】打造强大Web应用的全栈框架

嗨&#xff0c;亲爱的Angular探险家&#xff01;在前端开发的旅程中&#xff0c;有一个全栈框架&#xff0c;那就是Angular。Angular提供了模块化、组件化、依赖注入、路由和RxJS等特性&#xff0c;助力你构建强大、可扩展的Web应用。 1. 什么是Angular&#xff1f; Angular是…...

数据结构:栈和队列

文章目录 一、栈1.栈的概念及结构1.栈的概念及结构2.栈的实现 2.栈的顺序表实现1.栈的结构体和实现的功能函数2.栈的初始化&#xff0c;入栈和出栈操作3.栈的其他操作 3.栈的链表实现1.栈的结构体和实现的功能函数2.栈功能函数的实现 二、队列1.队列的概念及结构1.队列的概念及…...

SpringCloud Gateway服务网关的介绍与使用

目录 1、网关介绍2、SpringCloudGateway工作原理3、三大组件3.1 、Route&#xff08;路由&#xff09;3.2、断言 Predicate3.3、过滤器 filter 4、Gateway整合nacos的使用4.1 、引入依赖4.2、 编写基础类和启动类4.3、 编写基础配置和路由规则4.4 、测试结果 1、网关介绍 客户…...

深入解析:如何打造高效的直播视频美颜SDK

在当今数字化时代&#xff0c;视频直播已经成为人们交流、娱乐和信息传递的重要方式。然而&#xff0c;许多人在直播时都希望能够呈现出最佳的外观&#xff0c;这就需要高效的直播视频美颜技术。本文将深入解析如何打造高效的直播视频美颜SDK&#xff0c;以实现令人满意的视觉效…...

每日一博 - MPP(Massively Parallel Processing,大规模并行处理)架构

文章目录 概述优点缺点小结 概述 MPP&#xff08;Massively Parallel Processing&#xff0c;大规模并行处理&#xff09;架构是一种常见的数据库系统架构&#xff0c;主要用于提高数据处理性能。它通过将多个单机数据库节点组成一个集群&#xff0c;实现数据的并行处理。 在 …...

ssh框架原理及流程

1.hibernate工作原理&#xff1a; 读取并解析配置文件读取并解析映射信息&#xff0c;创建sessionFactory打开session创建事务transaction持久化操作提交事务关闭session关闭sessionFactory 为什么使用&#xff1a; 对JDBC访问数据库的代码做了封装&#xff0c;大大简化了数据…...

eslint 配置和用法

在一个使用Webpack的项目中配置ESLint&#xff0c;你可以按照以下步骤操作&#xff1a; 首先&#xff0c;你需要在你的项目中安装ESLint和对应的Webpack loader。你可以使用npm或者yarn来安装。在你的项目根目录下打开终端&#xff0c;然后运行以下命令&#xff1a; 使用npm&…...

字符设备驱动实例(PWM和RTC)

目录 五、PWM 六、RTC 五、PWM PWM(Pulse Width Modulation&#xff0c;脉宽调制器)&#xff0c;顾名思义就是一个输出脉冲宽度可以调整的硬件器件&#xff0c;其实它不仅脉冲宽度可调&#xff0c;频率也可以调整。它的核心部件是一个硬件定时器&#xff0c;其工作原理可以用…...

Ribbon 源码分析

Ribbon 源码分析 Ribbon Debug 分析 断点 LoadBalancerInterceptor LoadBalancerInterceptor 实现了 ClientHttpRequestInterceptor 接口&#xff0c;重写了其中的 intercept 方法&#xff0c;用来拦截请求&#xff1b; 获取原始的 uri 和 服务名&#xff0c;调用 LoadBalanc…...

【1-3章】Spark编程基础(Python版)

课程资源&#xff1a;&#xff08;林子雨&#xff09;Spark编程基础(Python版)_哔哩哔哩_bilibili 第1章 大数据技术概述&#xff08;8节&#xff09; 第三次信息化浪潮&#xff1a;以物联网、云计算、大数据为标志 &#xff08;一&#xff09;大数据 大数据时代到来的原因…...

宇宙原理:黑洞基础。

宇宙原理&#xff1a;黑洞基础TOC 黑洞的数理基础&#xff1a;一个由满数组成的数盘&#xff0c;经过自然演进&#xff0c;将会逐步稀疏化、最终会向纯数方案发展&#xff1b;纯数方案虽然只有{2}、无数&#xff08;虚拟&#xff09;、{0,1,2,3}&#xff08;虚拟&#xff09;、…...

分类预测 | MATLAB实现SCNGO-CNN-LSTM-Attention数据分类预测

分类预测 | MATLAB实现SCNGO-CNN-LSTM-Attention数据分类预测 目录 分类预测 | MATLAB实现SCNGO-CNN-LSTM-Attention数据分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.SCNGO-CNN-LSTM-Attention数据分类预测程序&#xff0c;改进算法&#xff0c;融合正余弦和…...

Android学习之路(7) Frament

Fragment 表示应用界面中可重复使用的一部分。fragment 定义和管理自己的布局&#xff0c;具有自己的生命周期&#xff0c;并且可以处理自己的输入事件。fragment 不能独立存在。它们必须由 activity 或其他 fragment 托管。fragment 的视图层次结构会成为宿主的视图层次结构的…...

metallb , istio ingress 部署httpbin使用例子

安装metaillb,参考&#xff1a;Kubernetes的负载均衡方案&#xff1a;MetalLB - 文章详情 wget https://raw.githubusercontent.com/metallb/metallb/v0.13.7/config/manifests/metallb-frr.yaml -O metallb.yaml kubectl apply -f metallb-frr.yaml 配置负载均衡ip池 apiVe…...

基于swing的销售管理系统java仓库库存信息jsp源代码mysql

本项目为前几天收费帮学妹做的一个项目&#xff0c;Java EE JSP项目&#xff0c;在工作环境中基本使用不到&#xff0c;但是很多学校把这个当作编程入门的项目来做&#xff0c;故分享出本项目供初学者参考。 一、项目描述 基于swing的销售管理系统 系统有1权限&#xff1a;管…...

FreeCAD傻瓜式教程之约束设定和构建实体、开孔、调整颜色等

本内容基于官方教程中的绘制简单的零件中的体会&#xff0c;在初次绘制的时候&#xff0c;总是无法完成&#xff0c;几经尝试才发现其关键点所在&#xff0c;以此文记录&#xff0c;用以被查资料&#xff0c;同时也希望能够帮到纯白新手快速熟悉该软件的绘图方法。 一、. 打开…...

代码随想录算法训练营day41 | 343. 整数拆分,96. 不同的二叉搜索树

目录 343. 整数拆分 96. 不同的二叉搜索树 343. 整数拆分 类型&#xff1a;动态规划 难度&#xff1a;medium 思路&#xff1a; dp[i]所用的拆分方法至少已经拆分了两次&#xff0c;比如dp[2]1&#xff0c;小于2&#xff0c;在大于2的数中&#xff0c;最后的2是不会拆的。 …...

网站内容描述/b站推广在哪里

这样写的方式主要是 规避sql注入风险 # 不能把变量名直接放到sql执行语句中,防止sql攻击 sql "select * from user where name %s and pwd %s"count c.execute(sql,(name,pwd)) 示例&#xff1a; import pymysql conn pymysql.connect(host"127.0.0.1…...

宁夏一站式网站建设/正规的微信推广平台

在lifelong比赛上下载了图片数据集&#xff0c;目标是将不同光照下不同视角物体的分类&#xff0c;每张图片只含有一种类别&#xff0c;一共有51个类别&#xff08;有刀、订书机、杯子、勺子等&#xff09;&#xff0c;所以想到了用ResNet50做图片分类&#xff0c;顺便学习ResN…...

汽车门户网站开发/品牌策划包括哪几个方面

【来信】贺老师&#xff0c;您好&#xff0c;我是江西某高校软件学院的一名在校学生。看了您在csdn上公布的博文和视频&#xff0c;我获益良多。不得不承认&#xff0c;之前的大学时光我是荒废了&#xff0c;立即就要大三了&#xff0c;我主攻的是C方面。因此我悔过自新的想从头…...

max age 0 wordpress/网站推广在线

ssh 公钥 和私钥配好后&#xff0c;在idea的terminal窗口仍然需要每次输入用户名和密码。 用命令 git add remote origin master gitgithub.com:zk/first-githup.git 即可 还可以解决 fatal: Not a git repository (or any of the parent directories): .git 问题...

昆明营销型网站建设/站长之家查询网

昨天发布程序到2008服务器的IIS&#xff0c;从Sql Server数据库取数没问题&#xff0c;但是从Oracle数据库取数&#xff0c;非常的慢&#xff0c;同样的程序在2003服务器上没问题&#xff0c;本机也没问题。一开始怀疑是这台机器有问题&#xff0c;后来又换了一台2008的服务器发…...

常州网站建设外包公司哪家好/sem是什么检测分析

Intent作为组件之间通信的手段和协议&#xff0c;包含了诸如Action、Data、Type、Category、Component、Extras和Flags等数据项&#xff0c;各自拥有各自的含义和作用。当调用组件发出一个intent的时候&#xff0c;组件管理器会根据所设置的这些数据项来评判应该创建和启动哪个…...