基于深度学习的停车位检测系统(远距离视角)(YOLOv12完整代码+论文示例+多算法对比)
摘要:本文面向远距离视角(如高杆相机/停车场监控)构建一套基于深度学习的停车位检测与占用识别桌面系统,目标是在复杂透视、尺度变化与遮挡条件下实现稳定的实时检测与结果可追溯管理。系统提供数据与代码可下载,前端采用 PySide6/Qt 实现交互式工作流,支持图片/视频/本地摄像头输入与多源互斥切换;推理过程配套进度显示/处理进度条与耗时统计,检测结果可一键CSV 导出,并支持带框结果单帧 PNG / 多帧 AVI导出便于复核与汇报。为满足工程化落地,系统内置 SQLite 本地入库,提供登录/注册(可跳过)以实现会话级记录管理与权限隔离,同时支持模型选择/权重加载(.pt 热切换),在不同场景与算力条件下快速切换检测器并同步刷新类别与可视化配色。算法层面覆盖 YOLOv5–YOLOv12(共 8 种)模型,对比 mAP、F1、PR 与训练曲线等指标,给出远距离停车位场景下的精度-速度权衡与部署建议。文末提供完整工程与数据集。
功能效果展示视频:热门实战|《基于深度学习的停车位检测系统》YOLOv12-v8多版本合集:附论文/源码/PPT/数据集,支持图片/视频/摄像头输入、可视化界面、结果导出与权重切换
文章目录
1. 系统功能与效果
(1)登录注册:系统启动后提供登录、注册与跳过入口,用户可按需进入个人会话空间;登录态在本次运行周期内生效,用于隔离不同账号的检测记录与导出历史。进入主界面后,整体动线围绕概览页展开,可顺序进入图片检测、视频检测或摄像头检测,再到模型选择与导出视图完成复核闭环。历史记录与统计信息由本地 SQLite 管理,口令校验与一次性跳过机制兼顾体验与基础安全需求。
(2)功能概况:主界面采用左侧参数与数据源控制、中部结果显示、右侧目标详情、底部记录与进度的布局,使“选源、调参、看结果、查记录”始终保持在同一视野内。概览区会汇总最近一次检测的关键指标与耗时,便于用户快速判断当前配置是否稳定。底部检测记录支持跨页面共享,用户在不同输入源之间切换时仍能持续查看与回溯最新结果。
(3)选择模型:系统支持在本地选择权重文件完成模型切换,加载后会同步刷新类别名称与可视化配色,避免不同模型间类目不一致导致的误读。模型切换与参数设置保持轻量化交互,用户可以在不退出主流程的情况下完成对比测试。与界面主题相关的偏好项可本地保存,保证多次启动后的视觉一致性与操作习惯延续。
(4)图片检测:在图片输入场景中,用户选择单张或批量图片后可即时推理,并在主显示区叠加边界框、类别名与置信度完成结果直观呈现。阈值调节支持 Conf 与 IoU 的实时联动,配合目标选择与高亮机制,便于在密集车位与远距离小目标条件下快速定位关键对象。检测结果可按表格形式列出类别、位置与置信度等信息,并支持一键导出 CSV 以便后续统计与核验。
空车位检测效果
已泊车检测效果
(5)文件保存:系统将导出与归档作为统一的结果闭环,支持带框单帧 PNG 的快速留档与多帧结果的序列导出,便于复盘与汇报。所有导出文件采用时间戳命名并归入统一目录,保证可追溯性与批量管理效率。结合记录表的检索能力,用户可以按文件名快速定位对应检测批次并完成复查。
2. 绪论
2.1 研究背景及意义
在智慧交通与城市精细化治理的背景下,停车位资源的可感知与可调度正在从“人工巡检”走向“数据驱动”的实时管理范式。1 相比需要逐车位布设硬件的传统方案,基于视觉的停车位检测与占用判别能够显著降低改造成本,并天然支持对历史录像的回溯分析与事后取证。3
对于远距离视角(如高位固定监控、远端道路侧向摄像头或跨车道俯视镜头),系统往往要在更小的像素尺度上同时处理车位线、车位角点、车辆遮挡与背景纹理干扰等因素。4 这类场景对算法的鲁棒性提出更高要求,也直接影响到实际可用性:一方面,误报会造成“虚假空位”并引发导航与调度错误,另一方面,漏检会导致资源统计偏差并降低周转效率。3
因此,面向远距离视角构建一套端到端的深度学习停车位检测系统,不仅具有明确的工程价值,也具备研究意义:它能够将小目标检测、多尺度特征融合、跨域泛化与在线部署等问题汇聚到同一真实任务闭环中。12 同时,围绕可视化呈现、批量导出、可追溯记录与本地安全存储等系统能力的设计,有助于推动算法从“实验指标”走向“可用产品”。1
2.2 国内外研究现状
从任务链条看,停车感知可分为“车位几何定位”与“占用状态判别”两类核心问题。3 在停车诱导与管理系统中,早期研究常采用车位区域先验与分类器进行空满判别,并通过轻量化设计实现分布式或边缘侧部署。1 PKLot 等公开数据集推动了该方向的标准化评估,并通过多天气、多场地采集缓解了数据单一带来的偏置。2 (ScienceDirect)
面向“无需手工标注车位模板”的现实需求,部分工作开始将车位定位从静态标注转向“由车辆检测反推车位结构”的弱先验思路,并结合聚类与鸟瞰几何实现车位推断,从而提升对摄像机角度变更的适应性。3 (arXiv) 针对遮挡、非法停车与行人车辆穿行等复杂因素,研究也逐步强调时序稳定性与鲁棒性评估,使得方法从单帧检测走向“可持续运行”的工程设定。3
在检测器范式上,两阶段方法通过候选区域生成与精细分类回归在小目标与密集场景中仍具参考价值,但其推理链路更长且部署复杂度更高。5 单阶段方法以端到端效率优势成为实时系统常用选择,并在多尺度特征融合与类别不均衡优化方面形成了相对成熟的工程套路。7 随着 Transformer 检测器的发展,DETR 系列将集合匹配与端到端训练引入目标检测,为减少后处理依赖提供了新的路径。9
更贴近实时落地的工作聚焦于“精度—速度—部署”三者的边界推进:RT-DETR 在实时端到端检测上给出了具有代表性的速度与精度数据,并提供通过解码器层数调节速度的思路以适配不同算力预算。10 (arXiv) YOLO 系列则延续单阶段检测的工程优势,并在近两年的版本演进中强化了效率驱动的结构设计与 NMS-free 训练探索,从而降低推理时延并提升端到端部署一致性。12 (arXiv)
围绕本文“远距离视角停车位检测”的具体需求,现有研究趋势可以概括为三点:其一,强调对小目标与透视畸变的适配,常通过更强的多尺度特征表达与更稳健的定位损失来提升远端几何回归质量。[15] 其二,强调从“单模型指标”走向“系统闭环指标”,包括在线推理延迟、可视化交互成本与结果可追溯性等工程要素。10 其三,强调弱先验与自适应标注需求,尽可能减少对固定机位与静态模板的强依赖以降低维护成本。3
| 方法名称 | 范式/家族 | 典型数据集 | 关键改进技术(与本文难点关联) | 优势与局限性 | 关键性能指标(可追溯) |
|---|---|---|---|---|---|
| APSD-OC | 车辆检测 + 聚类推断车位 + 占用分类 | PKLot、CNRPark+EXT | 由车辆检测反推车位位置以降低对手工车位标注的依赖 | 适配机位变更但依赖足够的车辆观测与时序覆盖 | 报告“无需手工标注车位且具高效率与高占用分类准确率”3 (arXiv) |
| RT-DETR | Transformer 端到端检测 | COCO | 端到端实时 DETR,并支持通过解码器层数调速以适配部署 | 端到端一致性好但模型设计与训练更依赖工程细节 | RT-DETR-R50 在 COCO 上达 53.1% AP 且 T4 上 108 FPS10 (arXiv) |
| YOLOv10 | YOLO(NMS-free 训练 + 效率驱动设计) | COCO | 以一致双重分配实现 NMS-free 训练并减少冗余计算以降低延迟 | 端到端部署更友好但仍需结合具体硬件做量化评估 | YOLOv10-S 在相近 AP 下较 RT-DETR-R18 快 1.8× 且参数/FLOPs 更小12 (arXiv) |
| YOLOv12 | YOLO(实时友好架构 + 训练策略) | COCO | 在保持实时性的同时提升精度边界并强化工程可用性 | 需要结合任务域数据做再训练以保证远距离泛化 | YOLOv12-N 在 COCO 上 40.6% mAP 且 T4 上 1.64 ms 延迟[14] (arXiv) |
2.3 要解决的问题及其方案
(1)检测准确性与实时性:远距离视角下车位及其关键结构往往呈现“小目标、低对比、密集线段”的视觉形态,系统既要保证空满判别的可靠性,也要保证视频流推理的实时响应。
(2)环境适应性与泛化能力:不同停车场地材质、光照反射、雨雪雾与夜间补光会造成域偏移,且摄像机轻微移位就可能引入明显透视变化。
(3)桌面端交互的直观性与功能完整性:用户不仅关心检测结果,还需要对阈值、目标筛选与导出复查形成稳定工作流,从而支撑实用场景中的“快速定位与复核”。
(4)数据处理效率与存储安全性:在视频与批量图片检测中,结果记录、统计汇总与可追溯存储需要兼顾写入效率与本地安全,避免因日志膨胀或权限缺失导致的不可用。
(1)以 YOLO 系列为核心检测框架,围绕远距离小目标引入更稳健的多尺度特征表达与阈值策略,并对 YOLOv5 至 YOLOv12 进行横向对比以确定精度与时延的最优折中。
(2)基于 PyTorch 完成模型训练与推理封装,并与 PySide6/Qt 桌面端打通,实现“图片、视频与本地摄像头”多源输入的一致推理链路。
(3)提供模型权重热切换与类别信息同步刷新机制,结合可视化叠加、目标高亮与 CSV/可视化结果导出,形成可复查的交互闭环。
(4)通过缓存与批处理减少 IO 抖动,并采用本地数据库对账户与检测记录进行结构化管理,使结果可追溯且便于后续统计分析与安全审计。
2.4 博文贡献与组织结构
(1)综合文献综述:围绕远距离视角停车位检测的任务链条,归纳车位定位、占用判别与实时部署的关键技术路线,并给出与本文需求对应的性能权衡视角。
(2)深度学习模型的选择与优化:以 YOLO 系列为主线,结合多尺度检测与端到端效率诉求,给出模型对比与训练推理的一体化方案。
(3)美观友好的桌面端设计:面向真实使用流程设计 Qt 客户端交互,覆盖多源输入、阈值调节、目标筛选、记录管理与可追溯导出。
(4)算法效果对比分析与工程闭环:在统一数据与指标下对多版本模型进行对照实验,并将评测、可视化与存储导出纳入同一系统闭环,确保“指标可解释、结果可复核”。
后续章节安排如下:第 3 章介绍数据集处理与标注规范;第 4 章给出核心模型原理与针对远距离场景的设计要点;第 5 章进行多模型实验对比与误差分析;第 6 章阐述系统分层设计与 Qt 交互实现;第 7 章总结全文并展望未来工作方向。
3. 数据集处理
本文使用的停车位检测数据集为高分辨率航拍视角图像,共计 12415 张,覆盖典型停车场的成排车位、车辆密集停放、树荫遮挡与强光反射等真实干扰因素。在标注层面,远距离航拍常见的挑战是目标尺度小且排布规律强,容易出现相邻车位边界不清与遮挡导致的框偏移,因此数据清洗阶段需要保证标签与图像一一对应、重复或异常样本被剔除,并对极端模糊、严重过曝等影响监督信号的样本做一致性处理,以减少训练噪声对收敛稳定性的影响。标签及其对应中文名如下:
Chinese_name = {'space-empty': "空车位", 'space-occupied': "已泊车"}

