npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

pixfinder-2

v0.2.6

Published

Javascript library for extracting objects from images

Readme

Pixfinder is an experimental JavaScript library for object detection.

Table of Contents

Demos

See live demos here:

  • Airplanes counter;
  • Dry coast area calculation.

How it works

Pixfinder analyzes image (in a quite naive way) and extracts coordinates of each object. It detects objects by several criterias, the most important criteria is color.

For example we have an aerial shot of planes and we want to know how many planes at the airport right now:

To solve this problem we need to write several lines of code and Pixfinder will find all planes on the image. So let's find all planes and draw them all on the canvas:

var img = document.getElementById('img');

pix.util.dom.onload(img, function() {
    var planes = pix.findAll({
        img: img,
        distance: 5,
        colors: ['eff1f0'],
        clearNoise: 50
    });
    document.getElementById('count').innerHTML = planes.length;
    planes.forEach(draw);
});

function draw(plane) {
    var ctx = document.getElementById("canv").getContext("2d");
    ctx.beginPath();
    plane.forEach(function(point) {
        ctx.arc(point.x, point.y, 1, 0, 2 * Math.PI);
    });
    ctx.stroke();
    ctx.closePath();
}

Result:

API

findAll

Search all objects on the image.

options

find

Starts searching from the start point and returns one object that belongs to this point. This method should be useful for example if you want to highlight object under the mouse cursor.

options

util.dom

Various DOM utility functions.

Point

Contains information about point.

To-do

  • write more demos;
  • improve performance;
  • make concavity param optional;
  • think about configurable color comparison function;
  • check and ensure that behaviour with distance 1px is correct;
  • write tests.

Development

npm install     # install dependencies
gulp build      # check the code with JSHint, run tests and build dist
gulp            # build and watch for the src changes

Changelog

0.2.5 — 01.07.2018

  • Update dependencies;
  • Introduce concavity parameter.

0.2.4 — 30.03.2015

  • Minor package.json and copyright fixes.

0.2.3 — 04.02.2015

  • Minor package.json fixes.

0.2.2 — 04.02.2015

  • Minor package.json fixes.

0.2.1 — 27.10.2014

  • Readme fixes.

0.2.0 — 27.10.2014

  • API changes without backward compatibility.

0.1.0 — 16.05.2014

  • First Pixfinder release (unstable alpha version).