如何配置yolov10环境?

news2024/9/22 19:37:37

本文介绍如何快速搭建起yolov10环境,用于后续项目推理、模型训练。教程适用win、linux系统

yolo10是基于yolo8(ultralytics)的改进,环境配置跟yolo8几乎一模一样。 

目录

第1章节:创建虚拟环境

第2章节:GPU环境下YOLOV10环境配置

第3章节:CPU环境下YOLO10环境配置

第4章节:下载yolo10源码


重要说明:YOLO10环境分为CPU环境与GPU环境,选择任意一种即可。鼓励有英伟达显卡的用户优先选择GPU环境,项目检测、模型训练速度会快很多很多

适合选择CPU环境的情况:电脑上没有英伟达显卡(N卡)

适合选择GPU环境的情况:电脑上有英伟达独立显卡(显存大小不限)且已经安装好英伟达显卡驱动。注意一定是英伟达的独立显卡,不是AMD显卡更不是集成显卡!

英伟达显卡驱动如何安装可以查看本人之前写的教程

Tips :电脑上有英伟达显卡,如何知晓显卡驱动是否安装?

答:打开电脑的命令行窗口,键入 nvidia-smi命令,如果有输出则安装成功,如下图所示:

第1章节:创建虚拟环境

说明:anaconda、venv等都可以,虚拟环境的python版本应不低于3.8,我这里指定为3.10。

