Meet YOLO26: next-gen vision AI.

Link to this section如何为你的计算机视觉项目定义目标#

要定义一个计算机视觉项目,请编写一份问题陈述,明确核心议题、范围、利益相关者和约束条件;设定可衡量、有时限的目标;并将问题映射到确定模型、数据集和部署决策的计算机视觉任务上。本指南通过一个实际示例引导你完成每一步。



Watch: How to define Computer Vision Project's Goal | Problem Statement and VisionAI Tasks Connection 🚀

关于从数据收集到部署的完整工作流程概述,请参阅我们关于计算机视觉项目关键步骤的指南。

Link to this section如何编写计算机视觉问题陈述#

清晰的问题陈述是找到最有效解决方案的第一大步。它包含四个部分:

  • 确定核心问题: 精准定位你的计算机视觉项目旨在解决的具体挑战。
  • 确定范围: 定义你所面临问题的边界。
  • 考虑终端用户和利益相关者: 确定谁会受到该解决方案的影响。
  • 分析项目需求和约束: 评估可用资源(时间、预算、人员),并确定任何技术或监管限制。

Link to this section商业问题陈述示例#

设想一个你想要估算车辆速度的公路计算机视觉项目。核心问题是当前的测速方法由于雷达系统陈旧和人工流程,效率低下且容易出错。该项目旨在开发一个实时计算机视觉系统,以取代过时的速度估算系统。

Vehicle speed estimation on a highway using Ultralytics YOLO

主要用户包括交通管理部门和执法机构,而次要利益相关者则是公路规划者和从更安全道路中受益的公众。关键需求涉及评估预算、时间和人员,以及解决诸如高分辨率摄像头和实时数据处理等技术需求。此外,还必须考虑关于隐私和数据安全的监管约束。

Link to this section设定可衡量的目标#

设定可衡量的目标是计算机视觉项目成功的关键。有效的目标遵循SMART准则:

准则含义
Specific(具体)定义清晰且详细的目标。
Measurable(可衡量)确保目标是可量化的。
Achievable(可实现)在你的能力范围内设定切合实际的目标。
Relevant(相关)确保目标与你的整体项目目标相一致。
Time-bound(有时限)为每个目标设定截止日期。

对于高速公路速度估算的示例,SMART目标可以是:

  • 在六个月内,使用 10,000 张车辆图像的数据集,实现至少 95% 的准确率进行速度检测。
  • 系统应能够以每秒 30 帧的速度处理实时视频流,且延迟极小。

通过设定具体且可量化的目标,你可以有效地跟踪进度,识别改进领域,并确保项目保持在正轨上。

Link to this section如何选择合适的计算机视觉任务#

你的问题陈述有助于你构思哪种计算机视觉任务可以解决你的问题。最流行的任务包括图像分类目标检测图像分割——请参阅Ultralytics任务页面获取详细对比。

Comparison of image classification, object detection, and image segmentation outputs

例如,如果你的问题是监控高速公路上的车辆速度,那么相关的任务就是目标跟踪。选择跟踪是因为它通过持久ID在视频帧中跟随每辆车,而这正是速度计算所必需的。

YOLO object tracking of vehicles on a highway with persistent track IDs

其他任务单独使用时的适用性较低。例如,目标检测可以在每一帧中定位车辆,但无法在帧与帧之间维护每辆车的身份——而没有这种身份,系统就无法测量随时间变化的移动。一旦确定了合适的计算机视觉任务,它将指导你项目的几个关键方面,如模型选择、数据集准备和模型训练方法。

Link to this section什么最重要:模型、数据还是训练方法?#

模型选择、数据集准备和训练方法的顺序取决于你的项目具体情况:

你的情况从哪里开始示例
定义明确的问题和目标模型选择对于估算车辆速度的交通监控系统,选择一个目标跟踪模型,收集并标注高速公路视频,然后使用实时视频处理技术进行训练。
独特或有限的数据数据集准备对于一个数据集较小的面部识别系统,先标注数据,然后选择一个在有限数据下表现良好的模型(例如用于迁移学习的预训练模型),并规划数据增强以扩充数据集。
实验至关重要(研究)训练方法在一个探索检测制造缺陷新方法的项目中,先在小部分数据子集上进行实验。一旦找到有前景的技术,选择一个针对这些发现量身定制的模型并准备一个全面的数据集。

