Skip to content

YOLOE-26: Integrating YOLO26 with YOLOE for Real-Time Open-Vocabulary Instance Segmentation

  • 来源: https://arxiv.org/abs/2602.00168
  • 本地PDF: ../raw/2026-02-03-yoloe-26.pdf
  • 日期: 2026-02-03
  • 标签: yolo, open-vocabulary, instance-segmentation, nms-free
  • 研究方向: 2D object detection → open-vocabulary detection & segmentation
  • 核心贡献: YOLOE-26 = YOLO26 部署效率 + YOLOE 开放词汇,实现端到端实时开放词汇实例分割
  • 方法简述:
    • 继承 YOLO26 的 NMS-Free 端到端架构
    • 用 Object Embedding Head 替换固定类别 logits,分类转化为 prompt embedding 相似度匹配
    • 支持三种 Prompt 模态:Text (RepRTA) / Visual (SAVPE) / Prompt-Free (Lazy Region Prompt Contrast)
    • 统一 object embedding 空间,无缝切换模式
  • 关键结果: XL 模型 Text Prompt 39.5 mAP / Visual Prompt 40.6 mAP / Prompt-Free 29.9 mAP
  • 缺点/局限:
    • Prompt-free 性能 < prompted
    • 依赖 pseudo-mask 训练(SAM 生成,有噪声)
    • 极端边缘部署仍有挑战
  • 可复用代码: Ultralytics 官方生态
  • 个人评价: 实用的开放词汇检测方案,解决效率+部署难题,NMS-Free 适合无人机密集场景

摘要

论文基础信息

  • 标题: YOLOE-26: Integrating YOLO26 with YOLOE for Real-Time Open-Vocabulary Instance Segmentation
  • 作者: Ranjan Sapkota, Manoj Karkee(康奈尔大学)
  • 机构: Cornell University, Biological & Environmental Engineering
  • 提交日期: 2026-01-29 (arXiv v1)

核心贡献一句话总结

YOLOE-26 = YOLO26 的部署效率 + YOLOE 的开放词汇能力,实现端到端实时开放词汇实例分割

方法要点

创新点说明
NMS-Free 端到端继承 YOLO26 的 NMS-Free 架构,保持 YOLO 系列的效率和确定性
Object Embedding Head替换固定类别 logits,分类转化为 prompt embedding 的相似度匹配
三种 Prompt 模态Text/Visual/Prompt-Free,无缝切换
统一 Embedding 空间所有模态共享同一语义空间

三种 Prompt 机制

机制全称作用特点
RepRTARe-Parameterizable Region-Text Alignment文本提示零推理开销(重参数化)
SAVPESemantic-Activated Visual Prompt Encoder视觉示例引导轻量分支
Lazy Region Prompt Contrast无 Prompt 自动分割内置词表

训练策略

  • 大规模检测 + grounding 数据集(Objects365 + GQA + Flickr30k)
  • 多任务优化(检测 + 分割 + 语义对齐)
  • 兼容 Ultralytics 生态

Sections

Section 1: Introduction

1.1 背景与动机

YOLO 演进历程

版本关键创新
YOLOv1端到端回归,统一检测流程
YOLOv2-v3Anchor box + 多尺度训练 + 残差特征融合
YOLOv4CSPDarknet + Mish 激活
YOLOv5PyTorch 实现 + 现代训练管线
YOLOv6EfficientRep + Anchor-free head
YOLOv7重参数化 ELAN
YOLOv8Anchor-free + Decoupled head
YOLOv9PGI 增强
YOLOv10NMS-Free 端到端
YOLOv12Attention + Graph-based
YOLOv26部署优先:NMS-Free + 去除 DFL + MuSGD 优化器

1.2 核心问题

YOLO 的局限性:闭集检测,类别固定在训练时,无法识别未见过的类别

现有开放词汇方法的局限

  • 依赖 Transformer-heavy 架构
  • 高计算成本
  • 推理慢
  • 边缘设备部署困难

1.3 YOLOE 的解决思路

  • Embedding-based 分类替代固定 class logits
  • 统一支持 Text/Visual/Prompt-Free
  • 保留 YOLO 的效率

1.4 YOLOE-26 的定位

整合目标

  • YOLOv26 的 NMS-Free 端到端检测 pipeline
  • YOLOE 的开放词汇学习机制

应用场景:机器人、自主系统、监控、精准农业

Section 2: Architecture

2.1 核心架构

YOLOE-26 = YOLO26 Backbone + PAN/FPN Neck + 任务头

