我将实时网络摄像头嵌入到 html 页面。现在我想找到手势。如何使用 JavaScript 做到这一点,我不知道。我用谷歌搜索了很多,但没有得到任何好主意来完成这个。那么有人知道这件事吗?这该怎么做。
问问题
33268 次
4 回答
41
访问网络摄像头需要 HTML5 WebRTC API,该 API 在除 Internet Explorer 或 iOS 之外的大多数现代浏览器中都可用。
手势检测可以使用带有js-objectdetect或HAAR.js的 Haar Cascade Classifiers(从 OpenCV 移植)在 JavaScript 中完成。
在 JavaScript/HTML5 中使用 js-objectdetect 的示例:打开与闭合手检测(美国手语字母表的“A”手势)
于 2012-09-05T02:58:24.403 回答
4
这是一个 JavaScript 手部跟踪演示——它依赖于尚未在所有典型浏览器中启用的 HTML5 功能,它在这里根本无法正常工作,而且我不相信它涵盖了手势,但它可能是一个为您开始:http ://code.google.com/p/js-handtracking/
于 2012-07-01T17:12:55.650 回答
2
虽然这是一个非常古老的问题,但使用快速神经网络和来自网络摄像头的图像进行手部追踪有一些新的机会。在 Javascript 中。我推荐使用 Tensorflow.js 的Handtrack.js库。
简单的使用示例。
<!-- Load the handtrackjs model. -->
<script src="https://cdn.jsdelivr.net/npm/handtrackjs/dist/handtrack.min.js"> </script>
<!-- Replace this with your image. Make sure CORS settings allow reading the image! -->
<img id="img" src="hand.jpg"/>
<canvas id="canvas" class="border"></canvas>
<!-- Place your code in the script tag below. You can also use an external .js file -->
<script>
// Notice there is no 'import' statement. 'handTrack' and 'tf' is
// available on the index-page because of the script tag above.
const img = document.getElementById('img');
const canvas = document.getElementById('canvas');
const context = canvas.getContext('2d');
// Load the model.
handTrack.load().then(model => {
// detect objects in the image.
model.detect(img).then(predictions => {
console.log('Predictions: ', predictions);
});
});
</script>
还可以在 python 中看到类似的神经网络实现-
免责声明..我维护这两个项目。
于 2019-03-05T14:15:21.227 回答