【目标检测】YOLOv8:快速上手指南

这篇具有很好参考价值的文章主要介绍了【目标检测】YOLOv8:快速上手指南。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

YOLOv8概述

YOLOv8是YOLOv5团队在今年新推出的一代YOLO版本,与前几代版本相比,其性能和速度差距如下图所示:

【目标检测】YOLOv8:快速上手指南,目标检测,目标检测,YOLO,人工智能
和其它版本不同的是,该仓库并非起名为YOLOv8,而是公司名ultralytics,因为他们想将此版本作为一个通用库,以方便调用和部署。

仓库地址:https://github.com/ultralytics/ultralytics
官方教程:https://docs.ultralytics.com/modes/train/

官方教程中提供了Python和命令行(CLI)两种调用方式,本文只对前者进行试用。

安装

由于YOLOv8是作为一款通用库的形式,因此无需想YOLOv5那样下载整个文件,而只需用pip进行安装。

pip install ultralytics

值得注意的是,该库包含了torch/torchvision两个需要区分GPU/CPU版本的依赖,安装完成之后,需要检查一下torch是否可用GPU。

检查方式:

import torch

print(torch.cuda.is_available())

模型训练

加载模型

加载模型有下面三种方式,通常用第二种即可。

# Load a model
model = YOLO('models/yolov8n.yaml')  # build a new model from YAML
model = YOLO('yolov8n.pt')  # load a pretrained model (recommended for training)
model = YOLO('yolov8n.yaml').load('yolov8n.pt')  # build from YAML and transfer weights

模型训练

下面以coco128数据集为例开始训练,训练只需一行代码:

results = model.train(data='coco128.yaml', epochs=2, imgsz=640, workers=0, batch=2)

运行之后,程序会自动下载数据集和模型,这里的train接口有很多参数选择,大多数与YOLOv5中的参数一致。

具体参数和含义可查阅文档Arguments这一节:

【目标检测】YOLOv8:快速上手指南,目标检测,目标检测,YOLO,人工智能

模型验证

模型验证也相当简单,只需这几行代码:

metrics = model.val(data='coco128.yaml', imgsz=640, workers=0, batch=2)  # no arguments needed, dataset and settings remembered
metrics.box.map    # map50-95
metrics.box.map50  # map50
metrics.box.map75  # map75
metrics.box.maps   # a list contains map50-95 of each category

运行效果和YOLOv5中的val.py一致,会在run/val路径下生成验证结果。

模型推理

YOLOv8目前支持的推理有:目标检测、目标检测+分割、目标检测+姿态检测、目标跟踪。
注:所有的任务都以检测为基础,官方并未单独提出其他任务的训练方式。

目标检测

# Load a model
model = YOLO('yolov8n.pt')  # load a pretrained model
# Run inference on 'bus.jpg' with arguments
model.predict('data/bus.jpg', save=True, imgsz=320, conf=0.5)

这里的图片路径可以自行修改指定。

示例效果:
【目标检测】YOLOv8:快速上手指南,目标检测,目标检测,YOLO,人工智能

目标检测+分割

# Load a pretrained YOLOv8n-seg Segment model
model = YOLO('yolov8n-seg.pt')

# Run inference on an image
results = model('data/bus.jpg', save=True)

接口完全一致,只是所加载的模型不一样。

效果:

【目标检测】YOLOv8:快速上手指南,目标检测,目标检测,YOLO,人工智能

目标检测+姿态检测

# Load a pretrained YOLOv8n-pose Pose model
model = YOLO('yolov8n-pose.pt')

# Run inference on an image
results = model('data/bus.jpg', save=True)  # results list

【目标检测】YOLOv8:快速上手指南,目标检测,目标检测,YOLO,人工智能

目标跟踪

# load a pretrained model
model = YOLO('yolov8n.pt')
results = model.track(source="data/malasong.mp4", save=True)

目标跟踪接口是track,需要导入视频数据,以下是视频中的某一帧。

【目标检测】YOLOv8:快速上手指南,目标检测,目标检测,YOLO,人工智能

总结

YOLOv8在YOLOv5的基础上,加入了Anthor-free等众多tricks,模型性能比前代有所提升。整体上统一了多任务的接口,方便应用和部署。不过对于研究者来说,无疑让网络复杂的黑盒模式进一步加深,不利于二次开发。文章来源地址https://www.toymoban.com/news/detail-733219.html