数据集按训练集 8690 张、验证集 2483 张、测试集 1242 张划分,整体比例约为 70%/20%/10%,既保证了足够的训练覆盖,也为超参数选择与泛化评估保留了独立的验证与测试集合。结合标签可视化与分布相关性统计可以观察到,车位目标在图像平面上呈现明显的“成排聚集”结构,且框尺度整体偏小,位置分布受停车场布局与摄像机俯视角影响较强,这意味着模型不仅要学会局部纹理与边缘线索,还要具备对透视压缩与密集排列的稳定建模能力。为避免同一场景的近似样本泄漏到验证或测试导致评估偏乐观,划分策略建议以固定随机种子进行可复现划分,并尽可能在场景级别(如不同停车场或不同拍摄批次)保持集合间的相对独立,从而更贴近真实上线时的跨场景泛化要求。
在预处理阶段,为对齐部署侧的实时推理链路,图像统一进行尺度归一化并保持坐标一致性;针对航拍大图中小目标易被缩放“挤没”的问题,工程上可结合等比缩放与必要的切块策略,在不破坏车位排列结构的前提下提升有效分辨率。数据增强侧重点围绕远距离视角的关键难点展开:通过随机尺度与轻量透视扰动提升对俯视角变化与轻微机位偏移的鲁棒性,通过颜色抖动与曝光扰动缓解阴影、反光与日照变化带来的域偏移,通过随机模糊与噪声模拟压缩与远端成像退化,通过混合增强提升密集场景下的背景多样性;同时在增强过程中严格同步更新标注并约束裁剪后的目标可见比例,以降低遮挡与截断样本对回归学习的负面影响,最终为后续 YOLO 系列模型的精度对比与桌面端稳定部署提供一致的数据基础。
4. 模型原理与设计
本文默认以 YOLOv12 作为主线模型来完成远距离视角的停车位状态检测,其核心目标是在较小目标尺度、强透视压缩与密集排列的航拍场景下,同时获得可用的精度与可部署的实时性。整体范式仍属于单阶段检测器:输入图像经统一尺寸预处理后,网络在多尺度特征图上直接回归边界框并输出类别置信度,最终得到 c l a s s n a m e , ; b b o x ( x m i n , y m i n , x m a x , y m a x ) , ; s c o r e {class_name,;bbox(x_{min},y_{min},x_{max},y_{max}),;score} classname,;bbox(xmin,ymin,xmax,ymax),;score 的结构化结果并回映射到原图坐标系用于可视化叠加。与停车位任务的耦合点在于“小目标+密集”的双重压力会放大定位误差与阈值敏感性,因此网络需要更强的多尺度表达能力与更稳定的回归收敛特性,才能在成排车位与遮挡车辆并存时保持较低的漏检与误检。
从结构上看,YOLOv12 延续“骨干网络—颈部特征融合—检测头”的经典三段式设计,但其关键变化是将注意力机制以更工程友好的方式引入 YOLO 框架:论文提出的 Area Attention(A2)通过对特征图进行分区来保留较大感受野,同时避免复杂窗口操作带来的额外开销,并结合 FlashAttention 缓解注意力计算的内存访问瓶颈,从而在速度与建模能力之间取得折中。(arXiv) 注意力的一般形式可写为
A t t e n t i o n ( Q , K , V ) = S o f t m a x ( Q K ⊤ d ) V , \mathrm{Attention}(Q,K,V)=\mathrm{Softmax}\left(\frac{QK^\top}{\sqrt{d}}\right)V, Attention(Q,K,V)=Softmax(dQK⊤)V,
其中 Q , K , V Q,K,V Q,K,V 分别为查询、键和值特征, d d d 为通道维度(或嵌入维度)的缩放项;在远距离停车位场景中,注意力机制的价值在于增强对“长条车位线、相邻车位边界与车辆遮挡关系”的上下文建模。与此同时,YOLOv12 在特征聚合模块上提出 R-ELAN,用残差与更稳健的聚合路径提升深层网络的可优化性,这对密集目标的特征传递与梯度稳定尤为关键。(arXiv) 网络关键模块示意图:`
在任务建模与损失设计上,停车位检测可视为两类目标检测问题,训练时通常由分类损失与回归损失共同驱动,前者强调“空车位/已泊车”的判别可靠性,后者决定车位框的几何贴合程度。边界框回归常以 IoU 家族损失作为主导,其基本定义为
I o U ( B , B g t ) = ∣ B ∩ B g t ∣ ∣ B ∪ B g t ∣ , \mathrm{IoU}(B,B^{gt})=\frac{|B\cap B^{gt}|}{|B\cup B^{gt}|}, IoU(B,Bgt)=∣B∪Bgt∣∣B∩Bgt∣,
其中 B B B 为预测框, B g t B^{gt} Bgt 为真实框;在远距离小目标下,单纯 IoU 容易对中心偏移不敏感,因此常引入 CIoU 等改进项以同时约束重叠、中心距离与宽高比:
L ∗ C I o U = 1 − I o U + ρ 2 ( b , b g t ) c 2 + α v , \mathcal{L}*{\mathrm{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,
其中 ρ ( ⋅ ) \rho(\cdot) ρ(⋅) 表示两框中心点欧氏距离, c c c 为最小外接框对角线长度, v v v 描述宽高比差异, α \alpha α 为平衡系数。(arXiv) 另一类更“显式”的回归约束是 EIoU,它在中心距离项之外直接对宽高差进行惩罚,使得收敛更直接:
L ∗ E I o U = 1 − I o U + ρ 2 ( b , b g t ) c 2 + ( w − w g t ) 2 c w 2 + ( h − h g t ) 2 c h 2 , \mathcal{L}*{\mathrm{EIoU}} = 1-\mathrm{IoU}+\frac{\rho^2(\mathbf{b},\mathbf{b}^{gt})}{c^2}+\frac{(w-w^{gt})^2}{c_w^2}+\frac{(h-h^{gt})^2}{c_h^2}, L∗EIoU=1−IoU+c2ρ2(b,bgt)+cw2(w−wgt)2+ch2(h−hgt)2,
其中 w , h w,h w,h 与 w g t , h g t w^{gt},h^{gt} wgt,hgt 分别为预测框与真值框的宽高, c w , c h c_w,c_h cw,ch 为最小外接框在宽与高方向的尺度,用于归一化。(arXiv) 对本文这类“密集且相互紧邻”的车位目标,上述损失的意义在于减少框漂移导致的相互干扰,从源头降低后处理阶段的误抑制风险。
训练与正则化层面,为贴合工程部署,本文默认将输入尺度、阈值策略与推理后处理保持一致:训练阶段通过多尺度与颜色扰动提升对光照变化、阴影与反光的鲁棒性,通过轻量几何扰动增强对航拍视角与轻微机位变化的适配;同时结合 Batch Normalization、权重衰减与学习率退火等常用策略稳定收敛,并通过验证集监控过拟合与阈值敏感性。推理阶段则以置信度阈值 τ c o n f \tau_{conf} τconf 进行初筛,再用 NMS 处理密集重叠框:对同类候选框按分数排序,保留最高分框 B i B_i Bi,并抑制所有满足 I o U ( B i , B j ) > τ n m s \mathrm{IoU}(B_i,B_j)>\tau_{nms} IoU(Bi,Bj)>τnms 的框 B j B_j Bj,从而在“车位成排且框间相互贴近”的场景下平衡召回与误检。对于远距离停车位任务,实践中更建议将 τ c o n f \tau_{conf} τconf 与 τ n m s \tau_{nms} τnms 作为可交互参数(对应系统中的 Conf/IoU 滑块)进行场景化调优:车位尺度更小、更密集时适度降低 τ c o n f \tau_{conf} τconf 以保召回,并谨慎提高 τ n m s \tau_{nms} τnms 以减少相邻车位的互相抑制。
5. 实验结果与分析
本章以 ParkingSpaces 航拍远距离视角数据集为对象,在同一硬件与推理链路下,对 YOLOv5–YOLOv12 的轻量化配置进行了对比评测,其中 n_type 组包含 yolov5nu、yolov6n、yolov7-tiny、yolov8n、yolov9t、yolov10n、yolo11n、yolo12n,s_type 组包含 yolov5su、yolov6s、yolov7、yolov8s、yolov9s、yolov10s、yolo11s。评测指标涵盖 Precision、Recall、F1、mAP50、mAP50-95,并统计端到端时延(PreTime+InfTime+PostTime);实验环境为 NVIDIA GeForce RTX 3070 Laptop GPU(8GB)。总体上,两组模型在 mAP50 与 F1 上均接近“天花板”,说明该数据集的类别区分(空车位/已泊车)在当前标注与训练设置下可被充分学习,此时模型选择更应关注 mAP50-95(定位质量)、Recall(漏检风险)以及推理时延(桌面端与视频流实时性)。
从 n_type 组看,mAP50 基本稳定在 0.991–0.998 区间,F1 多数高于 0.994,但 mAP50-95 的差异更能反映“远距离小目标定位”的真实难度:YOLOv9t 与 YOLOv10n 在 mAP50-95 上分别达到 0.9908 与 0.9903,表现出更稳健的高 IoU 定位能力;相对地,YOLOv7-tiny 虽然 mAP50 达到 0.9981,但 mAP50-95 仅为 0.9564,呈现“低门槛 IoU 下检测很准、严格 IoU 下定位偏松”的典型特征,这在车位成排密集场景中更容易带来框漂移、相邻车位互扰以及后处理抑制的连锁误差。结合训练曲线与平均 PR 曲线(你提供的曲线图),各模型在前 10–15 个 epoch 即迅速收敛并长期稳定,PR 曲线整体贴近右上角,差异主要体现在极高召回段的尾部,这与表中 Recall 的细微差别一致,其中 YOLOv12n 的 Recall 相对偏低(0.9865),导致其 F1 与 mAP50 同步略降,更适合“宁可少报也要稳”的保守阈值场景,而不适合作为以召回为优先的空位统计主模型。
从 s_type 组看,mAP50-95 全体集中在 0.9877–0.9947,且 F1 基本在 0.9983–0.9990 的窄区间内波动,说明在该数据规模与两类任务设定下,s 组的主要收益更多体现在“更稳的严格 IoU 定位”而非 mAP50 的显著提升。值得注意的是,YOLOv10s 与 YOLOv9s 在 mAP50-95 上分别达到 0.99468 与 0.99460,定位质量最强,但其推理时延差异较大:YOLOv9s 的 InfTime 为 18.66ms,端到端约 22.17ms,更偏向离线批处理或低帧率场景;YOLOv8s 的端到端时延约 11.39ms,却能维持 0.9941 的 mAP50-95 与 0.9988 的 F1,在“桌面端实时预览 + 可交互阈值调参”的系统目标下更均衡。另一个工程上更“好用”的细节是 YOLOv10 系列的 PostTime 明显更低(n 组 0.63ms、s 组 0.60ms),在多框密集的车位场景中能减少后处理开销,对 Qt 端持续刷新与录像导出时的帧间稳定性更友好。
为便于横向比较,表 5-1 汇总了各模型的精度、定位与端到端时延(ms);当指标整体接近饱和时,建议将模型选择策略从“只看 mAP50”转向“mAP50-95 + Recall + 时延”的三目标折中:若以实时交互为优先,可优先考虑 YOLOv8n/YOLOv6n(n 组)或 YOLOv8s(s 组);若以严格定位与导出复核为优先,可考虑 YOLOv9t/YOLOv10n(n 组)或 YOLOv10s(s 组),并在系统侧通过 Conf/IoU 滑块与目标高亮复核降低密集场景的误抑制风险。最后,从结果几乎“贴顶”的现象出发,后续若要更客观地区分模型能力,建议在数据划分上引入更强的跨场景隔离(按停车场/航线批次划分),并增加夜间、雨雪、强反光与更大俯仰角的样本占比,以放大远距离小目标与域偏移带来的真实差异。
| 组别 | 模型 | Params(M) | FLOPs(G) | 端到端时延(ms) | Precision | Recall | F1 | mAP50 | mAP50-95 |
|---|---|---|---|---|---|---|---|---|---|
| n_type | YOLOv5nu | 2.6 | 7.7 | 10.94 | 0.9986 | 0.9910 | 0.9948 | 0.9925 | 0.9798 |
| n_type | YOLOv6n | 4.3 | 11.1 | 10.34 | 0.9983 | 0.9985 | 0.9984 | 0.9945 | 0.9851 |
| n_type | YOLOv7-tiny | 6.2 | 13.8 | 21.08 | 0.9984 | 0.9987 | 0.9985 | 0.9981 | 0.9564 |
| n_type | YOLOv8n | 3.2 | 8.7 | 10.17 | 0.9985 | 0.9934 | 0.9959 | 0.9946 | 0.9860 |
| n_type | YOLOv9t | 2.0 | 7.7 | 19.67 | 0.9986 | 0.9987 | 0.9987 | 0.9947 | 0.9908 |
| n_type | YOLOv10n | 2.3 | 6.7 | 13.95 | 0.9960 | 0.9959 | 0.9960 | 0.9946 | 0.9903 |
| n_type | YOLOv11n | 2.6 | 6.5 | 12.97 | 0.9984 | 0.9984 | 0.9984 | 0.9946 | 0.9867 |
| n_type | YOLOv12n | 2.6 | 6.5 | 15.75 | 0.9987 | 0.9865 | 0.9925 | 0.9910 | 0.9859 |
| s_type | YOLOv5su | 9.1 | 24.0 | 12.24 | 0.9989 | 0.9987 | 0.9988 | 0.9947 | 0.9932 |
| s_type | YOLOv6s | 17.2 | 44.2 | 12.26 | 0.9985 | 0.9989 | 0.9987 | 0.9947 | 0.9933 |
| s_type | YOLOv7 | 36.9 | 104.7 | 29.52 | 0.9989 | 0.9990 | 0.9990 | 0.9979 | 0.9877 |
| s_type | YOLOv8s | 11.2 | 28.6 | 11.39 | 0.9987 | 0.9989 | 0.9988 | 0.9949 | 0.9941 |
| s_type | YOLOv9s | 7.2 | 26.7 | 22.17 | 0.9990 | 0.9988 | 0.9989 | 0.9949 | 0.9946 |
| s_type | YOLOv10s | 7.2 | 21.6 | 14.19 | 0.9981 | 0.9986 | 0.9983 | 0.9949 | 0.9947 |
| s_type | YOLOv11s | 9.4 | 21.5 | 13.47 | 0.9989 | 0.9989 | 0.9989 | 0.9949 | 0.9941 |
6. 系统设计与实现
6.1 系统设计思路
本文系统以“桌面端实时交互 + 深度学习推理闭环”为总体目标,采用分层架构组织功能边界:表现与交互层以 PySide6/Qt 客户端为核心,负责多源输入选择、阈值滑块与导出按钮等交互控件,并在中心视图完成检测框叠加与目标高亮;业务与会话管理层维护登录会话、用户偏好、当前模型与阈值状态,并对“检测记录—导出任务—统计汇总”进行编排;推理与任务调度层承接媒体接入与帧分发,将统一预处理、YOLO 推理与后处理串联为稳定流水线;数据持久化层则以本地 SQLite 管理账户与检测记录,并将 CSV/PNG/AVI 等结果以时间戳命名方式归档,形成可追溯的数据闭环。
跨层协同的关键在于“事件驱动的帧流 + 一致的参数同步”。对于图片场景,推理任务以单次触发为主;对于视频与摄像头场景,系统通过事件驱动的帧读取机制持续推送数据,并以异步队列或任务调度方式避免界面线程阻塞,从而保证进度条、耗时显示与画面刷新稳定一致。Conf/IoU 阈值作为全局状态在业务层统一维护,推理层在后处理阶段读取同一份阈值配置以执行过滤与 NMS,并将结果回传给前端用于绘制与表格更新;输入源之间采用互斥策略,确保同一时刻仅有一种帧流处于活跃状态,避免多源并发导致的显存抖动与记录混写。
系统的可扩展性主要通过“模型权重热切换 + 导出与统计的模块化”体现:模型切换在业务层完成权重装载与类别信息刷新,并在可视化层同步更新配色与标签显示,保证不同模型间的结果解释一致;导出侧将单帧 PNG、多帧 AVI 与 CSV 统计统一纳入导出编排流程,按批次与时间戳归档以便追溯与回放。异常恢复方面,系统在媒体源断开、推理失败或导出失败时应返回可诊断的状态与提示,并保证会话配置、最近记录与导出索引仍能被恢复加载,从而提升桌面端长期运行的稳定性。

图 6-1 系统流程图
图注:流程从系统初始化与输入源选择开始,经 640×640 预处理、YOLOv5–YOLOv12 推理与后处理(Conf/IoU 过滤、NMS、坐标还原),驱动前端叠加显示、目标高亮与统计,并在帧流循环中更新记录与进度条,支持 CSV/PNG/AVI 的统一导出与时间戳命名。

图 6-2 系统设计框图
图注:框图体现四层边界与数据流向:Qt 客户端负责展示与交互;业务与会话层统一管理模型、阈值、记录与导出编排;推理与调度层以事件驱动帧流组织预处理、推理与后处理;数据层完成账户/记录入库、CSV 导出与文件归档,同时为日志与可扩展接口预留通道。
6.2 登录与账户管理 — 流程图

图 6-3 登录与账户管理流程图
图注:流程覆盖登录/注册/跳过的入口与会话生效范围:注册写入本地数据库形成账户记录;登录完成口令校验并加载个性化配置;进入主界面后可修改资料并支持注销或切换账号,使账户体系与检测记录、导出归档形成一致的权限与数据边界。
登录与账户管理的实现价值并不在于复杂的权限体系,而在于为“检测闭环”提供清晰的会话边界与可追溯的数据组织方式:系统启动后进入登录界面,用户可选择注册或直接登录,注册信息写入本地数据库形成账户记录;登录阶段完成口令校验后,系统加载用户的主题、默认模型与最近检测记录,使进入主界面后的多源检测、阈值调节与导出行为都能被稳定归档到同一会话上下文中;当用户在主界面进行资料修改或切换账号时,会话状态被显式更新并与检测记录、导出索引保持一致,从而避免不同账号间的记录混淆,并提升桌面端长期使用时的可维护性与审计友好性。
7. 项目资源
若您想获得博文中涉及的实现完整全部资源文件(包括测试图片、视频,py, UI文件,训练数据集、训练代码、界面代码等),这里见可参考博客与视频,已将所有涉及的文件同时打包到里面,点击即可运行,完整文件截图如下:

本文涉及到的完整全部程序文件:包括环境配置文档说明、python源码、数据集、训练代码、UI文件、测试图片视频等:
详细介绍文档博客: 40-ParkingSpacesDetection-基于深度学习的停车位检测系统
功能效果展示视频:热门实战|《基于深度学习的停车位检测系统》YOLOv12-v8多版本合集:附论文/源码/PPT/数据集,支持图片/视频/摄像头输入、可视化界面、结果导出与权重切换
环境配置博客教程:https://deeppython.feishu.cn/wiki/EwnTwJ2H3iLF6VkNG6ccgZYrnvd;
或者环境配置视频教程:Pycharm软件安装视频教程;(2)Anaconda软件安装视频教程;(3)Python环境配置视频教程;
数据集标注教程(如需自行标注数据):数据标注合集
参考文献(GB/T 7714)
1 AMATO G, CARRARA F, FALCHI F, et al. Deep learning for decentralized parking lot occupancy detection[J]. Expert Systems with Applications, 2017, 72: 327-334.
2 ALMEIDA P R, OLIVEIRA L S, BRITTO A S Jr, et al. PKLot—A robust dataset for parking lot classification[J]. Expert Systems with Applications, 2015, 42(11): 4937-4949.
3 GRBIĆ R, KOCH B. Automatic Vision-Based Parking Slot Detection and Occupancy Classification[EB/OL]. arXiv:2308.08192, 2023.
4 WONG G S, GOH K O M, TEE C, et al. Review of Vision-Based Deep Learning Parking Slot Detection on Surround View Images[J]. Sensors, 2023, 23(15): 6869.
5 REN S Q, HE K M, GIRSHICK R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(6): 1137-1149.
6 LIU W, ANGUELOV D, ERHAN D, et al. SSD: Single Shot MultiBox Detector[C]//European Conference on Computer Vision. Cham: Springer, 2016: 21-37.
7 LIN T Y, GOYAL P, GIRSHICK R, et al. Focal Loss for Dense Object Detection[C]//IEEE International Conference on Computer Vision. 2017: 2980-2988.
8 TAN M X, PANG R M, LE Q V. EfficientDet: Scalable and Efficient Object Detection[C]//IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 10781-10790.
9 CARION N, MASSA F, SYNNAEVE G, et al. End-to-End Object Detection with Transformers[C]//European Conference on Computer Vision. Cham: Springer, 2020: 213-229.
10 ZHAO Y, LV W, XU S, et al. DETRs Beat YOLOs on Real-time Object Detection[C]//IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2024.
11 WANG C Y, YEH I H, LIAO H Y M. YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information[C]//European Conference on Computer Vision. 2024.
12 WANG A, CHEN H, LIU L H, et al. YOLOv10: Real-Time End-to-End Object Detection[EB/OL]. arXiv:2405.14458, 2024.
[13] KHANAM R. YOLOv11: An Overview of the Key Architectural Enhancements[EB/OL]. arXiv:2410.17725, 2024.
[14] TIAN Y, YE R, SU H, et al. YOLOv12: Attention-Centric Real-Time Object Detectors[EB/OL]. arXiv:2502.12524, 2025.
[15] ZHENG Z H, WANG P, LIU W, et al. Distance-IoU Loss: Faster and Better Learning for Bounding Box Regression[C]//AAAI Conference on Artificial Intelligence. 2020, 34(7): 12993-13000.
[16] REZATOFIGHI H, TSOI N, GWAK J, et al. Generalized Intersection over Union: A Metric and A Loss for Bounding Box Regression[C]//IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2019: 658-666.
[17] 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[EB/OL]. arXiv:2207.02696, 2022.
[18] 邹庆萍, 朱迪, 马亮, 等. 基于深度学习的停车场车位检测研究[J]. 现代工程, 2023(1): 22-24.
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)