隔空手势播放器 · AirPlayer
捏合 · 挥手 · 握拳,隔空遥控 · 79,197 只手验证过的「不误触」
独立项目 · 独立构建者 / 产品架构师
场景来自车内后排观影:屏幕远、手够不着,语音在放片时又吵——手势是最自然的遥控器。捏合是暂停、挥手是快进、握拳是退出,原型在 Mac 上跑通并打包成了应用,日常真实使用。
做这类产品,识别到手势只是及格线,真正决定生死的是「绝不乱动」——你只是换个姿势,它却把片子暂停了,两次之后你就再也不想用。我的解法不是调参数调到顺眼为止,而是把它变成一道有数字的题:拿公开手势数据集 HaGRID 的 79,197 只手做离线评测(即不用真人反复实验,用大规模数据先把账算清),结果发现在默认灵敏度下,三分之一的用户「捏合」识别不到八成——因为每个人的手大小比例不一样。答案也就清楚了:让每个人注册自己的手(应用里 4 步引导,1 分钟),灵敏度按个人定制,误捏合率从 15.3% 降到 5.3%。
在此之上又加了两道保险:一个 1.2MB 的小模型做「第二意见」(主识别说有手势,它独立复核一遍,3 毫秒出结果),杜绝空房间里的幽灵触发;校准时「盯稳了才算数」(手停稳攒够 12 帧取中间值),杜绝草率标定埋下的祸根。最终验收:165 分钟挂机压测 0 次误触——我给自己定的及格线是每 10 分钟不超过 3 次。
同系列还有一项视线追踪研究:每次「捏取」的瞬间,顺手用这次操作修正视线偏差(你捏它,说明你在看它),追踪漂移减少 59%——用起来的感受是「越用越准,不需要重新校准」。这条线与 2025 年的眼动+手势原型一脉相承,都是为下一代空间交互(车载、AR)攒的产品化经验。
项目由我一个人 vibe coding 完成,没有团队,AI 是我的手脚——包括那一系列的评测,也是 AI 写代码跑出来的,我负责提目标和验收标准。
Key Highlights
- 锚定真痛点:手势产品的生死线不是「识别到」,是「绝不误触」
- 用公开数据集离线评测,把「拍脑袋的灵敏度」变成「人群的数字」
- 发现三分之一用户在默认灵敏度下捏合不灵——根因是每个人手不一样
- 手势注册 + 个人化灵敏度:误捏合 15.3% → 5.3%
- 三道防误触保险:个人注册 / 小模型第二意见(3 毫秒复核)/ 校准质量门控
- 165 分钟挂机压测 0 次误触(自定及格线:每 10 分钟 ≤3 次)
- 视线追踪「捏取即校准」:漂移 -59%,越用越准无需重校
- 一个人 vibe coding(无团队),已打包成 macOS 应用日常使用