node-opencv/examples/remove-lines.js
jspdown 1d126caba5 Add remove-lines.js example
This example use GetStructuringElement, Dilate and Erode to remove line
of a music partition.
2015-11-22 15:19:53 +01:00

28 lines
746 B
JavaScript

var cv = require('../lib/opencv');
// Load the image
cv.readImage('./files/note.png', function(err, im) {
console.log('plop');
if (err) { throw err; }
if (im.width() < 1 || im.height() < 1) { throw new Error('Image has no size'); }
im.cvtColor('CV_BGR2GRAY');
var bw = im.adaptiveThreshold(255, 0, 0, 15, 2);
bw.bitwiseNot(bw);
var vertical = bw.clone();
var verticalsize = vertical.size()[0] / 30;
var verticalStructure = cv.imgproc.getStructuringElement(1, [1, verticalsize]);
// Apply morphology operations
vertical.erode(1, verticalStructure);
vertical.dilate(1, verticalStructure);
vertical.bitwiseNot(vertical);
vertical.gaussianBlur([3, 3]);
// Save output image
vertical.save('./tmp/note.png');
});