十分钟带你复现YOLOv8

YOLO 是 Joseph Redmon 等人于 2015 年提出的基于单个神经网络的目标检测算法。YOLO 的全称是 You Only Look Once,正是其自身特点的高度概括。

YOLOv8 是 Ultralytics 在 2023 年初推出的一个重大更新版本,建立在以前 YOLO 版本成功的基础上,基于深度学习和计算机视觉的前沿进展,采用最先进的 SOTA 模型,引入了新的功能和改进,进一步提升了目标检测的性能和灵活性,提供了无与伦比的速度和准确性。

YOLOv8 的精简设计使其适用于各种应用,并且可以轻松适应不同的硬件平台,从边缘设备到云 API,使其成为各种物体检测与跟踪、实例分割、图像分类和姿态估计任务的绝佳选择。

YOLOv8 共有 5 个不同大小的预训练模型,由小到大分别是 n、s、m、l 和 x,模型越大其检测效果越好,但模型越大参数量越大、运行速度越慢,训练时需要消耗的资源也越多。

复现环境

  • 操作系统:Windows11
  • 软件工具:PyCharm2023 + Anaconda3

参考来源

前期准备

  • 从开源仓库下载源码:
  • 下载最小模型的预训练权重文件:
  • 将权重文件直接放在 ultralytics 仓库下即可:

配置环境

  • 打开 Anaconda Prompt,创建一个新环境,官方要求 Python 版本要大于 3.8:
shell 复制代码
conda create -n env_yolov8 python==3.9
  • 提示要下载一些包,输入 y 继续:
  • 等待包下载完毕,环境创建完成:
  • 激活新创建的环境:
shell 复制代码
conda activate env_yolov8
  • 输入 nvidia-smi 查看 GPU 支持的最高 CUDA 版本:
  • 下载 Pytorch,打开官网:pytorch.org/
  • CUDA 版本选择 12.1,复制下载命令:
  • 粘贴到 Anaconda Prompt 运行下载命令:
  • 等待下载完成,下载时间略长:
  • 用 PyCharm 打开 YOLOv8 源码:
  • 点击右下角 Python 解释器-->添加新的解释器-->添加本地解释器:
  • 切换到我们新创建的环境:
  • 打开 Pycharm 终端:
  • 输入命令下载 ultralytics 包:

    pip install ultralytics

  • 如果下载速度较慢,可换用清华源下载:
arduino 复制代码
pip install ultralytics -i https://pypi.tuna.tsinghua.edu.cn/simple/
  • 等待下载完成:

复现功能

  • 复现目标检测功能,直接在终端运行命令:
shell 复制代码
yolo predict model=yolov8n.pt source=./ultralytics/assets/bus.jpg
  • 运行结果在 run 文件夹 detect 里:
  • 复现实例分割功能,直接在终端运行命令:
shell 复制代码
yolo predict model=yolov8n-seg.pt source=./ultralytics/assets/bus.jpg
  • 运行结果在 run 文件夹 segment 里:
  • 复现姿态检测功能,直接在终端运行命令:
shell 复制代码
yolo predict model=yolov8n-pose.pt source=./ultralytics/assets/bus.jpg
  • 运行结果在 run 文件夹 pose 里:

模型训练

  • 未完待续......

更多内容

相关推荐
幻风_huanfeng8 分钟前
线性代数中的核心数学知识
人工智能·机器学习
volcanical16 分钟前
LangGPT结构化提示词编写实践
人工智能
weyson1 小时前
CSharp OpenAI
人工智能·语言模型·chatgpt·openai
RestCloud1 小时前
ETLCloud异常问题分析ai功能
人工智能·ai·数据分析·etl·数据集成工具·数据异常
IT古董1 小时前
【机器学习】决定系数(R²:Coefficient of Determination)
人工智能·python·机器学习
鲜枣课堂1 小时前
5G-A如何与AI融合发展?华为MBBF2024给出解答
人工智能·5g·华为
武子康2 小时前
大数据-213 数据挖掘 机器学习理论 - KMeans Python 实现 距离计算函数 质心函数 聚类函数
大数据·人工智能·python·机器学习·数据挖掘·scikit-learn·kmeans
武子康2 小时前
大数据-214 数据挖掘 机器学习理论 - KMeans Python 实现 算法验证 sklearn n_clusters labels
大数据·人工智能·python·深度学习·算法·机器学习·数据挖掘
封步宇AIGC3 小时前
量化交易系统开发-实时行情自动化交易-Okex K线数据
人工智能·python·机器学习·数据挖掘
封步宇AIGC3 小时前
量化交易系统开发-实时行情自动化交易-Okex交易数据
人工智能·python·机器学习·数据挖掘