整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

3 行 Handtrack.js 代码搞定手部动作跟踪,愉快摸鱼?

家好,很高兴又见面了,我是"高级前端‬进阶‬",由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发,您的支持是我不断创作的动力。

1.什么是 Handtrack.js

A library for prototyping realtime hand detection (bounding box), directly in browser.

Handtrack.js 是一个直接在浏览器中构建实时手部检测(边界框)原型的库。 其将手部跟踪视为对象检测问题,并使用经过训练的卷积神经网络来预测图像中手部位置的边界框。

Handtrack.js 目前围绕速度、准确性和功能的优化进行了诸多升级,包括:

  • 新的数据集管理:新的数据集(约 2000 张图像,6000 个标签)已涵盖新的手部姿势,并重点关注面向网络摄像头的用户的视角。
  • 提供诸多新检测类型:在审查开发人员迄今为止使用 handtrack.js 创建的用例(例如:游戏控制、检测面部触摸以最大程度地减少新冠病毒传播、空气吉他等)后,已经策划了一组新的手势标签,包括:手掌张开、手掌闭合、捏、指向、脸部
  • 缩小模型尺寸:Handtrack.js 现在支持多种尺寸的多个模型,例如: ssd320fpnlite、ssd640fpnlite。 大尺寸是每个模型的默认 fp32 版本,中尺寸和小尺寸分别是 fp16 和 Int8 量化版本
  • 模型准确性提升:早期测试表明新模型对于前置网络摄像头视点检测更加准确,包含面部标签还减少了早期的面部错误分类
  • 提供Javascript 库:handtrack.js 库已更新修复正确输入图像分辨率的问题,升级底层 tensorflowjs 模型提供更多自定义选项

Handtrack.js 的典型场景包括:

  • 鼠标映射到手部运动以达到控制的目的
  • 当手和其他物体的重叠可以表示有意义的交互信号时,例如:物体的触摸或选择事件
  • 人手运动可以作为活动识别代理的场景,例如:从下棋的视频或图像中自动跟踪运动活动或者简单地计算图像或视频帧中存在多少人

目前 Handtrack.js 在 Github 通过 MIT 协议开源,有超过 3k 的 star、是一个值得关注的前端开源项目。

2.如何使用 Handtrack.js

Handtrack.js 提供了一个有用的包装器提供,允许在 Web 应用程序中构建基于手势的交互原型。 无需了解机器学习,其接收 html 图像元素(例如 img、视频、canvas 元素)并返回边界框、类名称和置信度分数的数组。

npm install --save handtrackjs

Handtrack.js 可以通过脚本标签或通过 npm 导入到应用程序中。导入后,handtrack.js 提供一个异步 load() 方法,该方法返回对象检测模型对象的 Promise。

import * as handTrack from 'handtrackjs';
// 导入模块方法
const img = document.getElementById('img');
const model =  await handTrack.load();
const predictions = await model.detect(img);
// detect 传入检测对象

Handtrack.js 还提供了一组库帮助器方法,例如,在视频元素上启动和停止视频播放和一些模型方法,例如:Detect、getFPS 等)。

值得一提的是,目前 handtrack.js 仍然是一个相当重的模型,并且可能在移动设备上运行时出现一些不一致的结果。

关于 Handtrack.js 的更多知识可以参考文末资料,本文不再过多展开。

参考资料

https://github.com/victordibia/handtrack.js

https://www.annakorczak.com/post/handtrack-api

https://core-electronics.com.au/guides/hand-identification-raspberry-pi/

手掌模拟器:生存(Hand Simulator: Survival)》 是一款非常棒的模拟类游戏,在这里玩家将操控一双手进行游戏;本作还是之前非常火的《手掌模拟器》的续作;新的荒岛求生之路,你将控制一个猛男的手进行游戏,展开求生之旅,收集枯枝生火,寻找饮用水源等,生存下去是你最大的渴求!

《手掌模拟器:生存》3DM汉化组简体汉化补丁v1.0

汉化说明:

基于正式版制作:https://bbs.3dmgame.com/thread-5981444-1-1.html

除少量代码文本翻译后游戏会出错 故暂时保留了英文 其余文本完整汉化

内核汉化 支持正版

监制:小草

执行:Setsuna、柔软

翻译:Bing、Maradentro、Noob、Rax、thundersroar、小刘、小浓神、柔软

技术:tkwlee

使用方法:

1、解压缩

2、安装汉化补丁

3、运行游戏

手掌模拟器_生存下载_手掌模拟器_生存中文版下载_3DM单机

手掌模拟器:生存汉化_手掌模拟器:生存_3DM汉化组汉化补丁v1.0下载_3DM单机

更多游戏和补丁下载请访问我们的主页、论坛及下载站:

http://www.3dmgame.com/

http://bbs.3dmgame.com/

http://dl.3dmgame.com/

本补丁仅作学习和交流之用,任何个人及组织未经本组同意,不得用作商业用途。游戏版权归游戏公司所有,如果喜欢该游戏,请支持正版。

本补丁欢迎转载,但请务必保留以上信息!本补丁的文本未经本组允许,禁止抄袭、修改、剽窃或用于其它平台!

·截图欣赏:

AVA300集第274集:手写webserver。

开篇,大家好,从本节课开始,被动打造手心编写外部服务器。注意这里是手动打造,不是简单的分析,使用别人的服务器。这个手写福气的目的主要是为了承上启下,总结一下我们已经学过的 java 的初级知识,同时为即将到来的外部开发和高级框架做一个良好的铺垫。

可以这么说,你把福气手动描写出来了,你就把外部开发和高级框架的脉络整理出来了,显然学习后面的内容就易如反掌了,达到四两拨千斤的效果。

大家还记得我之前说过的二八法则,只需要掌握了这百分之二十的知识,百分之八十的显然可以触雷旁通了。所以在这里我强烈建议大家,虽然这块内容不属于课程以内的内容,属于扩展性的知识,但是强烈建议大家,手动把它打造出来,手动的敲五到十遍,把这个代码好好的理解一下,别忘记了。

这里手动打造的福气需要用到已经学过的java 的初级知识,比如说容器、多线程、网络编程以及最重要的面相对象的知识。同时还会用到一些没有讲解的后面会设计的知识,比如说反射、插麦、解析http和html,这些内容用到什么东西?快速讲解什么东西。因为每一块的内容知识点都不少,最终的目标就是快速打造手动编写外部服务器。

可以这么说,每没有福气就没有互联网。有了这个福气就有了互联网的日常活动。因为上网浏览网页,打开手机、打开网站,都需要用到服务器。这个服务器之前也简单的聊过,上京东、上淘宝,后面有上千台乃至上万台的服务器为我们服务。

客户只要打开一个页面请求一个页面,服务器就要响应内容。注意,这里有两个热词:请求响应。请求响应的开发,后面都是基于请求响应的。请求响应在日常生活中随处可见,别人打电话给你老爸要生活费。老爸给我一千块钱。老爸说没有,老爸给我一百块钱,有了,对吧给你两百。

这个就是请求响应。响应的内容是根据每个外部请求来动态产生的,来动态产生的,注意不是静态产生的。

这里面做的是动态服务器,不是静态服务器。静态服务器一般是静态资源用的,动态服务器就是动态产生内容的,内部显然是要启动多线程来产生不同的内容,所以这一块会用到多线程。同时请求响应都是基于互联网,都是基于 itttp 协议的。这个 itttp 协议是属于应用程的协议,之前掌握过传输程的tcp 和udp 的协议,它是建立在pcp协议基础上的应用层的协议。日常的互联网的活动现在叫物联网,都会用到这个服务器。

当然这个服务器随着互联网的发展业务越来越复杂,这个服务器现在不是简简单单的一台了,是多台,同时多台承担不同的职责。比如有这个数据库服务器,有这个缓冲服务器,有这个外部服务器将它们组合到一起为我们服务,后期甚至还有这个服务器的集聚多台服务器同时服务。

所以这个服务器注意不是简简单单一台,这里主要是解决外部服务器,外部服务器就是客户要什么东西,响应什么东西,而不是怎么存储数据,那个是叫数据库服务器或者怎么提高性能,那个叫缓存服务器。所以这里面主要是写外部服务器,外部服务器是基于请求响应式的。客户在互联网上,在首次设备上请求一个资源,服务器根据请求去找资源,找到了之后响应这个内容。

这就是个典型的请求响应式。因此根据刚刚的讲解需要编写一个基于请求响应式的外部服务器需要用到的知识:

·第一、op面向对象。

·第二、容器。

·第三、i o。

·第四、多线层。

·第五、网络编程。

·第六、要补充的chanel解析。

·第七、反射。

·第八、hj15。

·第九、hjpp协议。

要用到这九大知识。现在一步步把它打造出来,当然先要把这些东西补充好,然后才能一步步打造出来,开始吧。