最新YOLO实现的石头剪刀布手势识别实时检测平台(Flask+SocketIO+HTML_CSS_JS)
摘要
本文面向“石头-剪刀-布”手势识别的实时目标检测场景,基于Flask + Flask-SocketIO + HTML/CSS/JS构建Web 网页界面,后端集成 YOLOv5–YOLOv12(8 种)统一推理与评测管线,支持图片/视频/浏览器摄像头三类输入与双画面对比展示。系统提供进度控制(视频同步双帧、暂停/继续/停止)、Conf/IoU 调节与类别筛选,并支持CSV 导出、带框结果一键下载、SQLite 入库与跨会话历史检索。Web 端包含登录/注册(可跳过)、模型选择/权重上传、最近记录快速定位与导出视图;训练评测侧对比 mAP、F1、PR 与训练曲线,覆盖延迟、参数量与显存占用可视化;同时给出轻量化与部署设置以满足边缘实时性需求。平台以可复用工程化模板交付,涵盖前后端与数据处理脚本,支持一键切换模型与在线调参,便于在工业/教育/竞赛等场景快速复现。文末提供完整工程与数据集下载链接。
讲解视频地址:基于深度学习的石头剪刀布手势识别(Web系统+完整项目分享+数据集+多YOLO模型)
YOLOv12-v11/v10/v9/v8/v7/v6/v5系统(八个模型,含说明论文)合集下载:https://mbd.pub/o/bread/YZWck59pag==
说明论文下载:https://mbd.pub/o/bread/YZWck5xqZg==
YOLOv12下载:https://mbd.pub/o/bread/YZWbmppsZA==
YOLOv11下载:https://mbd.pub/o/bread/YZWbm5pqaw==
YOLOv10下载:https://mbd.pub/o/bread/YZWbm5lrag==
YOLOv9下载:https://mbd.pub/o/bread/YZWbmp9xZw==
安装与教程文档:https://deeppython.feishu.cn/wiki/A5Hcw7VVKi9LA1kkaWRc8myDnwg
@
1. 网页功能与效果
(1)登录注册:提供登录、注册与一次性“跳过”三种入口;登录态在当前会话及同浏览器多页签生效,可随时注销与切换账号。口令仅做哈希存储与最小化会话信息,保障基础安全;跳过模式不写入敏感数据但保留当次操作记录。

(2)功能概况:遵循“概览 → 图片检测 / 视频检测 / 摄像头检测 → 模型选择 → 导出视图”的动线,支持左右等宽双画面对比与16:9自适应。内置Conf/IoU调节、类别筛选、CSV导出与带框结果一键下载,并将关键元数据写入SQLite以便跨页检索与追溯。

(3)视频检测:实现同步双帧渲染与进度、暂停、继续、停止控制,支持关键帧拖拽与时间轴快速定位。浏览器端推理与后处理结果可缓冲并导出为MP4,支持帧间统计与误检高亮,保证观测一致性。

(4)更换模型:上传权重即可热切换当前YOLO模型,类别列表与阈值面板同步刷新,无需重启服务。路径规范跨平台兼容、数据库自动迁移确保升级不中断;页面标题与品牌元素可编辑并本地持久化。

(5)概览界面:以卡片化总览最近记录、会话性能(FPS/延迟)与存储占用,支持关键词检索与按文件名高亮定位。提供一键跳转至图片/视频/摄像头检测与导出视图的快捷入口,便于在多任务场景下快速回到工作流。

