🛣️ 基于YOLO与MobileSAM的路面缺陷智能检测系统
多模态AI驱动 | 实时目标检测 | 智能语义分割 | 深度隐患分析
📖 项目背景 (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)中文说明风险等级0Crack路面裂缝⚠️ 中1Manhole井盖ℹ️ 低2Net网裂/龟裂⚠️ 高3Pothole坑洞⛔ 极高4-6Patch-*各类修补痕迹ℹ️ 低7-8Other其他异物⚠️ 中
🛠️ 快速开始 (Quick Start)
1. 环境准备
确保您的系统安装了 Python 3.8+ 和 PyTorch (GPU版推荐)。
# 安装项目依赖
pip install -r requirements.txt
2. 启动系统
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/ # 训练日志与模型权重