从 Ultralytics YOLOv8 中提取输出
了解如何使用 Ultralytics YOLOv8 优化你的计算机视觉项目。本指南涵盖 YOLOv8 的全部内容,从设置到结果提取和实际实现。

在不断变化的计算机视觉领域中,Ultralytics YOLOv8 凭借其在对象检测、分割和跟踪等任务中的出色表现脱颖而出。无论你是经验丰富的开发者,还是刚接触人工智能 (AI) 的初学者,了解如何从 YOLOv8 中有效提取输出,都能显著增强你的项目能力。本文将深入介绍从 YOLOv8 模型中提取和使用结果的实用步骤。
设置 Ultralytics YOLOv8#
在深入提取结果之前,首先要确保你的 Ultralytics YOLOv8 模型已正常运行。如果你刚开始接触这些内容,可以观看我们之前的视频,其中介绍了如何设置模型,以及如何使用 YOLO 模型执行各种计算机视觉任务。要开始提取结果,请确保模型配置正确:
- 模型初始化:正确初始化 Ultralytics YOLOv8 模型,并确保选择适合特定需求的模型配置,无论是对象检测,还是姿态估计等更复杂的任务。
- 运行推理:将数据输入模型以执行推理。此过程会生成一个结果对象,这是访问所有检测数据的关键。
了解结果对象#
Ultralytics YOLOv8 中的结果对象包含丰富的信息,其中包括项目所需的所有检测数据:
- 边界框:使用
results.boxes访问检测对象的坐标。 - 掩码和关键点:分别使用
results.masks和results.keypoints访问用于姿态估计的分割掩码和关键点。 - 类别概率:
results.probs提供每个检测类别的可能性,可用于根据置信度分数筛选检测结果。
提取数据以供自定义使用#
要在应用中使用这些输出,请按照以下步骤操作:
- 转换数据以便处理:如果你在 GPU 上运行模型,请使用 .cpu() 将输出转换为 CPU 格式,以便进一步处理。
- 访问边界框坐标:直接从结果对象中获取和处理边界框坐标。这包括访问归一化坐标或宽度和高度等特定属性。
- 处理分类结果:提取排名靠前的分类结果,以有效利用类别 ID 和置信度分数。
在代码中实际应用#
从理论过渡到实践,Nicolai Nielsen 演示了如何在 Visual Studio Code 中使用自定义 Python 脚本实现这些概念。该脚本包括:
- 设置检测类:在类结构中初始化并配置 Ultralytics YOLOv8 模型,为实时数据输入做好准备。
- 提取结果:运行检测,并直接从结果对象中提取边界框、掩码和分类结果。
- 使用输出:将结果转换为 JSON 或 CSV 等可用格式,或者直接使用结果在图像或视频流上绘制边界框。
可视化及更多功能#
虽然提取原始数据至关重要,但将这些检测结果可视化可以让你立即了解模型的性能:
- 绘制矩形:使用边界框数据,在图像或视频输出中的检测对象周围绘制矩形。
- 直接绘图:利用 Ultralytics YOLOv8 内置的绘图函数直接将检测结果可视化,无需编写额外代码。
使用 Ultralytics YOLOv8 扩展你的 AI 工具集#
掌握 Ultralytics YOLOv8 输出提取技术,不仅能增强项目能力,还能加深你对对象检测系统的理解。
按照这些步骤操作,你可以充分发挥 Ultralytics YOLOv8 的能力,根据特定需求定制检测流程,无论是开发先进的 AI 驱动应用,还是执行可靠的数据分析。
敬请期待更多教程,帮助你充分利用 Ultralytics YOLOv8 和其他 AI 技术。将理论知识转化为实践技能,以精准高效的方式让你的计算机视觉项目落地。加入我们的社区,及时了解所有最新进展,同时查看我们的文档以了解更多信息!
观看完整视频 观看完整视频!









