Vinodgm2106/SmartRoad-AI

GitHub: Vinodgm2106/SmartRoad-AI

基于 YOLOv8 的路面缺陷智能检测与严重程度分级系统,帮助市政部门自动完成道路损坏识别、优先级排序和检测报告生成。

Stars: 0 | Forks: 0

# 🛣️ SmartRoad-AI:路面缺陷检测与严重程度分析 SmartRoad-AI 是一个高性能的计算机视觉与市政报告仪表板,旨在通过检测图像和视频检测、追踪、分级并报告结构性道路损坏(坑洼、纵向裂缝、横向裂缝和龟裂疲劳开裂)。 它基于 **Streamlit**、**YOLOv8**、**OpenCV** 和 **SQLite** 构建,提供了一套完整的市政勘测解决方案,包含优先行动计划和自动生成的 PDF 检测报告。 ## ✨ 核心功能 1. **AI 驱动的批量扫描门户**:同时上传多个道路图像和视频文件。通过动态置信度滑块(`0.00` 到 `1.00`)在优化的 pipeline 中处理帧。 2. **路面严重程度分级算法**:根据缺陷威胁参数计算出一个介于 `0` 到 `100` 之间的数学 **道路损坏评分 (RDS)**,将路段分类为*低*、*中*或*紧急*优先级。 3. **紧急干预执行仪表板**:显示排名的 KPI 指标、严重程度分布图,以及前 5 个包含精确 GPS 卫星地图快速链接的紧急维修派发位置。 4. **深度趋势分析**:渲染高分辨率趋势时间线(对于单日扫描,会自动缩放以按时间顺序排列检测时间戳)、堆叠风险分布,以及带有颜色编码的交互式 Google 卫星地图标记。 5. **市政报告下载中心**: * **CSV / Excel 导出**:一键下载当前已筛选的勘测日志。 * **自动 PDF 生成器**:打印包含缺陷总数、优先维修指令和整洁表格日志的官方市政检测报告。 6. **支持 SQL 的 AI 聊天机器人助手**:一个离线的自然语言聊天机器人,可将用户的查询转化为直接的数据库计算,用于计算路网健康统计数据或提供维修建议。 ## 📊 路面严重程度分级公式 (RDS) **道路损坏评分 (RDS)** 基于标准工程缺陷权重,满分为 100 分进行计算: * **龟裂疲劳裂缝**(表明基层结构失效):每处 `20 分` * **坑洼**(高危安全隐患):每处 `15 分` * **纵向与横向裂缝**:每处 `5 分` $$\text{RDS} = \min(100, \, (15 \times \text{Potholes}) + (20 \times \text{Alligator}) + (5 \times \text{Longitudinal}) + (5 \times \text{Lateral}))$$ ### 优先级分类: * 🚨 **紧急优先级 (51–100 RDS)**:需要立即派发进行紧急维修。 * ⚠️ **中等优先级 (21–50 RDS)**:需要安排计划干预。 * 🟢 **低优先级 (0–20 RDS)**:执行常规例行维护。 ## 📂 项目目录结构 ``` SmartRoad-AI/ ├── .streamlit/ # Streamlit app layout configuration ├── dashboard/ # Front-End Web Application │ ├── app.py # Home / Navigation Hub │ ├── pages/ # Dashboard page modules (1-6) │ └── styles/ # Custom CSS stylesheets ├── database/ # Inspection SQLite database file ├── data/ # Sample videos and image assets for testing ├── models/ # Pre-trained YOLOv8 weights (.pt files) ├── src/ # Back-End Logic & AI training modules │ ├── app/ # Navigation, database, detector, and ranking modules │ └── training/ # Custom YOLOv8 training/fine-tuning scripts ├── .gitignore # Tells Git which files to ignore ├── requirements.txt # Python libraries list └── README.md # Project documentation (this file) ``` ## 🚀 安装与设置 ### 前置条件 请确保您已安装 **Python 3.8+**。 ### 1. 克隆仓库 ``` git clone https://github.com/Vinodgm2106/SmartRoad-AI.git cd SmartRoad-AI ``` ### 2. 设置虚拟环境 * **Linux/macOS**: python -m venv venv source venv/bin/activate * **Windows**: python -m venv venv venv\Scripts\activate ### 3. 安装依赖项 ``` pip install -r requirements.txt ``` ### 4. 运行 Streamlit 仪表板 ``` streamlit run dashboard/app.py ``` ## 🛠️ 模型训练 (Google Colab) 如果您希望在自定义数据集上 fine-tune 模型权重,请查阅 [COLLAB_GUIDE.md](COLLAB_GUIDE.md) 并使用 [zip_project.py](zip_project.py) 实用工具为云端 GPU 处理准备好您的文件。
标签:Kubernetes, 逆向工具