yolov8目标检测与速度估计

我们可能都见过限速路牌。我们中的一些人甚至可能收到过通过邮寄或电子邮件发送的自动限速违规通知。人工智能(AI)交通管理系统可以利用计算机视觉技术自动标记超速违规行为。路灯和高速公路上的摄像头拍摄的实时画面可用于估算车速和加强道路安全。

在这里插入图片描述

车速估算让交通管理更轻松

据世界卫生组织(WHO)统计,每年约有119 万人因超速行驶而死于道路交通事故。此外,还有 2,000 万至 5,000 万人受到非致命伤害,其中许多人因此致残。交通安全的重要性怎么强调都不为过,尤其是当车速估算有助于预防事故、挽救生命并保持道路安全和高效时。

利用计算机视觉进行速度估算涉及[检测]视频帧中的物体,以计算它们的移动速度。YOLOv8 等算法可以识别和跟踪连续帧中的物体,如车辆。该系统使用校准过的摄像头或参考点来测量这些物体在现实世界中的移动距离。通过计算物体在两点之间移动所需的时间,系统可以利用距离-时间比计算出物体的速度。

在这里插入图片描述

除了抓超速者,集成了人工智能的速度估算系统还能收集数据,对交通进行预测。这些预测可以支持交通管理任务,如优化信号灯时间和资源分配。对交通模式和拥堵原因的洞察可用于规划新道路,以减少交通拥堵。

速度估算在其他行业的应用

速度估算的应用不仅限于监控道路。它还可用于监控运动员的表现、帮助自动驾驶汽车了解周围物体的移动速度、检测可疑行为等。在任何可以使用摄像头测量物体速度的地方,都可以使用计算机视觉进行速度估算。

以下是一些使用速度估算的例子:

  • 特斯拉自动驾驶汽车使用基于视觉的速度估计来避免碰撞。
  • 2024 年奥运会将使用计算机视觉和速度估算技术来改进田径项目的成绩分析。
  • 智能城市正在研究行人步态分析,以监测步行速度,提高城市流动性和安全性。这些系统可以提醒司机注意行人的存在,防止事故发生。
  • 动物行为监测系统利用速度估算来跟踪动物的运动,并检测动物的痛苦或生病迹象。

使用计算机视觉估算速度的好处

基于视觉的速度估算系统因其更高的准确性、成本效益和灵活性,正在取代传统的基于传感器的方法。与依赖激光雷达等昂贵传感器的系统不同,计算机视觉系统使用标准摄像头实时监控和分析速度。用于速度估算的计算机视觉解决方案可与现有交通基础设施无缝集成。此外,这些系统还可以执行许多复杂的任务,如车辆类型识别和交通模式分析,以改善整体交通流量和安全性。

自己试试速度估算YOLOv8

既然我们已经清楚地了解了速度估算及其应用,那么让我们来仔细看看如何通过代码将速度估算集成到计算机视觉项目中。我们将使用YOLOv8 模型检测移动车辆并估算其速度。

本示例使用了一段从互联网上下载的汽车行驶在道路上的视频。您可以使用相同的视频或任何相关视频。YOLOv8 模型可识别每辆车的中心点,并根据该中心点穿过视频帧中水平线的速度计算其速度。

在这里插入图片描述

图 3.输入道路上的汽车视频

在我们开始之前,需要注意的是,在这种情况下,距离计算是基于欧氏距离的近似计算。相机校准没有考虑在内,因此速度估计可能不完全准确。此外,估算的速度可能会因GPU的速度而异。

**步骤 1:**首先安装Ultralytics 软件包。打开命令提示符或终端,运行下图所示命令。

**步骤 2:**接下来,我们将导入所需的库。OpenCV 库将帮助我们处理视频。


import cv2
from ultralytics import YOLO, solutions

**步骤 3:**然后,我们可以加载YOLOv8 模型,并检索该模型可以检测到的类的名称。


model = YOLO("yolov8n.pt")
names = model.model.names

**步骤 4:**在这一步中,我们将使用 OpenCV 的 VideoCapture 模块打开输入视频文件。我们还将提取视频的宽度、高度和每秒帧数(fps)。


cap = cv2.VideoCapture("path/to/video/file.mp4")
assert cap.isOpened(), "Error reading video file"
w, h, fps = (int(cap.get(x)) for x in (
cv2.CAP_PROP_FRAME_WIDTH, 
cv2.CAP_PROP_FRAME_HEIGHT, 
cv2.CAP_PROP_FPS))

**步骤 5:**在此,我们将初始化视频写入器,以保存速度估算的最终结果。输出视频文件将保存为 “speed_estimation.avi”。


