YOLO OpenVINO 部署实操 | 推理提速3倍,NPU单帧 8.33ms
YOLO OpenVINO 部署实操 | 推理提速3倍,NPU单帧 8.33ms
【免费下载链接】ultralyticsUltralytics YOLO26, YOLO11, YOLOv8 — object detection, instance segmentation, semantic segmentation, image classification, pose estimation, object tracking项目地址: https://gitcode.com/GitHub_Trending/ul/ultralytics
YOLO模型塞进边缘盒子后,帧率卡住、CPU打满。这是推理从机房搬到现场最常见的痛点。Ultralytics 官方支持把模型一键导出为 OpenVINO 格式,在 Intel CPU、iGPU、NPU 上做 YOLO OpenVINO 部署最高可提速3倍,硬件上只要一颗能跑 openvino 运行时的 Intel 芯片即可。
先看结论
- 🚀 i9-12900KS 上,YOLO11n 的 OpenVINO 格式比 PyTorch 快 1.8 倍
- 📦 INT8 量化后模型体积降 60%,推理再提速 30%
- 🖥 一份模型通吃三设备:intel:cpu / intel:gpu / intel:npu
- ⚡ NPU 推理:258V 上单帧耗时从 32.27ms 降到 8.33ms
四行读完就能判断要不要往下看。如果手头有现成的 Intel 机器,想把它榨出实时帧率,全文流程照抄即可。
它凭什么快
提速来自 OpenVINO 对模型做的三件事,不玄学。
量化把 FP32 权重压成 FP16 或 INT8,内存搬运量变小,访存一省,算力自然跑得快。算子融合把相邻的小算子合并成一个融合 kernel,调度开销随之下降。硬件调度把同一份 IR 图编译到 CPU、iGPU 或 NPU 上,用各自最擅长的向量指令执行。三个手段环环相扣:量化降数据量,融合降调用次数,调度挑对硬件,缺一环收益都会打折。
这是 Intel 芯片上做边缘设备加速的主路径。选设备比选模型更重要,先看这张表。
| 设备 | 标识 | 适合场景 |
|---|---|---|
| CPU | intel:cpu | 无 GPU/NPU 时的保底选项,稳定、好铺开 |
| 核显 | intel:gpu | 桌面/笔记本核显,吞吐高,适合多路推理 |
| 独显 | intel:gpu | 独显工作站,大模型、大 batch |
| NPU | intel:npu | Core Ultra 笔记本,低功耗、常驻后台推理 |
三步跑通
模型导出加推理一共三步,全程五分钟。顺序不能换,装错运行时会导致设备列表为空。
装依赖
先装两个包,一个封装、一个运行时。
pip install ultralytics pip install openvinoultralytics 内含导出与推理封装,不用自己写运行时调用。openvino 是 Intel 的推理运行时,缺了它设备列表会是空的。老机器装不上时,按报错提示固定 openvino 版本即可,ultralytics 不用动。
YOLO 模型导出:FP32 与 INT8 量化
导出一行命令,INT8 量化多两个参数。
from ultralytics import YOLO model = YOLO("yolo11n.pt") model.export(format="openvino") # FP32,生成 yolo11n_openvino_model/ model.export(format="openvino", int8=True, data="coco8.yaml") # INT8 量化导出产物是一个目录:XML 存网络结构,BIN 存权重。INT8
【免费下载链接】ultralyticsUltralytics YOLO26, YOLO11, YOLOv8 — object detection, instance segmentation, semantic segmentation, image classification, pose estimation, object tracking项目地址: https://gitcode.com/GitHub_Trending/ul/ultralytics
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
