Skip to content

Instantly share code, notes, and snippets.

@keizie
Created March 27, 2016 12:01
Show Gist options
  • Save keizie/5d709484023a9d8477e2 to your computer and use it in GitHub Desktop.
Save keizie/5d709484023a9d8477e2 to your computer and use it in GitHub Desktop.
OCR via Google Vision API
var fs = require('fs');
var request = require('request');
var base64 = require('base64-stream');
var JSONStream = require('JSONStream');
var visionArgs = {key: fs.readFileSync('vision.key')};
var visionUrl = 'https://vision.googleapis.com/v1/images:annotate';
var reader = process.stdin.pipe(base64.encode());
var writer = request.post({
json: true,
qs: visionArgs,
url: visionUrl,
});
writer.once('pipe', function() {
this.write( '{"requests":[{ "image":{"content":"' );
});
reader.once('end', function() {
writer.end( '"}, "features":[{"type":"TEXT_DETECTION","maxResults":1}] }]}' );
})
reader.pipe(writer)
.pipe(JSONStream.parse('responses.*.textAnnotations.*.description'))
.pipe(process.stdout)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment