【YOLO8系列】(二)YOLOv8环境配置,手把手嘴对嘴保姆教学

news2024/11/11 5:46:10

目录

一. 准备环境

1.Anaconda下载

2.创建yolov8虚拟环境

3.pytorch安装

4.CUDA下载

5.CUDNN下载

二、yolov8模型下载

1.clone模型

2.pycharm配置

①解释器配置

②终端配置 

3.安装必要库 

4.下载训练模型

三、 环境验证

四、总结


YOLOv8 是 YOLO 系列最新的目标检测模型,具有高效性和高准确度。本文将详细介绍如何在本地环境中配置 YOLOv8,包括环境搭建、依赖安装、模型下载和基本使用示例。

本系列其他文章

【YOLOv8系列】(一)YOLOv8介绍:实时目标检测的最新突破-CSDN博客

一. 准备环境

1.Anaconda下载

Anaconda 是一个开源的 Python 和 R 语言的发行版,致力于简化数据科学、机器学习、人工智能和大数据的包管理和部署。它包含了大量流行的数据科学包,并且通过 Conda 包管理器提供了便捷的包安装、更新和管理方式。

Download Anaconda Distribution | AnacondaDownload Anaconda's open-source Distribution today. Discover the easiest way to perform Python/R data science and machine learning on a single machine.icon-default.png?t=N7T8https://www.anaconda.com/download

选择适合自己系统的Anaconda软件下载,然后按照步骤安装在除C盘以外的磁盘。

注意:在这一步骤需要勾选以上选项,其他步骤默认点击next安装即可 

2.创建yolov8虚拟环境

在电脑左下角搜索Anaconda,点击打开Anaconda Prompt

 创建新的虚拟环境yolov8

conda create -n yolov8 python=3.8

激活yolov8环境

conda activate yolov8

3.pytorch安装

Win+R输入cmd命令弹出对话框后。输入命令,nvidia-smi自己电脑是否有GPU,如果有,CUDA版本是多少。

nvidia-smi

进入PyTorch官网,查看对应自己电脑情况的安装命令PyTorchicon-default.png?t=N7T8https://pytorch.org/

4.CUDA下载

打开CUDA Toolkit Archive | NVIDIA Developer官网

CUDA Toolkit Archive | NVIDIA Developericon-default.png?t=N7T8https://developer.nvidia.com/cuda-toolkit-archive 选择自己电脑版本的CUDA,例如CUDA Toolkit 11.6.1

 依次选择系统等信息,然后点击下载到电脑。默认安装即可,记录下安装路径

安装完成后,【右击此电脑】—>【属性】—>(界面右边)【高级系统设置】—>【环境变量】—>点击【系统变量】里的path进去查看环境变量。需要有一下环境变量,若没有安装默认安装路径自行添加。

5.CUDNN下载

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

将下载解压后将所有文件拷贝CUDA目录里,例如CUDA默认路径为C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6

二、yolov8模型下载

1.clone模型

GitHub - ultralytics/ultralytics: NEW - YOLOv8 🚀 in PyTorch > ONNX > OpenVINO > CoreML > TFLiteNEW - YOLOv8 🚀 in PyTorch > ONNX > OpenVINO > CoreML > TFLite - ultralytics/ultralyticsicon-default.png?t=N7T8https://github.com/ultralytics/ultralytics

可以直接下载zip压缩文件,或者安装Git输入以下命令克隆ultralytics项目 

git clone https://github.com/ultralytics/ultralytics.git

下载完了之后目录如下: 

2.pycharm配置

①解释器配置

将下载下来的ultralytics文件夹使用pycharm打开,进入文件 —> 设置界面,找到解释器选项。选择你希望使用的 Anaconda 环境作为解释器,并进行配置。

 点击添加本地解释器—>现有—>yolov8虚拟环境下的python.exe

②终端配置 

打开Anaconda Prompt所在文件,右键属性查看目标位置,复制cmd.exe以及后面的内容。

同样地,文件—>设置—>工具—>终端,将以上复制的路径填入shell路径。

3.安装必要库 

在pycharm终端输入pip安装命令等待安装完成。

pip install ultralytics -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install yolo-i https://pypi.tuna.tsinghua.edu.cn/simple

4.下载训练模型

 在GitHub项目仓,README往下翻可以看见预测、分类、分割等模型,点击即可下载。https://github.com/ultralytics/ultralyticsicon-default.png?t=N7T8https://github.com/ultralytics/ultralytics

或者如果网络不太好,可以使用脚本下载。首先需要新建一个model.txt,包含需要下载模型的地址。

https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8n-pose.pt
https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8m-pose.pt
https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8s-pose.pt
https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8x-pose.pt
https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8n-seg.pt
https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8x-seg.pt
https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8s-cls.pt
https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8m-cls.pt
https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8l-cls.pt
https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8x-cls.pt
https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8x.pt

然后运行以下python脚本进行下载。 

#!usr/bin/env python
# encoding:utf-8
from __future__ import division
 
import os
import time
import logging
import subprocess
import urllib
import requests
import torch
import random
from pathlib import Path
 
def autoDownload(filePath, downloadDir):
    if not os.path.exists(downloadDir):
        os.makedirs(downloadDir)
    while True:
        with open(filePath) as f:
            lists = [one.strip() for one in f.readlines() if one.strip()]
        count = 0
        for downloadUrl in lists:
            print("模型下载地址: ", downloadUrl)
            try:
                tmpFile = downloadDir + downloadUrl.split("/")[-1].strip()
                print("下载文件路径: ", tmpFile)
                if not os.path.exists(tmpFile):
                    torch.hub.download_url_to_file(downloadUrl, str(tmpFile))
                else:
                    print("当前训练模型文件已经下载完成!")
                    count += 1
            except Exception as e:
                print("Exception: ", e)
                time.sleep(random.randint(1, 5))
        print("下载数量为: ", count)
        if count == len(lists):
            break
 
if __name__ == "__main__":
 
    autoDownload(filePath="model.txt", downloadDir="model/")

等待.pt模型下载完毕即可

三、 环境验证

在终端输入以下命令进行预测,打开runs/detect/predict查看预测结果

yolo predict model=./model/yolov8n.pt source='https://ultralytics.com/images/bus.jpg'

  

可以看到yolov8的效果是非常棒的,除了person以及bus,甚至连stop sign都检测出来了。

四、总结

通过以上步骤,你应该已经成功配置好YOLOv8的环境。接下来你可以进行模型训练和推理,期待你在目标检测任务中取得好成绩!如果有任何问题,欢迎在评论区讨论。 

如果以上内容对您有帮助,可以三连打赏订阅本专栏哦, 谢谢~

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

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

相关文章

Springboot各个版本维护时间

Springboot各个版本维护时间

大话光学原理:1.“实体泛光说”、反射与折射

一、实体泛光说 在古希腊,那些喜好沉思的智者们中,曾流传着一个奇妙的设想:他们认为,我们的眼睛仿佛伸出无数触手般的光线,这些光线能向四面八方延伸,紧紧抓住周围的每一个物体。于是,当我们凝视…

Linux:进程间通信(二.共享内存详细讲解以及小项目使用和相关指令、消息队列、信号量)

Linux:进程间通信(二.共享内存详细讲解以及小项目使用和相关指令、消息队列、信号量) 上次结束了进程间通信一:Linux:进程间通信(一.初识进程间通信、匿名管道与命名管道、共享内存) 文章目录 …

分布式IO模块软件配置

组态接口模块 1、打开网络视图 2、拖拽出ET200SP 3、双击ET200SP的图片,进入从站配置 总线适配器的组态更换 关于IO地址分配,需要建立好子网通信后,在主机上配置。 可以看到IP 和设备名 设备与控制器的Profinet连接 先找到设备名称再找…

H桥驱动器芯片详解

H桥驱动器芯片详解 上一篇文章讲解了H桥驱动器的控制原理,本文以汽车行业广泛应用的DRV8245芯片为例,详细讲解基于集成电路的H桥驱动器芯片。 1.概述 DRV824x-Q1系列器件是德州仪器(TI)的一款专为汽车应用设计的全集成H桥驱动器…

Linux——开发工具

1.yum yum是centos中的一个软件下载安装管理客户端,可以下载需要的软件或者解决依赖关系问题(如动态库)。程序都是来源于一段源代码,为了方便下载,源代码被提前在不同的环境下编译好生成对应的yum软件包,存…

微信小程序毕业设计-书店系统项目开发实战(附源码+论文)

大家好!我是程序猿老A,感谢您阅读本文,欢迎一键三连哦。 💞当前专栏:微信小程序毕业设计 精彩专栏推荐👇🏻👇🏻👇🏻 🎀 Python毕业设计…

自动群发消息插件常用源代码科普!

随着网络技术的快速发展,自动群发消息插件成为了众多企业和个人提高效率、加强沟通的重要工具。 然而,开发一个高效且稳定的自动群发消息插件并非易事,需要深入理解并熟练掌握相关的源代码。 本文将从五个方面,通过具体的源代码…

