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

目标检测:YOLOv11(Ultralytics)环境配置,适合0基础纯小白,超详细

目录

1.前言

2. 查看电脑状况

3. 安装所需软件

3.1 Anaconda3安装

3.2 Pycharm安装

4. 安装环境

4.1 安装cuda及cudnn

4.1.1 下载及安装cuda

4.1.2 cudnn安装

4.2 创建虚拟环境

4.3 安装GPU版本

4.3.1 安装pytorch(GPU版)

4.3.2 安装ultralytics库

4.4 安装CPU版本

4.4.1 安装pytorch(CPU版)

4.4.2 安装ultralytics库

5. 源码及使用环境

5.1 下载YOLOv11源码

5.2 pycharm导入环境

6.  验证环境


1.前言

YOLO11是Ultralytics公司YOLO系列实时目标检测器的最新迭代版本,它以尖端的准确性、速度和效率重新定义了可能实现的性能。在之前YOLO版本取得的显著进步基础上,YOLO11在架构和训练方法上进行了重大改进,使其成为各种计算机视觉任务中的通用选择。除了传统的目标检测外,YOLO11 还支持目标跟踪、实例分割、姿态估计、OBB定向物体检测(旋转目标检测)等视觉任务。

如果已经会配置YOLOv8的环境,本文不需要重复配置,下载最新的YOLOv11训练文件即可。

2. 查看电脑状况

深度学习的训练对于电脑显卡要求较高,若电脑没有独立显卡(NVIDIA卡)或者是AMD的显卡无法使用GPU进行训练,需用CPU进行训练,会慢很多。若不清楚电脑有无显卡可以打开任务管理器,点击性能往下找GPU,就可以看到是否有独立显卡,不清楚是否为独立显卡则搜索型号。

若有独立显卡则安装GPU版本的pytorch,若无独立显卡则安装CPU版本的pytorch。

嫌麻烦或者教程看不懂的友友可以私信我配置环境哦~

3. 安装所需软件

推荐安装Anaconda3+Pycharm,都需要加入环境变量,会安装或者安装过了则跳过这一步骤。

3.1 Anaconda3安装

Anaconda3由于是国外网站下载较慢,推荐通过清华镜像源安装。

Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source MirrorIndex of /anaconda/archive/ | 清华大学开源软件镜像站,致力于为国内和校内用户提供高质量的开源软件镜像、Linux 镜像源服务,帮助用户更方便地获取开源软件。本镜像站由清华大学 TUNA 协会负责运行维护。https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=Dicon-default.png?t=O83Ahttps://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D

选择带有Anaconda3...Windows...exe 字样的进行下载。

下载完成之后打开Anaconda3进行安装,一直点下一步,选Just Me,安装路径不建议安装到c盘,可以直接复制粘贴修改到  D:\Anaconda3  ,也可以修改到其他路径,最好纯英文路径。

点击下一步后,需要选择添加到环境变量,如下图前三个一定要勾选,也可以按照我图中全选。

点击install安装后耐心等待进度条满安装完成即可,进度较慢,耐心等待。

3.2 Pycharm安装

安装Pycharm可以直接去官网下载,速度较快。

下载 PyCharm:JetBrains 出品的用于数据科学和 Web 开发的 Python IDE现在最新版本的 PyCharm,适用于 Windows、macOS 或 Linux。https://www.jetbrains.com/zh-cn/pycharm/download/?section=windowsicon-default.png?t=O83Ahttps://www.jetbrains.com/zh-cn/pycharm/download/?section=windows

往下拉下载第二个Community Edition社区免费版就可以。

下载完之后打开安装,点下一步,遇到选择路径 修改路径到D盘或者其它除C盘外的文件夹,可以建个自己喜欢的英文名字。

需要勾选这些选项,五角星必勾选,建议全选。

再点下一步,直接安装就可以了,耐心等待进度条满安装完成即可。

4. 安装环境

4.1 安装cuda及cudnn

4.1.1 下载及安装cuda

在安装pytorch前需要安装cuda,(若无显卡则跳过)下载cuda前需要先查看显卡支持的CUDA版本最高是多少,按下win+r键,输入cmd,在打开的页面输入:nvidia-smi ,即可查看。

上图红框位置显示即为cuda最高支持版本,本教程cuda最高版本达到11.8即可,若没有达到则需要更新显卡驱动。