模块功能
BackboneYOLO26 卷积 backbone,多尺度特征提取
NeckPAN/FPN 特征融合(聚合 P3/P4/P5 多尺度信息)
Regression Head直接边界框回归(NMS-Free)
Segmentation Head原型式实例分割(prototypes + 系数)
Object Embedding Head核心创新:输出语义 embedding,替代固定 class logits

2.2 统一 Object Embedding 空间

核心公式:分类 = 相似度匹配

Label = O · Pᵀ ∈ ℝᴺ×ᶜ
  • O:物体 embedding(N 个锚点,D 维)
  • P:Prompt embedding(C 个 prompt,D 维)

优势

  • 统一支持 Text/Visual/Prompt-Free 三种模式
  • 共享同一 object embedding head
  • 无需外部语言模型

2.3 三种 Prompt 机制

机制公式特点
RepRTA文本编码 + 辅助网络 → 训练后重参数化零推理开销
SAVPE语义分支 + 激活分支 → 视觉 prompt embedding轻量分支
LRPCobjectness prompt 过滤 → lazy vocabulary 检索内置 4585 类别词表

2.4 性能数据

Text/Visual Prompt(Table 1)

模型Text mAPVisual mAPParamsFLOPs
n23.720.94.8M6.0B
s29.927.113.1M21.7B
m35.431.327.9M70.1B
l36.833.732.3M88.3B
x39.536.269.9M196.7B

Prompt-Free(Table 2)

模型mAP50-95mAP50ParamsFLOPs
n16.622.76.5M15.8B
s21.428.616.2M35.5B
m25.733.636.2M122.1B
l27.235.440.6M140.4B
x29.938.786.3M314.4B

Q&A: Prompt-Free 性能理解

Q1: Prompt-Free 性能数据怎么理解?

A: Prompt-Free 模式:

  • 输入:无需用户输入,自动用内置 4585 类别词表
  • 工作方式:先检测物体区域 → 再从词表检索
  • 性能更低的原因:
    1. 无引导:Prompt 模式告诉模型要找什么,Prompt-Free 需要自己发现
    2. 大词表匹配:4585 个类别检索,计算量大
    3. 开放世界更难:没有明确目标,模型要判断"这是什么"
  • 差距:XL 模型 Text 39.5 → Prompt-Free 29.9(-9.6),绝对值更高但比例类似

Q2: Prompt-Free 模式下评估的 mAP 也是用 COCO 80 类进行评估么?

A: 是的,评估方式:

  • 训练:使用 Objects365 + GQA + Flickr30k(多源、大规模)
  • 内置词表:RAM++ 的 4585 个类别
  • 评估时:从 4585 类中筛选出对应 COCO 的 80 类,进行 mAP 计算
  • 模型实际上"见过的"类别远多于 COCO 80,评估时过滤到 COCO 80 做标准对比

2.5 小结

YOLOE-26 通过统一的 Object Embedding 空间,实现了三种开放词汇推理模式:

  • Text Prompt:用户指定类别,零推理开销
  • Visual Prompt:示例引导,轻量分支
  • Prompt-Free:内置词表自动发现,适合未知场景

Section 3: Open-Vocabulary Prompting Mechanisms

3.1 Text-Prompted 实例分割

  • 输入:自然语言描述("person", "bus", "red apple")
  • RepRTA 工作流程
    1. 提取多尺度特征
    2. 预测 object embeddings O
    3. 编码文本 prompts 为 embeddings Pt
    4. 计算相似度 O · Ptᵀ
    5. 分配类别 + 生成 mask
  • 关键:训练时辅助网络 → 训练后重参数化 → 零推理开销

代码示例

python
model = YOLO("yoloe-26l-seg.pt")
names = ["person", "bus"]
model.set_classes(names, model.get_text_pe(names))
results = model.predict("image.jpg")

3.2 Visual-Prompted 实例分割

  • 场景:文本描述不精确(农业、医疗、工业检测)
  • SAVPE 结构
    • 语义分支:提取 prompt-agnostic 视觉特征
    • 激活分支:编码视觉线索(box/mask)为 prompt-aware 权重
    • 聚合生成 visual prompt embedding Pv

代码示例

python
visual_prompts = dict(
    bboxes=np.array([[221.5, 405.8, 344.9, 857.5]]),
    cls=np.array([0])
)
results = model.predict("image.jpg", visual_prompts=visual_prompts)

3.3 Prompt-Free 实例分割

  • 内置词表:RAM++ 4585 类别
  • LRPC 工作流程
    1. 预测 objectness embeddings 定位候选区域
    2. 阈值过滤锚点
    3. Lazy 匹配内置词表
    4. 分配类别 + 生成 mask