2. 绪论
2.1 研究背景与意义
面向人机协同的实时视觉理解正从“离线识别”转向“在浏览器端/边缘端即可完成的交互式检测”,而目标检测技术在这一迁移中承担着从像素到语义的关键桥梁 1。Transformer 检测范式的出现进一步打破了传统流水线中对启发式后处理(如 NMS)的依赖,为构建端到端、低时延的在线检测系统提供了新路径 2。在手势场景中,尤其是“石头-剪刀-布”这类类别间外观相似、动作边界模糊且常伴随自遮挡的任务,既要保证检测与分类的一致性,又要在消费级设备上满足 30–60 FPS 的实时性与交互响应 3。公开的 HaGRID 等大规模手势数据集证明了在自然光照、远近尺度与遮挡条件下进行鲁棒检测的现实需求与可行性,也为统一训练与评测基准奠定了基础 4。同时,Rock-Paper-Scissors 这类小型开源数据集广泛用于原型验证与教学实践,使得从算法到系统快速闭环成为可能 5。
2.2 国内外研究现状
在任务层面,手势检测面临多重挑战:手型外观高度相似导致类间可分性不足,自遮挡/互遮挡与强光反射引起的判别证据缺失,远近尺度变化带来的小目标召回问题,以及在浏览器或轻量边缘端的实时性约束 3。大规模、多主体、跨场景的 HaGRID 统计进一步揭示了数据分布的长尾特性和环境变化对模型稳健性的压力,这要求检测器在特征表达、标签分配与损失设计上兼顾鲁棒性与效率 4。针对教学与演示需求,Rock-Paper-Scissors 数据集常被用于算法快速迭代与系统联调,便于在有限样本上验证端到端流程与可视化交互 5。
方法上,主流检测范式从两阶段与锚框驱动,逐步演进到 Anchor-free 与 Transformer 端到端框架,侧重点分别在于候选生成/分类回归的解耦、特征金字塔的高效融合与训练目标的稳定收敛 1。Anchor-free 的 FCOS 以逐像素回归替代锚框匹配,简化超参并提升小目标适配性 13;RetinaNet 通过 Focal Loss 缓解前景-背景极端不均衡,在密集检测上显著提升精度 14;EfficientDet 则以 BiFPN 与复合缩放在“精度–效率”边界上取得均衡,为低时延应用提供了工程参考 15。
Transformer 检测方面,DETR 用集合匹配与端到端训练消除了多阶段组件,但早期变体在收敛与时延上存在折中 2。RT-DETR 以混合编码器与不确定性引导的查询选择,在 T4 上实现 53% AP 与百帧级 FPS 的实时端到端检测,验证了 NMS-free 方案在工程上的可行性与稳定性 12。这一路线对浏览器/边缘端低时延部署尤具吸引力,因为其省去了难以调参的后处理并减少了推理路径中的同步瓶颈 12。
以 YOLO 家族为代表的单阶段检测在轻量高效方面持续推进:YOLOv7 通过“可训练的免费增强”与解耦头等设计在 COCO 上取得 56.8% AP 的实时表现 6;YOLOv8 在架构与训练流程上做了系统优化,强化了易用性与多任务统一接口,适合工程落地 7;YOLOv9 提出 PGI 与 GELAN,在轻量网络上提升信息利用效率 8;YOLOv10 从“一致双重分配”等策略出发,构建 NMS-free 训练并在延迟–精度权衡上优于同尺寸运行时方案 9;YOLO11 延续通用性与易部署特征,在推理路径与工具链上进一步完善,便于跨平台落地 10;最新的 YOLOv12 以注意力为中心的设计,在 T4 上实现 nano 级别 1.64 ms 推理与 40.6% mAP,显示出在保持实时性的前提下引入高效注意力模块的潜力 11。与此同时,产业界与社区在 ONNX/TensorRT 的量化、裁剪与算子融合方面持续演进,为上述模型提供端到端加速与统一部署路径 19。TensorRT 针对 INT8/FP8 等低比特精度的量化支持,进一步压缩延迟与功耗,惠及浏览器摄像头–后端推理–前端可视闭环 20。国内在基于 YOLO 的手势检测上亦有实践,聚焦轻量化改造、注意力融合与损失函数改进,以满足实际系统的实时性与鲁棒性需求 21,22。
方法对比表(节选)
| 方法 | 范式/家族 | 数据集 | 关键改进技术 | 优势与局限性 | 关键指标(mAP/延迟/参数) | 适用场景或难点 | 参考 |
|---|---|---|---|---|---|---|---|
| YOLOv7 | YOLO/单阶段 | COCO | 可训练的 BoF、解耦头 | 速度–精度均衡,训练细节复杂 | AP 56.8%(V100 ≥30 FPS) | 通用实时检测 | 6 |
| YOLOv10-S | YOLO/单阶段(NMS-free 训练) | COCO | 一致双重分配、架构整体优化 | 端到端低延迟;实现细节依赖训练策略 | 同精度下较 RT-DETR-R18 快 1.8× | 在线推理/低延迟 | 9 |
| YOLO11 | YOLO/单阶段 | — | 训练与工具链完善 | 文档完备,易部署;官方未给权威论文指标 | — | 工程落地/多任务 | 10 |
| YOLOv12-N | YOLO/注意力中心 | COCO | R-ELAN、区域注意力、FlashAttention | 注意力提升精度且保持实测毫秒级 | mAP 40.6%,T4 1.64 ms | 高频交互/边缘端 | 11 |
| RT-DETR-R50 | Transformer/端到端 | COCO | 混合编码器、UMQ 选择 | NMS-free,高 FPS;模型相对较大 | 53.1% AP,T4 108 FPS | 端到端部署 | 12 |
| YOLOv6-S | YOLO/单阶段 | COCO | 硬件友好型骨干、训练优化 | 极高吞吐;对细小目标需再调优 | 43.5% AP,495 FPS(V100) | 低算力/高帧率 | 16 |
| PP-YOLOE-L | Anchor-free 单阶段 | COCO | TAL 分配、CSPRepResStage、ET-Head | 精度/速度优秀,部署友好 | 51.4% AP,78.1 FPS;TRT 149 FPS | 工业级实时 | 18 |
| FCOS | Anchor-free 单阶段 | COCO | 像素级回归、无锚框 | 简化超参,小目标友好;仍需 NMS | AP 44.7% | 小目标/密集场景 | 13 |
| RetinaNet | 单阶段 | COCO | Focal Loss | 缓解样本不均衡;推理较早期版本偏慢 | AP 39.1%,约 5 FPS | 密集检测基线 | 14 |
| EfficientDet-D7 | 单阶段 | COCO | BiFPN、复合缩放 | 参数/算力效率高;高阶模型较重 | AP 52.6%(单模单尺度) | 云端/高精度 | 15 |
2.3 要解决的问题及其方案
(1)准确性与实时性的统一:在类间相似与遮挡条件下保持高 F1/mAP,同时在浏览器摄像头与视频流上稳定达到 30–60 FPS 的端到端时延目标 11。(2)环境适应与泛化:面向自然光照、远近尺度与长尾分布,提升对反光、遮挡与背景干扰的鲁棒性 4。(3)网页端交互与完整功能:图片/视频/摄像头三源合一的双画面对比、进度与暂停控制、Conf/IoU 调节与类别筛选、CSV/带框结果导出及 SQLite 入库的一体化体验 7。(4)数据效率与安全:支持可追溯记录、登录/注册与会话管理,以及训练评测全链条数据的高效管理与可导出审计 19。对应方案为:(1)以 YOLOv12 为核心模型,联合 YOLOv5–YOLOv12 的统一推理评测,对比 mAP/F1/PR 与延迟,并结合 PGI/高效注意力等策略提升辨析性 11;(2)采用多尺度增强、迁移学习与标签分配优化,针对小目标与遮挡进行难例挖掘与损失调度 18;(3)以 Flask+Flask-SocketIO/HTML/CSS/JS 构建 Web 端,提供图片/视频/摄像头即时双画面对比、同步双帧与进度控制,并打通模型热切换与权重上传 7;(4)工程侧接入 ONNX/TensorRT 的 INT8/FP16 量化与图优化,结合会话与权限控制,保证端到端低时延、稳定与可审计的部署闭环 19,20。
2.4 博文贡献与组织结构
本文围绕“石头-剪刀-布”手势的实时检测,给出覆盖 YOLOv5–YOLOv12 的统一训练/推理/评测体系,并以 Flask+SocketIO 构建可直接使用的 Web 端平台,支持三源输入、双画面对比、进度控制、CSV/带框结果导出与 SQLite 入库,形成从算法到系统的闭环实现 7。文中系统梳理 YOLO 与 Transformer 检测在本任务的适配性与工程取舍,提供 mAP、F1、PR、训练曲线与延迟/参数量等对比,并结合量化/部署策略给出可复现的实测路径 12。文章组织如下:第 3 章给出数据处理与统计;第 4 章从 YOLOv12 出发介绍模型原理与设计;第 5 章报告实验与分析;第 6 章阐述系统设计实现与可下载流程/结构图;第 7 章总结与展望 11。
3. 数据集处理
本研究采用提供的“石头/剪刀/布(Rock/Paper/Scissors)”三类手势检测数据,共计 11,886 张图像,划分为训练集 10,953 张、验证集 604 张与测试集 329 张,分别约占 92.15%、5.08% 与 2.77%;为保证复现,默认使用固定随机种子(如 42,可在工程中配置)。标注采用 YOLO 格式,即每个目标以类别 id 与归一化的中心点坐标 \((x,y)\) 及框宽高 \((w,h)\in[0,1]\) 表示;你给出的散点/直方图联图显示 \(x,y\) 主要分布于中区(约 0.2–0.8),而 \(w,h\) 呈右偏分布,反映多数手势目标相对画幅较小且尺度波动明显。样例拼贴图覆盖了室内外、强背光与运动模糊等复杂情景,包含单/多手目标、部分遮挡与肤色/背景多样性;训练预览中可见 Mosaic/拼接、随机擦除/遮挡等增强痕迹以及检测框叠加效果,说明数据已具备较强的域随机性与干扰模式丰富度,能有效支撑模型对尺度变化、反光与自遮挡的鲁棒学习。

