基于深度学习的布匹缺陷检测系统(YOLOv12完整代码+论文示例+多算法对比)
摘要:本文面向纺织生产线的布匹缺陷质检,构建一套“训练-评测-桌面部署”一体化系统:基于 PyTorch/Ultralytics 训练并统一评测 YOLOv5–YOLOv12 共 8 种检测模型,对比 mAP、F1、PR 曲线、训练曲线 等指标,并将最优权重用于端侧交互推理。系统前端采用 PySide6/Qt 桌面界面,支持图片/视频/本地摄像头多源输入,推理结果在主显示区叠加类别+置信度与边界框,并提供处理用时、检测数量与处理进度条等反馈;用户可在界面中选择模型并完成 模型选择/权重加载(.pt 热切换),类别信息与配色随模型同步刷新。工程侧提供一键 CSV 导出与带框结果导出(单帧 PNG / 多帧 AVI),以时间戳命名便于追溯与批量管理;检测记录与账户信息可写入 SQLite 本地入库,并提供登录/注册与跳过入口,兼顾易用性与基本安全(口令校验、会话范围控制)。数据与代码均可下载复现实验与部署流程,文末提供完整工程与数据集链接。
文章目录
功能效果展示视频:热门实战|《基于深度学习的布匹缺陷检测系统》YOLOv12-v8多版本合集:附论文/源码/PPT/数据集,支持图片/视频/摄像头输入、可视化界面、结果导出与权重切换
1. 系统功能与效果
(1)登录注册:系统启动后提供登录、注册与跳过入口,用户可选择完成身份校验或进入试用模式;会话在当前运行周期内生效,用于隔离个人历史记录与偏好设置。进入主界面后,导航动线保持一致,从概览进入各检测页,再到模型选择与导出视图,减少首次上手成本。账户与检测记录统一由本地 SQLite 管理,配合口令校验与一次性跳过机制,在不增加操作负担的前提下兼顾基本安全与可追溯性。
(2)功能概况:桌面端采用“左侧控制—中央展示—右侧详情—底部记录”的布局,关键操作集中在同一屏内完成,适合产线场景快速复核。系统支持图片、视频与本地摄像头等多源输入,并在推理过程中提供用时、目标数与进度反馈,避免长任务无响应。底部检测记录与导出入口跨页共享,使用户在切换功能时仍能持续回看最近结果与关键统计。
(3)选择模型:用户通过选择本地权重文件即可切换当前 YOLO 模型,加载后类别名称与颜色编码同步刷新,保证不同缺陷体系下的显示一致性。常用配置(如阈值、主题与显示偏好)会在本地持久化保存,便于多次对比不同权重时维持统一体验。该流程强调“即换即用”,让模型对比从离线脚本转为可交互的现场验证。
(4)图片检测:导入图片后可即时完成推理,主显示区叠加缺陷框并标注类别与置信度,便于质检人员快速确认缺陷位置与类型。界面支持实时调节 Conf/IoU 阈值并联动更新结果,同时可对某一目标进行选择与高亮,减少密集缺陷场景下的阅读负担。检测结果以结构化表格同步呈现,方便按类别或置信度快速筛查可疑样本。
(5)文件保存:系统提供一键导出能力,检测结果可导出为 CSV 以便统计分析,并支持带框图片一键保存用于复查与归档。所有导出采用时间戳命名并按统一规则归档,便于溯源、批量管理与按文件名快速定位。历史检测记录可在本地库中检索回放,实现“检测—导出—复查”的闭环工作流。
2. 绪论
2.1 研究背景及意义
纺织工业的布匹质量检验长期处于“高频、重复、强经验依赖”的生产环节,缺陷一旦漏检往往会在后续裁剪、缝制与出货链路被放大,带来返工与交付风险。1 由于布面纹理复杂、缺陷形态多样且尺度跨度大,传统依赖人工目检的方式不仅受疲劳与主观差异影响显著,也难以稳定满足流水线节拍与一致性要求。1 (texb.wtu.edu.cn)
在机器视觉落地层面,布匹缺陷检测的工业价值集中体现在“在线化、可追溯、可闭环”三点:一是以实时检测替代抽检,实现对关键工序的连续监控;二是以可视化框选与置信度输出提升可解释性,便于质检人员快速复核并形成一致判定;三是将检测结果结构化入库,为工艺回溯、供应商评价与持续改进提供数据依据。2 (De Gruyter Brill)
深度学习目标检测模型的兴起,为复杂纹理背景下的缺陷定位提供了更强的特征表达能力与端到端优化路径,尤其是一阶段检测器在速度与精度权衡上更贴近在线质检需求。5 因此,围绕 YOLO 系列开展多版本对比评测,并将模型推理与 Qt 桌面端交互打通,形成“检测—导出—入库—复查”的闭环系统,具有明确的工程意义与推广价值。5 (arXiv)
2.2 国内外研究现状
从任务需求看,布匹缺陷检测常同时面临类间相似性高与类内差异大、缺陷小而密且易遮挡、光照与织纹导致的背景干扰、以及长尾分布与样本不均衡等典型难点。[19] 为满足产线实时性,研究通常需要在 640 级别输入下兼顾召回率与吞吐量,并在后处理与阈值策略上保证结果稳定,避免“看得见但框不准”或“框准但漏检多”的工程落差。[19] (Springer Nature)
数据集与标注是推动该领域进展的关键基础工作,公开数据中既有面向织物缺陷的纹理数据库与缺陷类别定义,也有工业竞赛数据集支撑算法对比与复现。3 为提升方法可比性,研究者提出了可公开获取的布料缺陷图像与缺陷掩膜基准,使得检测、分割与分类方法可以在统一数据上横向评估。2 同时,来自工业赛事的数据集为“复杂背景+多缺陷类型”的真实场景提供了更贴近生产的验证平台。4 (lmb.informatik.uni-freiburg.de)
在算法范式上,两阶段检测器以候选区域生成与精细分类回归获得更强的定位能力,但计算复杂度较高且工程链路更重。6 一阶段检测器通过密集预测实现更高吞吐量,典型代表包括 SSD 与基于 FPN 的密集检测框架。7 多尺度特征融合(如 FPN)已成为小缺陷检测的重要结构手段,并在多类检测器中作为通用组件反复验证其有效性。8 面向类别不均衡问题,Focal Loss 等损失设计被用于抑制易样本主导训练,从而提升对难例与小目标的学习效率。9 (arXiv)
随着 Transformer 组件进入检测框架,端到端集合预测的 DETR 体系提供了免 NMS 的新路径,但其训练收敛与计算代价也带来新的权衡。[10] 面向实时检测,RT-DETR 通过高效编码器与查询选择策略在 COCO 上给出了精度与 FPS 兼顾的端到端方案,为“免 NMS 的实时部署”提供了工程参考。[16] 在 Anchor-free 方向,FCOS 以逐像素回归方式减少锚框超参数敏感性,CenterNet 则以中心点建模简化预测形式,均为密集场景下的鲁棒检测提供了不同思路。[11] (arXiv)
YOLO 家族的技术演进始终围绕结构效率、多尺度融合与训练策略展开,其单阶段端到端的工程形态使其成为工业在线检测的主流选择。5 在通用检测基准上,YOLOv7 通过“可训练的 bag-of-freebies”强化了实时区间的精度上界,为后续轻量化与部署优化提供了参考。[14] 面向更高效的端到端实时检测,YOLOv10 提出 NMS-free 训练与效率驱动的组件优化策略,强调延迟与算力边界的系统级优化。[18] 在最新的注意力中心化探索中,YOLOv12 以注意力机制为核心框架并在给定延迟下报告了更高的 mAP,提示“CNN 与注意力融合”可能成为实时检测的新方向。[23] (arXiv)
为贴近布匹场景,近期大量工作围绕 YOLO 的小缺陷与不均衡问题进行针对性改造,例如在公开工业数据集上通过注意力模块、损失函数与样本重加权策略提升 mAP 与实时速度。[19] 在国内研究中,也有工作通过引入注意力与结构改进提升织物疵点检出能力,强调对小目标漏检的抑制与工程可用性。[20] 另有研究直接以 Tianchi 等数据集训练 YOLOv8 并报告了较高 mAP,为工业数据上的复现提供了可参考的训练与评估范式。[21] 面向高分辨率布面与细节恢复,改进 YOLOv8 的工作通过模块轻量化、上采样细节保持与自适应 IoU 损失,在 TILDA 与 Tianchi 数据集上报告了相对基线的 mAP 提升,进一步强化了“结构+损失”协同优化的有效性。[22] (Springer Nature)
| 方法/工作 | 范式/家族 | 数据集 | 关键改进点 | 优势与局限 | 关键指标(可追溯) | 适配的任务难点 |
|---|---|---|---|---|---|---|
| AFID 公共布料缺陷基准 | 数据集/基准 | AFID | 提供缺陷图像与掩膜,便于检测与分割对比 | 有利于可比性,但规模与场景仍有限 | 7 类织物结构、245 张图像、含 12 类缺陷与 mask | 促进可比评测与可追溯标注 |
| FD-YOLOv5 | YOLOv5 改进 | Aliyun Tianchi | 坐标注意力+SIoU+置信度损失重构以应对不均衡 | 精度提升明显,FPS 仍需结合硬件评估 | mAP@0.5=65.1%,mAP@0.5:0.95=30.4%,约 79 FPS | 小缺陷、样本不均衡、实时性 |
| 改进 YOLOv5 织物疵点检测 | YOLOv5 改进 | 自建/织物数据 | 注意力机制等增强特征表达 | 更贴近国内工艺场景,但复现依赖数据公开程度 | 指出对小目标漏检率下降与准确性提升 | 小目标漏检、复杂纹理背景 |
| YOLOv8 布匹缺陷检测实践 | YOLOv8 | Tinachi/Tianchi | 数据增强与迭代训练流程 | 易复现,但缺少更系统的消融与部署分析 | 报告 mAP=78.5% | 工业数据复现与流程化训练 |
| 改进 YOLOv8 实时布匹缺陷检测 | YOLOv8 改进 | TILDA & Tianchi | RG-C2f+DySample+自适应 WIoU | 强化高分辨率细节与泛化,但依赖改造复杂度 | 相对 YOLOv8:mAP 提升 6.4%(TILDA)与 1.5%(Tianchi) | 细节边界、低质样本、实时性 |
| RT-DETR | DETR 系 | COCO | 高效编码器+查询选择实现实时端到端 | 免 NMS 但体系更复杂 | 53.1% AP,108 FPS(T4) | 端到端部署、去后处理瓶颈 |
| YOLOv12 | YOLOv12 | COCO | 注意力中心化实时检测框架 | 注意力开销带来训练稳定与内存压力 | YOLOv12-N:40.6% mAP,1.64 ms(T4) | 精度上界探索、速度精度权衡 |
2.3 要解决的问题及其方案
围绕布匹缺陷检测的真实产线语境,本文系统需要同时承担“算法可用”与“交互可用”的双重目标,因此问题定义不仅包含模型精度与速度,也包含从多源输入到结果归档的端到端一致性。[19] 结合本项目的桌面端部署形态与多版本 YOLO 对比评测需求,本文拟聚焦以下四类关键问题:(1)缺陷检测的准确性与实时性如何兼得,尤其是小缺陷与密集缺陷下的漏检控制;(2)模型面对不同织纹、光照与相机参数的环境适应性与泛化能力如何保障;(3)桌面端交互如何以可解释的方式支撑复核与复查,并降低质检人员的操作成本;(4)批量数据处理、结果导出与本地存储如何做到高效率与可追溯且兼顾安全性。[22] (Springer Nature)
针对上述问题,本文给出与系统实现强耦合的解决方案:(1)以 YOLOv12 为核心推理模型,并引入 YOLOv5–YOLOv12 的多模型对比评测,统一指标体系(mAP、F1、PR 等)以量化“精度—速度”边界;(2)基于 PyTorch 训练与推理链路结合数据增强与迁移学习策略,提升对织纹、反光与遮挡变化的鲁棒性;(3)采用 PySide6/Qt 构建桌面端,实现图片、视频与本地摄像头输入的统一交互,并支持权重热切换与阈值联动以形成可解释闭环;(4)通过时间戳命名、批量导出与 SQLite 本地入库的组合机制组织检测记录,保证结果可追溯、可检索并降低重复劳动。[23] (Ultralytics )
2.4 博文贡献与组织结构
本文的主要贡献可概括为四点:(1)面向布匹缺陷检测的任务难点,给出以 YOLO 系列与实时 DETR 系为主线的研究现状梳理,并对关键范式与工程权衡进行归纳;(2)围绕 YOLOv5–YOLOv12 构建统一训练、推理与评测流程,支持多指标横向对比以服务模型选型;(3)构建基于 PySide6/Qt 的桌面端检测系统,打通多源输入、阈值交互、可视化叠加与一键导出入库的完整链路;(4)以“可复现”为目标组织工程示例与论文写作模板,使读者能够基于同一套数据与代码复现训练曲线与评测结果。[18] (arXiv)
文章组织结构上,后续章节将依次介绍数据集处理与标注规范、YOLOv12 为主线的模型原理与关键组件、不同 YOLO 版本的实验对比与误差分析,并给出 Qt 桌面端的分层架构设计与流程图,最终在结论部分讨论模型侧、系统侧与数据侧的可持续迭代方向。2 (De Gruyter Brill)
3. 数据集处理
本项目使用的布匹缺陷数据集共 10056 张图像,按 8970/882/204 划分为训练集、验证集与测试集,覆盖三类典型缺陷:Hole(破洞)、Stitch(缝补)与 Seam(接缝)。从样例可视化可以看到,数据同时包含纯色布面、复杂花纹与不同材质纹理,且存在折叠、阴影与局部反光等干扰,这使得缺陷往往呈现“弱对比、小面积、形态不规则”的特征;标注以检测框为主,工程中默认采用 YOLO 系列常用的目标检测标注形式(类别 + 位置框),以紧贴缺陷边界的方式保证定位监督的有效性,并确保训练与部署端的坐标解析一致。标签及其对应中文名如下:
Chinese_name = {'Hole': "破洞", "Stitch": "缝补", "Seam": "接缝"}

