UNPKG

@google-cloud/vision

Version:
169 lines (144 loc) 5.37 kB
# @google-cloud/vision ([Alpha][versioning]) > Google Cloud Vision Client Library for Node.js *Looking for more Google APIs than just Vision? You might want to check out [`google-cloud`][google-cloud].* - [API Documentation][gcloud-vision-docs] - [Official Documentation][cloud-vision-docs] ```sh $ npm install --save @google-cloud/vision ``` ```js var vision = require('@google-cloud/vision')({ projectId: 'grape-spaceship-123', keyFilename: '/path/to/keyfile.json' }); // Read the text from an image. vision.detectText('./image.jpg', function(err, text) { // text = [ // 'This was text found in the image', // 'This was more text found in the image' // ] }); // Detect faces and the locations of their features in an image. vision.detectFaces('./image.jpg', function(err, faces) { // faces = [ // { // angles: {pan,tilt,roll}, // bounds: { // head: [{x,y},{x,y},{x,y},{x,y}], // face: [{x,y},{x,y},{x,y},{x,y}] // }, // features: { // confidence: 34.489909, // chin: { // center: {x,y,z}, // left: {x,y,z}, // right: {x,y,z} // }, // ears: { // left: {x,y,z}, // right: {x,y,z} // }, // eyebrows: { // left: { // left: {x,y,z}, // right: {x,y,z}, // top: {x,y,z} // }, // right: { // left: {x,y,z}, // right: {x,y,z}, // top: {x,y,z} // } // }, // eyes: { // left: { // bottom: {x,y,z}, // center: {x,y,z}, // left: {x,y,z}, // pupil: {x,y,z}, // right: {x,y,z}, // top: {x,y,z} // }, // right: { // bottom: {x,y,z}, // center: {x,y,z}, // left: {x,y,z}, // pupil: {x,y,z}, // right: {x,y,z}, // top: {x,y,z} // } // }, // forehead: {x,y,z}, // lips: { // bottom: {x,y,z}, // top: {x,y,z} // }, // mouth: { // center: {x,y,z}, // left: {x,y,z}, // right: {x,y,z} // }, // nose: { // bottom: { // center: {x,y,z}, // left: {x,y,z}, // right: {x,y,z} // }, // tip: {x,y,z}, // top: {x,y,z} // } // }, // confidence: 56.748849, // blurry: false, // dark: false, // happy: false, // hat: false, // mad: false, // sad: false, // surprised: false // } // ] }); // Promises are also supported by omitting callbacks. vision.detectFaces('./image.jpg').then(function(data) { var faces = data[0]; }); // It's also possible to integrate with third-party Promise libraries. var vision = require('@google-cloud/vision')({ promise: require('bluebird') }); ``` ## Authentication It's incredibly easy to get authenticated and start using Google's APIs. You can set your credentials on a global basis as well as on a per-API basis. See each individual API section below to see how you can auth on a per-API-basis. This is useful if you want to use different accounts for different Google Cloud services. ### On Google Cloud Platform If you are running this client on Google Cloud Platform, we handle authentication for you with no configuration. You just need to make sure that when you [set up the GCE instance][gce-how-to], you add the correct scopes for the APIs you want to access. ``` js var vision = require('@google-cloud/vision')(); // ...you're good to go! ``` ### Elsewhere If you are not running this client on Google Cloud Platform, you need a Google Developers service account. To create a service account: 1. Visit the [Google Developers Console][dev-console]. 2. Create a new project or click on an existing project. 3. Navigate to **APIs & auth** > **APIs section** and turn on the following APIs (you may need to enable billing in order to use these services): * Google Cloud Vision API 4. Navigate to **APIs & auth** > **Credentials** and then: * If you want to use a new service account, click on **Create new Client ID** and select **Service account**. After the account is created, you will be prompted to download the JSON key file that the library uses to authenticate your requests. * If you want to generate a new key for an existing service account, click on **Generate new JSON key** and download the JSON key file. ``` js var projectId = process.env.GCLOUD_PROJECT; // E.g. 'grape-spaceship-123' var vision = require('@google-cloud/vision')({ projectId: projectId, // The path to your key file: keyFilename: '/path/to/keyfile.json' // Or the contents of the key file: credentials: require('./path/to/keyfile.json') }); // ...you're good to go! ``` [versioning]: https://github.com/GoogleCloudPlatform/google-cloud-node#versioning [google-cloud]: https://github.com/GoogleCloudPlatform/google-cloud-node/ [gce-how-to]: https://cloud.google.com/compute/docs/authentication#using [dev-console]: https://console.developers.google.com/project [gcloud-vision-docs]: https://googlecloudplatform.github.io/google-cloud-node/#/docs/vision [cloud-vision-docs]: https://cloud.google.com/vision/docs