⌈ 传知代码 ⌋ 高速公路车辆速度检测软件

news2024/11/19 20:39:50

💛前情提要💛

本文是传知代码平台中的相关前沿知识与技术的分享~

接下来我们即将进入一个全新的空间,对技术有一个全新的视角~

本文所涉及所有资源均在传知代码平台可获取

以下的内容一定会让你对AI 赋能时代有一个颠覆性的认识哦!!!

以下内容干货满满,跟上步伐吧~


📌导航小助手📌

  • 💡本章重点
  • 🍞一. 概述
  • 🍞二. 演示效果
  • 🍞三. 核心逻辑
  • 🍞四. 使用方式
  • 🍞五.部署方式
  • 🫓总结


💡本章重点

  • 高速公路车辆速度检测软件

🍞一. 概述

这个项目旨在利用无人机视角监测和记录高速公路上车辆的速度和加速度,从而提供了一种有效的交通监控和数据收集解决方案。通过整合计算机视觉技术和机器学习算法,可以实现对车辆行驶情况的实时跟踪和分析。

首先,在图像上运行YOLOv8检测器来识别车辆,并利用Bytetrack跟踪器进行车辆的跟踪。跟踪结果被更新到注册模块中,用于后续的数据处理和记录。然后通SG滤波器对数据进行平滑处理,求出每隔0.1s的车辆速度加速度。最终,将跟踪到的车辆信息保存到Excel文件中,以供后续分析和使用。

总的来说,这个项目利用了先进的计算机视觉技术和机器学习算法,实现了对高速公路车辆行驶情况的实时监测和数据记录。通过无人机视角,可以获取更广阔的视野和更全面的信息,为交通管理和道路安全提供了有力的支持和帮助。


🍞二. 演示效果

在这里插入图片描述


🍞三. 核心逻辑

软件中关于各个组件及参数配置的定义,项目总共分为检测器、跟踪器和注册表三个部分,检测器把检测的结果输出给跟踪器进行跟踪,跟踪器把跟踪信息传输给注册表,再由注册表进行平滑、计算速度等后处理。可以根据自己需要调整参数。

class APP:
    def __init__(self, yolo_path, save_path, intercoord, roi):
        self.detector_opt = {'class_names': self.classes, 'n_classes': 3, 'conf_threshold': 0.05, 'iou_thresh': 0.3, 
                             'size': self.size, 'roi': roi}
        self.tracker_opt = {'track_thresh': 0.35, 'track_buffer': 15, 'match_thresh': 0.6, 'frame_rate': 30,
                    'aspect_ratio_thresh': 1.6, 'min_box_area': 10, 'mot20': False,
                    'class_names': self.classes, 'n_classes': 2, 'iou_thresh': 0.3}
        self.register_opt = {'dt': 0.1, 'fps': 30, 'x': intercoord['center_x'], 'y': intercoord['center_y'], 'rotation': intercoord['rotation'],
                             'scale': intercoord['scale'], 'roi': roi, 'save_path': save_path}
        self.detector = YOLOv8(yolo_path, self.detector_opt)
        self.tracker = MCOCSort(class_names=self.tracker_opt['class_names'],
                                det_thresh=self.tracker_opt['track_thresh'],
                                iou_thresh=self.tracker_opt['iou_thresh'],
                                max_age=self.tracker_opt['track_buffer'])
        self.register = Register(self.register_opt)

🍞四. 使用方式

  • 环境搭建
pip install -r requirements.txt
  • 下载权重文件

🍞五.部署方式

  • 开始运行软件
python main.py
  • 选择视频路径

在这里插入图片描述

  • 标注参考距离

    • 点击标定参考线,在图中标出长度,起点按住左键,光标移动到终点时,松开左键。回车进行确认。

    • 在直线真实距离一栏中填入参考线真实长度。

在这里插入图片描述

  • 标定ROI(感兴趣区域)

    • 点击标定ROI,左键确定边界点,右键取消上一个边界点,回车进行确认。

在这里插入图片描述

  • 坐标系标定

    • 填入目标坐标系在图像坐标系下的X、Y位移以及X轴转角。
  • 应用

    • 点击应用后,再点击确认按钮,检测随即开始。

!注意:软件会进行两次检测,第二次检测主要是进行平滑处理和重识别。