从类别实例统计图可以直观看到三类缺陷存在明显的数量差异,其中“缝补(Stitch)”样本占比最高,“接缝(Seam)”相对更少,呈现一定长尾属性,这会导致模型更容易在高频类别上获得较高召回,而在低频类别上出现漏检或置信度偏低的问题。结合标签分布与相关性图可以进一步观察到:目标中心点大多集中在图像中部区域(与拍摄习惯和裁剪策略有关),而宽高分布以小目标为主、同时夹杂少量细长框,这与布面缺陷“尺度跨度大、细长裂纹或接缝线条难以稳定回归”的难点相吻合,也提示后续训练需要重点关注小目标与细长目标的定位稳定性。
在数据预处理上,系统训练与推理统一采用固定输入尺度(如 640×640)的缩放与填充策略,以在保持纵横比的同时对齐网络输入并简化坐标还原;对异常样本与标注做一致性清理(例如空标注、越界框、缓存文件刷新等),避免噪声监督影响收敛。数据增强层面在未破坏缺陷语义的前提下,通常引入随机翻转、颜色扰动与轻量几何变换以模拟光照与纹理变化,并可结合拼接类增强(如 Mosaic/MixUp)提升对密集缺陷与尺度变化的鲁棒性;这些处理与本任务的遮挡、反光、背景纹理强干扰等因素一一对应,有助于在验证集与测试集上获得更稳定的泛化表现。
4. 模型原理与设计
面向布匹缺陷检测这类“纹理强干扰 + 小目标/细长目标 + 长尾类别”的场景,本文在模型侧以 YOLOv12 为主线组织原理与设计:它延续 YOLO 系列一阶段密集预测的整体范式,在统一输入尺度下完成特征提取、多尺度融合与端到端检测输出,同时把注意力机制从“可选插件”提升为骨干与关键块的核心能力,以增强对弱对比缺陷与复杂背景纹理的建模能力。与纯 CNN 路线相比,注意力在捕捉长程依赖与跨纹理区域的关联上更有优势,但也更容易带来显存与吞吐压力,因此 YOLOv12 的设计重点不是“堆更重的注意力”,而是通过结构与算子层面的效率优化,把注意力以更可控的代价嵌入实时检测框架。(arXiv)
从结构上看,YOLOv12 可理解为“高效骨干(含注意力块)+ 多尺度特征融合颈部 + 解耦检测头”的组合:骨干侧通过区域注意力(Area/Region Attention)在保持大感受野的同时降低全局自注意力的二次复杂度,并配合 R-ELAN 这类改造后的特征聚合单元缓解大模型训练不稳定的问题;颈部侧仍以金字塔式多尺度融合为主,强调把浅层纹理细节与深层语义表征有效对齐,从而提升对小破洞、细长接缝等目标的召回;检测头侧输出多尺度预测,工程实现中通常采用分类与回归分支解耦以减少梯度干扰,使得置信度排序与框回归更稳定。标准自注意力可写为
A t t n ( Q , K , V ) = S o f t m a x ! ( Q K ⊤ d ) V , \mathrm{Attn}(Q,K,V)=\mathrm{Softmax}!\left(\frac{QK^\top}{\sqrt{d}}\right)V, Attn(Q,K,V)=Softmax!(dQK⊤)V,
其中 Q , K , V Q,K,V Q,K,V 为查询、键和值, d d d 为通道维度;区域注意力将特征划分为 L L L 个区域并分别计算注意力,从而把计算规模近似从 O ( ( H W ) 2 ) \mathcal{O}((HW)^2) O((HW)2) 降到 O ( ( H W ) 2 / L ) \mathcal{O}((HW)^2/L) O((HW)2/L),更贴合实时推理的预算。网络整体架构图如下图所示:
在损失与任务建模上,YOLOv12 的训练目标仍可抽象为“框回归 + 目标性(objectness)+ 分类”的加权和:
L = λ b o x L ∗ b o x + λ ∗ o b j L ∗ o b j + λ ∗ c l s L ∗ c l s , \mathcal{L}=\lambda_{box}\mathcal{L}*{box}+\lambda*{obj}\mathcal{L}*{obj}+\lambda*{cls}\mathcal{L}*{cls}, L=λboxL∗box+λ∗objL∗obj+λ∗clsL∗cls,
其中 λ ∗ b o x , λ o b j , λ c l s \lambda*{box},\lambda_{obj},\lambda_{cls} λ∗box,λobj,λcls 用于平衡不同子任务梯度。布匹缺陷里常见的“目标很小且边界模糊”会放大回归误差的影响,因此 L ∗ b o x \mathcal{L}*{box} L∗box 往往采用 IoU 系列度量的改进形式以提高定位一致性,例如 CIoU 可写为
L ∗ CIoU = 1 − I o U + ρ 2 ( b , b g t ) c 2 + α v , \mathcal{L}*{\text{CIoU}}=1-\mathrm{IoU}+\frac{\rho^2(\mathbf{b},\mathbf{b}^{gt})}{c^2}+\alpha v, L∗CIoU=1−IoU+c2ρ2(b,bgt)+αv,
其中 b , b g t \mathbf{b},\mathbf{b}^{gt} b,bgt 分别为预测框与真值框, ρ ( ⋅ ) \rho(\cdot) ρ(⋅) 为中心点欧氏距离, c c c 为最小外接框对角线长度, v v v 衡量宽高比差异, α \alpha α 为其权重;这类项对“细长接缝框易抖动、破洞框易偏移”的问题更敏感,通常能带来更稳定的收敛与更少的边界漂移。(arXiv)
训练与正则化策略上,本文默认沿用 Ultralytics/YOLO 的工程化范式:以 BN 稳定统计、配合常用数据增强与学习率调度控制泛化误差,并通过置信度阈值与 NMS 等后处理把“高召回但杂乱的候选框”压缩为可解释、可复核的检测结果;在布匹场景中,合理的 Conf/IoU 设置会直接影响“长尾类漏检”和“纹理伪缺陷误检”的权衡。YOLOv12 还针对注意力的工程代价做了专门的效率处理,例如可选的 FlashAttention、移除显式位置编码、调整 MLP 比率并引入用于隐式位置感知的大核卷积等,这些设计的目的都是在保证表达能力的同时减少内存访问开销并改善实时性,但也意味着在大规模训练时需要更关注显存占用与训练稳定性。(Ultralytics Docs)
5. 实验结果与分析
本章在同一布匹缺陷数据集(3 类:Hole/破洞、Stitch/缝补、Seam/接缝)上,对 YOLOv5–YOLOv12 共 8 种模型进行横向对比,并在同一硬件环境(NVIDIA GeForce RTX 3070 Laptop GPU,8GB 显存)统计端到端耗时构成(Pre/Inf/Post)。评测指标采用 Precision、Recall、F1、mAP@0.5(记为 mAP50)与 mAP@0.5:0.95(记为 mAP50-95),其中 mAP 更侧重整体检出与定位质量,F1 更体现当前阈值配置下的“误检—漏检”平衡;同时给出 Params 与 FLOPs 用于解释轻量化与吞吐差异,便于后续在 Qt 桌面端做模型选型与权重热切换部署。
表 5-1 汇总了 n 系列与 s 系列的核心结果。整体上,n 系列中 YOLOv11n 取得最高的综合精度表现(Precision=0.679、F1=0.613、mAP50=0.587),且推理耗时(InfTime=9.44ms)明显优于更慢的 YOLOv9t/YOLOv7-tiny;而 YOLOv12n 在 mAP50-95 上达到 0.252,为本实验中定位质量最优的 n 系列模型,说明其对细粒度边界与难例的收益更突出,但端到端时延(约 15.75ms)也相应提高。s 系列中 YOLOv10s 与 YOLOv11s 的 F1 最为接近(0.616 vs 0.615),但 YOLOv11s 在 mAP50 与 mAP50-95 上更占优(0.585 / 0.248),更适合作为“精度优先”的部署版本;若以帧率优先,YOLOv8s 的 InfTime=7.66ms 在 s 系列最快,但精度上略低于 v10s/v11s。为方便读者直观看到不同版本在 F1 与 mAP50 的差异,图 5-1 给出了双条形对比,可直接用于论文插图与系统报告。
表 5-1 YOLOv5–YOLOv12 在布匹缺陷数据集上的对比结果(RTX 3070 Laptop GPU)
| 组别 | Model | Params(M) | FLOPs(G) | Pre(ms) | Inf(ms) | Post(ms) | Total(ms) | Precision | Recall | F1 | mAP50 | mAP50-95 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| n | YOLOv5nu | 2.6 | 7.7 | 1.90 | 7.73 | 1.31 | 10.94 | 0.649 | 0.515 | 0.575 | 0.541 | 0.214 |
| n | YOLOv6n | 4.3 | 11.1 | 2.17 | 6.78 | 1.39 | 10.34 | 0.620 | 0.424 | 0.504 | 0.477 | 0.187 |
| n | YOLOv7-tiny | 6.2 | 13.8 | 2.28 | 14.74 | 4.06 | 21.08 | 0.507 | 0.490 | 0.499 | 0.425 | 0.134 |
| n | YOLOv8n | 3.2 | 8.7 | 1.95 | 6.83 | 1.39 | 10.17 | 0.608 | 0.530 | 0.566 | 0.541 | 0.217 |
| n | YOLOv9t | 2.0 | 7.7 | 1.87 | 16.51 | 1.29 | 19.67 | 0.638 | 0.576 | 0.606 | 0.583 | 0.221 |
| n | YOLOv10n | 2.3 | 6.7 | 2.08 | 11.24 | 0.63 | 13.95 | 0.616 | 0.562 | 0.587 | 0.559 | 0.221 |
| n | YOLOv11n | 2.6 | 6.5 | 2.11 | 9.44 | 1.42 | 12.97 | 0.679 | 0.559 | 0.613 | 0.587 | 0.236 |
| n | YOLOv12n | 2.6 | 6.5 | 1.91 | 12.47 | 1.37 | 15.75 | 0.620 | 0.564 | 0.591 | 0.572 | 0.252 |
| s | YOLOv5su | 9.1 | 24.0 | 2.28 | 8.45 | 1.51 | 12.24 | 0.602 | 0.550 | 0.575 | 0.518 | 0.193 |
| s | YOLOv6s | 17.2 | 44.2 | 2.22 | 8.59 | 1.45 | 12.26 | 0.616 | 0.455 | 0.524 | 0.496 | 0.197 |
| s | YOLOv7 | 36.9 | 104.7 | 2.44 | 23.62 | 3.46 | 29.52 | 0.642 | 0.556 | 0.596 | 0.535 | 0.202 |
| s | YOLOv8s | 11.2 | 28.6 | 2.31 | 7.66 | 1.42 | 11.39 | 0.577 | 0.535 | 0.555 | 0.533 | 0.221 |
| s | YOLOv9s | 7.2 | 26.7 | 2.12 | 18.66 | 1.39 | 22.17 | 0.655 | 0.546 | 0.596 | 0.567 | 0.237 |
| s | YOLOv10s | 7.2 | 21.6 | 2.21 | 11.38 | 0.60 | 14.19 | 0.685 | 0.559 | 0.616 | 0.578 | 0.233 |
| s | YOLOv11s | 9.4 | 21.5 | 2.37 | 9.74 | 1.36 | 13.47 | 0.665 | 0.572 | 0.615 | 0.585 | 0.248 |
| s | YOLOv12s | 9.3 | 21.4 | 2.09 | 13.23 | 1.42 | 16.74 | 0.622 | 0.533 | 0.574 | 0.543 | 0.234 |

