“一个好的 README,不是告诉你‘代码怎么运行’,而是告诉你‘为什么这样设计’。”
—— 徐策“如果 README 不能让人 5 分钟内理解系统核心,那它就是失败的。”
—— 夏驰
PedestrianBackendWeb 是毕业设计《基于深度学习的道路行人检测系统的设计与实现》的子系统之一,作为市级后端管理平台,承担以下核心职责:
- 对接市区所有部署的行人检测设备
- 支持设备视频实时接入与参数远程调控
- 提供管理员(交警端)与市民(用户端)分权限访问界面
- 支持报警记录查询、急救联动、违章记录管理与罚款缴纳
- 为后续高并发通信、AI 智能分析、车牌扣分等功能预留接口
PedestrianBackendWeb/
│── manage.py # Django 项目启动入口
│
├── pedestrian_backend/ # 🔧 主配置目录
│ ├── settings.py # 配置文件(数据库 / 中间件 / 静态文件等)
│ ├── urls.py # 总路由入口
│ └── wsgi.py # 部署入口
│
├── admin_portal/ # 🛂 管理员模块(交警后台)
│ ├── views.py # 后台视图逻辑
│ ├── urls.py # 后台路由
│ └── templates/admin/ # 后台 HTML 页面模板
│
├── citizen_portal/ # 👨👩👧👦 市民模块(用户端)
│ ├── views.py # 用户端视图逻辑
│ ├── urls.py # 用户路由
│ └── templates/citizen/ # 用户界面模板
│
├── dashboard/ # 📊 数据可视化模块
│ ├── charts.py # 报警趋势图 / 流量统计图
│ └── utils.py # 数据聚合、图表封装
│
├── video_stream/ # 🎥 视频流模块
│ ├── rtmp_handler.py # 设备 RTMP 视频接入逻辑
│ └── views.py # 视频视图函数(切换、播放)
│
├── alerts/ # 🚨 报警记录与急救响应模块
│ ├── models.py # 报警数据结构
│ ├── views.py # 报警展示与筛选
│ └── emergency_call.py # 急救模拟拨打模块(110/120)
│
├── violations/ # ⚖️ 违章处理模块
│ ├── models.py # 违章记录、扣分、罚款信息结构
│ ├── views.py # 用户罚款查询与缴费视图
│ └── payment_gateway.py # 支付接口逻辑(预留)
│
├── websocket_api/ (预留) # 🌐 WebSocket 实时通信模块
│ ├── consumers.py # 消息推送消费者
│ └── routing.py # 路由配置
│
├── ai_assistant/ (预留) # 🧠 智能助手模块(OpenAI / LangChain)
│ ├── agent.py # 问答引擎逻辑
│ └── langchain_integration.py # AI 问答接入
│
├── static/ # 🌈 静态资源(CSS / JS / 图片)
├── media/ # 🖼️ 上传媒体资源(用户头像 / 违章证据)
│
├── docs/ # 📖 文档目录(可拓展为 API 文档、设计图)
│ ├── README.md # 当前文档说明
│ ├── architecture.md # 系统架构设计图
│ └── database.md # 数据模型结构说明
│
└── requirements.txt # 🔗 Python 依赖文件
## 📌 功能说明
### ✅ 管理员后台(交警端)
- 👁️🗨️ **设备状态监控**:显示所有路口设备的在线状态、异常状态
- 📈 **数据趋势图表**:查看报警记录趋势、流量分布等可视化图表
- 🎥 **实时视频流切换**:任意选择路口设备的视频流进行查看
- ⚙️ **检测参数远程调节**:支持灵敏度、置信度、预警阈值调节
- 🚨 **报警记录管理**:查看报警历史、响应时间、处理状态
- 🧑⚖️ **违章管理中心**:处理车辆违章、扣分与处罚流程
---
### ✅ 市民用户端(用户)
- 📃 **我的罚单**:查看本人车辆的违章记录、罚款详情
- 💳 **在线缴费**:微信/支付宝/银行卡缴纳罚款(可接第三方接口)
- 🕵️ **违章申诉**:上传证据、提交解释(预留功能)
- 📊 **处罚历史统计**:查看近一年违章频率与行为类型统计
---
### ✅ 碰撞报警与联动急救
- 🚑 **碰撞触发上传报警**:行人检测模块触发碰撞事件后,立即上传报警
- 📍 **定位联动急救**:自动定位设备坐标并模拟拨打 110 / 120
- 🗃️ **事件记录归档**:生成日志、记录响应时间与处理状态
---
### ✅ 未来拓展功能(模块已预留)
| 模块名称 | 功能描述 |
|----------------------|------------------------------------------|
| WebSocket 实时通信 | 实现平台与设备的双向通信 |
| AI 智能助手 | 自动分析报警日志、辅助调度决策 |
| 车牌识别与扣分 | 检测车辆信息并对接公安系统 |
| 小程序 / APP | 提供市民移动端服务入口(扫码查看罚单等) |
---
## 📌 技术栈
| 类型 | 技术名称 |
|--------------|---------------------------------|
| 后端框架 | Django 4.x |
| 数据库 | SQLite / MySQL |
| 视频流接入 | RTMP / OpenCV(可拓展 WebRTC) |
| 图表绘制 | Matplotlib / Plotly |
| 支付接口 | 第三方支付 API(预留) |
| 实时通信 | Django Channels(预留) |
| 智能助手 | OpenAI / LangChain(预留) |
---
## 📌 安装与启动
```bash
git clone https://github.com/yourname/PedestrianBackendWeb.git
cd PedestrianBackendWeb
# 创建虚拟环境
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# 安装依赖
pip install -r requirements.txt
# 初始化数据库
python manage.py migrate
# 启动服务
python manage.py runserver
📌 项目进阶计划(后续开发)
✅ WebSocket 接入(实现后台与设备实时数据交换)
✅ 视频流接入优化(多路视频支持,切换不卡顿)
✅ 智能助手集成(调试日志分析 + 交通事件问答)
✅ 移动端开发(小程序 / Flutter / React Native)
✅ 车牌识别系统对接公安网,完成智能扣分与处罚流程
📌 开发者
本项目由 唐英昊 开发与维护,用于本科毕业设计。
联系方式请见 GitHub Profile 或后台联系页面。