AI源码
AI源码AI 精选 · 优质源码 · 助力学习

微小异物检测与识别系统

基于 Flask 与 YOLOv8 的工业表面微小异物/缺陷智能检测平台,面向钢材等产品质量检测,支持龟裂、夹杂、斑块、点蚀、氧化铁皮、划痕六类缺陷自动定位与置信度评估,含批量检测、统计分析、在线训练与报告导出。

评分:4.8/5.0
销量:8
发布:2026/7/6
难度:L2 进阶级
💬 联系咨询观看视频介绍
永久使用权限
免费更新维护
技术支持服务

项目封面

截图 1

项目说明

微小异物检测与识别系统

项目简介

本系统是一个基于 Flask Web 框架与 YOLOv8 深度学习模型的工业表面微小异物/缺陷智能检测平台。系统面向钢材等工业产品表面质量检测场景,能够对上传图片中的龟裂、夹杂异物、斑块、点蚀、氧化铁皮、划痕等六类微小缺陷进行自动定位、分类与置信度评估,并提供批量检测、历史记录、统计分析、模型在线训练与报告导出等完整功能。

系统采用 NEU-DET(东北大学钢材表面缺陷)公开数据集进行模型训练,内置已训练好的 YOLOv8n 权重,开箱即用;同时支持管理员在线发起模型重新训练。


功能模块

模块功能说明
用户认证用户注册、登录、退出;基于 Flask-Login 的会话管理;管理员与普通用户两级角色权限控制
控制台展示总检测次数、发现异物数、今日检测、系统用户数等核心指标,近 7 天检测趋势折线图,快捷操作入口与最近检测记录列表
单张检测支持拖拽或点击上传单张图片,实时执行 YOLOv8 推理,返回标注结果图、异物数量、各类别置信度与边界框坐标,并自动保存检测记录
批量检测一次上传多张图片(最多 20 张)批量处理,展示每张图片的检测结果缩略图与异物数量,支持失败重试提示
检测历史检测记录分页浏览与关键词搜索,查看检测详情(原图、结果图、检测框列表),删除记录,导出 CSV 与 PDF 报告
统计分析异物类别分布饼图、月度检测趋势柱状图、总检测/异物/正常/异物率/平均耗时/平均置信度等汇总指标,所有数据按当前用户权限范围统计
数据集管理展示 NEU-DET 数据集信息(总图片数、训练/验证/测试集划分、类别说明、数据集路径与更新时间),实时统计文件系统中的数据集规模
模型训练管理员可配置训练轮次、批次大小、图片尺寸并启动 YOLOv8 在线训练,实时查看训练状态与完成后的 mAP50、精确率、召回率等指标,查看训练历史记录
系统设置管理员可调整检测置信度阈值、NMS IOU 阈值、最大上传大小、自动保存开关、模型路径等系统参数
用户管理管理员查看所有用户列表,启用/禁用用户账户
操作日志管理员查看登录、检测、训练、设置变更等操作日志,支持分页
报告导出一键导出检测记录为 PDF 报告或 CSV 表格

缺陷类别

系统支持检测以下六类工业表面微小异物/缺陷(基于 NEU-DET 数据集):

类别 ID英文名称中文名称说明
0crazing龟裂表面不规则龟壳状裂纹
1inclusion夹杂异物非金属或氧化物夹杂压入表面
2patches斑块缺陷表面局部色差斑块
3pitted_surface点蚀表面密集点状凹坑
4rolled-in_scale氧化铁皮氧化铁皮压入钢材表面
5scratches划痕表面线性划伤痕迹

标准版目录结构

python-weixiaoyiwu-jiance-shibie/
├── app.py                         # Flask 应用主入口,页面路由与 API 接口定义
├── config.py                      # 系统配置(密钥、数据库路径、模型路径、类别映射、分页参数)
├── requirements.txt               # Python 依赖包清单
├── mac_run.sh                     # macOS/Linux 一键启动脚本
├── window_run.bat                 # Windows 一键启动脚本
├── 项目说明.md                    # 项目功能与目录结构说明
├── 训练手册.md                    # 模型训练与数据集使用手册
├── README.md                      # 项目简介
├── database/
│   └── models.py                  # SQLite 数据库表结构定义、初始化与操作日志记录
├── ml/
│   ├── detect.py                  # YOLOv8 检测引擎封装(模型加载、单张/批量检测、结果绘制)
│   ├── train.py                   # YOLOv8 模型训练脚本(训练、指标读取、任务状态更新)
│   ├── download_dataset.py        # 数据集准备脚本(本地检测、格式转换、data.yaml 生成)
│   ├── data/
│   │   ├── NEU-DET_Yolo-master/   # NEU-DET 数据集(YOLO 格式)
│   │   │   ├── ImageSets/
│   │   │   │   ├── train/         # 训练集(images + labels)
│   │   │   │   ├── val/           # 验证集(images + labels)
│   │   │   │   └── test/          # 测试集(images + labels)
│   │   │   ├── labels/            # 全量 YOLO 标签文件
│   │   │   └── data.yaml          # 数据集配置文件
│   │   └── neu_yolo.zip           # 数据集压缩包备份
│   └── runs/
│       └── detect/
│           └── train/
│               ├── weights/       # 训练输出的模型权重(best.pt / last.pt)
│               ├── results.csv    # 训练指标记录
│               └── args.yaml      # 训练参数配置
├── templates/                     # Jinja2 HTML 模板
│   ├── base.html                  # 基础模板(导航栏、CDN 引用)
│   ├── index.html                 # 首页
│   ├── login.html                 # 登录页
│   ├── register.html              # 注册页
│   ├── dashboard.html             # 控制台
│   ├── detect.html                # 单张检测页
│   ├── batch_detect.html          # 批量检测页
│   ├── history.html               # 检测历史页
│   ├── statistics.html            # 统计分析页
│   ├── dataset.html               # 数据集管理页
│   ├── training.html              # 模型训练页
│   ├── settings.html              # 系统设置页
│   ├── users.html                 # 用户管理页
│   ├── logs.html                  # 操作日志页
│   └── error.html                 # 错误页
├── static/
│   ├── css/
│   │   └── style.css              # 自定义样式
│   ├── js/
│   │   └── common.js              # 公共工具函数
│   ├── uploads/                   # 上传图片存储目录
│   └── results/                   # 检测结果图存储目录
├── instance/
│   └── foreign_object.db          # SQLite 数据库文件(自动生成)
├── 运行步骤必看/
│   └── window.md                  # Windows 运行步骤说明
├── 演示材料/
│   └── 演示视频.mp4               # 系统演示视频
└── yolov8n.pt                     # YOLOv8n 预训练权重(训练基线模型)