从类别层面的误差结构看,以 n 系列基线的验证输出为例,PR 曲线显示 Seam 的 AP 明显高于 Hole 与 Stitch(Seam=0.706、Hole=0.496、Stitch=0.426),这与样例中“接缝往往呈现更稳定的长条结构纹理”相一致,而缝补类更容易与复杂花纹或纹理断裂
混淆矩阵进一步揭示了当前系统的主要短板来自漏检:对 Hole、Stitch 的“被预测为 background”的比例较高(约 0.45 与 0.47),说明在弱对比与小目标条件下,模型倾向于保守输出以换取更高 Precision;与此同时,background 被预测为 Stitch 的比例偏高也提示“纹理伪缺陷”是主要误检来源之一。
F1-Confidence 曲线给出了一个较明确的阈值建议:全类最优 F1≈0.57 出现在 conf≈0.227 附近,这与桌面端默认 conf=0.25 非常接近,实际部署时可将缺省阈值微调到 0.23 左右,并将 IoU 与 NMS 策略联动,以在不显著牺牲 Precision 的情况下提高 Recall。
训练过程的收敛形态也与上述现象一致:训练损失随 epoch 稳定下降,mAP50 与 mAP50-95 在中后期进入平台期,Recall 在约 0.5 附近波动并难以继续上升,说明模型对难例与小目标的“检出触发”仍不充分,且在后期继续训练的边际收益有限。针对布匹缺陷“长尾 + 小目标 + 强纹理背景”的耦合难点,后续可优先从三条路径提升上限:其一,在数据侧强化对 Stitch 类的难例采样与增强策略(如更贴近纹理的颜色扰动、局部模糊/噪声与小尺度随机裁剪),并对类别不均衡引入重加权或 class-aware sampling;其二,在模型侧优先选择 YOLOv11n(轻量优先)或 YOLOv11s(精度优先)作为默认权重,同时把 YOLOv12n 作为“定位质量优先”的备选,以应对更苛刻的细粒度缺陷;其三,在系统侧把阈值调参、目标高亮与导出复盘结合起来,通过误检样本回流形成迭代闭环,从而把“曲线上的指标提升”转化为“产线可用的稳定体验”。
6. 系统设计与实现
6.1 系统设计思路
本系统面向布匹缺陷检测的离线质检与在线巡检两类场景,在架构上采用“表现与交互层—业务与会话管理层—推理与任务调度层—数据持久化层”的分层组织方式,以降低桌面端交互复杂度并保证推理链路的稳定可控。表现与交互层由 PySide6/Qt 客户端承载,界面采用左侧数据源与阈值控制、中央检测画面显示、右侧目标详情、底部记录与进度条的布局,使得输入选择、阈值调参、结果复核与导出归档能在同一屏幕内完成,减少产线人员的操作切换成本。
业务与会话管理层负责会话状态、用户配置与权限边界、模型信息与类别映射、以及多源输入的互斥调度与参数一致性维护,从而避免摄像头与视频等资源竞争导致的卡顿或帧流不稳定。Conf/IoU 等关键阈值通过统一的参数管理对象进行维护,并以 Qt 的信号与槽机制同步到推理与可视化侧,使用户调参能够即时反馈到候选框过滤、NMS 抑制、目标高亮与统计结果上,形成可解释、可复核的交互闭环。
推理与任务调度层采用事件驱动的帧流模型,将图片、视频与摄像头统一抽象为帧序列并进入异步队列,按“预处理—YOLO 推理—后处理—回传渲染”的顺序执行,以保证界面响应与推理吞吐之间的平衡。预处理统一缩放到 640×640 并完成归一化与张量转换,后处理阶段依据 Conf/IoU 进行过滤并执行 NMS,同时完成坐标还原后再叠加绘制到主视图;在长视频与实时摄像头场景中,系统以进度条与用时统计增强过程可感知性,并以可中止控制避免无效等待。
数据持久化层同时覆盖结构化与非结构化结果:检测记录、用户配置、模型信息等写入本地 SQLite 以支持历史检索与审计追溯;导出侧将 CSV、带框 PNG 与多帧 AVI 统一按时间戳命名归档,保证批量管理与复查定位的可操作性。该层还保留日志与监控接口,便于定位推理异常、媒体解码失败或权重切换导致的类别不一致等问题,从系统层面提升可维护性与长期运行稳定性。

