🛣️ 基于YOLO与MobileSAM的路面缺陷智能检测系统
多模态AI驱动 | 实时目标检测 | 智能语义分割 | 深度隐患分析
代码获取:https://mbd.pub/o/bread/YZWakptvaw==
📖 项目背景 (Background)
路面病害(如裂缝、坑洞、龟裂等)是影响道路交通安全的重要因素。传统的路面巡检主要依赖人工排查,效率低、成本高且易受主观因素影响。
本项目构建了一套基于 YOLOv8 是目标检测与 MobileSAM 语义分割的智能路面检测系统。系统不仅能毫秒级定位路面缺陷,还能通过MobileSAM自动生成精确的缺陷轮廓(Mask),并结合LLaVA 多模态大模型生成专业的中文维修建议报告,实现路面养护的数字化与智能化。
🏗️ 系统架构 (System Architecture)
本系统融合了最先进的计算机视觉(CV)模型与大型语言模型(LLM):
graph TD Data[路面巡检影像] -->|视频流/图片| Core{AI 核心引擎} subgraph Core [智能分析核心] YOLO[YOLOv8 目标检测] -->|快速定位 Box| Logic[缺陷逻辑判断] Logic -->|发现缺陷| SAM[MobileSAM 智能分割] SAM -->|生成精确轮廓| LLaVA[LLaVA 多模态大模型] LLaVA -->|深度评估| Report[生成养护建议] end subgraph UI [交互应用层] Web[Gradio 可视化平台] Alert[实时标记与告警] History[历史病害库] end Logic -->|路面正常| Web Report --> Web🚀 核心功能 (Core Features)
1. 🔍 智能缺陷检测与分割 (Detection & Segmentation)
- 多类病害识别:精准识别裂缝 (Crack)、坑洞 (Pothole)、龟裂/网裂 (Net Cracking)、井盖 (Manhole)及其修补痕迹。
- 🧩 智能分割 (Smart Seg):集成MobileSAM,在检测到缺陷的同时,自动勾勒出缺陷的精确形状和面积,为修补工程量计算提供依据。
- 中文标签支持:系统全面本地化,检测框与提示信息均完美支持中文显示。
2. 🧠 深度AI安全评估 (Deep AI Analysis)
- 多模态分析:集成LLaVA 大模型,作为“AI 养护专家”,对检测到的严重病害进行深度语义分析。
- 专业报告:自动生成包含病害成因分析、风险等级评估及建议修补方案(如灌缝、挖补)的详细报告。
3. 🎞️ 批量与视频分析 (Batch & Video)
- 批量处理:支持一次性导入数百张路面照片,自动筛选出包含病害的图片并归档。
- 视频巡检:支持车载摄像头录像的逐帧分析,实时在视频中标记路面缺陷。
4. 📈 自动训练闭环 (Auto-Training)
- 一键训练:内置傻瓜式训练模块,用户上传新数据后,只需点击按钮即可启动 YOLOv8 训练。
- 自动热更新:训练完成后,系统会自动加载最新的
best.pt模型,无需重启即可应用最新能力。
📂 数据集 (Dataset)
本项目使用PDD (Road Defect Dataset)格式数据:
| ID | 英文名称 (Name) | 中文说明 | 风险等级 |
|---|---|---|---|
| 0 | Crack | 路面裂缝 | ⚠️ 中 |
| 1 | Manhole | 井盖 | ℹ️ 低 |
| 2 | Net | 网裂/龟裂 | ⚠️ 高 |
| 3 | Pothole | 坑洞 | ⛔ 极高 |
| 4-6 | Patch-* | 各类修补痕迹 | ℹ️ 低 |
| 7-8 | Other | 其他异物 | ⚠️ 中 |
🛠️ 快速开始 (Quick Start)
1. 环境准备
确保您的系统安装了 Python 3.8+ 和 PyTorch (GPU版推荐)。
# 安装项目依赖pipinstall-r requirements.txt2. 启动系统
python run_web_advanced.py访问浏览器:http://localhost:7860
3. 模型训练 (首次运行必须)
由于初始模型可能未针对 PDD 数据集微调,建议初次使用时:
- 进入“⚙️ 模型训练”标签页。
- 设置 Epochs (建议 50-100)。
- 点击“🔥 启动训练进程”。
- 训练结束后系统会自动加载新模型,即可开始检测。
📝 目录结构
RoadDefectDetection/ ├── config.yaml # 系统核心配置文件 ├── pdd.yaml # PDD 数据集配置 ├── run_web_advanced.py # Web 启动入口 ├── src/ │ ├── road_defect_detection_system.py # 核心业务类 (集成 YOLO + SAM) │ ├── yolo_detector.py # YOLOv8 封装 │ ├── llava_analyzer.py # LLaVA 分析接口 │ └── web_interface_advanced.py # Gradio 界面 ├── data/ # 数据集目录 └── runs/ # 训练日志与模型权重