体验yolov8监控交通流
YOLOv8 是一种开源目标检测算法(模型),是 YOLO(You Only Look Once) 系列算法的最新版本。它使用单次预测框架对图像中的对象进行定位和分类。这种方法可以检测多个对象,并且速度更快,准确率更高。
参考本节,体验使用 YOLO 系列中精度最高的 yolov8x 推理预测交通信息,包括:识别交通工具、车辆进区域计数、车辆越线计数。
# 创建项目
单击平台项目页右上角的 创建项目,随后在弹框中配置项目的基本信息。
- 项目名称:可自定义,如 “交通流监控体验”。
- 项目描述:如 “使用 yolov8 体验交通交通监控”。
单击 确定,项目创建成功,并进入 初始化开发环境 引导页。
在 初始化开发环境 页中配置如下信息,其他参数保持默认值。
- 资源配置:选择 基础版 中 B1.medium。
- 镜像:选择 公开 镜像 yolov8监控交通流-体验镜像(作者为 “趋动云小助手”),方法参考下图。
- 数据:选择 社区 > 全部 下的 trafficMonitor 数据集,方法参考下图。
- 模型:选择公开模型 yolov8(作者为 “趋动云小助手”),方法参考下图。
- 自动停止(高级设置 中):选择 2小时。
随后单击右下角 我要上传代码,暂不启动,进入 项目代码 页。
# 上传代码
项目代码 页中单击
按钮。
选择 网页上传文件,并上传 已获取的代码 (opens new window)。
在代码压缩包后的 ... 中选择 解压缩,解压刚才上传的代码包。
解压完成后,单击 结束编辑,退出代码编辑模式。
# 查看推理所需模型及数据
项目详情切换到 数据模型 页,查看开发环境关联的数据和模型,待开发环境启动时将会自动挂载关联的数据与模型。
- 数据,本次用来推理的原始视频,即数据集 trafficMonitor 中的这些视频,可下载后观看,以便与推理后的视频对比。
- 模型,下拉框中切换为 yolov8 可查看本次用来做推理的模型,即 yolov8 中的权重文件,包含
yolov8l.pt
、yolov8n.pt
、yolov8x.pt
,您可以在体验时替换权重文件,感受训练的速度和效果的区别。
# 推理
该项目共为您提供了 4 个推理体验,您可以选择其中一个体验,也可以逐个都体验一遍。
以下以 “体验3:车辆越线计数-简单场景” 为例为您说明如何推理:
单击右上角 启动开发环境,并等待开发环境启动完成。
单击 进入开发环境,默认进入 JupyterLab 页面。
双击左侧目录中 “体验3:车辆越线计数-简单场景.ipynb” ,切换至该文件。
说明:体验其他推理,则双击其他文件。
双击左边栏 ≡,可切换到该文件的内容页,了解该推理的详细步骤信息。
一键运行该案例的所有步骤。
运行时,如下图所示,右上角圆圈的空心圆表示未开始或者运行完成,其他状态表示代码正在运行,等待所有步骤执行完成,则推理完成。
当左侧文件大纲上的所有圆圈(无论空心还是实心)都消失,表示所有步骤都执行完成。
切回到文件目录,检查当前目录(/gemini/code/)是否生成相应推理结果视频,下载并观看。
# 推理结果说明
体验1:推理结果生成在
~/runs/detect/predict/
中。
如下图所示,yolov8 识别出了所给视频中各类物品,并给出了物品名称,如视频换成交通视频,则能够识别出视频中的交通工具类别,如是自行车、摩托车、小轿车、卡车或公交车等。
体验2:推理结果生成在当前目录,以
out-原始文件名
命名。
如下图所示,yolov8 检测车辆是否进入线框区域,进入则计数,并实时反馈车辆进区域的总数。
体验3:推理结果生成在当前目录,以
out-原始文件名
命名。
如下图所示,yolov8 检测车辆是否过线,过线后则计数,in 表示车辆驶出过线数, out 表示车辆驶来过线数。
体验4:推理结果生成在当前目录,以
out-原始文件名
命名。
同体验3一样,但场景换成了车辆更多、更快、更密集的上海宜山路隧道。
# 异常处理
推理过程中报错 “out of Memory”。
可能是当前开发环境并发任务较多(多个推理同时在进行),您可选择停掉其他任务或在 开发环境实例 页更改实例规格为更大资源量的规格,如B1.large。
推理过程中报错 “yolo: not found”。 确认镜像选择正确,应为 yolov8监控交通流-体验镜像,确认方法如图。
← 成员统计 部署ChatGLM2-6B →