在预处理与增强方面,数据流以统一的尺寸归一与长宽比自适应为起点,训练阶段建议保留你示例中的 Mosaic/RandomAffine、颜色抖动(HSV/亮度/对比度)、随机裁剪与随机遮挡(CoarseDropout)等策略,以覆盖手部姿态与背景的域漂移;对小目标与远距离样本,可引入多尺度训练与较高分辨率批次间交替以提升召回。清洗环节推荐执行标注边界裁剪与越界修复、重复图与高度相似图去重、空框/重叠异常检测(基于 IoU 与面积阈值)以及类别一致性校验;为支持后续误检溯源与在线评估,所有样本的元数据(图像名、类别计数、框面积分位数、增强日志)写入 SQLite,验证/测试集保持“只读”不参与增强。上述处理与策略与任务难点一一对应:Mosaic 与随机遮挡缓解自遮挡与长尾问题,颜色/亮度扰动应对强光与背光,尺度与多分辨率训练提升对不同远近手势的稳定检测,而统一入库与固定划分则保证跨模型比较的公平性与可追溯性。

4. 模型原理与设计
本文以 YOLOv12 为主线构建“石头/剪刀/布”手势的实时检测器,延续单阶段、端到端、Anchor-free 的检测范式。整体流程为:输入图像经轻量骨干网络提取多尺度特征,颈部进行跨层融合后送入解耦检测头,分别产生分类分支与回归分支的密集预测,解码得到 \((x,y,w,h)\) 与类别概率,最后以 NMS 或 NMS-free 解码得到目标框。为应对本任务的类间相似与自遮挡,骨干采用具备跨层长短路径控制的残差/跨阶段聚合结构(如 R-ELAN/CSP 系),在浅层保留手部边缘纹理,在深层聚合语义轮廓;颈部以轻量 BiFPN/PAN 融合不同尺度的上下文,兼顾指节等细节与整体手型;头部采用解耦结构与 DFL(Distribution Focal Loss) 辅助回归,提高边界框细粒度定位的一致性。网络整体架构图如下图所示(示意风格与本文一致,仅作结构参考):

