NPM 包 potato-detection 使用教程

阅读时长 6 分钟读完

简介

potato-detection 是一个基于 TensorFlow.js 的 npm 包,用于检测图像中是否有土豆。它是一个独立的模型,所以你不需要知道有关 TensorFlow.js 的任何知识就可以使用它。

本文将提供详细的步骤指导,帮助你使用 potato-detection 包。

安装

首先,在你的项目中安装 potato-detection:

然后,在你的项目中引入包,并创建一个新的检测器:

使用

在创建检测器之后,我们可以调用 detect() 方法,将图像提交给模型进行土豆检测:

上面的代码会在控制台输出一个数组,包含所有检测到的土豆的位置和置信度。如果你的图像中没有土豆,将返回一个空数组。

参数

detect() 方法接受两个参数:

  1. 图像 - 一个 HTMLImageElement(https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement) 对象。可以通过 document.createElement('img') 创建并设置 src 属性来创建一个图像。
  1. 配置 - 一个包含模型配置的对象。

返回结果

检测完成后,detect() 方法将返回一个 Promise 对象,该对象的解析值是一个预测数组。

预测数组包含每个探测器检测出的水果的预测对象。每个预测对象都有以下属性:

  • bbox - 包围盒,一个数组,表示检测到的土豆的左上角和右下角的坐标,如 [x, y, width, height]。
  • class - 预测的物体的类别。在此模型中,类别只有 "potato"。
  • score - 预测的概率。

示例

这里是一个基本的使用 potato-detection 包的示例。我们将使用一个简单的 HTML 页面来演示检测器所需的步骤:

-- -------------------- ---- -------
--------- -----
------
  ------
    ----- --------------- --
    ----------------------- ------------
    -------
      ------ -
        ------ -----
        ------- -----
        ---------- ------
      -
    --------
  -------
  ------
    -------------------- ---------
    ------ ----------- ---------------- --------------------------- --
    ------- ---------------------

    ------- -------------------------------------------------------------
    ------- -------------------------------------------------------------------------
    ------- ------------------------------------------------------------------------------
    ------- -------------------------------------------------------------

    --------
      ----- -------- - --- ------------------

      ----- -------- ---------------- -
        ----- ----- - --- --------
        --------- - -------------------------------------------
        ------------ - ----- -------- -- -
          ----- ----------- - ----- -----------------------
          ------------------------ -------------
        --
      -

      -------- ------------------------ ------------ -
        ----- ------ - ----------------------------------
        ----- --- - ------------------------
        ------------ - ------------
        ------------- - -------------
        -------------------- -- -- ------------- ---------------

        --- ---- - - -- - - ------------------- ---- -
          ----- ---------- - ---------------
          -- ----------------- --- -------- -- ---------------- - ---- -
            --- - - -------------------
            --- - - -------------------
            --- ----- - -------------------
            --- ------ - -------------------
            --------------- - ----------
            ------------- - --
            ----------------- -- ------ --------
          -
        -
      -
    ---------
  -------
-------

这个示例使用 HTML input 元素来允许用户上传图像。当用户选择图像后,我们将从 potato-detection 中创建一个新的检测器,并通过 detect() 方法将图像提交给检测器。然后,我们将得到的预测用来绘制包围框。

总结

本文介绍了如何使用 potato-detection 包检测图像中的土豆。我们鼓励你使用这个工具,探索更多的机器学习技术!

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600558c881e8991b448d610e

纠错
反馈