🍊作者:计算机编程-吉哥
🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。
🍊心愿:点赞 👍 收藏 ⭐评论 📝
🍅 文末获取源码联系

👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~
Java毕业设计项目~热门选题推荐《1000套》

Python毕业设计精品项目《1000套》

微信小程序毕业设计精品项目《1000套》

大数据/机器学习毕业设计精品项目《1000套》

目录

一、项目简介

二、技术选型

2.1 模型:YOLO11m-seg 主模型 + YOLOv8s-seg 对比

2.2 数据集

2.3 技术栈版本

2.4 预期精度参考

三、功能模块

四、项目亮点

亮点 1:网页模型选择器,保证加载最优权重

亮点 2:AI 辅助建议,接 DeepSeek 生成养护解读

亮点 3:训练脚本统一接口,两个模型独立产物

亮点 4:全栈闭环,开箱即用

亮点 5:5 张数据看板,检测结果可视化

六、功能演示


一、项目简介

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 2024300 epochs✅
YOLOv8s-seg对比模型单阶段实例分割(轻量)Ultralytics300 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 技术栈版本

组件版本备注
Python3.10Anaconda3 yolo11 环境
Django4.2.16后端框架
PyTorch (GPU)2.8.0+cu128RTX 5060 适配(CUDA 12.8 / Blackwell 架构)
ultralytics8.3.40YOLO11m-seg / YOLOv8s-seg 训练与推理
MySQL8.xlocalhost:3306
Vue3.4.x前端框架
Vite6.x前端构建
DeepSeekdeepseek-chat智能问答 + AI 辅助建议

2.4 预期精度参考

模型mAP@50 (box)mAP@50 (mask)F1参数量
YOLO11m-seg ⭐~0.85~0.83~0.8222.4 M
YOLOv8s-seg~0.78~0.76~0.7511.8 M

实际值以本数据集训练结果为准。


三、功能模块

项目包含 6 大核心功能:

#模块主要能力
1登录 / 注册用户名 + 密码 MD5 加密;默认管理员 admin/admin123
2坑洼检测4 种入口:单图 / 批量(≤20)/ 视频(抽帧)/ 摄像头实时
3检测记录历史记录列表 + 详情查看 + 单条删除
4数据看板5 张统计图(总览 / 模型分布 / 时间线 / 置信度 / 来源 / 耗时)
5智能问答DeepSeek Chat Completions + 知识库 RAG(12 条道路养护语料)
6个人中心改邮箱/手机/密码/头像;查看用户名、角色、注册时间、累计检测次数

四、项目亮点

亮点 1:网页模型选择器,保证加载最优权重

页面顶部下拉框可在模型间切换。关键机制:

  1. web_app/detection/inference.py::resolve_best_weights() 扫描 train/checkpoints/<key>_*.pth

  2. 用 torch.load 读取每个 checkpoint 内嵌的 best_val_acc / epoch 字段

  3. 按 val_acc 选最优(不是按文件名)

  4. 用户在 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

  • 流程:

    1. 按规则算 severity = low / medium / high(阈值 2% / 8%)

    2. 拼 prompt(包含客观指标 + 模型名 + 阈值 + 风险等级),直接 requests.post 调 DeepSeek

    3. 返回 DeepSeek 生成的中文 Markdown 解读

    4. 失败时(API key 缺失 / 网络超时 / 返回空)自动降级为本地规则模板,前端永远拿得到内容

  • 前端:用 marked 解析 Markdown 为 HTML,分点展示(标题加粗、列表缩进)

  • 与智能问答完全隔离:advice 用独立 requests 调用,不查 knowledge_corpus 表

亮点 3:训练脚本统一接口,两个模型独立产物

  • 两个模型独立训练脚本、独立目录,避免产物混淆,便于单独调试和复现

  • 训练脚本统一接口,支持早停、续训、评估、推理、权重校验全配套

  • 评估 / 推理 / 权重校验全配套,便于调参与演示

亮点 4:全栈闭环,开箱即用

  • 后端沿用 Django 模板,前端沿用 Vue 3 + Vite

  • 数据库脚本 init_db.sql 一键初始化 3 张表 + 12 条道路养护知识

  • 配套训练工程、前后端、数据库全栈闭环

亮点 5:5 张数据看板,检测结果可视化

数据看板包含 5 张统计图:总览 / 模型分布 / 时间线 / 置信度 / 来源 / 耗时,帮助用户从多个维度理解检测数据。

六、功能演示

更多推荐