在结构细节上,注意力与多分支融合用于提升在复杂背景与遮挡条件下的判别力。对每个尺度特征,插入轻量化的缩放点积注意力模块以强调与手部相关的区域,其核心为
其中 \(Q,K,V\) 为查询/键/值,\(d_k\) 为键维度,\(\mathcal{M}\) 为可选的掩码项;在实现中以分组/低秩投影与通道压缩减小计算量。颈部采用加权双向特征金字塔聚合多尺度信息,权重通过可学习系数进行归一以避免梯度不稳定;检测头使用解耦分类/回归分支,分类分支采用带温度的 Sigmoid 以缓解相似手势的置信度拥挤,回归分支输出离散边界分布并以期望值解码,形如 \(\hat{b}=\sum_{i=0}^{n-1}p_i\cdot i\)(\(p_i\) 为边界离散柱的概率),从而获得更平滑的边界回归。
在损失与任务建模方面,框回归采用 IoU 家族损失并按尺度自适应加权;基本 IoU 定义为
其中 \(B\) 与 \(B^{gt}\) 分别为预测框与真值框。为提升收敛稳定与形状一致性,使用 CIoU 或 EIoU:
其中 \(\rho(\cdot)\) 为框中心距离,\(c\) 为外接最小包围盒对角线,\(w_c,h_c\) 为外接盒宽高,\(\alpha\) 为权衡系数,\(v\) 惩罚长宽比偏差。分类分支采用 Focal Loss 抑制易样本与类间不均衡:
其中 \(p_t\) 为正样本概率,\(\alpha_t,\gamma\) 为超参。总体损失写为
各项系数随尺度与样本难度自适应调整;正负样本分配采用 SimOTA/TAL 一致性分配,减少先验依赖并提升对小手部的召回。
训练与正则化方面,采用 Cosine 学习率与 EMA 权重稳定收敛:
其中 \(\eta_t\) 为第 \(t\) 步学习率,\(T\) 为总步数,\(\theta\) 为参数,\(\beta\) 为动量因子。数据侧保留 Mosaic/RandomAffine/颜色抖动/随机遮挡 与多尺度训练以应对强光、背光与自遮挡;推理侧默认 NMS(IoU 阈值与置信度阈值在网页端可交互调节),也提供 NMS-free 解码配置以降低端到端延迟。针对浏览器摄像头/视频流的实时约束,部署时开启 FP16/INT8、算子融合与层归一折叠;结合同步双帧可视化与在线阈值/类别筛选,实现对“石头/剪刀/布”在小尺度、强反光、多人同框等典型难例上的稳定检测与可解释展示。
5. 实验结果与分析
本节在同一硬件环境(NVIDIA GeForce RTX 3070 Laptop GPU,8 GB)与统一评测脚本下比较 YOLOv5–YOLOv12 的两档模型(n/s),指标涵盖 Precision、Recall、F1、mAP50、mAP50–95 及端到端时延(E2E=Pre+Inf+Post),其中 Pre/Inf/Post 分别表示预处理、模型推理与后处理耗时。

