New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

js-aruco

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

js-aruco

JS port of ArUco AR marker library

latest
Source
npmnpm
Version
0.1.0
Version published
Maintainers
1
Created
Source

js-aruco is a port to JavaScript of the ArUco library by jcmellado. This module adapts that browser library slightly to work in Node.js.

ArUco is a minimal library for Augmented Reality applications based on OpenCV.

Usage

Create an AR.Detector object:

var AR = require('js-aruco').AR;
var detector = new AR.Detector();

Call detect function:

var markers = detector.detect(imageData);

markers result will be an array of AR.Marker objects with detected markers.

AR.Marker objects have two properties:

  • id: Marker id.
  • corners: 2D marker corners.

imageData argument must be a valid ImageData canvas object. The pixel suite of modules may be helpful for constructing these in Node.

3D Pose Estimation

Create an POS.Posit object:

var POS = require('js-aruco').POS1;
var posit = new POS.Posit(modelSize, canvas.width);

modelSize argument must be the real marker size (millimeters).

Call pose function:

var pose = posit.pose(corners);

corners must be centered on canvas:

var corners = marker.corners;

for (var i = 0; i < corners.length; ++ i){
  var corner = corners[i];

  corner.x = corner.x - (canvas.width / 2);
  corner.y = (canvas.height / 2) - corner.y;
}

pose result will be a POS.Pose object with two estimated pose (if any):

  • bestError: Error of the best estimated pose.
  • bestRotation: 3x3 rotation matrix of the best estimated pose.
  • bestTranslation: Translation vector of the best estimated pose.
  • alternativeError: Error of the alternative estimated pose.
  • alternativeRotation: 3x3 rotation matrix of the alternative estimated pose.
  • alternativeTranslation: Translation vector of the alternative estimated pose.

Note: POS namespace can be taken from require('js-aruco').POS1 or .POS2.

FAQs

Package last updated on 01 Jun 2017

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts