AI 入门:一步步搭好环境,第一次跑通手势识别
零基础学会安装 MediaPipe 和 Flutter 环境,运行一个实时手势识别应用,全流程离线。
想体验 AI 在手边的感觉?这篇文章带你从零开始,装好环境、跑通一个手势识别 App。整个过程不需要云服务,数据全在手机上处理,保护隐私。
准备环境
先装好两样东西:
- Flutter:一套工具,让你写一次代码,同时在 Android 和 iOS 上运行。去 flutter.dev 下载 SDK,按官方文档装好。
- Android Studio:写 Flutter 代码的编辑器。下载后装上 Android SDK,并创建一个虚拟设备(模拟器)或连一台真机。
装好后在终端运行 flutter doctor,看到所有项目打勾说明环境就绪。
安装步骤
接下来下载一个现成的项目——SignSpeak,它利用 MediaPipe 识别手势,再用 Gemini Nano 把手势翻译成句子。
- 打开终端,运行
git clone https://github.com/your-username/signspeak(替换成实际仓库地址)。 - 进入项目目录:
cd signspeak。 - 运行
flutter pub get安装依赖。 - 用 Android Studio 打开项目,点击运行按钮。首次编译会下载一些资源,稍等片刻。
MediaPipe 是 Google 的开源框架,专门在手机上做实时图像识别。它里面有个“手部关键点检测”功能,能追踪手上 21 个点的位置(比如指尖、关节)。SignSpeak 用这个来捕捉手势。
Gemini Nano 是 Google 的轻量级 AI 模型,直接在手机芯片上运行,不需要联网。它把检测到的手势(比如“WATER NEED”)整理成通顺的英文句子(比如“I need water.”)。
验证是否成功
- App 启动后,对准摄像头做手势(比如竖起大拇指),屏幕应该显示对应的英文单词或句子。
- 如果没反应,检查摄像头权限是否开启。
- 常见坑:手势识别不准时,可能是 MediaPipe 的手部坐标归一化公式不对。确保 Flutter 代码里用的欧氏距离(
sqrt(dx*dx+dy*dy+dz*dz)),而不是平方距离。
下一步可以做什么
- 修改手势对应的单词:在代码里找到手势映射表,替换成你想要的词。
- 试着理解 MediaPipe 输出的 21 个点坐标,用它们做你自己的手势逻辑。
- 如果 Gemini Nano 不支持你的设备(仅 Pixel 8 系列和三星 S24 系列),App 会自动降级,只显示原始手势文本。
内容来源
DEV Machine Learning
发布时间
2026-05-17 01:34