整体上,n 档速度优势明显而 s 档在稳定性和 mAP50–95 上略占优;从单模表现看,n 档中 YOLOv10n 的 F1(0.950)与 mAP50–95(0.796)最佳,YOLOv8n 的 E2E 时延最低(≈10.17 ms);

s 档中 YOLOv12s 的 mAP50–95 最高(0.804),YOLOv9s 的 mAP50 领先(0.963),而 YOLOv8s 速度最快(≈11.39 ms)。从结构性原因解释,v10 的 NMS-free 训练与更轻的后处理带来更低的 PostTime(0.63 ms),v9/12 在特征路径与注意力模块上提升了中小目标与边界一致性,但引入了更高的推理耗时;v7(含 tiny)在本任务上速度明显落后,主要受更重的颈部与训练设定影响。

下表汇总核心结果(E2E 为端到端平均时延,单位 ms;按同档模型由快到慢或由高到低可见明显的“速度—精度”权衡)。
| 组别 | 模型 | Params(M) | FLOPs(G) | Pre | Inf | Post | E2E | Precision | Recall | F1 | mAP50 | mAP50–95 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| n | YOLOv8n | 3.2 | 8.7 | 1.95 | 6.83 | 1.39 | 10.17 | 0.952 | 0.918 | 0.935 | 0.953 | 0.785 |
| n | YOLOv6n | 4.3 | 11.1 | 2.17 | 6.78 | 1.39 | 10.34 | 0.937 | 0.940 | 0.938 | 0.960 | 0.786 |
| n | YOLOv5nu | 2.6 | 7.7 | 1.90 | 7.73 | 1.31 | 10.94 | 0.951 | 0.925 | 0.938 | 0.954 | 0.774 |
| n | YOLOv11n | 2.6 | 6.5 | 2.11 | 9.44 | 1.42 | 12.97 | 0.964 | 0.930 | 0.947 | 0.959 | 0.788 |
| n | YOLOv10n | 2.3 | 6.7 | 2.08 | 11.24 | 0.63 | 13.95 | 0.960 | 0.940 | 0.950 | 0.961 | 0.796 |
| n | YOLOv12n | 2.6 | 6.5 | 1.91 | 12.47 | 1.37 | 15.75 | 0.964 | 0.925 | 0.944 | 0.963 | 0.789 |
| n | YOLOv9t | 2.0 | 7.7 | 1.87 | 16.51 | 1.29 | 19.67 | 0.960 | 0.920 | 0.940 | 0.966 | 0.796 |
| n | YOLOv7-tiny | 6.2 | 13.8 | 2.28 | 14.74 | 4.06 | 21.08 | 0.935 | 0.919 | 0.927 | 0.942 | 0.703 |
| s | YOLOv8s | 11.2 | 28.6 | 2.31 | 7.66 | 1.42 | 11.39 | 0.957 | 0.928 | 0.942 | 0.958 | 0.789 |
| s | YOLOv5su | 9.1 | 24.0 | 2.28 | 8.45 | 1.51 | 12.24 | 0.965 | 0.920 | 0.942 | 0.955 | 0.775 |
| s | YOLOv6s | 17.2 | 44.2 | 2.22 | 8.59 | 1.45 | 12.26 | 0.945 | 0.944 | 0.944 | 0.961 | 0.784 |
| s | YOLOv11s | 9.4 | 21.5 | 2.37 | 9.74 | 1.36 | 13.47 | 0.944 | 0.944 | 0.944 | 0.961 | 0.795 |
| s | YOLOv10s | 7.2 | 21.6 | 2.21 | 11.38 | 0.60 | 14.19 | 0.953 | 0.939 | 0.946 | 0.961 | 0.795 |
| s | YOLOv12s | 9.3 | 21.4 | 2.09 | 13.23 | 1.42 | 16.74 | 0.955 | 0.931 | 0.943 | 0.963 | 0.804 |
| s | YOLOv9s | 7.2 | 26.7 | 2.12 | 18.66 | 1.39 | 22.17 | 0.954 | 0.940 | 0.947 | 0.963 | 0.799 |
| s | YOLOv7 | 36.9 | 104.7 | 2.44 | 23.62 | 3.46 | 29.52 | 0.938 | 0.936 | 0.937 | 0.953 | 0.726 |
基于 PR 曲线,可见三类手势在 0.65–0.70 的置信度阈值附近取得全类最佳 F1(约 0.94),PR 曲线整体靠近右上角且 mAP@0.5 约 0.96,说明分类与定位均衡;
少量误检集中在“背景”场景与复杂光照下的低对比边缘,剪刀与布在远距尺度上出现个别误分,这是指尖轮廓与手掌边缘被遮挡或模糊导致的可分性下降。训练曲线显示 box/cls/DFL 损失稳定下降,mAP50 与 mAP50–95 在 20–30 个 epoch 内快速收敛至平台区,后期改进有限,符合轻量检测器在中小规模数据上的学习特性。