CUDA Toolkit Archive | NVIDIA Developerhttps://developer.nvidia.com/cuda-toolkit-archive

在这个网站挑选下载或者直接点击链接下载点此下载 。

下载完之后运行安装,建议安装到默认路径,所以C盘需要留有20G以上的存储空间,一直点击下一步,直到出现这个界面点击自定义,然后全部勾选即可。

将下图中选项全部勾选安装。

安装完成后可以再次在cmd里输入命令:nvcc -V 查看,如下显示即安装成功

4.1.2 cudnn安装

进入cudnn官网,选择合适版本的文件。

https://developer.nvidia.com/rdp/cudnn-archiveicon-default.png?t=O83Ahttps://developer.nvidia.com/rdp/cudnn-archive

进入后在文件列表中选择cudnn版本与上面cuda安装相匹配的版本。

下载Windows版本的压缩包文件。

下载需要登录,也可以复制下载链接打开迅雷下载。

将得到的压缩文件进行解压,解压后得到下图三个文件夹,全选复制进cuda的文件夹中进行覆盖替换,替换完成后即cudnn安装完成。按照本文教程安装的cuda的文件夹默认在 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8 目录下。

4.2 创建虚拟环境

按下Win键,输入anaconda prompt,打开下图所示的应用。

默认进入的是base环境,base环境的版本与下载的anaconda3版本有关,因此不建议直接使用,需要新建环境,在新建环境之前建议更改默认的pip源和conda源可加速下载速度。

更改代码如下,直接输入即可,这里选择更换的是中科大源

conda config --remove-key channels
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes
pip config set global.index-url https://mirrors.ustc.edu.cn/pypi/web/simple

 此时新建虚拟环境(需要关闭加速软件),这里创建一个名为yolov11,python版本为3.10的虚拟环境,也可以修改为其他名或者python版本,建议使用python3.9以上版本,选择替换即可。

conda create -n yolov11 python=3.10

回车后出现新建环境提醒输入y继续,耐心等待全部下载完成后自动安装。

注意:此时如果报错

UnavailableInvalidChannel: HTTP 404 NOT FOUND for channel anaconda/pkgs/free <https://mirrors.ustc.edu.cn/anaconda/pkgs/free>

The channel is not accessible or is invalid.

You will need to adjust your conda configuration to proceed.
Use `conda config --show channels` to view your configuration's current state,
and use `conda config --show-sources` to view config file locations.

等错误,需要修改隐藏文件 .condarc文件的内容,具体路径为:c:\users\用户名\.condarc

使用记事本打开,复制下面这一段进去替换掉原本所有的内容,替换完之后保存即可

channels:- defaults
show_channel_urls: true
channel_alias: http://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:conda-forge: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmsys2: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudbioconda: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmenpo: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudpytorch: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudsimpleitk: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

 此时再次输入命令新建yolov11环境,建议使用python3.9以上版本。

conda create -n yolov11 python=3.10

​创建完之后输入

conda activate yolov11

进入yolov11环境之中,此时有NVIDIA显卡安装GPU版看4.3,其它需要安装CPU版看4.4。

4.3 安装GPU版本

4.3.1 安装pytorch(GPU版)

打开prompt 输入conda activate yolov11进入yolov11环境,之后输入下方命令即可安装pytorch,耐心等待安装完成(需要注意关闭加速软件否则会下载失败)

pip install torch==2.0.0+cu118 torchvision==0.15.1+cu118 --extra-index-url https://download.pytorch.org/whl/cu118

 torch及相关库比较大,需要耐心等待下载完之后出现 done 则安装完成。

4.3.2 安装ultralytics库

这个库包含了几乎全部运行yolov11所需的环境,输入以下命令后耐心等待即可

pip install ultralytics

出现下图则环境配置完成 。

4.4 安装CPU版本

4.4.1 安装pytorch(CPU版)

有英伟达显卡的按照上述流程安装后即可跳过本部分,无英伟达显卡则需要按照下述方法进行,

打开prompt ,进入yolov11环境之后,输入如下命令即可安装cpu版本的pytorch

conda install pytorch torchvision torchaudio cpuonly -c pytorch

 输入指令后看到下图再按下回车则开始正常安装。

耐心等待安装完成之后安装ultralytics库。

