十分钟带你复现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 里:

模型训练

  • 未完待续......

更多内容

相关推荐
久笙&22 分钟前
高效设计AI Prompt:10大框架详细对比与应用
人工智能·prompt
yuanlulu23 分钟前
mindie推理大语言模型问题及解决方法汇总
人工智能·华为·自然语言处理·nlp·大语言模型·昇腾
学术会议27 分钟前
【智慧光学与高效信号处理】2025年信号处理与光学工程国际会议 (SPOE 2024)
大数据·人工智能·物联网·安全·信号处理
爱研究的小牛31 分钟前
Midjourney技术浅析(一)
人工智能·深度学习·aigc·midjourney
qq_273900231 小时前
PyTorch Lightning Callback介绍
人工智能·pytorch·python
mingo_敏1 小时前
深度学习中的并行策略概述:4 Tensor Parallelism
人工智能·深度学习
敲代码敲到头发茂密2 小时前
基于 LangChain 实现数据库问答机器人
数据库·人工智能·语言模型·langchain·机器人
神经美学_茂森2 小时前
【自由能系列(初级),论文解读】神经网络中,熵代表系统的不确定性,自由能则引导系统向更低能量的状态演化,而动力学则描述了系统状态随时间的变化。
人工智能·神经网络·php
cnbestec2 小时前
Kinova在开源家庭服务机器人TidyBot++研究里大展身手
人工智能·科技·机器人
deflag2 小时前
第T4周:TensorFlow实现猴痘识别(Tensorboard的使用)
人工智能·tensorflow·neo4j