Handsfree.js — 一个通过计算机视觉集成手势,面部表情和各种姿势识别的前端库

简介: 当电视上出现上图这种科技大片的时候,有没有幻想过有一天可以实现上图的这种交互,当我打开Handsfree这个库的介绍页时,看到前端页面竟然能够识别人的手势,面部以及各种肢体动作,简直刷新了我对前端能力的认知。确信这种交互有一天成为可能。

ZK]6KL9$@W)O~D~WB}6W2{M.png


当电视上出现上图这种科技大片的时候,有没有幻想过有一天可以实现上图的这种交互,当我打开Handsfree这个库的介绍页时,看到前端页面竟然能够识别人的手势,面部以及各种肢体动作,简直刷新了我对前端能力的认知。确信这种交互有一天成为可能。

4`SGY{WG_`X@IP9N1)_9OC4.png


计算机视觉加上AI这几年早已经不是什么新鲜的名词,随着GPU算力的不断提升,使得越来越多(小)的设备上实现人工智能成为可能。

国外的一个开发者制作了一个实现Handsfree各种效果的demo页面(https://handsfree.js.org/),并且制定了开发计划,详细的进度将在作者的twitter上


实时公布。看下这个计划:

创建一个易于使用的通过面部,手,眼睛,姿势跟踪,声音和思想控制程序的库。

然后使用该库去创建自定义插件或者组件。

使用以上实现的这样一个仓库去帮助更多的人通过“用户脚本管理器”去实现浏览器插件。

然后培养实现一个围绕Handsfree的使用者和开发者的社区。

最后建立一个关于Handsfree的基金会促进实现更多优秀的创意。

下面看下Handsfree能够实现哪些有趣的功能:


触发交互事件


最近不久作者发布了名为Pincher的插件,可以实现24种以上的捏🤏的动作,包括三种状态,开始,保持,释放——分别用你的小拇指,无名指,中指,和食指去做捏的动作。它根据鼠标事件为模型模拟动作,然后通过类似于document.addEventListener()去监听。

I33`I}]}}]AGHHJ6@CKTU8O.png

在浏览器上滚动网页


这是根据作者实现的一个浏览器插件去帮助实现的滚动网页,它使用名为MediaPipe Hands模型去跟踪手势,下面的Gif展示的就是使用pinchScroll插件实现的效果,只需要加入很少的代码实现这样一个自定义的功能

934{5UZZ6Q4GT{VG5J]FMHW.png


创建多种辅助技术


下面是作者最喜欢的一个功能,使用了名为“Face Pointer”的插件,可以通过面部移动屏幕上的点去实现点击和滚动网页。

MRH2{YE6$BZ@Y1GOZ25GOLH.png


控制桌面游戏


使用人的面部和手去模拟鼠标去玩“Into the Breach”这款游戏。所有的这些都是通过“Face Pointer”和“Hand Pointer”插件,集成到Robot.js中触发原生的鼠标事件来轻松实现的。

OSXAQJO~(CSW(BVJP8}81R5.png

]3_RL{1~2K4AMS3SVRNQR4N.png


创建自己的游戏


不仅仅可以使用它玩游戏,还可以创建自定义交互的游戏

BRA][2A8{3C$JQCWM$$_@WN.png

$%A_4WZ)}$WR)3PN54H{7PB.png

K)Y~HIFGMMC60WLGSEJ{IPB.png


控制无人机和机器人


当然它不仅能控制浏览器端和桌面端的软件,通过web socket接口可以和任何与你的电脑建立连接的设备,就像和这个很普通的机器人进行模拟动作。

)02VJW5DS][NICU6`][8E]G.png

7J)E]%Z~]BWKDFWDV{3G1)V.png


音乐和艺术创作


这里除了一些作者即将发布的想法奇特的应用可以帮助制作一些迷幻的音乐,还有更多的创意想法等着更多的开发者去实现。另外作者正在开发的WebXR DevTools Chrome 插件以帮助在没有XR设备的情况下去开发WebXR应用。

BN(18H%)ZXLHFBL0A7PBZ$W.png

6P}}J]5EV]2)BKPBRI8EL@6.png


开发指南


以上已经介绍了一些Handsfree能实现的功能,接下来介绍如何去使用它。不要担心一开始会有所迷惑,它就是大概的介绍。稍后会有更多的简短聚焦的教程放出。你可以从作者的代码仓库中/boilerplate/cdn.html找到样例。




目录
相关文章
|
13天前
|
JavaScript 前端开发 API
详解队列在前端的应用,深剖JS中的事件循环Eventloop,再了解微任务和宏任务
该文章详细讲解了队列数据结构在前端开发中的应用,并深入探讨了JavaScript的事件循环机制,区分了宏任务和微任务的执行顺序及其对前端性能的影响。
|
12天前
|
JavaScript 前端开发 小程序
一小时入门Vue.js前端开发
本文是作者关于Vue.js前端开发的快速入门教程,包括结果展示、参考链接、注意事项以及常见问题的解决方法。文章提供了Vue.js的基础使用介绍,如何安装和使用cnpm,以及如何解决命令行中遇到的一些常见问题。
一小时入门Vue.js前端开发
|
5天前
|
开发框架 前端开发 JavaScript
React、Vue.js 和 Angular主流前端框架和选择指南
在当今的前端开发领域,选择合适的框架对于项目的成功至关重要。本文将介绍几个主流的前端框架——React、Vue.js 和 Angular,探讨它们各自的特点、开发场景、优缺点,并提供选择框架的建议。
25 6
|
2天前
|
缓存 JavaScript 前端开发
JavaScript 库
JavaScript 库
7 0
|
2天前
|
JavaScript 前端开发 API
【前端基础篇】JavaScript之jQuery介绍
【前端基础篇】JavaScript之jQuery介绍
13 0
|
2天前
|
JavaScript 前端开发 UED
【前端基础篇】JavaScript之DOM介绍2
【前端基础篇】JavaScript之DOM介绍
9 0
|
2天前
|
JavaScript 前端开发 搜索推荐
【前端基础篇】JavaScript之DOM介绍1
【前端基础篇】JavaScript之DOM介绍
14 0
|
14天前
|
JavaScript 前端开发 开发者
深入浅出 Vue.js:构建响应式前端应用
Vue.js 是一个流行的前端框架,以其简洁、高效和易学著称。它采用响应式和组件化设计,简化了交互式用户界面的构建。本文详细介绍 Vue.js 的核心概念、基本用法及如何构建响应式前端应用,包括实例、模板、响应式数据和组件等关键要素,并介绍了项目结构、Vue CLI、路由管理和状态管理等内容,帮助开发者高效地开发现代化前端应用。
|
5月前
|
机器学习/深度学习 计算机视觉
AIGC核心技术——计算机视觉(CV)预训练大模型
【1月更文挑战第13天】AIGC核心技术——计算机视觉(CV)预训练大模型
565 3
AIGC核心技术——计算机视觉(CV)预训练大模型
|
1月前
|
人工智能 测试技术 API
AI计算机视觉笔记二十 九:yolov10竹签模型,自动数竹签
本文介绍了如何在AutoDL平台上搭建YOLOv10环境并进行竹签检测与计数。首先从官网下载YOLOv10源码并创建虚拟环境,安装依赖库。接着通过官方模型测试环境是否正常工作。然后下载自定义数据集并配置`mycoco128.yaml`文件,使用`yolo detect train`命令或Python代码进行训练。最后,通过命令行或API调用测试训练结果,并展示竹签计数功能。如需转载,请注明原文出处。

热门文章

最新文章