
Product
Rust Support Now in Beta
Socket's Rust support is moving to Beta: all users can scan Cargo projects and generate SBOMs, including Cargo.toml-only crates, with Rust-aware supply chain checks.
@sensu/color-extractor
Advanced tools
Extract color palettes from photos using Node.js.
Is as simple as with any other Node.js module:
$ npm install color-extractor
NOTE: color-extractor
depends on gm module, which in turn depends on GraphicsMagick.
color-extractor
exports two functions:
ce = require('color-extractor')
ce.topColors('Photos/Cats/01.jpg', function (error, colors) {
console.log(colors);
});
topColors
function takes two arguments:
Callback function will be passed an Array
with RGB triplet of each color and its frequency:
[
[1, [46, 70, 118]],
[0.3, [0, 0, 2]],
[0.2, [12, 44, 11]]
]
The second function, colorKey
, returns an array with nine colors, where each one can be mapped to a 3x3 box, ie. super-pixelised representation of the photo.
ce.colorKey('Photos/Cats/999999.jpg', function (error, colors) {
database.store('color-keys', photoId, colors);
res.send(colors);
// render colors to user while they wait for the photo to load.
// (or something equally brilliant)
});
color-extractor
exports two more utility functions:
> ce.rgb2hex(100, 10, 12);
'#640a0c'
> ce.rgb2hex([44, 44, 44]);
'#2c2c2c'
> ce.hex2rgb('#ffffff');
[255, 255, 255]
> ce.hex2rgb('45c092')
[69, 192, 146]
color-extractor is published under MIT license, please see the LICENSE file for full details.
Photos used in the sample can be downloaded from Flickr:
v1.1.2 - 2018-06-01
FAQs
Extract color palettes from images
We found that @sensu/color-extractor demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
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.
Product
Socket's Rust support is moving to Beta: all users can scan Cargo projects and generate SBOMs, including Cargo.toml-only crates, with Rust-aware supply chain checks.
Product
Socket Fix 2.0 brings targeted CVE remediation, smarter upgrade planning, and broader ecosystem support to help developers get to zero alerts.
Security News
Socket CEO Feross Aboukhadijeh joins Risky Business Weekly to unpack recent npm phishing attacks, their limited impact, and the risks if attackers get smarter.