基于服务器本地地图的园区视频监控 web 系统

作者头像
首页 🔖实用软件 正文

主要功能截图

17f4c51d241274e44009fc88a1aee230_20250601212352754-640-1024x495.webp

针对传统园区视频监控系统面临的问题,通过参考目前业界的主流技术方向和最佳实践,本文设计并开发实现了一套基于服务器本地地图和深度学习技术的智能园区视频监控系统。

83ae4dae4bf916621e90bbc1d6b2a685_20250601212446143-640-1-1024x516.webp

本系统实现了地图瓦片数据和自定义园区地图的服务器本地保存、加载和渲染,多摄像头直播画面的播放,多摄像头基于其园区地理位置的管理,基于实时监控画面对异常事件的检测报警和管理,异常事件报警的触发规则的定义和管理以及系统角色权限的管理,并完成了系统测试。

2515e07879cebe8df0108585a2fa3bc9_20250601212543450-640-2.webp

智慧园区视频监控 Web 系统是一个功能完整、架构领先的开源项目,其核心架构划分为前端、后端、监控算法端、RTMP 媒体服务器和地图瓦片服务器五大部分,以下为详细介绍:

一、前端

前端部分负责用户界面的展示和交互,用户可以通过浏览器访问系统,实时查看监控画面、管理摄像头、设置报警规则等。前端界面设计直观易用,方便用户快速上手。

二、后端

后端部分是系统的核心处理层,负责处理前端请求、管理摄像头设备、存储监控数据、实现用户认证和权限控制等功能。后端采用高效的编程语言和框架开发,确保系统的稳定性和高性能。

三、监控算法端

监控算法端集成了先进的人工智能算法,用于实时分析监控画面,自动识别异常事件,如人员入侵、越界、摔倒等。算法端能够实时触发报警机制,通知相关人员及时处理,大大提高了监控系统的智能化水平和响应速度。

四、RTMP 媒体服务器

RTMP 媒体服务器负责实时视频流的传输和分发。它支持多种视频流传输协议,确保视频画面能够流畅、稳定地传输到前端界面,供用户实时查看。同时,媒体服务器还支持视频流的录制和存储,方便用户后续查看和分析。

五、地图瓦片服务器

地图瓦片服务器负责提供园区地图的瓦片数据,支持在前端界面上直观展示摄像头的分布和地理位置信息。用户可以通过地图界面快速定位到特定摄像头,调取相关监控画面,提高了监控管理的便捷性。

部署

前后端和 RTMP 服务器统一打包构建为 Docker Image:crazyher/campus-surveillance-system

 
 
 
docker run -p 8080:80 \
-p 1515:1515 \
-e MYSQL_HOST=172.17.0.1 \
-e MYSQL_PORT=3306 \
-e MYSQL_DATABASE=campus-surveillance-system \
-e MYSQL_USER=root \
-e MYSQL_PASSWORD=root \
-e JWT_SECRET=secret \
--name campus-surveillance-system \
-d crazyher/campus-surveillance-system:latest

其中容器内 80 端口是 HTTP 服务,1515 是 RTMP 服务

监控算法端单独打包构建为 Docke Image:crazyher/campus-surveillance-ai-end

 
 
 
docker run -e HTTP_SERVER_URL="http://172.17.0.1" \
-e RTMP_SERVER_URL="rtmp://172.17.0.1:1515/live" \
-e ADMIN_USERNAME="admin" \
-e ADMIN_PASSWORD="admin" \
--name campus-surveillance-ai-end \
-d crazyher/campus-surveillance-ai-end:latest

前端

前端页面采用 React 技术栈编写,并嵌入 leaflet 地图渲染引擎以加载自定义图层。监控视频的实时流播放采用 HLS 协议。其中的 HLS 播放器使用 hls.js。

后端

后端使用 Typescript 语言并基于 Node.js 的 Nest 框架编写,主要负责处理业务逻辑,包括保存自定义园区地图数据、数据库 IO、提供前端管理操作的接口和监控算法端的事件上报接口。通过与监控算法端的解耦,以避免 AI 算法影响后端性能和稳定性。

监控算法端

监控算法端使用 Python 编写,主要任务是拉取监控摄像头提供的 RTSP/RTMP 流,以 RTMP 的格式推给本系统的 RTMP 服务器,同时对流画面基于深度学习算法进行实时检测。

摄像头配置的获取和异常事件的上报通过与后端 Websocket 实时通信完成。

基本流程:

  1. 与后端建立 WS 连接
  2. 后端验证管理员账号密码,鉴权通过后由后端下发摄像头配置规则和拉流地址
  3. 为每一个摄像头创建工作进程,在其中:
    • 启动子线程执行 ffmpeg 把摄像头原始拉流地址推流给 RTMP 服务器
    • 对原始拉流地址基于配置的报警规则做实时目标检测。

下载地址:

夸克网盘
本站资源仅供学习交流使用请勿商业运营,严禁使用模板&源码从事违法,侵权等非法活动!如链接失效内容有误,请到评论反馈。

免费声明

  1. 本网站的文章内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长QQ:304906607进行删除处理。
  2. 文章采用: 《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)。
  3. 本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
  4. 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
  5. 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
  6. 本站永久网址:https://www.aybk.cn
Sngine 4.0.4海外社交平台PHP源码,多语言支持短视频和博客订阅等等【参考推特】
« 上一篇 06-02
听佛经5.1版本
下一篇 » 06-02

发表评论

请先登录后才能发表评论

没有更多评论了

个人信息

HI好朋友 ! 请登录
开通会员,享受下载全站资源特权。
百度一下

随便看看

大家都在看

2025年 乙巳年 蛇年
13 : 36 : 00
公历日期
9月26日
农历日期
八月初五
星期
星期五
下午好
金秋时节,愿您收获满满
距离国庆节还有5天
登陆
还没有账号?立即注册
点击按钮进行验证
忘记密码?
登陆
忘记密码
已经有账号?马上登陆
获取验证码
重新获取(60s)
点击按钮进行验证
重置密码
注册
已经有账号?马上登陆
获取验证码
重新获取(60s)
点击按钮进行验证
立即注册