为便于横向感知差异,下面给出两幅“F1 & mAP50 双条形图”。第一幅为 n 档,第二幅为 s 档,配色遵循清新学术风格,蓝色为 F1、橙色为 mAP50。
图 5-1 n 型模型:F1 与 mAP50 对比

图 5-2 s 型模型:F1 与 mAP50 对比

结合可视化结果,给出三点经验结论:其一,浏览器实用场景建议默认置信度阈值取 0.66 左右、IoU 阈值 0.55 左右,在保证 F1 高点的同时抑制背景误检;其二,追求最低时延选择 YOLOv8n/s,追求最高综合精度选择 YOLOv10n 或 YOLOv9s/YOLOv12s(在 mAP50–95 上更优),若考虑部署便利与工具链可选 YOLOv11n/s;其三,对“远距剪刀/布”与背光场景的误检,可通过提高输入分辨率、开启 TTA(图片场景)、在训练中增加强颜色扰动与随机遮挡比例,以及引入类别自适应置信度阈值与时序一致性(视频)来抑制。综合而言,本平台在单卡笔记本 GPU 上即可实现 10–12 ms 量级的端到端延迟与 ≈0.96 的 mAP@0.5,达到了交互式 Web 端“石头-剪刀-布”手势检测的实时与稳定要求。
6. 系统设计与实现
6.1 系统设计思路
系统采用四层分层架构:表现与交互层、业务与会话管理层、推理与任务调度层、数据持久化层。表现与交互层由浏览器端 HTML/CSS/JS 组成,通过 SocketIO 通道接收后端推送的“同步双帧”(原图与检测结果帧)并完成即时渲染,同时提供 Conf/IoU、类别筛选、进度/暂停/继续/停止等交互控件;所有控件产生的参数变更以事件流形式回传,实现对同一会话的参数同步。业务与会话管理层基于 Flask 提供路由与权限控制,负责登录/注册/跳过的入口与会话生命周期管理,统一调度多源输入(图片、视频、摄像头)以及模型热切换请求,将任务拆分为预处理、推理、后处理与持久化四个阶段,并通过限流与队列保证多会话并发下的响应一致性。
推理与任务调度层对接 PyTorch/ONNX/TensorRT 推理引擎,包含模型管理器(权重装载、类别同步、设备与精度策略选择)、任务执行器(图像批处理、视频帧采样与摄像头流控制)与双帧同步器(保证同一时间戳的原帧与叠框帧被成对推送与缓存导出)。在视频场景中,时间轴控制器与缓冲写出器协同工作,可将带框结果按段落导出为 MP4;在实时摄像头场景中,队列深度与批大小自适应以维持 30–60 FPS 的端到端延迟目标。数据持久化层由轻量关系库与对象存储组成,统一记录检测结果(框、置信度、类别、阈值快照)、导出物(CSV、带框图片/视频)、账户与审计日志;所有写入均在独立事务中完成,读写隔离保障历史查询不阻塞前台渲染。
系统的实时性与一致性通过三类机制协同保障:其一,前后端参数镜像(会话级 Conf/IoU、类别过滤)与“所见即所得”的阈值快照,使任意时刻的导出与落库可复现当时的前端视图;其二,任务分级队列与优先级调度,使摄像头流与短视频预览优先获得推理时隙,后台批量图片处理以低优先级异步运行;其三,模型热切换的双缓冲策略,在新权重预热完成前保持旧模型服务不中断,并在切换点同步类别清单与前端控件,避免“类别错位”与历史记录污染。扩展性方面,接口层以事件与 REST 并存,便于挂接新的检测器或统计模块;持久化层预留自动迁移策略,升级表结构时保持旧数据可用。
图 6-1 系统流程图
图注:系统自初始化到多源输入,按“预处理→推理→后处理/统计→渲染→导出/入库”的顺序形成闭环;参数在会话内双向同步,模型热切换不阻塞在途任务。