如果你从数据开始,Ultralytics Platform可以在项目发展过程中简化数据集组织、标注和训练流程。

Link to this section部署选项如何影响你的项目#

模型部署选项对计算机视觉项目的性能有关键影响,因此请从一开始就将其纳入考虑。部署环境必须能够处理你模型的计算负载:

部署选项最适合示例技术
边缘设备计算资源有限的智能手机和IoT设备;轻量级模型TensorFlow Lite, ONNX Runtime
云服务器计算需求更高的复杂模型;可随项目扩展的硬件AWS, Google Cloud, Azure
本地服务器数据隐私和安全需求;对数据和基础设施的完全控制自托管GPU服务器
混合解决方案平衡性能、成本和延迟;边缘处理加云分析边缘运行时和云平台的组合

每个选项都有不同的优势和挑战,选择取决于具体的项目需求,如性能、成本和安全性。

Link to this section结论#

一个成功的计算机视觉项目始于清晰的问题陈述、SMART可衡量目标以及适合工作的计算机视觉任务——这些决策将指导后续的一切,从模型选择到部署。作为下一步,了解如何收集和标注数据,或在GitHubUltralytics Discord服务器上与其他开发者讨论你的项目。

Link to this section常见问题解答#

Link to this section我该如何为我的计算机视觉项目定义清晰的问题陈述?#

清晰的问题陈述需要说明你的项目所解决的核心问题、范围、最终用户和利益相关者,以及你的资源和监管约束。按顺序完成这四个部分,并在做出技术决策之前与利益相关者确认陈述。请参阅如何编写计算机视觉问题陈述获取完整细分和实际示例。

Link to this section我该如何为我的问题选择正确的计算机视觉任务?#

将你问题所需的输出与产生该输出的任务相匹配:每张图单个标签指向图像分类,目标位置指向目标检测,像素级边界指向图像分割,而在视频帧中维持身份则指向目标跟踪。例如,监控车辆速度需要跟踪,因为速度是根据每辆车随时间的移动来计算的。请参阅Ultralytics任务页面获取所有支持的任务。

Link to this section我该如何为我的计算机视觉项目设定有效的可衡量目标?#

使用SMART准则:具体(Specific)、可衡量(Measurable)、可实现(Achievable)、相关(Relevant)和有时限(Time-bound)。例如:“在六个月内,使用包含10,000辆车的数据集,在速度检测中实现95%的准确率。”这种方法有助于跟踪进展并识别改进领域。阅读更多关于设定可衡量目标的内容。

Link to this section预训练模型能记住它在自定义训练之前所认识的类别吗?#

不能,预训练模型不会以传统意义上的方式“记住”类。它们从海量数据集中学习模式,在自定义训练(微调)期间,这些模式会根据你的特定任务进行调整。模型的能力是有限的,专注于新信息可能会覆盖掉一些先前的学习内容。

Overview of transfer learning from a pretrained model to a custom model

如果你想使用模型预训练时所用的类,一种实用的方法是使用两个模型:一个保留原始性能,另一个针对你的特定任务进行微调。通过这种方式,你可以合并两个模型的输出。还有其他选择,例如冻结层、将预训练模型用作特征提取器以及任务特定的分支,但这些是更复杂的解决方案,需要更高的专业水平。

Link to this section部署选项如何影响我的计算机视觉项目?#

部署选项决定了哪些模型大小和格式是可行的,因此它们从一开始就塑造了你的项目。边缘设备需要通过如TensorFlow LiteONNX Runtime等格式和运行时服务的轻量级模型;云服务器在可扩展硬件上处理复杂模型;本地服务器为隐私敏感项目提供完全的数据控制;而混合设置则平衡了这两者。在部署选项表格中对比它们,或查看模型部署选项指南以了解详情。

Link to this section在定义计算机视觉问题时,最常见的挑战是什么?#

常见的挑战包括:

  • 模糊或过于宽泛的问题陈述。
  • 不切实际的目标。
  • 缺乏利益相关者的一致性。
  • 对技术限制的理解不足。
  • 低估了数据需求。

通过彻底的初步研究、与利益相关者的清晰沟通以及对问题陈述和目标的迭代完善来解决这些挑战。关于完整的项目工作流程,请参阅计算机视觉项目的关键步骤

评论