💛前情提要💛
本文是传知代码平台
中的相关前沿知识与技术的分享~
接下来我们即将进入一个全新的空间,对技术有一个全新的视角~
本文所涉及所有资源均在传知代码平台可获取
以下的内容一定会让你对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}
}
🫓总结
综上,我们基本了解了“一项全新的技术啦” 🍭 ~~
恭喜你的内功又双叒叕得到了提高!!!
感谢你们的阅读😆
后续还会继续更新💓,欢迎持续关注📌哟~
💫如果有错误❌,欢迎指正呀💫
✨如果觉得收获满满,可以点点赞👍支持一下哟~✨
【传知科技 – 了解更多新知识】