npm 包 @bouzuya/compare-images 使用教程

介绍

@bouzuya/compare-images 是一个 npm 包,可以帮助开发人员比较两张图片的相似性。该包基于 js 比较算法实现,提供了快速、准确的比较能力,支持透明背景。本文将详细介绍该 npm 包的使用。

安装

可以通过 npm 命令安装该包:

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

使用

基础使用

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

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

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

参数说明

比较两张图片时,可以传入一些可选参数,以控制比较过程:

  • threshold:number 设置相似度阈值,范围为 0 到 1 之间的浮点数,默认为 0.1,超出该值后认为两张图片不相似
  • ignoreColors:bool 是否忽略颜色进行比较,默认为 false,不忽略颜色
  • alpha:bool 是否考虑透明度,即支持透明背景。注意,支持透明背景会增加计算量,默认为 false

结果说明

compareImages 函数返回一个对象,该对象包含以下属性:

  • misMatchPercentage:number 表示两张图片之间的差异率,取值为 0 到 1 的浮点数。该值越小表示两张图片之间越相似
  • isSameDimensions:bool 两张图片是否具有相同的尺寸
  • dimensionDifference:{width:number, height:number} 两张图片尺寸之间的差异

示例代码

比较两张相同的图片,得到 0 的差异率

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

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

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

输出结果:

------ -

比较两张不同的图片,得到非 0 的差异率

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

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

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

输出结果:

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

总结

@bouzuya/compare-images 是一个方便实用的 npm 包,可以快速、准确地比较两张图片的相似性。通过本文的介绍,您已经学习了该包的安装和使用方法,掌握了比较过程中可用的参数、以及返回结果的含义。希望本文能够对您的前端开发工作有所帮助。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005725881e8991b448e8736


猜你喜欢

  • npm 包 git-root-dir 使用教程

    简介 git-root-dir 是一个可以帮助你找到 git 项目根目录的 npm 包。它可以在前端开发中提供便利,尤其当你需要在项目中使用 git 相关操作时,可以帮助你快速准确定位 git 项目的...

    3 年前
  • npm 包 ireceipt 使用教程

    简介 ireceipt 是一款用于生成电子收据的 npm 包,可以通过代码的方式生成电子收据,支持生成 PDF 和 HTML 两种格式的收据文件。 在前端开发中,有时需要生成收据文件,传统的方式可能是...

    3 年前
  • npm 包 react-native-skewable-view 使用教程

    介绍 react-native-skewable-view 是一款 React Native 的库,可以用来创建可倾斜的视图。倾斜的视图具有一定的美观效果,可以用于制作一些特殊效果的界面。

    3 年前
  • npm 包 react-sn 使用教程

    在 React 开发中,经常需要使用各种组件库来优化开发效率。其中一个比较常用的组件库是 react-sn,它提供了一些常用的 UI 组件,例如按钮、输入框、弹窗等,可以帮助我们快速构建界面。

    3 年前
  • NPM 包 @notacademicduck/react-mathjax 使用教程

    在前端的开发过程中,难免会涉及到数学公式的展示,而 MathJax 是一款性能稳定且可定制的数学公式展示库,可以轻松地将数学公式显示在网页上。本文将介绍如何使用 NPM 包 @notacademicd...

    3 年前
  • npm 包 react-signal-js 使用教程

    NPM 是一个开放的 JavaScript 包管理器,允许前端工程师在项目中使用外部 JavaScript 库。在前端开发中,有很多著名的 npm 包如 React、jQuery 等。

    3 年前
  • npm 包 expwall 使用教程

    前言 在前端开发中,我们经常需要对数据进行可视化展示。而 expwall 这个 npm 包可以帮助我们快速、灵活地制作可视化图表。 本文将详细介绍 expwall npm 包的安装、使用和示例代码,帮...

    3 年前
  • npm 包 stush 使用教程

    在前端开发中,我们常常需要进行命令行操作。为了方便实现这些操作,我们可以使用 npm 包来使得我们能够以编程的方式访问命令行。stush 是一个功能强大的 npm 包,它能够让我们轻松实现各种命令行操...

    3 年前
  • npm 包 table-redis 使用教程

    在前端开发过程中,经常需要处理数据展示与存储问题。而 Redis 是一个开源的内存数据结构存储系统,可以用作数据库、缓存以及消息代理等多种用途。在前端开发中,我们通常使用 Redis 作为缓存,以提高...

    3 年前
  • npm 包 validate-interface 使用教程

    在前端开发中,我们常常需要验证一些输入参数的数据类型、格式等。validate-interface 是一个常用的 npm 包,可以帮助我们处理这些问题。它提供了一种方式来定义一个接口,并且可以用它来做...

    3 年前
  • npm 包 webx-cli 使用教程

    前言 webx-cli 是一个通过命令行工具进行前端工程化的工具,可以快速生成脚手架,支持JS/TS/Vue/React/Angular等框架的项目创建,提供了一些常用的模板和插件,方便我们快速搭建项...

    3 年前
  • npm 包 ts-ext-decorators 使用教程

    前言 在前端开发过程中,我们经常需要使用 TypeScript 来进行开发以保证代码的类型安全。而在 TypeScript 中,装饰器(Decorator)是一种能够修改类和类成员的特殊声明。

    3 年前
  • npm 包 bmpimagejs 使用教程

    在前端开发中,图片的处理是非常重要的一项技术,而 BMP 格式是一种常见的无压缩的图片格式,它的特点是存储方式比较简单,具有一定的可读性。在处理 BMP 图片时,我们可以使用 bmpimagejs 这...

    3 年前
  • npm 包 xiguaui 使用教程

    介绍 xiguaui 是一款基于 Vue.js 开发的前端 UI 组件库。它提供了丰富的 UI 组件,可以帮助开发者快速搭建界面,并使界面更加美观、易于使用。xiguaui 库是以 npm 包的形式发...

    3 年前
  • npm 包 cheerio-req-plus 使用教程

    在前端开发过程中,我们经常需要从页面中获取特定元素的数据,这个时候就需要用到一个名为 Cheerio 的库。Cheerio 是一个类 jQuery 语法的解析库,可以用来操作 HTML 和 XML 文...

    3 年前
  • npm 包 scrape-it-plus 使用教程

    前言 在前端的开发过程中,抓取网页信息是非常常见的需求。而在这个过程中可能会用到一些第三方的抓取库来提高效率和便捷性。本篇文章就来介绍一下一个非常好用的 npm 包:scrape-it-plus。

    3 年前
  • npm 包 yberri 使用教程

    介绍 yberri 是一个基于 Node.js 平台的实用工具库,旨在提供一些常用的前端工具方法,用于快捷地完成前端开发任务。 安装 yberri 使用 npm 安装 yberri: --- ----...

    3 年前
  • npm 包 @demivan/lib-jitsi-meet 使用教程

    简介 @demivan/lib-jitsi-meet 是一个基于 jitsi-meet 的 npm 包,用于在 web 应用程序中进行视频会议。它在 jitsi-meet 的基础上提供了更多的自定义功...

    3 年前
  • npm 包 html-mailer 使用教程

    随着电子邮件的使用越来越广泛,如何制作美观、完整的邮件成为了一个重要的问题。npm 包 html-mailer 提供了一个非常简单的解决方案,可以帮助你快速制作出漂亮的邮件。

    3 年前
  • npm 包 priority-queues 使用教程

    在前端开发中,经常需要对数据进行排序或者优先级处理。而在这个过程中,我们可以使用优先队列(Priority Queue)来实现这些操作,它允许我们以优先级的方式处理数据。

    3 年前

相关推荐

    暂无文章