基于YOLO11深度学习与实例分割的道路坑洼检测系统【计算机毕业设计选题推荐】
🍊作者:计算机编程-吉哥
🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。
🍊心愿:点赞 👍 收藏 ⭐评论 📝
🍅 文末获取源码联系👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~
Java毕业设计项目~热门选题推荐《1000套》
目录
2.1 模型:YOLO11m-seg 主模型 + YOLOv8s-seg 对比
亮点 2:AI 辅助建议,接 DeepSeek 生成养护解读
一、项目简介
road_pit_seg 是一个基于深度学习实例分割的道路坑洼智能识别 Web 应用。它面向道路养护场景,目标是对路面坑洼进行像素级实例分割,而不仅仅是画个框。
整个项目形成了从训练工程 → 后端推理 → 前端交互 → 数据库存储的全栈闭环:
-
用户端(front):登录 / 注册 / 坑洼检测(4 种入口)/ 检测记录 / 数据看板 / 智能问答 / 个人中心
-
后端(Django 4.2.16):REST API + 2 个实例分割模型在线推理,权重按
val_acc自动选最优 -
模型:YOLO11m-seg(主模型 ⭐)+ YOLOv8s-seg(对比模型)
-
数据库(MySQL 8):3 张表,对应 7 大模块
-
AI 辅助建议:对接 DeepSeek 大语言模型,根据客观检测指标生成养护级解读
项目只保留 front 用户端,没有独立 admin 后台,属于毕设第一版的简化设计,但功能链路完整、开箱即用。
二、技术选型
2.1 模型:YOLO11m-seg 主模型 + YOLOv8s-seg 对比
| 模型 | 角色 | 架构 | 框架 | 训练轮数 | 预训练 |
|---|---|---|---|---|---|
| YOLO11m-seg | 主模型 ⭐ | 单阶段实例分割 | Ultralytics 2024 | 300 epochs | ✅ |
| YOLOv8s-seg | 对比模型 | 单阶段实例分割(轻量) | Ultralytics | 300 epochs | ✅ |
为什么选 YOLO11m-seg 作为主模型?
-
Ultralytics 2024 年发布的最新一代实例分割模型
-
相比 YOLOv8 同尺寸:CSPDarknet 主干改进 + 新增 C2PSA 注意力模块 + 解耦分割头
-
COCO val2017 实例分割 mAP 提升约 0.8 ~ 1.5 个点
-
对小目标、不规则形状坑洼识别能力强
-
780 张单类数据集上精度最高、收敛最快
对比模型 YOLOv8s-seg 则是上一代 YOLO 单阶段实例分割的轻量版,与主模型形成同架构不同规模的对比,用来验证模型规模对精度 / 速度的影响。
2.2 数据集
采用 Roboflow Pothole Segmentation 公开数据集:
-
720 train / 60 valid
-
单类 Pothole,YOLO polygon 标注
-
640×640 输入尺寸
2.3 技术栈版本
| 组件 | 版本 | 备注 |
|---|---|---|
| Python | 3.10 | Anaconda3 yolo11 环境 |
| Django | 4.2.16 | 后端框架 |
| PyTorch (GPU) | 2.8.0+cu128 | RTX 5060 适配(CUDA 12.8 / Blackwell 架构) |
| ultralytics | 8.3.40 | YOLO11m-seg / YOLOv8s-seg 训练与推理 |
| MySQL | 8.x | localhost:3306 |
| Vue | 3.4.x | 前端框架 |
| Vite | 6.x | 前端构建 |
| DeepSeek | deepseek-chat | 智能问答 + AI 辅助建议 |
2.4 预期精度参考
| 模型 | mAP@50 (box) | mAP@50 (mask) | F1 | 参数量 |
|---|---|---|---|---|
| YOLO11m-seg ⭐ | ~0.85 | ~0.83 | ~0.82 | 22.4 M |
| YOLOv8s-seg | ~0.78 | ~0.76 | ~0.75 | 11.8 M |
实际值以本数据集训练结果为准。
三、功能模块
项目包含 6 大核心功能:
| # | 模块 | 主要能力 |
|---|---|---|
| 1 | 登录 / 注册 | 用户名 + 密码 MD5 加密;默认管理员 admin/admin123 |
| 2 | 坑洼检测 | 4 种入口:单图 / 批量(≤20)/ 视频(抽帧)/ 摄像头实时 |
| 3 | 检测记录 | 历史记录列表 + 详情查看 + 单条删除 |
| 4 | 数据看板 | 5 张统计图(总览 / 模型分布 / 时间线 / 置信度 / 来源 / 耗时) |
| 5 | 智能问答 | DeepSeek Chat Completions + 知识库 RAG(12 条道路养护语料) |
| 6 | 个人中心 | 改邮箱/手机/密码/头像;查看用户名、角色、注册时间、累计检测次数 |
四、项目亮点
亮点 1:网页模型选择器,保证加载最优权重
页面顶部下拉框可在模型间切换。关键机制:
-
web_app/detection/inference.py::resolve_best_weights()扫描train/checkpoints/<key>_*.pth -
用
torch.load读取每个 checkpoint 内嵌的best_val_acc/epoch字段 -
按 val_acc 选最优(不是按文件名)
-
用户在 UI 可见:下拉框右侧显示
params · best ep=N · acc=0.85,模型信息卡显示「Best Val Acc @ ep X」
校验脚本:python train/verify_best_weights.py → 输出 train/plots/best_weights_check.json。
亮点 2:AI 辅助建议,接 DeepSeek 生成养护解读
-
入口:检测结果页 → 点
AI 辅助建议按钮 -
后端:
POST /api/detect/advice/,body 传入pothole_count / pothole_pixels / pothole_ratio / avg_confidence / model_key / threshold -
流程:
-
按规则算
severity = low / medium / high(阈值 2% / 8%) -
拼 prompt(包含客观指标 + 模型名 + 阈值 + 风险等级),直接
requests.post调 DeepSeek -
返回 DeepSeek 生成的中文 Markdown 解读
-
失败时(API key 缺失 / 网络超时 / 返回空)自动降级为本地规则模板,前端永远拿得到内容
-
-
前端:用
marked解析 Markdown 为 HTML,分点展示(标题加粗、列表缩进) -
与智能问答完全隔离:advice 用独立
requests调用,不查knowledge_corpus表
亮点 3:训练脚本统一接口,两个模型独立产物
-
两个模型独立训练脚本、独立目录,避免产物混淆,便于单独调试和复现
-
训练脚本统一接口,支持早停、续训、评估、推理、权重校验全配套
-
评估 / 推理 / 权重校验全配套,便于调参与演示
亮点 4:全栈闭环,开箱即用
-
后端沿用 Django 模板,前端沿用 Vue 3 + Vite
-
数据库脚本
init_db.sql一键初始化 3 张表 + 12 条道路养护知识 -
配套训练工程、前后端、数据库全栈闭环
亮点 5:5 张数据看板,检测结果可视化
数据看板包含 5 张统计图:总览 / 模型分布 / 时间线 / 置信度 / 来源 / 耗时,帮助用户从多个维度理解检测数据。
六、功能演示





更多推荐

所有评论(0)