video_writer = cv2.VideoWriter(
"speed_estimation.avi",
cv2.VideoWriter_fourcc(*"mp4v"),
fps, (w, h))

‍步骤**7:**接下来,我们可以定义用于速度估算的线点。对于我们的输入视频,这条线将水平放置在帧的中间。您可以根据输入视频的情况,随意调整数值,将线条放置在最合适的位置。


line_pts = [(0, 360), (1280, 360)]

**步骤 8:**最后,我们释放视频捕获和写入对象,并关闭所有 OpenCV 窗口。


cap.release()
video_writer.release()
cv2.destroyAllWindows()

**步骤 10:**保存脚本。如果您在终端或命令提示符下工作,请使用以下命令运行脚本:


python your_script_name.py

如果代码执行成功,输出的视频文件将如下所示。

在这里插入图片描述

图 4.使用YOLOv8 估算速度的输出结果。

基于视觉的速度估计所面临的挑战

同样重要的是,要了解利用计算机视觉实现速度估算所面临的挑战。雨、雾或雪等不利天气条件会阻碍道路视线,从而给系统带来问题。同样,其他车辆或物体造成的遮挡也会使这些系统难以准确跟踪和估计目标车辆的速度。光照条件差会造成阴影或阳光刺眼,这也会使速度估算工作变得更加复杂。

另一个挑战与[计算能力]有关。为了实时估算车速,我们必须处理来自高质量交通摄像头的大量可视数据。您的解决方案可能需要昂贵的硬件来处理所有这些数据,并确保一切都能快速运行,不会出现延误。

此外,还有隐私问题。这些系统收集的数据可能包括个人车辆的详细信息,如品牌、型号和车牌信息,而这些信息是在未经个人同意的情况下收集的。一些现代高清摄像头甚至可以捕捉到车内人员的图像。此类数据收集可能会引发严重的伦理和法律问题,需要极其谨慎地处理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/403971.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

博世(BOSCH)× Milvus:智能驾驶领域的数据挖掘革新

01.博世智能驾控:智能驾驶技术的领航者 博世(BOSCH)智能驾控是全球汽车技术领域的领导者,以其在自动驾驶技术上的创新和深厚历史而闻名。博世的自动驾驶解决方案,包括先进的驾驶辅助系统(ADAS)…

【数据结构与算法】归并排序

归并排序目录 一.归并排序的原理二.有序的归并实现三.无序的归并实现(分治法)四.归并排序的实现五.完整代码 一.归并排序的原理 如何将这两个数组排序? 二.有序的归并实现 将一个数组分为两段,那边的值小就加入到新数组中,直到一边已经加完了. 有一种情况就是一边已经加入…

骑行耳机哪个牌子好用?选购骑行耳机需要注意的五大选购陷阱!

作为一名有着多年骑行经验的专业评测师,对骑行装备已经有着超过五年的研究,骑行耳机也不例外,期间也是亲身测试了数十款骨传导耳机,可以说骑行耳机是专为骑行爱好者设计的,不需要入耳佩戴,而且佩戴舒服&…

基于云快充协议1.5-1.6版本的充电桩系统软件-充电桩系统 -新能源车充电平台源码

介绍 SpringBoot 框架,充电桩平台充电桩系统充电平台充电桩互联互通协议云快充协议1.5-1.6协议新能源汽车二轮车公交车二轮车充电-四轮车充电充电源代码充电平台源码Java源码 充电桩平台充电桩系统充电桩小程序充电桩管理系统充电桩项目充电桩协议充电桩微信小程序S…

鸿蒙开发入门day10-组件导航

(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,还请三连支持一波哇ヾ(@^∇^@)ノ) 目录 组件导航 (Navigation) 设置页面显示模式 设置标题栏模式 设置菜…

整数分解5.3.2

题 前面写过逆序的 最后一个数后面不要有空格 #include <stdio.h>int main() {int x;scanf("%d",&x);int d;do{dx%10;printf("%d",d);if(x>10){printf(" ");}x/10;}while(x>0);printf("\n");return 0; } 现在这个是…

Linux网络:基于OS的网络架构

Linux网络&#xff1a;OS视角下的网络架构 网络分层模型OSI 七层模型TCP/IP 五层模型 协议操作系统与网络网络相关命令ifconfigpingnetstat 本博客将基于操作系统&#xff0c;讲解计算机网络的设计理念&#xff0c;帮助大家理解操作系统与网络之间的关系。 网络分层模型 网络…

Positional Encoding | 位置编码【详解】

