nfv
Version:
[Updated to use ndv package instead dv] FormVision is a node.js library for extracting data from scanned forms
19 lines (16 loc) • 793 B
JavaScript
// Generated by CoffeeScript 1.12.7
var filterBackground;
filterBackground = require('./filter_background');
module.exports = function(image) {
var cyan, desaturatedMask, foreground, formMask, hsv, nearInkMask, red, redMask;
hsv = filterBackground(image, 25, 35).toHSV();
nearInkMask = hsv.inRange(0, 0, 0, 255, 10, 0.9 * 255).dilate(9, 11).erode(11, 11).dilate(11, 11).toGray();
desaturatedMask = hsv.inRange(0, 0, 0, 239, 0.3 * 255, 0.9 * 255);
desaturatedMask = desaturatedMask.toGray().convolve(2, 2).invert().subtract(nearInkMask);
red = image.toGray(1, 0, 0);
cyan = image.toGray(0, 0.5, 0.5);
redMask = red.subtract(cyan).convolve(1, 1);
formMask = redMask.add(redMask).subtract(desaturatedMask);
foreground = image.toGray().add(formMask);
return foreground;
};