图 6-2 系统设计框图
图注:图中分为四层:浏览器端(渲染与交互)、业务与会话层(路由、鉴权、调度)、推理与任务调度层(模型、工作池、双帧同步)、数据层(结果与账户、导出与日志);数据与事件流向自左向右、自上而下。

6.2 登录与账户管理
图 6-3 登录与账户管理流程
图注:流程覆盖登录、注册与一次性跳过三种入口;登录态在会话与同浏览器多页签内有效,个性化配置与历史记录在进入主界面时回填。

登录与账户管理流程以最小摩擦为原则:用户进入登录页后若无账号可注册(仅存储口令哈希与必要元数据),亦可一次性跳过获得匿名会话;登录或注册成功后系统回填个性化配置(页面标题、品牌元素、默认阈值)与历史记录索引,进入概览界面;在任意时刻可进行资料修改并即时持久化,注销或切换账号将清理会话上下文与临时缓存,确保隐私安全与与主检测流程的平滑衔接。
代码下载链接
如果您希望获取博客中提及的完整资源包,包含测试图片、视频、Python文件(*.py)、网页配置文件、训练数据集、代码及界面设计等,可访问博主在面包多平台的上传内容。相关的博客和视频资料提供了所有必要文件的下载链接,以便一键运行。完整资源的预览如下图所示:


