YOLO Vision 2026:

理解计算机视觉项目的关键步骤#

构建计算机视觉项目意味着要经历一系列明确的阶段:定义目标、收集并标注数据、训练并评估模型,以及在生产环境中部署和维护模型。本指南按顺序介绍了每个步骤并解释了其重要性,以便你能自信地规划和运行自己的项目。

Computer vision人工智能(AI)的一个子领域,它帮助计算机像人类一样观察和理解世界。它处理和分析图像或视频以提取信息、识别模式并基于这些数据做出决策。



Watch: How to Do Computer Vision Projects | A Step-by-Step Guide

诸如目标检测图像分类实例分割等计算机视觉技术可以应用於从自动驾驶医学影像的各个行业,以获取有价值的见解。

计算机视觉项目概览#

在讨论计算机视觉项目每个步骤的细节之前,让我们先看看整个流程。如果你今天开始一个计算机视觉项目,你需要采取以下步骤:

Computer Vision Project Steps Overview

现在我们已经知道会发生什么,让我们直接深入了解这些步骤,推动你的项目向前发展。

第 1 步:定义你的项目目标#

任何计算机视觉项目的第一步都是明确定义你要解决的问题。了解最终目标有助于你开始构建解决方案。这一点在计算机视觉领域尤为重要,因为你的项目目标将直接影响你需要关注的计算机视觉任务。

以下是一些项目目标以及可用于实现这些目标的计算机视觉任务示例:

  • 目标: 开发一个系统,能够监测和管理高速公路上不同车辆类型的流量,从而改善交通管理和安全性。

    • 计算机视觉任务: 目标检测非常适合交通监测,因为它能高效地定位和识别多个车辆。它比图像分割对计算资源的需求更低,后者在该任务中提供了不必要的细节,因此目标检测能确保更快的实时分析。
  • 目标: 开发一种工具,通过提供医学影像扫描中肿瘤的精确像素级轮廓来辅助放射科医生。

    • 计算机视觉任务: 图像分割适用于医学影像,因为它提供了对肿瘤大小、形状和治疗规划至关重要的准确、详细的边界。
  • 目标: 创建一个数字系统,对各种文档(如发票、收据、法律文书)进行分类,以提高组织效率和文档检索能力。

    • 计算机视觉任务: 图像分类非常适合这里,因为它一次处理一个文档,无需考虑文档在图像中的位置。这种方法简化并加速了分类过程。

选择合适的模型和训练方法#

在理解了项目目标和合适的计算机视觉任务后,定义项目目标的一个重要部分就是选择正确的模型和训练方法。

根据目标的不同,你可能会选择先选定模型,或者在查看你在第 2 步中能够收集到的数据之后再做决定。例如,假设你的项目高度依赖于特定类型数据的可用性。在这种情况下,先收集和分析数据,然后再选择模型可能更实际。另一方面,如果你对模型需求有清晰的了解,你可以先选择模型,然后收集符合这些规格的数据。

在从头开始训练还是使用迁移学习之间进行选择,会影响你准备数据的方式。从头开始训练需要一个多样化的数据集来从底层建立模型的理解。另一方面,迁移学习允许你使用预训练模型并通过更小、更具体的数据集对其进行调整。此外,根据模型的具体要求,选择要训练的特定模型将决定你需要如何准备数据,例如调整图像大小或添加标注。

Training From Scratch Vs. Using Transfer Learning

选择模型时考虑部署需求

考虑模型的部署目标以确保兼容性和性能。例如,轻量级模型由于在资源受限的设备上具有高效性,因此是边缘计算的理想选择。

要了解更多信息,请阅读我们关于定义项目目标并选择正确模型的指南。

在进入计算机视觉项目的实际操作之前,清楚地了解这些细节非常重要。在进入第 2 步之前,请仔细检查你是否考虑了以下内容:

  • 明确定义你要解决的问题。
  • 确定你项目的最终目标。
  • 确定所需的特定计算机视觉任务(例如目标检测、图像分类、图像分割)。
  • 决定是从零开始训练模型,还是使用迁移学习。
  • 为你的任务和部署需求选择合适的模型。

第 2 步:数据收集与数据标注#

计算机视觉模型的质量取决于数据集的质量。你可以从互联网收集图像、拍摄自己的照片或使用预先存在的数据集。以下是一些用于下载高质量数据集的绝佳资源:Google Dataset Search EngineUC Irvine Machine Learning RepositoryKaggle Datasets

一些库(如 Ultralytics)提供对各种数据集的内置支持,从而更容易上手高质量数据。这些库通常包含无缝使用流行数据集的实用工具,这可以在项目的初始阶段为你节省大量时间和精力。

但是,如果你选择收集图像或拍摄自己的照片,则需要标注数据。数据标注是标记数据以向模型传授知识的过程。你将使用的数据标注类型取决于你的具体计算机视觉技术。以下是一些示例:

  • 图像分类: 你将整个图像标记为一个单一类别。
  • 目标检测 你将在图像中的每个对象周围绘制边界框并为每个框进行标签。
  • 图像分割 你将根据对象所属的内容标记图像中的每个像素,从而创建详细的对象边界。

