ultralytics 是什么?

ultralytics 是一个用于计算机视觉任务的 Python 库,专注于提供高效、易用的目标检测、实例分割和图像分类工具。它最著名的功能是实现 YOLO(You Only Look Once) 系列模型,特别是最新的 YOLOv8。


1. YOLO 是什么?

YOLO 是一种流行的目标检测算法,以其速度快 和精度高而闻名。YOLO 的核心思想是将目标检测问题转化为一个回归问题,直接预测目标的边界框和类别。

  • YOLOv8 是 YOLO 系列的最新版本,由 Ultralytics 团队开发和维护。
  • YOLOv8 支持多种任务,包括目标检测、实例分割和图像分类。

2. ultralytics 的功能

ultralytics 提供了以下主要功能:

(1)目标检测(Object Detection)
  • 检测图像或视频中的物体,并返回每个物体的类别和边界框。

  • 示例代码:

    python 复制代码
    from ultralytics import YOLO
    
    # 加载预训练模型
    model = YOLO("yolov8n.pt")
    
    # 对图像进行推理
    results = model("https://ultralytics.com/images/bus.jpg")
    
    # 显示结果
    results[0].show()
(2)实例分割(Instance Segmentation)
  • 检测图像中的物体,并返回每个物体的类别、边界框和像素级掩码。

  • 示例代码:

    python 复制代码
    from ultralytics import YOLO
    
    # 加载预训练模型
    model = YOLO("yolov8n-seg.pt")  # 使用 YOLOv8 实例分割模型
    
    # 对图像进行推理
    results = model("https://ultralytics.com/images/bus.jpg")
    
    # 显示结果
    results[0].show()
(3)图像分类(Image Classification)
  • 对图像进行分类,返回图像的类别标签。

  • 示例代码:

    python 复制代码
    from ultralytics import YOLO
    
    # 加载预训练模型
    model = YOLO("yolov8n-cls.pt")  # 使用 YOLOv8 分类模型
    
    # 对图像进行推理
    results = model("https://ultralytics.com/images/bus.jpg")
    
    # 显示结果
    results[0].show()
(4)模型训练
  • 支持自定义数据集的训练,可以训练目标检测、实例分割和分类模型。

  • 示例代码:

    python 复制代码
    from ultralytics import YOLO
    
    # 加载模型
    model = YOLO("yolov8n.pt")
    
    # 训练模型
    results = model.train(data="coco128.yaml", epochs=10, imgsz=640)
(5)模型导出
  • 支持将模型导出为多种格式,如 ONNX、TensorRT、CoreML 等,以便在不同平台上部署。

  • 示例代码:

    python 复制代码
    from ultralytics import YOLO
    
    # 加载模型
    model = YOLO("yolov8n.pt")
    
    # 导出模型为 ONNX 格式
    model.export(format="onnx")

3. ultralytics 的优势

  • 简单易用:提供了简洁的 API,几行代码即可完成复杂的任务。
  • 高性能:基于 YOLOv8,速度快且精度高。
  • 多任务支持:支持目标检测、实例分割和图像分类。
  • 跨平台:支持多种硬件(CPU、GPU)和部署格式(ONNX、TensorRT 等)。

4. 适用场景

ultralytics 适用于以下场景:

  • 目标检测:检测图像或视频中的物体(如行人、车辆、动物等)。
  • 实例分割:对图像中的物体进行像素级分割。
  • 图像分类:对图像进行分类(如猫 vs 狗)。
  • 自定义训练:使用自己的数据集训练模型。
  • 模型部署:将模型导出为 ONNX、TensorRT 等格式,用于生产环境。

5. 安装 ultralytics

要使用 ultralytics,首先需要安装它:

python 复制代码
pip install ultralytics

6. 官方资源


总结

ultralytics 是一个功能强大且易于使用的计算机视觉库,专注于 YOLO 系列模型的实现和应用。无论是目标检测、实例分割还是图像分类,ultralytics 都能提供高效的解决方案。

相关推荐
天天被压力16 分钟前
【A股分钟级高频数据完全手册 #11】券商实时行情数据接口:实时交易(券商源)接入与字段
java·人工智能·python
总裁余(余登武)21 分钟前
【python项目】:1操作EXCEl自动化开发
python·自动化·excel
芝梵家电数据笔记23 分钟前
用字段表核对暖菜板长期使用条件:结构、暖区、质保边界
python·家电·数据校验·dataclass·选购
天天被压力29 分钟前
【A股分钟级高频数据完全手册 #12】股票五档盘口数据接口:买卖五档实时盘口解析
java·人工智能·python
卷无止境13 小时前
RAGFlow 项目全景报告:从文档解析引擎到 Agent 原生数据库
后端·python
灿飞屋14 小时前
Kotlin与Java虚拟机三:控制流
android·java·开发语言·后端·python·kotlin·安卓
benchmark_cc14 小时前
单只股票五档盘口接入个人研究仓库:QuantDash 读取、校验与易错点
python·数据分析·pandas·量化交易·股票数据·quantdash
青少儿编程课堂16 小时前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C++考级:中缀表达式求值解析
c++·python·算法·bfs·信息学竞赛
灿飞屋18 小时前
Kotlin与Java虚拟机四:函数
java·python·kotlin·安卓·android jetpack
一晌小贪欢19 小时前
Python基础:第 09 篇 · while 循环:重复直到不满足
开发语言·c++·python·数据可视化·面向对象·python办公