前置条件:电脑中已经安装配置好anaconda、或者miniconda、或者python venv虚拟环境中的任意一种(如果电脑中没有这些软件环境,可自行百度安装配置,网上教程很多,优先选择anaconda

下面以anaconda新建虚拟环境为例,在anaconda环境下新建一个虚拟环境。如果你的电脑中正确安装了anaconda,在电脑的windows徽标的“所有应用”中,可以看到anaconda目录,里面有 Anaconda  Prompt和Anaconda Powershell Prompt(见下图)

然后我们点击Anaconda Powershell Prompt(优先推荐使用这种方式,其次是Anaconda  Prompt),之后我们就进入了Anaconda Powershell Prompt命令行。

然后在命令行窗口中输入下面的命令新建一个名为yolo10的环境(我这里取虚拟环境名为yolo10,这里的虚拟环境名称是自己定义的,比如:yolov10,aaa,bbb等数字英文名称都是可以的,我这里python版本为3.10.0) 

conda create -n yolo10 python==3.10.0

 创建好环境之后,将anaconda由base环境切换到刚刚新建好的yolo10环境

切换到对应的conda环境之后,下面安装配置YOLO10的运行环境,首先介绍GPU环境,然后介绍CPU环境。

第2章节:GPU环境下YOLOV10环境配置

说明:如果你的电脑不具备GPU环境,请直接跳到下一章节。

前置要求:需要你的电脑有英伟达显卡且安装了显卡驱动(nvidia-smi命令有返回)

2.1 去Pytorch官网安装GPU版本的Pytorch

在第1章节中,用anaconda创建好一个名为yolo10的虚拟环境之后,激活进入该环境中,进行下列操作。 

不就是安装Pytorch吗?直接conda install pytorch 或者 pip install pytorch不就好了?如果这样做的话,就安装错了,这样安装的是cpu版本的pytorch并且没有为名为yolo10的虚拟环境安装cudatoolkit工具包(运行时环境) 。我们需要执行下面的命令之一,为名为yolo10的虚拟环境正确安装gpu版本的pytorch。在执行下面的命令之前,我们需要仔细确认自己电脑的英伟达显卡驱动支持的最高cuda版本。具体做法是,命令行窗口输入nvidia-smi,返回的 CUDA Version即为支持的CUDA最高版本。详细见下图所示:

可以看到,本人电脑的显卡驱动所支持的最高 CUDA版本是12.4(意思是最高可以安装cuda 12.4或者比cuda 12.4 低的,只低不高的原则)。那么我们需要去pytorch官网找到与cuda 12.4版本对应的安装命令或者比CUDA12.4低的安装命令。

如上面截图所示(2024.06.05),这个页面上可以让我们选择安装方式(conda安装、pip安装....)对应的OS版本、CUDA版本等等,页面会自动生成安装命令。但是上面的页面所显示的支持CUDA 11.8和 CUDA12.1,而我们本地电脑所支持的最高版本是CUDA12.4,根据只低不高的原则。因此可以选择CUDA 11.8或 CUDA12.1,我们直接在页面上选择Pytorch版本(选择Stable),OS类型(这里选择windows),安装方式(这里选择Conda),语言选择Python,CUDA版本我这里选择12.1,然后就可以自动生成安装命令:

conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

然后我们复制上面的命令在yolo10的conda虚拟环境中执行安装:

这里一般需要我们等待相当长一段时间(除非你的网络比较好或者之前安装过),安装速度一般自己电脑的网络而异,网络不好可能会安装中断,此时多次重试上面的命令即可。

如果你的电脑的显卡驱动所支持的最高CUDA版本既不是11.8也不是12.1,假如是11.7,那么需要进入历史版本界面(链接如下图红色方框所示)找CUDA  11.7的pytorch

 进入pytorch历史版本页面后(如下面的截图所示)我们直接复制命令执行了就好了

可以看到CUDA11.7对应的conda 安装方式的命令是这样的(CUDA11.7对应着多个版本的torch,我这里选择torch2.0.1):

conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia

 我们直接复制,在名为yolo10的conda环境下执行即可

当然我们还可以选择pip命令安装,直接从页面复制命令在名为yolo10的conda环境命令行窗口执行(注意,conda安装、pip安装两种方式任选其一即可,不可重复)

第3章节:CPU环境下YOLO10环境配置

说明:在CPU环境下项目视频检测和摄像头检测速度会比较慢

在第1章节,为项目创建好虚拟环境之后(还是以名为yolo10的虚拟环境为例子)激活并进入该虚拟环境,后键入下面的命令(两种安装方式任选其一,切记不可重复):

1.Anaconda安装(默认anaconda源中最新版本的torch):

conda install pytorch torchvision torchaudio cpuonly -c pytorch

 2.Pip 安装(我这里以2.0.1版本为例)

pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2

下面不加版本号默认安装的是pip源中最新版本的torch

pip3 install torch torchvision torchaudio

第4章节:下载yolo10源码

 去github下载yolo10源码:https://github.com/THU-MIG/yolov10

yolo10项目目录下 有一个 requirement.txt 环境依赖,截止到2024.7.10,该文件的环境依赖如下

毫无疑问直接pip install -r requirement.txt,无论你的电脑有没有英伟达显卡,直接安装requirements.txt,安装的是cpu版本的torch,对于模型训练来说,cpu版本的torch奇慢,并且onnxruntime-gpu仅限有英伟达显卡的用户才能安装成功。 前面几个章节已经给出了正确安装pytorch的步骤,我们的环境中已经有torch了,因此,把上面的requirement.txt中的torch、torchvision、以及onnxruntime-gpu注释掉(几乎用不到,除非你用了onnx模型推理),然后在上述anaconda中的yolo10虚拟环境中安装剩余的依赖即可。

关于如何安装onnxruntime-gpu可以参考本人之前写的文章。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1915845.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

tesla p100显卡显示资源不足,api调用失败

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收…

数据结构JAVA

1.数据结构之栈和队列 栈结构 先进后出 队列结构 先进先出 队列 2.数据结构之数组和链表 数组结构 查询快、增删慢 队列结构 查询慢、增删快 链表的每一个元素我们叫结点 每一个结点都是独立的对象

浅谈“不要卷模型,要卷应用”

目录 1.概述 2.AI技术应用场景探索 3.避免超级应用陷阱的策略 3.1.追求DAU的弊端 3.2.平衡用户活跃度与应用实用性的策略 4.个性化智能体开发 4.1. 用户需求分析与数据收集 4.2. 技术选择与开发 4.3. 个性化算法设计 4.4. 安全性与隐私保护 4.5. 多渠道集成与响应机…

《昇思25天学习打卡营第14天|计算机视觉-ShuffleNet图像分类》

FCN图像语义分割&ResNet50迁移学习&ResNet50图像分类 当前案例不支持在GPU设备上静态图模式运行,其他模式运行皆支持。 ShuffleNet网络介绍 ShuffleNetV1是旷视科技提出的一种计算高效的CNN模型,和MobileNet, SqueezeNet等一样主要应用在移动端…

GraphGNSSLib Series[2]:在CLion中不同Node间进行debug

CLion实现Node debug 步骤: 我了解到的node,大多是通过终端运行,但是使用clion不断debug断点进行调试一直使我很苦恼,所以此次记录一下如何通过clion实现node节点之间通过publisher以及subscriber进行节点话题间的发布与通信&…

App H5+ 实现下载、查看功能 前后端实现(SpringBoot)

<!doctype html><html><head><meta charset"utf-8"><title>维修指南</title><meta name"viewport" content"widthdevice-width, initial-scale1.0, minimum-scale0, maximum-scale0.85, user-scalableyes&quo…

TotalSegmentator---针对CT/MRI数据的自动分割

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ&#xff1a;870202403 公众号&#xff1a;VTK忠粉 前言 本文分享开源软件TotalSegmentator&#xff0c;该开源项目针对CT/MRI数据类型&#xff0c;对主要的解剖学结构进行自动分割&#xff0c;并且被集成到MITK中。希望对各…

GB28181设备如何添加

简介 此篇描述视频网关&#xff08;中间件&#xff09;接入大华、海康、ONVIF设备&#xff08;NVR、摄像头&#xff09;、GB28181设备步骤和流程。 阅读本文档之前建议先阅览视频网关&#xff08;中间件&#xff09;用户使用手册。 接入方式和说明 视频网关&#xff08;中间…

为什么Windows操作系统一定要每年重装一次

在日常使用中&#xff0c;我们的电脑保存了无数的数据&#xff0c;安装和卸载程序&#xff0c;在这个过程中变得越来越慢&#xff0c;越来越容易出现问题。除了升级电脑硬件之外&#xff0c;有一个简单的办法可以让我们的电脑焕然一新&#xff1a;每年重新安装一次操作系统。 …

NFS综合项目

现有主机 node01 和 node02&#xff0c;完成如下需求&#xff1a; 1、在 node01 主机上提供 DNS 和 WEB 服务 2、dns 服务提供本实验所有主机名解析 3、web服务提供 www.rhce.com 虚拟主机 4、该虚拟主机的documentroot目录在 /nfs/rhce 目录 5、该目录由 node02 主机提供的NFS…

七人共赢拼团模式的深度剖析与互助精神重塑

在当今电商的浩瀚星海中&#xff0c;七人共赢拼团模式以其创新的合作框架与激励体系&#xff0c;正引领着消费与商业的新潮流。这一模式不仅优化了购物体验&#xff0c;更深刻诠释了互助共赢的核心理念。以下&#xff0c;我们将从直推奖励、自动补齐机制及团队荣耀奖三个方面&a…

Markdown+Sphinx+Read_the_Docs的一些技巧

MarkdownSphinxRead_the_Docs可以用来构建个人主页或知识教程&#xff0c;搭建方法网上很多&#xff0c;可以参考这个大佬的文章。本文主要讲述一些技巧&#xff0c;可以让项目更加完美。 本人运行环境是WSL2 Ubuntu 22.04&#xff0c;Sphinx版本是7.3.7 文章目录 一 工程搭建…

生物打印后的生物力学过程

生物打印后的生物力学过程 3D生物打印技术在组织工程领域展现出巨大的潜力&#xff0c;但打印后组织的生物力学特性对其最终成功至关重要。本文将详细介绍打印后组织的生物力学特性及其在组织工程中的应用。 1. 打印后水凝胶交联 原位交联可以在生物打印过程中提供足够的机械…

cdn中配置ssl证书

##red## &#x1f534; 大家好&#xff0c;我是雄雄&#xff0c;欢迎关注微信公众号&#xff0c;雄雄的小课堂。 SSL KEY 这个里面放的是&#xff1a;private.pem文件中的内容 SSL PEM 这个里面放的是&#xff1a;fullchain.crt文件中的内容&#xff0c;注意&#xff0c;这个…

Python 100道基础入门练习题!附解析

看书&#xff0c;看视频都可以帮助你学习代码&#xff0c;但都只是辅助作用&#xff0c;学好 Python&#xff0c;最重要的还是 多敲代码&#xff0c;多刷题。 不知道怎么找题刷题的小伙伴&#xff0c;可以看看这里今天带来了100道练习题。覆盖了基本语法&#xff0c;数据结构&…

【JavaWeb程序设计】Servlet(一)

目录 一、客户端通过login.jsp发出登录请求&#xff0c;请求提交到loginServlet处理。 1. 运行截图 2. 登录页面&#xff08;login.jsp&#xff09; 3. loginServlet 4. 登录成功页面&#xff08;loginSuccess.jsp&#xff09; 5. 登录失败页面&#xff08;loginFail.jsp…

探索一个精美的商品橱窗布局:HTML与CSS的魔法

在今天的文章中&#xff0c;我们将一起探索一个精心设计的商品橱窗布局&#xff0c;这个布局完全通过HTML和CSS来实现。这个布局不仅美观&#xff0c;而且功能强大&#xff0c;非常适合用于展示商品或任何需要网格化布局的内容。 效果图&#xff1a; 一、HTML结构 首先&#…

tableau标靶图,甘特图与瀑布图绘制 - 9

标靶图&#xff0c;甘特图与瀑布图 1. 标靶图绘制1.1 筛选器筛选日期1.2 条形图绘制1.3 编辑参考线1.4 设置参考线1.5 设置参考区间1.6 四分位设置1.7 其他标靶图结果显示 2.甘特图绘制2.1 选择列属性2.2 选择列属性2.3 创建新字段2.4 设置天数大小及颜色 3. 瀑布图绘制3.1 she…

【案例】python集成OCR识别工具调研

目录 一、前言二、Tesseract_OCR2.1、安装过程2.2、python代码使用三、PaddleOCR3.1、安装过程3.2、python代码使用四、EasyOCR五、ddddOCR六、CnOCR一、前言 因项目需要OCR识别能力,且要支持私有化部署。本文将对比市场一些开源的OCR识别工具,从中选择适合项目需要的OCR,且…

基于主成分分析PCA的一维时间序列信号降噪方法(Python)

主成分分析PCA是面向模式分类的特征提取最典型的工具&#xff0c;是满足上述映射准则的一种数据压缩的方法。作为经典的特征提取方法&#xff0c;是在不减少原始数据所包含的内在信息前提下&#xff0c;将原始数据集转化为由维数较少的“有效”特征成分来表示&#xff0c;使其在…