在自定义数据集上训练 YOLOv8 进行目标检测

这篇具有很好参考价值的文章主要介绍了在自定义数据集上训练 YOLOv8 进行目标检测。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这是目标检测中令人惊叹的 AI 模型之一。在这种情况下,您无需克隆存储库、设置要求并配置模型,就像在 YOLOv5 及其之前的版本中所做的那样。

在 YOLOv8 中,不需要执行这些手动任务。您只需安装 Ultralytics 即可,我将向您展示如何通过一个简单的命令安装它。

这是一个提升了先前 YOLO 版本成功率的模型,同时增加了新的功能和改进,以提高性能和灵活性。YOLOv8 是进行各种目标识别和跟踪、实例分割、图像分类和姿态估计任务的理想选择,因为它旨在快速、精确且易于使用。YOLOv8 的官方网站如下:https://github.com/ultralytics/ultralytics/

我们可以使用该模型执行三种类型的任务:

(1) 检测

(2) 分割

(3) 分类

检测

我们可以从下表中选择任一模型进行目标检测:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

分割

我们可以从下表中选择任一模型进行图像分割:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

分类

我们可以从下表中选择任一模型进行图像分类:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

您可以在下面找到一个快速入门的安装和使用示例,以及完整的培训、验证、预测和部署文档可在 yolov8 文档中找到(https://docs.ultralytics.com/)。

使用 YOLOv8 有两种方式:

(1) CLI — 命令行界面

(2) Python 脚本

现在我将使用 Google Colab 进行训练。在安装之前,我需要连接到我的 GPU。

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉在上述屏幕中选择 GPU 作为硬件加速器后,点击“保存”按钮。

挂载 Google 云硬盘,以便 Colab 可以访问它的文件。

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉点击上述屏幕中的“连接到Google Drive”按钮后,选择挂载按钮。现在我们的笔记本已连接到Google Drive。

要测试是否获得了GPU,请在Colab上写入以下命令:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

我们将通过下面的单个命令安装 YOLOv8 的所有要求和依赖项:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉现在安装成功了。

它有三种模式:

(1) 训练模式 — 表达为 mode = train

(2) 验证模式 — 表达为 mode = val

(3) 预测模式 — 表达为 mode = predict

它执行三种类型的任务:

(1) 检测 — 表达为 task = detect

(2) 分割 — 表达为 task = segment

(3) 分类 — 表达为 task = classify

测试它是否工作,运行以下命令:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

首先,它会下载模型和图像,然后分别对图像进行预测。在这里,我们选择了检测表中的第一个模型 — yolov8n。在下面的屏幕中,我们可以看到模型和图像已下载,并且预测的图像已保存在 `runs/detect/predict/bus.jpg` 中。

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

输入图像:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

预测的图像:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

现在,我将上传一张猫的图像到“images”文件夹进行预测:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

运行以下命令以从图像中检测猫:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

它成功地从图像中预测了猫,并将其保存到 `predict2` 文件夹中。

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

执行分割:

在这里,我们使用了上面表格中的第一个模型 YOLOv8n-seg:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

分割后的图像保存在 `runs/segment/predict` 中。

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

执行分类:

在这里,我们使用了上面表格中的第一个模型 YOLOv8n-cls:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

分类后的图像保存在 `runs/classify/predict` 中。

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

开始自定义训练:

我有一个准备好的数据集已上传到以下 Google Drive 链接:

[Google Drive 数据集链接](https://drive.google.com/drive/u/1/folders/1QQVa1PoaDxhFBU2GJHXWARlpMB_i-qGs)

 Google Colab 笔记本链接:

[Google Colab 笔记本链接](https://colab.research.google.com/drive/1crJsLpHzKExZBot5DhDYGmfuTdi1KBxG?authuser=1#scrollTo=YpyuwrNlXc1P)

配置 `data.yaml` 文件:(我们使用上表中的第二个模型)

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

这里, data = data.yaml。在 `data.yaml` 文件中,我列出了所有我的图像路径。因此,它将自动从该文件夹获取图像和标签。

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

上述代码的解释:

  • IPython.display:IPython 是一个增强型的交互式 Python shell,提供比默认 Python shell 更多功能。通过 IPython.display 模块,它是 IPython 的一个组件,您可以在 Jupyter Notebook 或 IPython 环境中直接显示各种内容类型(如图片、视频、音频、HTML 等)。

  • Image:IPython.display 模块的 Image 类是其中的一个特殊元素。在 Jupyter Notebook 或 IPython 上下文中,它使图像显示变得可能。这意味着您无需在不同的软件中打开它们,即可直接在笔记本中显示照片、图片或其他图像文件。

图像的路径作为输入传递给 Image 类,并且 display() 函数在您的笔记本中输出图像。请注意,图像文件需要是受支持的格式(如 JPG、PNG 或 GIF),并且需要在您的 IPython 环境或 Jupyter Notebook 中可用。

使用 IPython.display 和 Image 可以快速在笔记本中可视化图像,使它们更具教育性和吸引力。显示指定路径 'runs/detect/train/' 中的名为 "confusion_matrix.png" 的图像。

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

上述代码的解释:

  • 通过上述代码 `Image(filename='runs/detect/train/confusion_matrix.png', width=600)` 显示 "confusion_matrix.png" 位于 'runs/detect/train/' 目录中。通过 `width=600` 选项将可见图像的宽度设置为 600 像素。

显示另一张名为 "confusion_matrix.png" 的图像,位于指定路径中:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

显示另一张名为 "val_batch0_pred.jpg" 的图像,位于指定路径 'runs/detect/train/' 中:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

上述代码的解释:

  • 通过上述代码 `Image(filename='runs/detect/train/val_batch0_pred.jpg', width=600)` 显示 "val_batch0_pred.jpg" 位于 'runs/detect/train/' 给定路径中。通过 `width=600` 选项将可见图像的宽度设置为 600 像素。

使用训练好的 YOLO 模型在验证数据集上执行目标检测:

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

上述代码的解释:

  • 命令行工具 `!yolo`:命令的开头的 `!` 符号是 Jupyter Notebook 特有的,表示它是一个在笔记本环境中运行的 shell 命令。

  • `Yolo task=detect`:Yolo 是一个命令行工具,`task=detect` 指示它检测对象。

  • 当将 mode 参数设置为 val 时,将使用验证数据集完成任务。这用于评估在应用于新数据时训练的模型的性能。

  • `model=runs/detect/train/weights/best.pt`:指定用于检测的 YOLO 模型权重文件的路径。使用了在训练中获得的最佳权重(来自“train”模式)。

  • `data=data.yaml`:指定包含有关数据集、类别和训练和评估过程中使用的其他设置的数据配置文件(data.yaml)的路径。

使用自定义模型进行推理

使用训练好的 YOLO 模型在新图像上进行目标检测

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

上述代码的解释:

  • 选项 `mode=predict` 指示该工具预测并识别提供的照片中的物体。使用它可以对新的、未使用过的照片进行预测。

  • `model=runs/detect/train/weights/best.pt`:这指示 YOLO 模型的权重文件的位置,该权重文件将用于检测。在使用模型进行预测之前,它必须首先在数据集上进行训练。

  • `conf=0.25`:对象检测的置信度阈值设置为 0.25。输出将显示任何置信度大于 0.25 的检测到的对象。

  • `source=test/images`:`source=test/images` 标识包含用于目标检测的图像的目录。在这个例子中,工具将在存储在 test/images 目录中的照片中找到对象。

·  END  ·

HAPPY LIFE

在自定义数据集上训练 YOLOv8 进行目标检测,YOLO,目标检测,人工智能,计算机视觉

本文仅供学习交流使用,如有侵权请联系作者删除文章来源地址https://www.toymoban.com/news/detail-789825.html

到了这里,关于在自定义数据集上训练 YOLOv8 进行目标检测的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

原文地址:https://blog.csdn.net/weixin_38739735/article/details/135578917

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

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

相关文章

  • 【目标检测算法实现之yolov8】yolov8训练并测试VisDrone数据集

    在这之前,需要先准备主机的环境,环境如下: Ubuntu18.04 cuda11.3 pytorch:1.11.0 torchvision:0.12.0 在服务器上执行以下命令, pytorch v1.11.0(torch1.11.0+cu1113 ,torchvision0.12.0+cu113) 先创建yolov8文件夹,存放等会要下载的yolov8代码 mkdir yolov8 进入yolov8文件夹, cd yolov8 下载yolov8代码 git cl

    2024年02月13日
    浏览(7)
  • 使用YOLOv8训练自己的【目标检测】数据集

    随着深度学习技术在计算机视觉领域的广泛应用,行人检测和车辆检测等任务已成为热门研究领域。然而,实际应用中,可用的预训练模型可能并不适用于所有应用场景。 例如,虽然预先训练的模型可以检测出行人,但它无法区分“好人”和“坏人”,因为它没有接受相关的

    2024年04月10日
    浏览(9)
  • YOLOv8 目标检测 | 自定义数据集

    本文介绍了使用用于目标检测的自定义数据训练 YOLOv8 模型。我正在使用来自 kaggle 的 yolo 格式的“Face Mask Dataset”,数据集链接如下:https://www.kaggle.com/datasets/maalialharbi/face-mask-dataset?resource=download YOLOv8 是目前最先进的 YOLO 模型,可用于目标检测、图像分类和实例分割任务。

    2023年04月08日
    浏览(8)
  • YOLOv8训练自定义数据集(超详细)

    借鉴 YOLOv8训练自己的数据集(超详细)_AI追随者的博客-CSDN博客 安装 requirements.txt 下载:https://raw.githubusercontent.com/ultralytics/ultralytics/main/requirements.txt 然后在你 目录下执行 pip install -r requirements.txt 它的 requirements 主要是以下 包,用下面代码检查下自己还缺哪些,补上就好。 安装

    2023年04月16日
    浏览(10)
  • 基于 YOLOv8 的自定义数据集训练

    图1.1:YOLOv8初始测试 YOLOv8🔥于 2023年1月10日由Ultralytics发布。它在计算机视觉方面提供了进展,带来了对我们感知、分析和理解视觉世界的巨大创新。它将为各个领域带来前所未有的可能性。 在速度、准确性和架构方面进行了相当大的改进。它是从头开始实现的,没有使用任

    2024年02月11日
    浏览(10)
  • Yolov8_使用自定义数据集训练模型1

    前面几篇文章介绍了如何搭建Yolov8环境、使用默认的模型训练和推理图片及视频的效果、并使用GPU版本的torch加速推理、导出.engine格式的模型进一步利用GPU加速,本篇介绍如何自定义数据集,这样就可以训练出识别特定物体的模型。 《Yolov8_使用自定义数据集训练模型1》——

    2024年01月19日
    浏览(11)
  • 【3】使用YOLOv8训练自己的目标检测数据集-【收集数据集】-【标注数据集】-【划分数据集】-【配置训练环境】-【训练模型】-【评估模型】-【导出模型】

    云服务器训练YOLOv8-新手教程-哔哩哔哩 🍀2023.11.20 更新了划分数据集的脚本 在自定义数据上训练 YOLOv8 目标检测模型的步骤可以总结如下 6 步: 🌟收集数据集 🌟标注数据集 🌟划分数据集 🌟配置训练环境 🌟训练模型 🌟评估模型 随着深度学习技术在计算机视觉领域的广泛

    2023年04月15日
    浏览(11)
  • 【yolov8】从0开始搭建部署YOLOv8,环境安装+推理+自定义数据集搭建与训练,一小时掌握

    bilibili详细视频教程 github链接:https://github.com/ultralytics/ultralytics git拉取项目: git clone https://github.com/ultralytics/ultralytics.git 首先查看pytorch支持的最高版本 PyTorch https://pytorch.org/ 然后查看N卡系统支持最高的版本 然后权衡下载支持最高版本的CUDA和cuDNN CUDA工具包 https://developer.n

    2024年01月17日
    浏览(15)
  • 目标检测笔记(十四): 使用YOLOv8完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)

    目标检测(Object Detection)是计算机视觉领域的一项重要技术,旨在识别图像或视频中的特定目标并确定其位置。通过训练深度学习模型,如卷积神经网络(CNN),可以实现对各种目标的精确检测。常见的目标检测任务包括:人脸检测、行人检测、车辆检测等。目标检测在安防

    2024年02月07日
    浏览(12)
  • 【YOLO】YOLOv8实操:环境配置/自定义数据集准备/模型训练/预测

    源码链接:https://github.com/ultralytics/ultralytics yolov8和yolov5是同一作者,相比yolov5,yolov8的集成性更好了,更加面向用户了 YOLO命令行界面(command line interface, CLI) 方便在各种任务和版本上训练、验证或推断模型。CLI不需要定制或代码,可以使用yolo命令从终端运行所有任务。 如果

    2023年04月24日
    浏览(14)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包