代码示例

python
model = YOLO("yoloe-26l-seg-pf.pt")
results = model.predict("image.jpg")

3.4 实际应用模式

混合工作流(推荐):

  1. Prompt-Free 发现:先用内置词表找出所有物体
  2. Prompt 精修:用户指定目标,用 text/visual prompt 精确分割

Q&A: 为什么叫 Lazy?

A: Lazy = 偷懒的匹配策略,不是对所有锚点都做词表匹配:

  • 穷举匹配:5000 锚点 × 4585 词表 = 2297万次计算
  • Lazy 匹配:先用 objectness prompt 过滤(如保留 200 个候选),只对这 200 个做匹配
  • 本质:计算优化策略,借鉴 CS 领域的 Lazy Evaluation(惰性求值)概念

Section 4: Training Strategy and Implementation

4.1 数据集与监督信号

训练数据(3 大来源)

数据集作用标注类型
Objects365物体多样性 + 密集边界框检测框
GQA语言-区域对齐短语 grounding
Flickr30k Entities短语 grounding短语-区域对应

分割监督 - Pseudo-mask 生成

  • 问题: grounding 数据集没有高质量 instance mask
  • 解决:用 SAM 生成 pseudo-mask,然后 refinement(去碎片、抑制泄漏、平滑)

4.2 损失函数

多任务 Loss

L = λcls·Lcls + λbox·Lbox + λmask·Lmask + λref·Lref
公式作用
LclsBCE(σ(S), t)Embedding 相似度分类
Lbox1 - IoU边界框回归(CIoU/GIoU)
LmaskBCE + Dice实例分割
Lref可选 DFL-style定位细化

4.3 分阶段训练策略

阶段内容特点
1. Text-prompt 预训练RepRTA + 大规模 grounding 数据学对齐
2. Visual-prompt 微调仅训练 SAVPE,冻结其他省 VRAM + 时间短
3. Prompt-free 专项Objectness prompt + lazy 检索强调效率

4.4 Ultralytics 生态集成

  • 模型变体:N/S/M/L/X 两大家族(text/visual-prompt vs prompt-free)
  • Fine-tuning:YOLOEPESegTrainer
  • 检测-only 微调:从分割 checkpoint 初始化,丢弃 mask 分支
  • 导出:ONNX/TensorRT/CoreML,Text-prompt 提前折叠进图

Section 5: Conclusion

论文总结

核心贡献

  • YOLOE-26 = YOLO26 的 NMS-Free 端到端 + YOLOE 的开放词汇
  • 三种推理模式:Text-prompted / Visual-prompted / Prompt-free
  • 保留 YOLO 系列的效率和确定性

当前局限性

局限原因
Prompt-free < Prompted开放世界发现更难
Pseudo-mask 噪声SAM 生成,边界不精确
Prompt 措辞敏感相似类别分离不够
极端边缘部署挑战量化、大词表内存、置信度校准

未来路线图(三大方向)

方向内容
Edge-EfficientINT8/FP8 量化、Prompt 缓存、ANN 检索、蒸馏 tiny 模型
Reliable & RobustPrompt 鲁棒性、不确定性感知、域偏移处理、噪声 mask 训练
Agentic AI感知 agent、自动 prompt refinement、持续学习、自训练

最终目标:边缘设备上的全实时开放词汇实例分割


Q&A: 论文身份与源码

Q1: 这篇论文是 Ultralytics 官方做的么?

A: 不是。论文作者是康奈尔大学的 Ranjan Sapkota 和 Manoj Karkee,是学术论文,基于 Ultralytics 的 YOLO26 框架做研究。

Q2: 目前已发布内容有哪些?

A:

类型状态
推理权重✅ 已发布
推理代码✅ Ultralytics 生态集成
训练权重✅ 官方发布 Pretrained weights
训练源码❌ 未完全开源

Q3: 能否从零复现?

A: 不能完全复现:

  • 训练数据需要 Objects365 + GQA + Flickr30k 权限
  • Pseudo-mask 生成流程(SAM)未开源
  • 多阶段训练 Pipeline 只有策略描述,无完整代码

Q4: 推理代码是如何进入 Ultralytics 生态的?

A: 推测是作者把推理代码提供给 Ultralytics 合并:

  • 作者(康奈尔):研究创新 + 推理代码实现
  • Ultralytics:整合到官方生态 + 发布权重 + 维护
  • 论文中的代码示例直接使用 ultralytics 包,符合官方风格