利用tensorflow.js在线实现图像要素识别提取

发布于:2022-12-27 ⋅ 阅读:(603) ⋅ 点赞:(0)

什么是Tensorflow.js?

TensorFlow.js是一个开源的基于硬件加速的JavaScript库,用于训练和部署机器学习模型。谷歌推出的第一个基于TensorFlow的前端深度学习框架TensorFlow.js 是一个开源的用于开发机器学习项目的 WebGL-accelerated JavaScript 库。TensorFlow.js 可以为你提供高性能的、易于使用的机器学习构建模块,允许你在浏览器上训练模型,或以推断模式运行预训练的模型。TensorFlow.js 不仅可以提供低级的机器学习构建模块,还可以提供高级的类似 Keras 的 API 来构建神经网络。

Tensorflow.js的优点:

1)不用安装驱动器和软件,通过链接即可分享程序

2)网页应用交互性更强

3)有访问GPS,Camera,Microphone,Accelerator,Gyroscope等传感器的标准api(主要是指手机端)

4)安全性,因为数据都是保存在客户端的

本文使用TensorFlow.js实现任意图片中主要要素的识别提取:

代码如下:

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <!-- Load TensorFlow.js. This is required to use coco-ssd model. -->
    <script src="tfjs.js"></script>
    <!-- Load the coco-ssd model. -->
    <script src="coco-ssd.js"></script>
</head>
<body>
<!-- Replace this with your image. Make sure CORS settings allow reading the image! -->
<div>
    <img id="img" src="57410e4667f97362aa44af920924938c.jpeg"/>
</div>

<div>
    <textarea id="result" style="width:500px;min-height: 300px;"></textarea>
</div>

<!-- Place your code in the script tag below. You can also use an external .js file -->
<script>
    // Notice there is no 'import' statement. 'cocoSsd' and 'tf' is
    // available on the index-page because of the script tag above.

    const img = document.getElementById('img');
    // Load the model.
    cocoSsd.load().then(model => {
        // detect objects in the image.
        model.detect(img).then(predictions => {
            console.log('Predictions: ', predictions);
            var resultStr = "";
            for (var item of predictions) {
                resultStr += "\n检测到:" + item.class + " ,概率:" + item.score + "\n";
                resultStr += "区域:" + item.bbox + "\n";
            }
            document.getElementById('result').value = resultStr;
        });
    });
</script>
</body>
</html>


效果:

在线演示地址利用tensorflow.js实现图像在线要素识别,可识别大部分物体,并输出结果 (mubanmao.top)icon-default.png?t=M7J4http://mubanmao.top/content/preview?id=f949afd8-973c-461a-bfd6-c2365fe207a0