✨基于YOLOv8🚀的多端车流检测系统-MTAS (Multi-Platform Traffic Analysis System)
一、基本功能介绍
👉系统可大体分为两大模块(客户端、网页端)
👉演示视频:
1、客户端 (pyside6+yolov8+pytorch)
- 可接受
多方视频数据流
进行车流分析(调用RTSP摄像头、本地摄像头、上传本地视频)- **可对车辆进行
单目追踪
**🚖- 可
动态调节检测参数
(交互比、置信度、延时、报警阈值)- 检测的视频和数据可
保存在本地
2、网页端(Vue3+Typestript+Python3+MySQL)
- 多模式分析(用户上传+摄像头拍摄)
- 数据保存在数据库中(用户数据+检测数据)
- 可查看触发的警报记录🔔
- 响应式
3、创新点(毕设需要)
- 结合了客户端+网页端(可多端操作)
- 可动态调整检测参数(交互比、置信度、延时、报警阈值)
- 可检测出是否超出车流阈值(可对接报警模块)
- 检测可通过多种方式进行(视频流 / 照片)
- 系统等数据可进行保存(本地文件 / 数据库)
- 可视化车流(光流绘制)显示、可进行单目追踪、多目标跟踪(使用集成在yolov8中的bytetrack)
- 车流量可数据可视化(动态显示车流量)
4、项目包(前端-游客端)
MTAS-guest.zip - 蓝奏云文件大小:8.2 M|
https://wwwf.lanzout.com/iyzac14rlzed
5、项目包(前端-管理端)
MTSP-admin.zip - 蓝奏云文件大小:8.1 M|
https://wwwf.lanzout.com/ijbf014rlzva
6、项目包(客户端+后端)
MTSP-main.zip - 蓝奏云文件大小:16.9 M|
https://wwwf.lanzout.com/iAFRb14rm0kf
二、客户端环境配置⚒️
第一步 配置python环境🚀
- 下载python(版本:python>=3.8)(建议使用访问Anaconda官网配置虚拟环境,具体步骤如下)
- 1)访问Anaconda官网:Free Download | Anaconda
- 2)选择相应的操作系统版本并下载对应的安装包(推荐下载64位版本)
- 3)打开下载的安装包,按照提示进行安装即可
- 4)创建一个虚拟环境:
conda create --name 自命名 python=3.9.16
第二步 下载库🚀
注意:下载库前,如果想要更好的帧数体验请安装cuda版本哦
(因为一般默认会安装cpu的版本)
- pip换源:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
- 切换到项目文件夹下,下载依赖:
pip install -r requirements.txt
- 我自己使用的环境:
python3.9+CPU
第三步 运行项目(如果不需要(开启网页端) 或 (对接RTSP))
- 可直接运行项目:python main.py
🚀如果需要使用RTSP:
- 推荐手机安装app——
IP摄像头
如果要用电脑进行推流,可以采用zlm
🚀如果需要使用网页端:
- 可参考下面的配置说明
注意
环境配置好后,如果无法正常启动,请用debug开启
ps:具体原因,俺也不知道为什么,有大佬知道的,可以留个言(感谢)
网页端(为响应式的),需要修改方面说明之类的,后面再说吧~
🚀配置后端(如果你需要使用网页端的话):
1、导入数据表
2、修改配置文件
3、启动后端
python app.py
🔔 注意:配置文件都在config文件夹下啦
config.txt里面的注释是config.json的(因为json文件不能写注释)
这里也算是踩坑点,下次使用env或者yaml作为项目的配置文件格式!
- config.json:
{
“iou”: 0.35, // 交互比
“conf”: 0.59, // 置信度
“rate”: 0.01, // 延时
“save_res”: true, // 是否保存 结果
“save_txt”: true, // 是否保存 标签
“save_res_path”: “pre_result”, // 保存路径
“save_txt_path”: “pre_labels”, // 保存路径
“models_path”: “models”, // 模型存放路径
“open_fold”: “D:/”, // 打开文件夹路径
“show_trace”: false, // 是否显示轨迹
“show_labels”: true, // 是否显示标签
“rtsp_ip”: “rtsp://127.0.0.1:554/live/test”, // RTSP路径
“car_id”: “1”, // 追踪 id
“car_threshold”: 8 // 车辆阈值
}
- endback.env:
#---------------------------------------------------服务器配置
HOST_NAME=127.0.0.1 # 主机名
PORT=5500 # HTTP服务端口
TOLERANT_TIME_ERROR=60 # 调用接口时附带的时间戳参数与服务器时间之间的最大允许误差(单位:s)BEFORE_IMG_PATH=before_img # 图片存储命名 ※※※
AFTER_IMG_PATH=after_img#---------------------------------------------------数据库配置
MYSQL_HOST=127.0.0.1 # SQL主机
MYSQL_PORT=3306 # 连接端口
MYSQL_user=root # 用户名
MYSQL_password=123456 # 密码
MYSQL_db=yolo # 数据库名
MYSQL_charset=utf8 # utf8
三、配置前端环境(使用网页端)⚒️
🚀第一步 配置npm与下载依赖
- 下载node.js(我使用的是v16.16.0版本的)
- **注意:如果后面前端无法正常发出请求,那么可能是版本问题,可以尝试换成和我一样的版本,尤其是v18.0.0以上node,**容易出现这种问题
- npm换源:
npm config set registry https://registry.npm.taobao.org
- 切换到项目文件夹下,下载依赖:
npm install
🚀第二步 运行前端
npm run dev
🔔 注意:两个前端都是这样启动的哟~
四、使用开源项目+自定义功能借鉴📚+关于项目的问题
1、开源项目
💎客户端:https://github.com/CatfishW/MOT & https://github.com/Jai-wei/YOLOv8-PySide6-GUI
💎前后端:https://github.com/Dovahkiin-Ming/Personnel-Flow-Monitoring-System-based-on-YoloV5
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Python开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注Python)
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。
四、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
五、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
)
六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-bMWsSAYy-1712792780973)]