dieterwalckiers / subimage-match

Lightweight library that finds matches of an image within another image

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

matches-subimage

Lightweight library that finds matches of an image within another image, perfect for visual validation in testing scenarios. Heavily inspired by (read: blatantly copied some subroutines from) pixelmatch, and just like pixelmatch, its advantages are that it's fast and lightweight, with zero dependencies.

Usage demo:

const foundMatch = subImageMatch(img, subImg);

API

subImageMatch(img, subImg[, options])

  • img1, img2 — Image data of the images to compare (Buffer, Uint8Array or Uint8ClampedArray).
  • options is an object literal with only one property currently:
    • threshold — Matching threshold, ranges from 0 to 1. Smaller values make the comparison more sensitive. 0.1 by default.

Returns a boolean indicating whether or not a match has been found

Example usage

Node.js

const fs = require("fs");
const PNG = require("pngjs").PNG;
const subImageMatch = require("matches-subimage");

const img = PNG.sync.read(fs.readFileSync("image.png"));
const subImg = PNG.sync.read(fs.readFileSync("sub_image.png"));
subImageMatch(img1, img2, {threshold: 0.1});

Install

Install with NPM:

npm install matches-subimage

Changelog

About

Lightweight library that finds matches of an image within another image

License:MIT License


Languages

Language:JavaScript 100.0%