跳到正文
佛山一中电脑协会招新特别页
导航
招新特别页
学习与研究 · 2026-09-13 · 阅读约 2 分钟

手势识别项目报告

谢鸿志

高一(7)班谢鸿志

项目初衷

本项目最开始是想设计一款智能穿戴设备,可以通过视觉手势识别的方案对生活中的物体与文本进行拍照、识图、翻译等操作,这样相比起拿起手机拍照来说侵略性更弱、更加无感。

材料及环境准备

  • 计算机一台

  • 彩色2K摄像头一个

手势识别项目报告 · 插图 1

原理简述

手势识别:先检测手指上的21个点位,再通过这些点位的相对位置关系推测手势

手势交互:给不同的手势指定不同的操作,例如识别到数字5就截图摄像头画面,保存到指定目录,识别到数字6把图片上传到指定API进行识图并等待返回结果。

环境搭建

  • Python 3.8

  • Pytorch CUDA 12.6

  • Open-cv Python

数据集准备

要求:

  • 图片和描述文件一一对应

  • 图片分辨率保持一致

  • 数据集足够大

描述文本格式:

<类别编号> <中心x比例> <中心y比例> <宽度比例> <高度比例>

例如:2 0.45 0.63 0.12 0.18 表示在图片45%宽度、63%高度处,有一个宽12%、高18%有只手

手势识别项目报告 · 插图 2

手势识别项目报告 · 插图 3

模型训练

训练部分使用了Ultralytics的开源项目YOLOV5,训练完成后会生成一个pt文件,即为手势识别模型。

大致原理:

  • 压缩提炼图像的信息,形成深层特征图和浅层特征图

  • 深层特征图:能识别"这是手"的全局信息

  • 浅层特征图:能看清"手指弯曲"的细节

  • 两者融合后,既能定位手的位置,又能看清手势细节

引入图像

  • 通过边界框(Bounding Box)预测手的中心坐标(x,y)、宽高(w,h)

  • 通过置信度(Confidence)判断框内是否有手势的概率

  • 通过分类结果(Class)对具体手势类别进行分类 (如数字5数字6)

成果展示

通过pyqt5实现了识别可视化,模型推理在GTX 1050下能达到30FPS

手势识别项目报告 · 插图 4

手势识别项目报告 · 插图 5

手势识别项目报告 · 插图 6

评论

一起把问题聊明白

正在准备评论区…

评论区包含自动审核系统,提交后经审核展示。邮箱仅用于评论通知,不会公开展示。请友善交流,勿在留言中填写敏感信息。