Bounding box, polygon, and keypoint annotations

数据收集和标注可能是一项耗时的手动工作。专用的标注工具可以使其更快:Ultralytics Platform 提供内置的标注编辑器,并具有针对检测、分割和 OBB 数据的 SAM 驱动的智能标注功能,可直接以 YOLO 格式保存标注。

第 3 步:数据增强与数据集划分#

在收集和标注图像数据后,在进行数据增强之前,首先将数据集划分为训练集、验证集和测试集是很重要的。在增强之前划分数据集对于在原始的、未修改的数据上测试和验证模型至关重要。这有助于准确评估模型泛化到新的、未见数据的能力。

以下是划分数据的方法:

  • 训练集: 这是你数据中最大的部分,通常占总量的 70-80%,用于训练你的模型。
  • 验证集: 通常约占数据的 10-15%;该集用于在训练期间调整超参数和验证模型,有助于防止过拟合
  • 测试集: 其余 10-15% 的数据作为测试集。它用于在训练完成后评估模型在未见数据上的性能。

划分数据后,你可以通过应用旋转、缩放和翻转图像等变换来进行数据增强,从而人工增加数据集的规模。数据增强使你的模型对变化更加鲁棒,并提高了其在未见图像上的性能。

Data augmentation examples

诸如 OpenCVAlbumentationsTensorFlow 等库提供了你可以使用的灵活增强函数。此外,一些库(例如 Ultralytics)在其模型训练函数中直接内置了增强设置,简化了流程。

为了更好地理解数据,你可以使用 MatplotlibSeaborn 等工具来可视化图像并分析其分布和特征。可视化数据有助于识别模式、异常以及增强技术的有效性。Ultralytics PlatformCharts 选项卡无需任何代码即可呈现许多这些见解,它会自动为每个上传的数据集生成分割分布、类别计数、图像尺寸直方图和标注位置热图。

通过正确地理解、划分和增强你的数据,你可以开发出一个经过良好训练、验证和测试的模型,在实际应用中表现良好。

第 4 步:模型训练#

一旦数据集准备就绪,你就可以专注于设置必要的环境、管理数据集并训练模型。

首先,你需要确保环境配置正确。通常包括以下内容:

  • 安装 TensorFlow、PyTorchUltralytics 等必不可少的库和框架。
  • 如果你正在使用 GPU,安装 CUDA 和 cuDNN 等库将有助于启用 GPU 加速并加快训练过程。

然后,你可以将训练和验证数据集加载到你的环境中。通过调整大小、格式转换或增强来标准化和预处理数据。选定模型后,配置层并指定超参数。通过设置损失函数、优化器和性能指标来编译模型。

诸如 Ultralytics 之类的库简化了训练过程。你可以通过用最少的代码将数据输入模型来开始训练。这些库会自动处理权重调整、反向传播和验证。它们还提供监控进度和轻松调整超参数的工具。训练后,只需几个命令即可保存模型及其权重。

请记住,正确的数据集管理对于高效训练至关重要。对数据集使用版本控制以跟踪更改并确保可复现性。DVC (Data Version Control) 等工具可以帮助管理大型数据集。

第 5 步:模型评估与微调#

使用各种指标评估模型的性能并对其进行精炼以提高准确率非常重要。评估有助于找出模型表现出色以及可能需要改进的地方。微调可确保模型针对最佳性能进行优化。

  • 性能指标 使用准确率、精确率召回率和 F1 分数等指标来评估模型的性能。这些指标可深入了解模型进行预测的准确程度。
  • 超参数调优 调整超参数以优化模型性能。网格搜索或随机搜索等技术可以帮助找到最佳的超参数值。
  • 微调: 对模型架构或训练过程进行微小调整以提升性能。这可能涉及调整学习率批次大小或其他模型参数。

为了更深入地了解模型评估和微调技术,请查看我们的模型评估见解指南

第 6 步:模型测试#

模型测试可以确认你的模型在完全未见的数据上表现良好,从而验证其是否已准备好进行部署。模型测试与模型评估的区别在于,测试侧重于验证最终模型的性能,而不是对其进行迭代改进。

彻底测试并调试可能出现的任何常见问题非常重要。在训练或验证期间未使用的单独测试集上测试你的模型。此数据集应代表真实场景,以确保模型的性能一致且可靠。

此外,还要解决诸如过拟合、欠拟合和数据泄漏等常见问题。使用交叉验证异常检测等技术来识别和修复这些问题。有关全面的测试策略,请参考我们的模型测试指南

第 7 步:模型部署#

