netPark / node-openalpr

NodeJS Wrapper for OpenALPR
GNU Affero General Public License v3.0
89 stars 78 forks source link

node-openalpr

This package binds OpenALPR with Node.js

Version: 1.1.0 - Released January 4th, 2016

Changelog:

1.1.1   - Fix for building on OSX
1.1.0   - Updated OpenALPR to version 2.2, should fix Linux and OSX builds
1.0.9   - Updated OpenALPR build and US region data
1.0.7   - Added the capability to specify regions
1.0.6   - Slowed down the event loop to 30 times per second
1.0.1:5 - Documentation changes
1.0.0   - Initial release

Installation and Example

Use npm to get the node-openalpr package. We'll attempt to use node-pre-gyp to compile from source, but if that's not possible we'll fallback to precompiled binaries.

Linux

  1. Install OpenALPR
  2. Run npm install node-openalpr

Windows

  1. Run npm install node-openalpr

OS X

  1. Install OpenALPR (this installation may lead to some error in the binary compilation, manual compilation may be requested. For the compilation issue see this suggestion: https://github.com/openalpr/openalpr/issues/658#issuecomment-482913493.)
    • OpenALPR
    • using Homebrew(openalpr v2.2.0)
  2. Run npm install node-openalpr

Example

var openalpr = require ("node-openalpr");

function identify (id, path) {
    console.log (openalpr.IdentifyLicense (path, function (error, output) {
        var results = output.results;
        console.log (id +" "+ output.processing_time_ms +" "+ ((results.length > 0) ? results[0].plate : "No results"));

        if (id == 349) {
            console.log (openalpr.Stop ());
        }
    }));
}

openalpr.Start ();
openalpr.GetVersion ();

for (var i = 0; i < 350; i++) {
    identify (i, "lp.jpg");
}

Methods

This is a breakdown of all of the methods available for node-openalpr. Start needs to be called before any other method.

How to Compile

  1. Download and install io.js v3.0.0+
  2. Download and install git
  3. Download and install cmake

Windows

  1. Download and install Visual Studio 2013/2015
  2. Run PowerShell ISE as an administrator and execute: Set-ExecutionPolicy RemoteSigned
  3. Run openalpr-install.ps1
  4. Take output from openalpr/windows/build/dist and put into "lib" and "release/win32" folder in node-openalpr
  5. Run npm install

Linux

  1. Run openalpr-install.sh
  2. Run npm install

Features, Bugs and Collaborating

All of the code is provided as-is. We will not provide on-going support for any bugs that may be found. Please submit bug and features requests - we will review them but we do not garunteed that they will be addressed. Pull requests are welcome and we'll review them as quickly as we can.