一 前言
上一篇,我们实现了用YOLO对图片上的物体进行检测,并在图片上框出具体的对象并打出标签。但只是应用在单张图片,且还没用上FastRTC。
本篇,我们希望结合FastRTC的能力,实现基于YOLO的实时视频流的物体检测。
本篇文字将不会太多。学习完本篇,对比前面的文章,你会发现FastRTC框架的有趣之处就在于框架极简且优美,我们只需要重点关注我们的算法部分即可。
二 需求及分析
我们本次目标是对实时视频流进行处理,参照
AI框架工具FastRTC快速上手4——视频流案例之镜像反转-CSDN博客
其实我们不难得出,只要在handler中对视频帧进行物体识别即可。那每一帧做物体识别,不就是每一张图片处理一次物体识别的意思么,对于图片的物体识别,上一篇已经完成。
完美契合。直接上代码。
三 完整过程
3.1 依赖引入
首先引入相关依赖
from fastrtc import Stream
import gradio as gr
import cv2
from huggingface_hub import hf_hub_download
from inference import YOLOv10
本次会引入gradio自身的组件,增加一个滑动条来调整置信度阈值。</