犀牛鸟 2026 研究笔记 estelledc.github.io

目标检测部署链:多框架多格式横评

YOLO-Master 精读见 精读: yolo-master Ultralytics 精读见 精读: ultralytics 跨赛道纵向见 跨赛道: YOLO 到 端侧 端侧流水线见 端侧部署流水线

调研元信息

日期 2026-06-22
环境 macOS / Apple Silicon
实测状态 未实测,以文档 + 已有精读为准
流水线段 Export + Deploy(检测框架横向对比)

一句话定位

本文横向对比 5 个检测框架在不同部署格式(TensorRT/ONNX/CoreML/ncnn/TFLite)下的导出能力、限制和实践建议。

日常类比

不同检测框架像不同品牌的相机,部署格式像不同的照片冲印店。有的相机(Ultralytics)跟所有冲印店都合作良好;有的相机(YOLO-Master MoE)拍的「多重曝光照片」只有特定冲印店能处理。


框架 x 格式 兼容矩阵

框架 ONNX TensorRT ncnn CoreML TFLite OpenVINO
Ultralytics (YOLOv8) 优秀 优秀 优秀(PNNX) 优秀 良好 良好
YOLOv10 优秀 优秀 良好 良好 良好 良好
YOLO-Master (MoE) 困难 困难 极困难 不支持 不支持 困难
RT-DETR 良好 良好 有限 良好 有限 良好
mmdetection 需 mmdeploy 需 mmdeploy 需 mmdeploy 需 mmdeploy 需 mmdeploy 需 mmdeploy

各框架部署特点

Ultralytics (YOLOv8/v11) [已有]

最成熟的部署生态,一条命令覆盖全格式:

yolo export model=yolov8n.pt format=onnx     # ONNX
yolo export model=yolov8n.pt format=engine    # TensorRT
yolo export model=yolov8n.pt format=ncnn      # ncnn (via PNNX)
yolo export model=yolov8n.pt format=coreml    # CoreML
yolo export model=yolov8n.pt format=tflite    # TFLite
yolo export model=yolov8n.pt format=openvino  # OpenVINO

特点:内置 PNNX 调用,ncnn 导出质量最高;支持 INT8 量化选项(format=engine + int8=True)。

YOLOv10 [已有]

基于 Ultralytics 框架,继承其全部导出能力。额外特点:

YOLO-Master (ES-MoE) [已有]

部署最困难的框架(详见 跨赛道文档):

RT-DETR [已有]

Transformer 检测器的部署特点:

mmdetection [已有]

与其他框架不同,mmdetection 需要专门的部署工具 mmdeploy:

# mmdetection 不能直接 export,需要 mmdeploy
pip install mmdeploy mmdeploy-runtime
python tools/deploy.py configs/deploy/... model.pth demo.png

特点:


部署格式特点对比

格式 目标平台 优势 劣势
ONNX 通用中间层 生态最广,几乎所有引擎支持 本身不是推理引擎,需二次转换
TensorRT NVIDIA GPU 极致 GPU 性能,自动 kernel 调优 仅 NVIDIA 硬件,编译耗时
ncnn 移动端 CPU/Vulkan GPU 极小体积,零依赖 不支持 NPU,算子覆盖有限
CoreML Apple 设备 Neural Engine 加速,系统级集成 仅 Apple 生态
TFLite 安卓/嵌入式 NNAPI 委托,轻量 算子限制多,性能不如专用引擎
OpenVINO Intel CPU/GPU/VPU Intel 硬件最优 非 Intel 设备无优势

MoE 特殊部署节

YOLO-Master 的 MoE 模块给部署带来独特挑战 [已有]

graph TD
    A[YOLO-Master MoE 模型] --> B{目标平台?}
    B -->|NVIDIA GPU 服务端| C[TensorRT + Custom Plugin]
    B -->|移动端| D{愿意损失精度?}
    D -->|是| E[pruning.py 蒸馏<br/>然后走标准链]
    D -->|否| F[全 Expert 导出<br/>体积膨胀+丧失稀疏优势]
    B -->|Apple 设备| G[CoreML 不支持<br/>必须蒸馏]

关键结论:


实践建议

按场景选择

场景 推荐框架 推荐格式 理由
安卓 App 实时检测 Ultralytics ncnn 最成熟的移动端链路
iOS App Ultralytics CoreML Neural Engine 加速
服务端高吞吐 Ultralytics/YOLOv10 TensorRT GPU 极致性能
边缘设备(RK3588等) Ultralytics ONNX -> RKNN NPU 加速
学术复现/比较 mmdetection ONNX 模型动物园最全
MoE 精度验证 YOLO-Master ONNX Runtime 保留完整 MoE 语义

RT-DETR vs YOLO 部署差异

维度 YOLO 系列 RT-DETR
后处理 需 NMS(或 YOLOv10 去 NMS) 无 NMS(端到端)
Attention 算子 需要 Deformable Attention
ncnn 兼容 优秀 有限(Attention 支持不完整)
CPU 推理速度 较慢(Transformer 计算量)
GPU 推理速度 与 YOLO 接近

证据等级

标签 来源
[已有] deep-dive-ultralytics.md, deep-dive-yolo-master.md, deep-dive-rt-detr.md, deep-dive-mmdetection.md
[文档] Ultralytics export docs, mmdeploy docs, ncnn wiki
[Issue] YOLO-Master #42 (ONNX), #33 (RK3588), #12 (ORT)
[源码] YOLO-Master moe/pruning.py, Ultralytics engine/exporter.py