22

Is it possible to get an array of RGB values from a local image file using node.js? I'm trying to write a script that takes a file path as its parameter and returns an array that represents the pixel data.

function getPixelArray(filePath){
    //return an array of RGB values that correspond to the image
}
Anderson Green
  • 30,230
  • 67
  • 195
  • 328

2 Answers2

29

You can try https://www.npmjs.com/package/jimp This could be useful:

Jimp.read("http://www.example.com/path/to/lenna.jpg", function (err, image) {
    image.getPixelColor(x, y); // returns the colour of that pixel e.g. 0xFFFFFFFF
});

To get RGB you can use:

Jimp.intToRGBA(hex); // e.g. converts 0xFFFFFFFF to {r: 255, g: 255, b: 255, a:255} 
Michael Yurin
  • 1,021
  • 14
  • 18
8

If your image is in PNG format, have a look at https://github.com/devongovett/png.js/

Maciej
  • 578
  • 4
  • 12