一旦你的模型经过充分测试,就可以部署了。模型部署涉及使你的模型可用于生产环境。以下是部署计算机视觉模型的步骤:

  • 设置环境: 为你选择的部署选项配置必要的基础设施,无论是基于云(AWS、Google Cloud、Azure)还是基于边缘(本地设备、IoT)。
  • 导出模型 将你的模型导出为适当的格式(例如,针对 YOLO26 的 ONNX、TensorRT、CoreML),以确保与你的部署平台兼容。
  • 部署模型: 通过设置 API 或端点并将其与你的应用程序集成来部署模型。
  • 确保可扩展性: 实现负载均衡器、自动伸缩组和监控工具,以管理资源并处理不断增长的数据和用户请求。

有关部署策略和最佳实践的更多详细指导,请查看我们的模型部署实践指南Ultralytics Platform 还提供跨 42 个全球区域进行自动扩展的托管部署端点,自动处理基础设施设置。

第 8 步:监控、维护与文档记录#

模型部署后,持续监控其性能、维护以处理任何问题,并记录整个过程以供日后参考和改进非常重要。

监控工具可以帮助你跟踪关键性能指标 (KPI) 并检测异常或准确率下降。通过监控模型,你可以了解模型漂移,即由于输入数据变化导致模型性能随时间下降。定期使用更新的数据重新训练模型,以保持其准确性和相关性。

Model monitoring and maintenance lifecycle

除了监控和维护之外,文档也很关键。彻底记录整个过程,包括模型架构、训练程序、超参数、数据预处理步骤以及在部署和维护期间所做的任何更改。良好的文档可确保可复现性,并使未来的更新或故障排除更加容易。通过有效地监控、维护和记录你的模型,你可以确保它在整个生命周期内保持准确、可靠且易于管理。

参与社区#

与计算机视觉爱好者社区建立联系可以帮助你更有信心地解决在计算机视觉项目中遇到的任何问题。以下是一些有效学习、故障排除和建立人脉的方法。

社区资源#

  • GitHub Issues: 查看 YOLO26 GitHub 仓库并使用 Issues 选项卡来提问、报告漏洞和建议新功能。活跃的社区和维护人员随时准备协助解决特定问题。
  • Ultralytics Discord Server: 加入 Ultralytics Discord 服务器与其他用户和开发者互动、获得支持并分享见解。

官方文档#

  • Ultralytics YOLO26 Documentation: 探索官方 YOLO26 文档,获取有关不同计算机视觉任务和项目的详细指南及有用提示。

利用这些资源将帮助你克服挑战,并紧跟计算机视觉社区的最新趋势和最佳实践。

后续步骤#

你现在拥有计算机视觉项目各个阶段的路线图,从定义目标到监控部署的模型。通过训练你的第一个 YOLO 模型将其付诸实践,或者通过上面链接的指南深入了解任何单个阶段。若要在不编写代码的情况下运行完整的管道,请探索 Ultralytics Platform

常见问题解答#

如何为我的项目选择合适的计算机视觉任务?#

选择正确的计算机视觉任务取决于你的项目最终目标。例如,如果你想监控交通,目标检测非常合适,因为它可以实时定位和识别多种车辆类型。对于医学影像,图像 segmentation 是提供肿瘤详细边界的理想选择,有助于诊断和治疗规划。了解有关特定任务的更多信息,例如目标检测实例分割语义分割图像分类

为什么数据标注在计算机视觉项目中至关重要?#

数据标注对于教导模型识别模式至关重要。标注类型随任务而异:

  • 图像分类:整个图像标记为单个类别。
  • 目标检测:在对象周围绘制边界框。
  • 图像分割:根据对象所属类别标记每个像素。

Ultralytics Platform 中的内置标注编辑器可以协助完成此过程。有关更多详细信息,请参阅我们的数据收集与标注指南

我应该遵循哪些步骤来有效地增强和划分我的数据集?#

在增强之前划分数据集有助于在原始、未更改的数据上验证模型性能。请遵循以下步骤:

  • 训练集:占数据的 70-80%。
  • 验证集:10-15% 用于超参数调优
  • 测试集:其余 10-15%,用于最终评估。

划分后,应用旋转、缩放和翻转等数据增强技术来增加数据集的多样性。Albumentations 和 OpenCV 等库可以提供帮助。为方便起见,Ultralytics 还提供了内置增强设置

我该如何导出训练好的计算机视觉模型以便部署?#

使用 export 方法导出训练好的模型,选择与你的部署目标匹配的格式。Ultralytics 支持多种格式,包括 ONNXTensorRTCoreML。要导出你的 YOLO26 模型,请按照以下步骤操作:

  • 使用带有所需格式参数的 export 方法。
  • 确保导出的模型符合你部署环境的规格(例如边缘设备、云端)。

有关更多信息,请查看模型导出指南

监控和维护已部署的计算机视觉模型的最佳实践有哪些?#

持续的监控和维护对于模型的长期成功至关重要。实施用于跟踪关键绩效指标(KPI)和检测异常的工具。定期使用更新的数据重新训练模型以抵消模型漂移。记录整个过程,包括模型架构、超参数和更改,以确保可复现性并便于将来更新。在我们的监控和维护指南中了解更多信息。

评论