4.4.2 安装ultralytics库

pip install ultralytics

安装完成出现下图则环境配置完成。

5. 源码及使用环境

5.1 下载YOLOv11源码

YOLOv11(ultralytics)源码地址:

https://github.com/ultralytics/ultralytics/icon-default.png?t=O83Ahttps://github.com/ultralytics/ultralytics/

点进去下载代码,现在还在持续更新,这里使用v8.3.20版本,进不去可能需要科学上网,或者点击链接下载(免积分下载)(压缩包内附带yolov11n.pt、yolov11s.pt和yolov11m.pt预训练权重)可以下载下图所示几个预训练权重文件,常规使用yolov11n.pt即可。

5.2 pycharm导入环境

​下载完成之后解压到D盘或其它盘文件夹内,此时点击鼠标右键文件夹通过pycharm打开,打开后需要配置虚拟环境,新版pycharm可选中文语言,点击 文件-设置,点击 项目:ultralytics-8.3.20,点击python解释器,点击右边添加解释器-添加本地解释器,

​点击Virtualenv环境 - 现有,点击右边三个点,找到刚才添加的yolov11环境的位置,按照本文配置即是D:\Anaconda3\envs\yolov11\python.exe 路径,之后一直点确定,点应用,再点确定即可。

 下图为环境正在加载,耐心等待完成即可,等待环境加载完成即可运行代码。

6.  验证环境

下载完成后将权重文件复制到ultralytics根目录下,此时可以去网上下载一只猫猫的jpg图片(或者其它图片,根据自己喜好更改),修改文件名为cat.jpg。检测环境是否有问题可以在prompt里yolov11环境下运行。注意预训练权重的文件名与代码中的文件名对应。

yolo predict model=yolov11n.pt source='cat.jpg'

输出下图即环境正常。

或者通过前边安装的pycharm运行检测,新建一个yolov11_predict.py,在文件中添加如下代码 

from ultralytics import YOLO
# 加载预训练的 YOLOv11n 模型
model = YOLO('yolov11n.pt')
# 定义图像文件的路径
source = 'cat.jpg' #更改为自己的图片路径
# 运行推理,并附加参数
model.predict(source, save=True, imgsz=640, conf=0.2)

运行之后如下即环境正常。

​ 如果报错 ImportError: DLL load failed while importing _imaging: 找不到指定的模块,是pillow版本问题导致的错误。

输入如下指令降低pillow的版本即可解决此问题。

pip install pillow==8.0

 可以顺着路径查看检测后的图片,出现检测框则环境可以正常使用。

如果遇到报错或者有疑问可以评论区交流~

相关文章:

目标检测:YOLOv11(Ultralytics)环境配置,适合0基础纯小白,超详细

目录 1.前言 2. 查看电脑状况 3. 安装所需软件 3.1 Anaconda3安装 3.2 Pycharm安装 4. 安装环境 4.1 安装cuda及cudnn 4.1.1 下载及安装cuda 4.1.2 cudnn安装 4.2 创建虚拟环境 4.3 安装GPU版本 4.3.1 安装pytorch&#xff08;GPU版&#xff09; 4.3.2 安装ultral…...

面试域——岗位职责以及工作流程

摘要 介绍互联网岗位的职责以及开发流程。在岗位职责方面&#xff0c;详细阐述了产品经理、前端开发工程师、后端开发工程师、测试工程师、运维工程师等的具体工作内容。产品经理负责需求收集、产品规划等&#xff1b;前端专注界面开发与交互&#xff1b;后端涉及系统架构与业…...

C#文件内容检索的功能

为了构建一个高效的文件内容检索系统&#xff0c;我们需要考虑更多的细节和实现策略。以下是对之前技术方案的扩展&#xff0c;以及一个更详细的C# demo示例&#xff0c;其中包含索引构建、多线程处理和文件监控的简化实现思路。 扩展后的技术方案 索引构建&#xff1a; 使用L…...

Redis-05 Redis发布订阅

Redis 的发布订阅&#xff08;Pub/Sub&#xff09;是一种消息通信模式&#xff0c;允许客户端订阅消息频道&#xff0c;以便在发布者向频道发送消息时接收消息。这种模式非常适合实现消息队列、聊天应用、实时通知等功能。 #了解即可&#xff0c;用的很少...