图6-1 系统流程图
图注:系统从初始化加载配置与模型列表开始,统一处理图片/视频/摄像头帧流,完成 640×640 预处理、YOLOv5–YOLOv12 推理、Conf/IoU 过滤与 NMS,并将可视化、进度条与 CSV/PNG/AVI 导出(时间戳命名)闭环串联。

图6-2 系统设计框图
图注:框图体现四层边界与数据流向:Qt 客户端负责交互与可视化;业务层完成会话、源互斥、参数与统计;调度层完成帧分发、推理与后处理;数据层承接 SQLite 入库与文件归档,并支撑 CSV/PNG/AVI 批量导出与追溯。
6.2 登录与账户管理 — 流程图

图6-3 登录与账户管理流程图
图注:登录/注册以本地 SQLite 为持久化载体,登录成功后加载个性化配置(主题、默认模型、最近记录)进入主界面;失败分支在口令校验处闭环回退,并支持注销/切换账号以维持清晰的会话边界。
系统的账户管理流程强调“入口清晰、会话边界稳定、配置随用户而变”:应用启动后进入登录界面,用户可选择注册或直接登录,注册信息写入本地数据库形成持久化账户;登录阶段完成口令校验,失败分支回退到输入界面以保持交互闭环,成功后加载用户侧个性化配置(主题、默认模型与最近记录)并进入主界面,从而使账户体系与多源检测工作流自然衔接。进入系统后用户可修改口令与偏好设置,并支持注销或切换账号以完成会话收束,保证不同操作者的检测记录、导出行为与模型偏好在本地持久化层面相互隔离,满足桌面端多用户与长期运行的工程需求。
7. 项目资源链接
若您想获得博文中涉及的实现完整全部资源文件(包括测试图片、视频,py, UI文件,训练数据集、训练代码、界面代码等),这里见可参考博客与视频,已将所有涉及的文件同时打包到里面,点击即可运行,完整文件截图如下:

