Skip to content

xStarman/ndarray-warp

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ndarray-warp

Inverse image warping operations for ndarrays.

Example

//Load input image
var lena = require("luminance")(require("lena"))

//Allocate storage for result
var result = require("zeros")([512, 512])

//Apply warp
require("ndarray-warp")(result, lena, function(out, inp) {
  var dx = inp[0] - 256
  var dy = inp[1] - 256
  var r  = Math.sqrt(dx * dx + dy * dy)
  var theta = Math.atan2(dy, dx)
  
  out[0] = 0.9 * r * Math.cos(theta + 0.01 * r) + 256
  out[1] = 0.7 * r * Math.sin(theta + 0.01 * r) + 256
})

//Save the result to stdout
require("save-pixels")(result, "png").pipe(process.stdout)

Which produces the following image:

Install

npm install ndarray-warp

require("ndarray-warp")(output, input, map(out_coord, in_coord))

Applies an inverse warp to an image

  • output is an ndarray image that gets the result of applying the warp

  • input is an ndarray iamge that is warped

  • map(result, coord) is a mapping from the coordinates of out image to input image.

    • result gets the resulting coordinate in input
    • coord is the coordinate in output

Credits

(c) 2013 Mikola Lysenko. MIT License

About

Warps an ndarray

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%