【读书笔记·VLSI电路设计方法解密】问题27:什么是可制造性设计

尽管业界尚未达成共识,但“可制造性设计”这一术语大致描述了旨在提高产品良率的特定分析、预防、纠正和验证工作。这不同于后GDSII阶段的分辨率增强技术,如光学邻近效应校正(OPC)和相位移掩膜(PSM)。“可制造性设计”中的关键词是“设计”,意指在设计阶段(而非设计完成…...

数据结构:堆的应用

堆排序 假定有一组数据极多的数&#xff0c;让我们进行排序&#xff0c;那我们很容易想到一种经典的排序方法&#xff0c;冒泡排序&#xff0c;我们对冒泡排序的时间复杂度进行分析&#xff1a; 显然&#xff0c;冒泡排序的时间复杂度是O&#xff08;n^2&#xff09;,当数据量…...

Spring Boot 实现文件分片上传和下载

文章目录 一、原理分析1.1 文件分片1.2 断点续传和断点下载1.2 文件分片下载的 HTTP 参数 二、文件上传功能实现2.1 客户端(前端)2.2 服务端 三、文件下载功能实现3.1 客户端(前端)3.2 服务端 四、功能测试4.1 文件上传功能测试4.2 文件下载功能实现 参考资料 完整案例代码&…...

夹逼准则求数列极限(复习总结)

记住这两个准则&#xff0c;然后我们就开始看题目 因为是证明题&#xff0c;所以要放缩到什么值已经是确定的了。也就是放缩到0&#xff0c;然后很明显地可以看出前面已经有一个可以使得极限是0了&#xff0c;并且后面的值明显小于1&#xff0c;就是逐渐缩小的趋势&#xff0c;…...

【python】OpenCV—WaterShed Algorithm(1)

文章目录 1、功能描述2、代码实现3、完整代码4、效果展示5、涉及到的库函数5.1、cv2.pyrMeanShiftFiltering5.2、cv2.morphologyEx5.3、cv2.distanceTransform5.4、cv2.normalize5.5、cv2.watershed 6、参考 1、功能描述 基于分水岭算法对图片进行分割 分水岭分割算法&#x…...

查找与排序-插入排序

思考&#xff1a;在把待排序的元素插入已经有序的子序列中时&#xff0c;是不是一定要逐一比较&#xff1f;有没有改进方法&#xff1f; 在查找插入位置的时候可以采用折半&#xff08;二分&#xff09;搜索的办法。 一、折半插入排序 1.折半插入排序算法的基本思想 假设待…...

JAVA基础:多线程 (学习笔记)

多线程 一&#xff0c;什么是线程&#xff1f; 程序&#xff1a;为完成特定任务、用某种语言编写的一组指令的集合,是一段静态的代码进程&#xff1a;程序的一次执行过程。 正在运行的一个程序&#xff0c;进程作为资源分配的单位&#xff0c;在内存中会为每个进程分配不同的…...

盲盒小程序/APP系统,市场发展下的新机遇

当下&#xff0c;年轻人热衷于各种潮玩商品&#xff0c;尤其是一盲盒为主的潮流玩具风靡市场&#xff0c;吸引了众多入局者。随着互联网信息技术的快速发展&#xff0c;各类线上盲盒小程序又进一步推动了盲盒市场的发展&#xff0c;成为年轻人拆盲盒的主要阵地。在盲盒经济中&a…...

Unity3D LayoutGroup组件详解

Unity3D中的LayoutGroup组件是一种强大的工具&#xff0c;用于动态调整UI元素的布局。它主要包括三种类型&#xff1a;Horizontal Layout Group&#xff08;水平布局组&#xff09;、Vertical Layout Group&#xff08;垂直布局组&#xff09;和Grid Layout Group&#xff08;网…...

[NeetCode 150] Foreign Dictionary

Foreign Dictionary There is a foreign language which uses the latin alphabet, but the order among letters is not “a”, “b”, “c” … “z” as in English. You receive a list of non-empty strings words from the dictionary, where the words are sorted lex…...

小新学习K8s第一天之K8s基础概念

目录 一、Kubernetes&#xff08;K8s&#xff09;概述 1.1、什么是K8s 1.2、K8s的作用 1.3、K8s的功能 二、K8s的特性 2.1、弹性伸缩 2.2、自我修复 2.3、服务发现和负载均衡 2.4、自动发布&#xff08;默认滚动发布模式&#xff09;和回滚 2.5、集中化配置管理和密钥…...

如何用终端批量修改一个文件夹里面所有图片的后缀名?

步骤&#xff1a; winr &#xff0c;然后输入cmd,打开终端 使用cd命令导航到要修改图片后缀名的文件夹。eg.我的该文件夹(C:\dog)下&#xff0c;保存的图片。&#xff08;cd和文件目录之间要有空格&#xff09;批量改变后缀名&#xff0c;假如让后缀名全部要从 ".webp&q…...

关于AI网络架构的文章

思科OCP anounce了800G 51.2T G200-based minipack3 switch。对比之前Tesla anounce的TTPoE。真的很好奇&#xff0c;谁是AI-networking的未来&#xff0c;以及思科是否走在正确的路上&#xff0c;以及S1背后的技术。 大致浏览了相关的文章&#xff0c;先mark住&#xff0c;回…...

【ChatGPT】在多轮对话中引导 ChatGPT 保持一致性

在多轮对话中引导 ChatGPT 保持一致性 多轮对话是与 ChatGPT 等对话模型互动时的一大特点&#xff0c;特别是在复杂任务和长时间对话中&#xff0c;保持对话的一致性显得尤为重要。用户往往希望 ChatGPT 能够在上下文中理解先前的对话内容&#xff0c;避免反复重申问题或者给出…...

【Chapter 7】因果推断中的机器学习:从T-学习器到双重稳健估计

随着机器学习技术的发展&#xff0c;数据科学家们开始探索如何将这些先进的方法应用于因果推断问题&#xff0c;尤其是处理异质性效应&#xff08;Effect Heterogeneity&#xff09;时。本章将介绍几种基于机器学习的因果推断方法&#xff0c;包括T-学习器、X-学习器和双重稳健…...

vim的使用方法

常见的命令可参考&#xff1a; Linux vi/vim | 菜鸟教程​www.runoob.com/linux/linux-vim.html​编辑https://link.zhihu.com/?targethttps%3A//www.runoob.com/linux/linux-vim.html 1. vim的工作模式 vi/vim 共分为三种模式&#xff0c;命令模式、编辑输入模式和末行&am…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?

Golang 面试经典题&#xff1a;map 的 key 可以是什么类型&#xff1f;哪些不可以&#xff1f; 在 Golang 的面试中&#xff0c;map 类型的使用是一个常见的考点&#xff0c;其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

DAY 47

三、通道注意力 3.1 通道注意力的定义 # 新增&#xff1a;通道注意力模块&#xff08;SE模块&#xff09; class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...

Java入门学习详细版(一)

大家好&#xff0c;Java 学习是一个系统学习的过程&#xff0c;核心原则就是“理论 实践 坚持”&#xff0c;并且需循序渐进&#xff0c;不可过于着急&#xff0c;本篇文章推出的这份详细入门学习资料将带大家从零基础开始&#xff0c;逐步掌握 Java 的核心概念和编程技能。 …...

【HTTP三个基础问题】

面试官您好&#xff01;HTTP是超文本传输协议&#xff0c;是互联网上客户端和服务器之间传输超文本数据&#xff08;比如文字、图片、音频、视频等&#xff09;的核心协议&#xff0c;当前互联网应用最广泛的版本是HTTP1.1&#xff0c;它基于经典的C/S模型&#xff0c;也就是客…...

Java面试专项一-准备篇

一、企业简历筛选规则 一般企业的简历筛选流程&#xff1a;首先由HR先筛选一部分简历后&#xff0c;在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如&#xff1a;Boss直聘&#xff08;招聘方平台&#xff09; 直接按照条件进行筛选 例如&#xff1a…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。

1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj&#xff0c;再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

Web中间件--tomcat学习

Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机&#xff0c;它可以执行Java字节码。Java虚拟机是Java平台的一部分&#xff0c;Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...

探索Selenium:自动化测试的神奇钥匙

目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...

Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成

一个面向 Java 开发者的 Sring-Ai 示例工程项目&#xff0c;该项目是一个 Spring AI 快速入门的样例工程项目&#xff0c;旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计&#xff0c;每个模块都专注于特定的功能领域&#xff0c;便于学习和…...