项目完整文件请见项目介绍及功能演示视频处给出:
完整项目及文档: https://newtopmat.feishu.cn/wiki/JPlww07mXiMdELkrvnlcPkiMnSb
功能效果展示视频:热门实战|《基于深度学习的布匹缺陷检测系统》YOLOv12-v8多版本合集:附论文/源码/PPT/数据集,支持图片/视频/摄像头输入、可视化界面、结果导出与权重切换
环境配置博客教程:https://deeppython.feishu.cn/wiki/EwnTwJ2H3iLF6VkNG6ccgZYrnvd;
或者环境配置视频教程:Pycharm软件安装视频教程;(2)Anaconda软件安装视频教程;(3)Python环境配置视频教程;
数据集标注教程(如需自行标注数据):数据标注合集
参考文献(GB/T 7714)
1 纺织工程学报. 基于深度学习的纺织物缺陷检测技术研究[J/OL]. 2024.
2 Silvestre-Blanes J, Albero-Albero T, Miralles I, et al. A Public Fabric Database for Defect Detection Methods and Results[J]. AUTEX Research Journal, 2019.
3 Computer Vision Group, University of Freiburg. TILDA Textile Texture-Database Version 1.0[EB/OL]. 1996.
4 阿里云天池. 布匹瑕疵检测数据集[EB/OL]. 2019.
5 Redmon J, Divvala S, Girshick R, et al. You Only Look Once: Unified, Real-Time Object Detection[C]//CVPR. 2016.
6 Ren S, He K, Girshick R, et al. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks[J/OL]. arXiv:1506.01497, 2015.
7 Liu W, Anguelov D, Erhan D, et al. SSD: Single Shot MultiBox Detector[C]//ECCV. 2016.
8 Lin T Y, Dollár P, Girshick R, et al. Feature Pyramid Networks for Object Detection[C]//CVPR. 2017.
9 Lin T Y, Goyal P, Girshick R, et al. Focal Loss for Dense Object Detection[C]//ICCV. 2017.
[10] Carion N, Massa F, Synnaeve G, et al. End-to-End Object Detection with Transformers[C]//ECCV. 2020.
[11] Tian Z, Shen C, Chen H, et al. FCOS: Fully Convolutional One-Stage Object Detection[C]//ICCV. 2019.
[12] Zhou X, Wang D, Krähenbühl P. Objects as Points[J/OL]. arXiv:1904.07850, 2019.
[13] Ge Z, Liu S, Wang F, et al. YOLOX: Exceeding YOLO Series in 2021[J/OL]. arXiv:2107.08430, 2021.
[14] Wang C Y, Bochkovskiy A, Liao H Y M. YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors[J/OL]. arXiv:2207.02696, 2022.
[15] Xu S, Wang X, Lv W, et al. PP-YOLOE: An evolved version of YOLO[J/OL]. arXiv:2203.16250, 2022.
[16] Zhao Y, Lv W, Xu S, et al. DETRs Beat YOLOs on Real-time Object Detection[J/OL]. arXiv:2304.08069, 2023.
[17] Wang A, Chen H, Liu L, et al. YOLOv10: Real-Time End-to-End Object Detection[J/OL]. arXiv:2405.14458, 2024.
[18] sunsmarterjie. YOLOv12: Attention-Centric Real-Time Object Detectors[EB/OL]. 2025.
[19] Li F, Xiao K, Hu Z, et al. Fabric defect detection algorithm based on improved YOLOv5[J]. The Visual Computer, 2024.
[20] 高敏, 邹阳林, 曹新旺. 基于改进YOLOv5模型的织物疵点检测[J]. 现代纺织技术, 2023, 31(4): 155-163.
[21] Fabric Defects Detection Using YOLOv8[C]. Springer, 2024.
[22] Jin Y, Liu X, Nan K, et al. A Real-Time Fabric Defect Detection Method Based on Improved YOLOv8[J]. Applied Sciences, 2025, 15(6): 3228.
[23] Ultralytics. YOLO12:以注意力为中心的目标检测[EB/OL]. 2025.
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)