资源包中涵盖了你需要的训练测试数据集、训练测试代码、UI界面代码等完整资源,完整项目文件的下载链接可在Gitee项目中找到➷➷➷
完整项目下载、论文word范文下载与安装文档:https://deeppython.feishu.cn/wiki/A5Hcw7VVKi9LA1kkaWRc8myDnwg
讲解视频地址:https://www.bilibili.com/video/BV1xfDXBnEic/
完整安装运行教程:
这个项目的运行需要用到Anaconda和Pycharm两个软件,下载到资源代码后,您可以按照以下链接提供的详细安装教程操作即可运行成功,如仍有运行问题可私信博主解决:
- Pycharm和Anaconda的安装教程:https://deepcode.blog.csdn.net/article/details/136639378;
软件安装好后需要为本项目新建Python环境、安装依赖库,并在Pycharm中设置环境,这几步采用下面的教程可选在线安装(pip install直接在线下载包):
- Python环境配置教程:https://deepcode.blog.csdn.net/article/details/136639396;
7. 结论与未来工作
本文围绕“石头-剪刀-布”手势的实时检测,构建了集 YOLOv5–YOLOv12 统一评测、Flask+SocketIO Web 网页界面、三源输入(图片/视频/摄像头)与结果导出/入库于一体的端到端平台;在 11,886 张样本与统一硬件(RTX 3070 Laptop 8GB)下,n 型与 s 型两档模型均达到接近实用上限的速准平衡,其中 YOLOv8n 端到端时延最低(≈10–11 ms)、YOLOv10n 取得最优综合 F1(≈0.95)与 mAP50–95(≈0.796,同档最佳),YOLOv12s 在 mAP50–95 上略占优势(≈0.804),证明了轻量 Anchor-free 与注意力改造在交互式浏览器场景的有效性;从误差分布看,混淆主要集中在背光与远距条件下的“剪刀/布”边界与背景弱目标,所提出的双画面对比、会话级阈值镜像与同步双帧渲染,使故障复盘与参数回放具备可追溯性与可解释性。基于目标形状与纹理主导的表征,本平台的训练-部署流水线对其他小/中尺度刚体或半刚体目标同样具备迁移性,例如机械器件与产线零部件的外观缺陷/姿态检测,可直接复用“模型热切换+在线调参+批量导出”的工程骨架以缩短落地周期。
未来工作将从三条主线推进:其一是模型侧的进一步轻量化与兼容性——在保证精度的前提下开展结构化剪枝、蒸馏与 FP16/INT8 量化协同优化,引入时序一致性与多模态先验(RGB+深度/IMU)以缓解背光与运动模糊,并探索 NMS-free 推理在浏览器端的极限延迟;其二是系统侧的规模化与稳健性——以 Docker 封装与 分布式任务队列实现弹性扩缩,前端接入 WebRTC 低时延推流、角色权限与审计日志、国际化(i18n)与多租户隔离,完善监控告警、自动化回归测试与可观测性;其三是数据侧的闭环迭代——建设主动学习与持续标注管线,在线采集“易错片段”并驱动再训练,配套数据治理、漂移与偏差监测仪表盘,形成从浏览器交互到模型演进的自洽反馈回路。随文提供的完整工程和数据资源可作为教学、竞赛与工业验证的通用模板,后续我们将持续更新权重与部署脚本,面向更复杂的手势词汇与多目标协同场景扩展功能与评测集。
参考文献(GB/T 7714)
1 Ren S, He K, Girshick R, Sun J. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks[EB/OL]. NeurIPS, 2015. Available: (NeurIPS Proceedings).
2 Carion N, Massa F, Synnaeve G, et al. End-to-End Object Detection with Transformers[EB/OL]. ECCV, 2020. Available: (ECVA).
3 Zhang F, Bazarevsky V, Vakunov A, et al. MediaPipe Hands: On-device Real-time Hand Tracking[EB/OL]. 2020. Available: (arXiv).
4 Kapitanov A, Kvanchiani K, Nagaev A, et al. HaGRID—Hand Gesture Recognition Image Dataset[J/OL]. WACV 2024. Available: (CVF Open Access).
5 TensorFlow Datasets. rock_paper_scissors 数据集[EB/OL]. 2024. Available: (TensorFlow).
6 Wang C-Y, Bochkovskiy A, Liao H-Y M. YOLOv7: Trainable Bag-of-Freebies Sets New SOTA for Real-Time Detectors[J/OL]. CVPR 2023. Available: (CVF Open Access).
7 Ultralytics. Explore Ultralytics YOLOv8—Model Overview[EB/OL]. 2025. Available: (Ultralytics Docs).
8 Wang C-Y, Yeh I-H, Liao H-Y M. YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information[EB/OL]. 2024. Available: (arXiv).
9 Wang A, Chen H, Liu L, et al. YOLOv10: Real-Time End-to-End Object Detection[EB/OL]. 2024. Available: (arXiv).
10 Ultralytics. YOLO11—Model Overview and Docs[EB/OL]. 2025. Available: (Ultralytics Docs).
11 Tian Y, Ye Q, Doermann D. YOLOv12: Attention-Centric Real-Time Object Detectors[EB/OL]. 2025. Available: (arXiv).
12 Zhao Y, Lv W, Xu S, et al. DETRs Beat YOLOs on Real-time Object Detection(RT-DETR)[EB/OL]. CVPR 2024. Available: (CVF Open Access).
13 Tian Z, Shen C, Chen H, He T. FCOS: Fully Convolutional One-Stage Object Detection[EB/OL]. ICCV 2019. Available: (arXiv).
14 Lin T-Y, Goyal P, Girshick R, He K, Dollár P. Focal Loss for Dense Object Detection[EB/OL]. ICCV 2017. Available: (CVF Open Access).
15 Tan M, Pang R, Le Q V. EfficientDet: Scalable and Efficient Object Detection[EB/OL]. CVPR 2020. Available: (CVF Open Access).
16 Meituan Vision. YOLOv6: A Single-Stage Object Detection Framework for Industrial Applications[EB/OL]. 2022. Available: (arXiv).
17 Ge Z, Liu S, Wang F, et al. YOLOX: Exceeding YOLO Series in 2021[EB/OL]. 2021. Available: (arXiv).
18 Xu S, Wang X, Lv W, et al. PP-YOLOE: An Evolved Version of YOLO[EB/OL]. 2022. Available: (arXiv).
19 Microsoft. ONNX Runtime—Quantize ONNX Models(量化文档)[EB/OL]. 2025. Available: (ONNX Runtime).
20 NVIDIA. TensorRT—Working with Quantized Types(INT8/FP8 支持)[EB/OL]. 2025. Available: (NVIDIA Docs).
21 程亚龙, 梁军. 基于YOLOv5的静态手势识别检测模型[J/OL]. 软件导刊, 2024. 可获得: (Rjdk).
22 李某某, 王某某. 基于YOLO算法的手势识别[J/OL]. 维普期刊, 2021. 可获得: (Qikan).
说明:表格中的关键指标均来自对应引用文献/官方页面;若官方未发布权威论文指标(如 YOLO11),则以“—”标注并在正文中说明来源与限制。

浙公网安备 33010602011771号