基于深度学习的交通流量检测系统
深度学习|人工智能|数据分析|VUE|SpringBoot
简介
项目主要分为三部分,算法、前端和后端,算法读取摄像头数据并实时处理,将处理后的结果发给后端保存,处理后的视频经流媒体发给前端显示;前端使用Vue框架,结合element-ui、Echarts实现了对人流量数据的图表分析功能。后端采用SpringBoot,实现数据的接收发送与用户权限管理。
技术栈
- 前端: vue3 + element-ui + Echarts + 高德地图api
- 后端: spring boot + mysql
- 人工智能: pytorch + yolov5 + deepsort
- 部署: docker + nginx
ps:服务器带宽有限,访问人多的话会很卡。
功能特色
- 可动态的添加删除摄像头,扩展性好;
- 可直接接入现有摄像头,无需单独安装;
- 可以以日、周、月、年为单位进行人流量分析;
- 可对用户进行权限管理,不同用户拥有不同的权限;
- 可根据摄像头位置坐标,实时查看摄像头位置;
- 人数信息实时更新;
- 多端登入,方便快捷(暂未优化手机端)。
项目运行
数据库
- 创建mysql数据库
- 根据mysql文件夹下的sql文件初始化数据
后端
- 进入Spring boot文件夹
- 修改application.yml,配置数据源和端口
- 运行入口文件:
PeopleDetectionSystemSpringBootApplication.class
前端
- 进入Vue文件夹
- 注册高德开放平台账号,申请key,填入项目index.html的16和19行。
- 修改vite.config.js文件的target为后端地址
- 修改video.vue中的流媒体服务器地址。
- 在项目目录运行命令下载并安装包文件:
cnpm install - 运行:
npm run dev
流媒体服务器
本项目采用nginx搭建流媒体服务器,需安装nginx和nginx-rtmp-module插件,建议使用 docker-nginx-rtmp,环境都集成好了,直接用就可以了。
深度学习算法
- 安装ffmpeg
- 运行环境:
- python 3.6+,pip 20+
- pytorch
- pip install -r requirements.txt
- 修改main.py中的数据上传地址和流媒体服务器地址
- 配置好环境后直接运行main.py:
python main.py
整体架构
项目截图
参考资料
资源地址
基于深度学习的交通流量检测系统