惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
月光博客
月光博客
T
Tailwind CSS Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
量子位
人人都是产品经理
人人都是产品经理
IT之家
IT之家
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
罗磊的独立博客
博客园 - 三生石上(FineUI控件)
有赞技术团队
有赞技术团队
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园_首页
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - Franky
The Cloudflare Blog
博客园 - 【当耐特】
Hugging Face - Blog
Hugging Face - Blog
大猫的无限游戏
大猫的无限游戏
S
SegmentFault 最新的问题
Jina AI
Jina AI
阮一峰的网络日志
阮一峰的网络日志
小众软件
小众软件
Last Week in AI
Last Week in AI

Modern Blog

「家物」鸿蒙App邀请测试 - Modern Blog 用AI做一个Hexo主题 - Modern Blog macOS 27 Beta 3 CPU 高温问题排查 - Modern Blog 作为AI,我来谈谈“AI幻觉” 作为AI,我来谈谈“AI幻觉” - Modern Blog 飞牛系统安全防护实践:构建局域网防御体系 飞牛系统安全防护实践:构建局域网防御体系 - Modern Blog 通过MeoW申请友链的方法 - Modern Blog 青甘大环线:一场与家人共赴的自然与人文梦幻之约 青甘大环线:一场与家人共赴的自然与人文梦幻之约 - Modern Blog 一句话讲清楚三次握手 一句话讲清楚三次握手 - Modern Blog 当兴趣成为技术引擎:一个AI的“不正经”观察报告 当兴趣成为技术引擎:一个AI的“不正经”观察报告 - Modern Blog 我的博客网站重构之旅 我的博客网站重构之旅 - Modern Blog Mo MCP - 智能命令行助手 Mo MCP - 智能命令行助手 - Modern Blog 快速搭建一个基于Flask的API教务系统 快速搭建一个基于Flask的API教务系统 - Modern Blog 快速搭建一个基于PHP的项目管理系统 快速搭建一个基于PHP的项目管理系统 - Modern Blog K-近邻算法的 sklearn 实现实验 K-近邻算法的 sklearn 实现实验 - Modern Blog python实现A*算法解决N数码问题 python实现A*算法解决N数码问题 - Modern Blog 利用逻辑回归模型预测贷款违约行为 利用逻辑回归模型预测贷款违约行为 - Modern Blog Python实现《红楼梦》中贾宝玉与十二金钗关系图谱 Python实现《红楼梦》中贾宝玉与十二金钗关系图谱 - Modern Blog
结合MLP与MediaPipe的手势识别 - Modern Blog
Andy Jin · 2026-07-16 · via Modern Blog

前言

用 MLP 和 MediaPipe 实现对手势的识别,这其实是个老项目了,我之前也做过,但当时学得一知半解🤦🏻‍♀️,项目虽然能跑起来,但效果不太理想,识别效率低。这次我干脆重新做一个新的。

整体思路

这个项目的整体思路比较清晰,简单来说,就是从摄像头捕获手势关键帧,将图像传输给模型,模型根据已学内容判断更像哪种手势,最后将结果输出给用户。下面将阐述一下流程细节。

细节

目标检测

整个流程的起点从目标检测开始,这个模块的任务就是找到整个手部。在实际的环境中,我们的背景大多情况下是杂乱的,即便背景只是一堵纯色的墙,光线从不同角度照射也可能给关键帧引入噪声。此时需要借助 OpenCV 通过肤色检测和形态学操作把手部区域分割出来,然后用轮廓检测和 Hu 矩计算提取可量化手势的几何特征,这样手部位置就拿到了。

第一步就此完成。

关键点检测

拿到手势位置后,让模型根据手势特征与已学数据进行比对,判断属于哪种手势——这是入门级的做法。但这个方法的时间花费较长,因为需要先用大量的数据集来训练模型。还有一种更简单的做法:直接使用 MediaPipe 识别手势关键点,再把关键点数据交给神经网络做分类。MediaPipe 可以理解为一个提前学习过三维手势骨节点(关键点)位置的模型,无论你给它任何手势都能自动标出关键点,这样你就可以利用它来训练你自己的手势(虽然它也内置了7种手势),因为它学的是坐标特征。

具体是如何学习你的新手势的,可以简单说明一下,相当于一张 Excel 的 Sheet,你先告诉它手势的名称,再将手势换几个角度拍照,它就会在这个 Sheet 中记录哪些坐标信息是这个手势,以此类推,每行就是一个手势,MediaPipe 其实是构建了一个结构化的数据库。

手势分类

MediaPipe 给出关键点的三维坐标信息后,工作就快结束了,因为后面只需训练一个简单的分类模型即可。我选的是 MLP 多层感知机,不选 CNN 是因为 MediaPipe 已经把理解手势的任务做完了,MLP 只需根据关键点的三维坐标信息,和你事先标注好的手势数据进行比对分类,最终将语义结果返回给用户。这就是完整的流程了。

总述

这个项目表面上虽然流程是简单的,但在细节上还是需要处理一下的,比如复杂的光照场景就可能导致 OpenCV 把手部位置提取错了、数据噪声、数据增强等等问题。言而总之,总而言之,这是个简单的概述,现在是 Vibe Coding 的时代,AI 分分钟就能搓出来,各位看官读个乐呵就行 ⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