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

模型训练

  • 未完待续......

更多内容

相关推荐
吴佳浩8 分钟前
Python入门指南(六) - 搭建你的第一个YOLO检测API
人工智能·后端·python
SHIPKING39331 分钟前
【AI应用开发设计指南】基于163邮箱SMTP服务实现验证登录
人工智能
yong999038 分钟前
基于SIFT特征提取与匹配的MATLAB图像拼接
人工智能·计算机视觉·matlab
知秋一叶1231 小时前
Miloco 深度打通 Home Assistant,实现设备级精准控制
人工智能·智能家居
春日见1 小时前
在虚拟机上面无法正启动机械臂的控制launch文件
linux·运维·服务器·人工智能·驱动开发·ubuntu
————A2 小时前
强化学习----->轨迹、回报、折扣因子和回合
人工智能·python
CareyWYR2 小时前
每周AI论文速递(251215-251219)
人工智能
weixin_409383122 小时前
在kaggle训练Qwen/Qwen2.5-1.5B-Instruct 通过中二时期qq空间记录作为训练数据 训练出中二的模型为目标 第一次训练 好像太二了
人工智能·深度学习·机器学习·qwen
JoannaJuanCV2 小时前
自动驾驶—CARLA仿真(22)manual_control_steeringwheel demo
人工智能·自动驾驶·pygame·carla
余俊晖3 小时前
使用Agent做本体匹配的架构设计
人工智能·语言模型·自然语言处理