技术栈

类别技术
后端框架Python 3.12 + Flask 3.0
用户认证Flask-Login 0.6 + Werkzeug pbkdf2:sha256 密码哈希
数据库SQLite 3
深度学习Ultralytics YOLOv8 8.4(目标检测)
图像处理OpenCV(opencv-python-headless)+ Pillow
数据处理NumPy + Pandas
前端HTML5 + Bootstrap 5.3 + Bootstrap Icons + ECharts 5.5
报告生成ReportLab(PDF 导出)

环境要求

项目要求
Python3.12
操作系统Windows / macOS / Linux
内存建议 4GB 以上(模型推理与训练时使用)
磁盘约 1GB(含依赖、数据集与模型权重)
GPU可选,无 GPU 时自动使用 CPU 推理与训练
浏览器Chrome / Firefox / Safari / Edge 现代版本

账号信息

系统初始化时自动创建以下默认账户:

角色用户名密码权限
管理员adminadmin123全部功能,含模型训练、系统设置、用户管理、操作日志
普通用户useruser123检测、历史、统计、数据集查看

新注册用户默认为普通用户角色,仅能访问自身检测数据;管理员可查看全部用户数据。

技术分类

包含内容

完整源码
项目说明文档
演示材料
训练手册

适用人群

学习参考与二次开发

关于 AI源码

AI源码 专注优质项目源码分享,提供完整源码、详细文档与技术支持,助力源码设计与课程作业。

QQ: 861077046
邮箱: 861077046@qq.com
已服务 8+ 位用户
立即咨询

相关推荐

查看全部 →
城市交通流量预测与拥堵成因分析系统
Python
进阶

城市交通流量预测与拥堵成因分析系统

是一个面向城市交通拥堵分析的 monorepo,覆盖计算机设计课题中的主要能力链路:

PythonHTMLSQLite
4.820
电商用户行为漏斗与CRO转化率优化分析
Python
NEW
进阶

电商用户行为漏斗与CRO转化率优化分析

电商用户行为漏斗与CRO转化率优化分析(E-Commerce Funnel CRO)是一套面向电商运营的数据分析平台,覆盖从用户访问到最终购买的完整漏斗链路,提供多维诊断、统计检验、PIE 优先级矩阵与 XGBoost 购买预测等能力,帮助运营团队精准定位转化瓶颈并制定优化策略。

PythonHTMLSQLite
4.866
多组学癌症预后预测分析系统
Python
进阶

多组学癌症预后预测分析系统

基于 Flask 的 Web 应用,用于上传 TCGA 风格合并表、做特征与标签概览、Cox 预后风险评分与生存相关可视化。模型在本地训练后以 形式加载,不提供旧版演示数据或假模型兜底。

PythonHTMLSQLite
4.834
基于 Apriori 算法的中药配伍审查系统
Python
NEW
进阶

基于 Apriori 算法的中药配伍审查系统

本系统是一个基于经典 Apriori 关联规则挖掘算法的中药配伍审查平台,使用真实中医药处方数据集(PTM-TKDE2018),实现药材频繁项集挖掘、关联规则生成与配伍禁忌审查。

PythonHTMLSQLite
4.840
基于 Python 的城市共享单车骑行需求时空分析系统
Python
NEW
进阶

基于 Python 的城市共享单车骑行需求时空分析系统

本系统是一个基于 Python Flask 框架的城市共享单车骑行需求时空分析平台,使用 Oslo City Bike(奥斯陆城市自行车)开放数据,提供系统总览、时间维度分析、空间维度分析、站点运营分析、OD 起讫流动分析、骑行需求预测、综合分析报告等功能模块,适用于城市共享单车运营调度与骑行需求研究场景。

PythonHTMLSQLite
4.857
基于 Python 的短视频用户行为分析系统
Python
NEW
进阶

基于 Python 的短视频用户行为分析系统

基于快手 KuaiRec / KuaiRand 数据集的短视频推荐分析平台,提供用户行为分析、推荐偏差检测、内容运营洞察、图神经网络推荐等完整分析链路。

PythonHTMLSQLite
4.875