【Java】搜索引擎设计:信息搜索怎么避免大海捞针?

一、内容分析 我们准备开发一个针对全网内容的搜索引擎,产品名称为“Bingoo”。 Bingoo的主要技术挑战包括: 针对爬虫获取的海量数据,如何高效地进行数据管理;当用户输入搜索词的时候,如何快速查找包含搜索词的网页…

【代码随想录】【算法训练营】【第59天】 [卡码110]字符串接龙 [卡码105]有向图的完全可达性 [卡码106]岛屿的周长

前言 思路及算法思维,指路 代码随想录。 题目来自 卡码网。 day 59,周五,继续ding~ 题目详情 [卡码110] 字符串接龙 题目描述 卡码110 字符串接龙 解题思路 前提: 思路: 重点: 代码实现 C语言 […

深度整合全球资源,分贝通打造高效、合规的海外差旅管理平台

在全球化商业活动的背景下,中国企业出海已成为常态。然而,随着海外差旅市场的全面增长,企业在海外支出管理上面临诸多挑战。据2023年数据显示,分贝通出海差旅业务GMV同比增长高达500倍,这一增长背后隐藏着企业对于更省钱、更高效管控方式的迫切需求。 面对与日俱增的开支,企业开…

自动化办公004—有效解决ChatGPT数学公式无法复制到Office、MarkDown的问题

ChatGPT在输出数学公式的时候是正常的,但是粘贴到word、粘贴到MarkDown笔记里就直接变成了一堆代码,其实是有办法解决的,本篇文章主要解决一下无法复制问题 目录 一、问题复现二、效果展示1. 测试案例2. 开始转换(1)运…

【保姆级介绍下C语言中的运算符的优先级】

🌈个人主页: 程序员不想敲代码啊 🏆CSDN优质创作者,CSDN实力新星,CSDN博客专家 👍点赞⭐评论⭐收藏 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步! 🧇C语言中的运算符的优先级 🧇C语言中的运算符的优先级决定了表达…

2024-07-09 Linux 使用gpio-keyboard标准方式获取按键事件实例代码

一、kernel dts 配置修改: diff --git a/sysdrv/source/kernel/arch/arm/boot/dts/rv1106g-evb1-v11.dts b/sysdrv/source/kernel/arch/arm/boot/dts/rv1106g-evb1-v11.dts index d0d059a3b..584f3a00a 100755 --- a/sysdrv/source/kernel/arch/arm/boot/dts/rv110…

Hospital Management Startup 1.0 SQL 注入漏洞(CVE-2022-23366)

前言 CVE-2022-23366是一个影响HMS v1.0的SQL注入漏洞。该漏洞存在于patientlogin.php文件中,允许攻击者通过特定的SQL注入来获取或修改数据库中的敏感信息。 具体来说,攻击者可以通过向patientlogin.php发送恶意构造的SQL语句来绕过身份验证&#xff…

LabVIEW开发阀门自动校准装置

1. 装置概述与目标 在工业和实验室环境中,阀门的准确性和稳定性对于流体控制和实验数据的可靠性非常重要。LabVIEW可以作为开发阀门自动校准装置的理想工具,提供高度可定制化的解决方案。 2. 硬件与设备选择 型号选择:为了实现阀门自动校准…

三维点云配准 -- ICP 算法原理及推导

三维点云配准 -- ICP 算法原理及推导 - 知乎 (zhihu.com) 三维点云配准 -- ICP 算法 | Yilins Blog Alex Segal - Research - Generalized-ICP (ox.ac.uk)

Redisson分布式锁、可重入锁

介绍Redisson 什么是 Redisson?来自于官网上的描述内容如下! Redisson 是一个在 Redis 的基础上实现的 Java 驻内存数据网格客户端(In-Memory Data Grid)。它不仅提供了一系列的 redis 常用数据结构命令服务,还提供了…

线程池案例

秒杀 需求 10个礼物20个客户抢随机10个客户获取礼物&#xff0c;另外10无法获取礼物 任务类 记得给共享资源加锁 public class MyTask implements Runnable{// 礼物列表private ArrayList<String> gifts ;// 用户名private String username;public MyTask( String user…

第十八节 LLaVA如何按需构建LORA训练(视觉、语言、映射多个组合训练)

文章目录 前言一、基于llava源码构建新的参数1、添加lora_vit参数2、训练命令脚本设置二、修改源码,构建lora训练1、修改源码-lora训练2、LLM模型lora加载3、VIT模型加载4、权重冻结操作5、结果显示三、实验结果前言 如果看了我前面文章,想必你基本对整个代码有了更深认识。…