Install any skill in seconds. Free to start, no credit card required.
Get Started Free →YOLO 视频流实时推理方案,基于 Ultralytics 框架,支持 YOLOv8/YOLO11 多路并发推流
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 27% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 26% | 0% |
| case-11 | ✗→✓ | ▲ Improved | -25% | 0% |
| case-12 | ✗→✓ | ▲ Improved | -21% | 0% |
| case-15 | ✗→✓ | ▲ Improved | 70% | 0% |
基于 Ultralytics YOLOv8/YOLO11 实现视频流实时目标检测,支持 RTSP/RTMP 视频源输入,多路并发推理,RTMP 推流输出。已在 MTT S4000 (48GB) 和 NVIDIA T4 (16GB) 上完成压测验证。
| 并发路数 | 单路 FPS | 总 FPS | 稳定性 | |---------|---------|--------|--------| | 1 路 | 54.80 | 54.80 | 稳定 | | 2 路 | 36.63 | 73.26 | 稳定 | | 3 路 | 27.83 | 83.49 | 稳定 | | 4 路 | 22.74 | 90.96 | 稳定 |
单卡最大支持 2 路 1080p@60fps 实时推理(满足 30fps 实时性要求)
| 模式 | 总 FPS | 达标路数 | 说明 | |------|--------|---------|------| | 8卡 x 1路 | 374.84 | 16/16 | 全部达标 | | 8卡 x 2路 | 493.15 | 12/16 | 4路未达标 |
GPU 0 和 GPU 4 在 2 路并发时出现异常,建议排查散热和驱动
bashpip install ultralytics # NVIDIA GPU pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121 # 摩尔线程 GPU: 使用 MUSA SDK
pythonfrom ultralytics import YOLO model = YOLO("yolo11n.pt") results = model.predict( source="rtsp://192.168.1.100/stream", stream=True, device=0, conf=0.5, imgsz=640, ) for result in results: for box in result.boxes: cls = int(box.cls[0]) conf = float(box.conf[0]) x1, y1, x2, y2 = box.xyxy[0].tolist() print(f"class={cls} conf={conf:.2f}")
使用 threading.Thread 为每路视频启动推理线程,按 GPU 数量分配 device。建议每卡不超过 2 路并发。
使用 cv2.VideoCapture 读取视频帧,YOLO 推理后用 results0].plot() 标注,通过 subprocess.Popen 启动 FFmpeg 推流进程,proc.stdin.write 写入标注帧。
| 优化项 | 效果 | 说明 | |-------|------|------| | YOLO11n 轻量模型 | 基础 FPS 最高 | 精度略低,可换 s/m | | imgsz=640 | 速度精度平衡 | 降到 480 提升 20% | | FP16 半精度 | 提升 30-50% | 精度损失小于 0.5% | | 模型预加载 | 避免重复加载 | 全局只加载一次 | | 批处理推理 | 提升吞吐 | 适合非实时场景 |
| 问题 | 原因 | 解决方案 | |------|------|---------| | FPS 逐渐下降 | 显存泄漏 | 定期 torch.cuda.empty_cache() | | 推理结果不一致 | FP16 数值误差 | 关闭 half=True | | OOM 错误 | 显存不足 | 降低 batch 或 imgsz | | GPU 利用率低 | CPU 瓶颈 | 多进程代替多线程 | | RTSP 断流 | 网络波动 | 实现自动重连 | | S4000 后处理慢 | NMS 算子 | CPU NMS 或 TensorRT |
Other measured skills in the registry, with their headline benchmark lift.