文章目录 1、位置编码的2种方案2、位置编码3、公式详解 &#xff1a; 绝对位置 、 相对位置4、代码4.1 代码14.2 代码2 1、位置编码的2种方案 transformer的作者刚开始说固定的位置编码和可学习的位置编码的效果是差不多的&#xff0c;后来证明可学习的位置编码没有太大的必要&…

系统工程与信息系统(上)

系统工程 概念 【系统工程】是一种组织管理技术。 【系统工程】是为了最好的实现系统的目的&#xff0c;对系统的组成要素、组织结构、信息流、控制机构进行分析研究的科学方法。 【系统工程】从整体出发、从系统观念出发&#xff0c;以求【整体最优】 【系统工程】利用计算机…

Oracle 12.2集群搭建遇到ORA-ORA-15227,ORA-15031,ORA-15018问题处理

报错&#xff1a; [FATAL] [DBT-30056] Labeling of disks failed. ORA-15227: could not perform label set/clear operation ORA-15031: disk specification /dev/asmdisk/ocr01 matches no disks [FATAL] [DBT-30002] Disk group OCR creation failed. ORA-15018: diskgrou…

(javaweb)SpringBootWeb案例(毕业设计)案例--部门管理

目录 1.准备工作 2.部门管理--查询功能 3.前后端联调 3.部门管理--新增功能 1.准备工作 mapper数据访问层相当于dao层 根据页面原型和需求分析出接口文档--前后端必须遵循这种规范 大部分情况下 接口文档由后端人员来编写 前后端进行交互基于restful风格接口 http的请求方式…

K8s部署安装

一.K8s简介 Kubernetes&#xff08;通常缩写为K8s&#xff09;是一个开源的容器编排平台&#xff0c;用于自动化容器化应用的部署、扩展和管理。它最初由Google开发&#xff0c;现在由云原生计算基金会&#xff08;CNCF&#xff09;维护。Kubernetes 的核心目标是提供一个一致…

奇迹世界2单机版安装教程+GM工具+无虚拟机

今天给大家带来一款单机游戏的架设&#xff1a;奇迹世界2单机版。 另外&#xff1a;本人承接各种游戏架设&#xff08;单机联网&#xff09; 本人为了学习和研究软件内含的设计思想和原理&#xff0c;带了架设教程仅供娱乐。 教程是本人亲自搭建成功的&#xff0c;绝对是完整…

中职物联网实训室

一、中职物联网实训室建设背景 在当今科技日新月异的浪潮中&#xff0c;物联网技术以其迅猛的发展势头&#xff0c;成为了撬动数字化转型的关键杠杆&#xff0c;深刻地重塑着经济社会的面貌。面对这一变革&#xff0c;社会对精通物联网技术的应用型人才需求激增。鉴于此&#x…

Linux-DNS域名解析服务

系列文章目录 提示&#xff1a;仅用于个人学习&#xff0c;进行查漏补缺使用。 1.Linux网络设置 2.LinuxDHCP服务 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 系列文章目录前言提示&#xff1a;以下是本篇文章…

职业教育嵌入式实验室|嵌入式系统实验室|嵌入式实训室建设方案

一、建设背景 在数字化浪潮的推动下&#xff0c;我们已迈入一个以信息技术为主导的崭新时代。在这个时代&#xff0c;嵌入式系统不仅是智能设备和应用的核心&#xff0c;更是推动各行各业创新和变革的关键力量。无论是智能家居的便捷生活体验&#xff0c;工业控制的精确操作&a…

Kafka运行机制(一):Kafka集群启动,controller选举,生产消费流程

前置知识 Kafka基本概念https://blog.csdn.net/dxh9231028/article/details/141270920?spm1001.2014.3001.5501 1. Kafka集群启动 Kafka在启动集群中的各个broker时&#xff0c;broker会向controller注册自己&#xff0c;并且从controller节点同步集群元数据。 broker是Kaf…

《深入浅出多模态》(九)多模态经典模型:MiniGPT-v2、MiniGPT5

🎉AI学习星球推荐: GoAI的学习社区 知识星球是一个致力于提供《机器学习 | 深度学习 | CV | NLP | 大模型 | 多模态 | AIGC 》各个最新AI方向综述、论文等成体系的学习资料,配有全面而有深度的专栏内容,包括不限于 前沿论文解读、资料共享、行业最新动态以、实践教程、求职…

数字化转型对金融服务业的影响

数字化转型正在塑造每个行业&#xff0c;从快速消费品到金融&#xff0c;每个行业都受到新兴技术的影响。 那么&#xff0c;数字化转型在金融服务中扮演什么角色&#xff1f;这对招聘前景有何影响&#xff1f; 我们探讨了数字化转型对该行业的影响、其对招聘策略的影响、数据…