到了这里,关于【目标检测】YOLOv8:快速上手指南的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 自动化神器Playwright快速上手指南

    Playwright是由微软公司2020年初发布的新一代自动化测试工具,相较于目前最常用的Selenium,它仅用一个API即可自动执行Chromium、Firefox、WebKit等主流浏览器自动化操作。作为针对 Python 语言纯自动化的工具,在回归测试中可更快的实现自动化。 1. 为什么选择Playwright 1.1 Playwright的

    2024年02月06日
    浏览(48)
  • Vite与Vue 3快速上手指南

    Vite是一个由Evan You(Vue的创始人)开发的快速开发工具,用于构建现代化的Web应用程序。它具有快速的冷启动时间和实时模块热重载功能,使得开发者能够更快地开发和调试应用程序。 Vue 3是Vue.js的最新版本,它引入了许多新的特性和改进。其中最重要的是Composition API,它允

    2024年04月26日
    浏览(30)
  • 本地资源检测 自定义规则 零基础上手指南

    本地资源检测 是UWA推出的、面向于静态资源的全量分析。可以全面自动检测项目静态工程内各项资源、代码和设置,能够帮助项目组制定合理的资源与代码标准,及时发现潜在的性能问题和异常错误,建立有效的开发规范。 其中“自定义规则”功能特别获得了开发者的好感

    2024年02月13日
    浏览(45)
  • IntelliJ IDEA 快速上手与高效开发指南

    启动 IntelliJ IDEA 打开 IntelliJ IDEA,您将看到欢迎界面。这里您可以选择创建新项目、打开现有项目、从版本控制系统中导入项目等。 创建新项目 在欢迎界面选择 \\\"Create New Project\\\"。 选择项目类型(如 Maven、Gradle 等)。 选择 SDK(如 JDK)。 指定项目名称和位置。 根据需要配置

    2024年04月12日
    浏览(46)
  • 深入浅出Docker:Java开发者的快速上手指南

    在今天的软件开发环境中,Docker已经成为了一种常见的开发和部署工具。无论你是前端开发者、后端开发者,还是DevOps工程师,理解并掌握Docker都将成为你所必须的技能。对于Java开发者来说,使用Docker可以极大地提高你的生产力。那么,如何使用Docker来部署Java应用呢?本文

    2024年02月07日
    浏览(55)
  • 学习记录09:快速上手简单改进yolov5目标检测网络

      这篇博客主要是简单介绍一下如何改进yolov5,但是不会讲得太深,因为我也只是运用了几个月,并没有细读每一段代码,我只是为了改而改,不会深究他的代码逻辑,python代码他确实写的很优雅,但是我不打算学习这种优雅,能毕业就行,以后又不从事python工作,也不继

    2023年04月21日
    浏览(47)
  • git入门指南:新手快速上手git(Linux环境如何使用git)

    目录  前言 1. 什么是git? 2. git版本控制器 3. git在Linux中的使用 安装git 4. git三板斧 第一招:add 第二招:commit 第三招:push 5. 执行状态 6. 删除 总结           Linux的基本开发工具介绍完毕,接下来介绍一下Linux环境下如何使用git,以及git到底是什么?它和gitee和github之间有

    2024年02月03日
    浏览(58)
  • 快速上手Webpack打包指南:用简单的步骤掌握Webpack的使用技巧

    Webpack的打包过程可以总结为以下几个步骤: 1.入口点配置:在Webpack的配置文件中,我们需要指定一个或多个入口点(entry points),这些入口点是我们应用程序的起点,Webpack会从这些入口点开始分析和构建依赖关系。 2.模块解析:Webpack会根据入口点的依赖关系图,递归地解析

    2024年02月15日
    浏览(59)
  • Ficow 的 AI 平台快速上手指南(ChatGPT, NewBing, ChatGLM-6B, cursor.so)

      本文首发于 Ficow Shen\\\'s Blog,原文地址: Ficow 的 AI 平台快速上手指南(ChatGPT, NewBing, ChatGLM-6B, cursor.so)。   前言 OpenAI —— ChatGPT 微软 —— NewBing 智谱AI —— ChatGLM-6B AI生成代码 —— cursor.so 总结     现在各种AI工具大爆发,赶紧跟上大部队,看下这波浪潮是什么状况吧。 传

    2023年04月09日
    浏览(44)
  • 无需魔法!Slack能免费使用MidJourney啦;提示工程师最全求职手册;ChatGPT插件最新清单;MidJourney快速上手指南 | ShowMeAI日报

    👀 日报周刊合集 | 🎡 生产力工具与行业应用大全 | 🧡 点赞关注评论拜托啦! MidJorney 是目前最受欢迎的AI绘图工具之一,可以根据用户输入的文本提示词,生成高质量图片。Slack 是一款企业内部通信工具,可以轻松集成很多第三项服务,比如 Notion、Claude、GitHub、Trello 等。

    2024年02月09日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包