参考文献

@article{yolov8,  
  title={YOLOv8: Ultralytics Real-time Object Detection with YOLOv8},  
  author={Jocher, Glenn},
  year={2023},  
  url={https://github.com/ultralytics/ultralytics} 
}

@article{zhang2022bytetrack,
  title={ByteTrack: Multi-Object Tracking by Associating Every Detection Box},
  author={Zhang, Yifu and Sun, Peize and Jiang, Yi and Yu, Dongdong and Weng, Fucheng and Yuan, Zehuan and Luo, Ping and Liu, Wenyu and Wang, Xinggang},
  booktitle={Proceedings of the European Conference on Computer Vision (ECCV)},
  year={2022}
}

🫓总结

综上,我们基本了解了“一项全新的技术啦” 🍭 ~~

恭喜你的内功又双叒叕得到了提高!!!

感谢你们的阅读😆

后续还会继续更新💓,欢迎持续关注📌哟~

💫如果有错误❌,欢迎指正呀💫

✨如果觉得收获满满,可以点点赞👍支持一下哟~✨

【传知科技 – 了解更多新知识】

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++学习/复习8--STL简介/六大组件/缺陷

一、STL简介 二、六大组件 三、面试题 四、STL缺陷

实现按块复制元素的进阶技巧

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、按块复制元素的重要性 二、使用LED模块创建数组并复制 三、实现按块复制的具体步骤 四…

粤嵌—2024/5/28—最大正方形(✔)

代码实现&#xff1a; 方法一&#xff1a;模拟——超时 int maximalSquare(char **matrix, int matrixSize, int *matrixColSize) {int maxSide 0;if (matrix NULL || matrixColSize NULL || matrixSize < 0 || matrixColSize[0] < 0) {return 0;}for (int i 0; i &l…

Cesium For Unity 在Unity中无法下载的问题

Unity 下载失败&#xff0c;提供百度网盘“com.cesium.unity-1.10.0.tgz”下载链接 链接&#xff1a;https://pan.baidu.com/s/1PybXQ8EvkRofOKD6rSN66g?pwd1234 提取码&#xff1a;1234 导入方法&#xff1a; 1.打开PackageManager;Window-PackageManager 2.在PackageMan…

Golang | Leetcode Golang题解之第104题二叉树的最大深度

题目&#xff1a; 题解&#xff1a; func maxDepth(root *TreeNode) int {if root nil {return 0}queue : []*TreeNode{}queue append(queue, root)ans : 0for len(queue) > 0 {sz : len(queue)for sz > 0 {node : queue[0]queue queue[1:]if node.Left ! nil {queue…

酒店报修进入智能时代:无纸化系统的全面革新

在这个信息爆炸的时代&#xff0c;面对酒店的设备故障你还在用纸质工单来报修吗&#xff1f;那简直像是石器时代的遗风&#xff01;一场酒店服务的革命性变革正在悄然兴起&#xff0c;它将彻底颠覆你对传统报修方式的认知。想象一下&#xff0c;当客人在房间遇到水龙头漏水&…

使用大模型LLM实现销售AI

想象一个场景&#xff0c;客户通过聊天窗口咨询一款产品。销售AI首先使用LLM解析客户的问题&#xff0c;然后通过智能代理查询数据库获取产品详细信息&#xff0c;并以自然而友好的方式回应客户。 在对话过程中&#xff0c;AI可以评估客户的兴趣&#xff0c;并主动提供促销信息…

太极图形学——渲染——光线追踪概念部分

程序动画和渲染 程序动画和渲染有一些类似的地方&#xff0c;都是找到合适的像素并填上颜色&#xff0c;但是要把一个图片渲染的好看是有一些规则来指导的 光线追踪包含哪些呢 果壳中的光线追踪器 实时条件下的光线追踪&#xff1a;需要进行光栅化的处理 离线条件下做cg的话…

Hololens 2 新建自定义按钮

官方链接地址 1、创建Cube 2、添加PressableButton脚本&#xff0c;并点击AddNearin… 3、把Cube拖入到MovingButtonVisuals变量中 4、点击NearInteractionTouchable组件&#xff08;这个组件是添加和上一个脚本绑定的&#xff0c;自动添加上来的&#xff09;上的Fix… 5、…

探索无限乐趣,尽在淘宝扭蛋机小程序

随着科技的快速发展和人们消费习惯的不断改变&#xff0c;小程序已经成为我们日常生活中不可或缺的一部分。为了满足广大用户对新鲜、有趣、互动性强的购物体验的追求&#xff0c;淘宝特别推出了全新的扭蛋机小程序&#xff0c;让您在购物的同时&#xff0c;也能享受到扭蛋带来…

4步成功将三方库——speexdsp移植到OpenHarmony

四步实现三方库移植&#xff1a; 1、在Linux下编译要移植的三仓库&#xff0c;分析编译过程&#xff1b; 2、将要移植的三方库加入编译框架中以及产品引用&#xff1b; 3、增量编译出动态链接库和可执行文件推送到开发板上&#xff1b; 4、在开发板上验证移植是否成功、API接口…

【qt】QTableWidget 表格组件

QTableWidget 表格组件 一.应用场景二.初始化表格1.界面拖放2.设置列数3.表头的处理①&#xff1a;表头装的是啥②&#xff1a;设置为标头③&#xff1a;设置列宽的模式 4.设置行数5.添加每个单元格①&#xff1a;设置单元格信息②&#xff1a;添加单元格③&#xff1a;单元格附…

P148--章节作业1

编辑 编辑 public class Main {public static void main(String args[]){double yxq100000;int cishu0;while(true) {if(yxq > 50000) {yxq yxq - yxq * 0.05;cishucishu1;}else if(yxq > 1000){yxq yxq - 1000;cishucishu1;}else{break;}}System.out.print(cishu);} …

安装部署统信UOS服务器操作系统1070e

原文链接&#xff1a;安装部署统信UOS服务器操作系统1070e Hello&#xff0c;大家好啊&#xff01;今天给大家带来一篇关于安装部署统信UOS服务器操作系统1070e的文章。统信UOS是一款基于Linux的国产操作系统&#xff0c;以其安全性和稳定性受到广泛关注。本文将详细介绍如何安…

Android 11 Audio音频系统配置文件解析

在AudioPolicyService的启动过程中&#xff0c;会去创建AudioPolicyManager对象&#xff0c;进而去解析配置文件 //frameworks/av/services/audiopolicy/managerdefault/AudioPolicyManager.cpp AudioPolicyManager::AudioPolicyManager(AudioPolicyClientInterface *clientIn…

Java常用工具类、包装类

1、工具类的设计 一般地&#xff0c;把那些完成通用功能的方法分类存放到类中&#xff0c;这些类就叫工具类。 工具类起名&#xff1a;XxxUtil、XxxUtils、XxxTool、XxxTools等&#xff0c;其中Xxx表示一类事物&#xff0c;比如ArrayUtil、StringUtil、JdbcUtil。 工具类存放的…

亚马逊云科技峰会福利来啦

2024 亚马逊云科技中国峰会&#xff0c;挑战俱乐部 Hands On 动手实验课程正在直播中&#xff0c;点击链接畅享生成式AI建构之旅&#xff0c;赢心动好礼 &#xff08;直播链接Link&#xff09; 只看不过瘾&#xff1f;别急&#xff01;我们为您准备了【生成式AI助手 Amazon Q 初…

JeeSite 4.x and 5.x快速开发平台前端技术探索与实践

一、引言 随着企业信息化建设的不断推进&#xff0c;对于快速、高效、安全的企业级应用需求日益增长。JeeSite作为一款企业级快速开发平台&#xff0c;以其强大的后端功能和灵活的前端架构&#xff0c;为开发者提供了强大的支持。本文旨在探讨JeeSite快速开发平台在前端技术方…

File类.Java

一、File类 1&#xff0c;概述&#x1f3c0;&#x1f3c0;&#x1f3c0; &#xff08;1&#xff09; java.io.File类&#xff1a;文件和文件目录路径的抽象表示形式&#xff0c;与平台无关 &#xff08;2&#xff09; File类中涉及到关于文件或文件目录的创建、删除、重命…

vue 表格 随手笔记

对表格中单元格回显 做循环 <template slot-scope"scope"> <el-table-column label"责任网格类型" align"center"><template slot-scope"scope"><div v-for"(item, index ) in gridDutyTypeList">&…