Python Client for Google Cloud Vision
The Google Cloud Vision API enables developers to understand the content of an image by encapsulating powerful machine learning models in an easy to use REST API. It quickly classifies images into thousands of categories (e.g., “sailboat”, “lion”, “Eiffel Tower”), detects individual objects and faces within images, and finds and reads printed words contained within images. You can build metadata on your image catalog, moderate offensive content, or enable new marketing scenarios through image sentiment analysis. Analyze images uploaded in the request or integrate with your image storage on Google Cloud Storage.
Quick Start
In order to use this library, you first need to go through the following steps:
Installation
Install this library in a virtualenv using pip. virtualenv is a tool to create isolated Python environments. The basic problem it addresses is one of dependencies and versions, and indirectly permissions.
With virtualenv, it’s possible to install this library without needing system install permissions, and without clashing with the installed system dependencies.
Supported Python Versions
Python >= 3.6
Deprecated Python Versions
Python == 2.7.
The last version of this library compatible with Python 2.7 is google-cloud-vision==1.0.0.
RaspberryPi ARM devices
Note: Raspberry Pi ARMv6 is not supported because there is an internal binary google that does not comply with armv6 processors.
Mac/Linux
pip install virtualenv
virtualenv <your-env>
source <your-env>/bin/activate
<your-env>/bin/pip install google-cloud-vision
Windows
pip install virtualenv
virtualenv <your-env>
<your-env>\Scripts\activate
<your-env>\Scripts\pip.exe install google-cloud-vision
Example Usage
from google.cloud import vision
client = vision.ImageAnnotatorClient()
response = client.annotate_image({
'image': {'source': {'image_uri': 'gs://my-test-bucket/image.jpg'}},
'features': [{'type_': vision.Feature.Type.FACE_DETECTION}]
})
Known Limitations
Pylint Does Not Work Out Of The Box
Pylint throws errors by default when checking code that uses feature methods on the
ImageAnnotatorClient
class, such as label_detection()
or text_detection()
.
As a workaround, member checking on all methods of the ImageAnnotatorClient
can be
disabled using Pylint’s generated-members
option. To do this on a line-by-line basis,
add a comment like # pylint: disable=no-member
to suppress this error. To do this
for a whole project, you can add the following lines to a .pylintrc
file in your project:
[TYPECHECK]
generated-members=<<REGULAR EXPRESSION>>
Substitute a regular expression of your choosing that matches all lines for which you want to
disable this error check. For example, if you choose a convention of naming your
ImageAnnotatorClient
variables image_annotator_client
, then your regex could be
image_annotator_client.\*
or something similar.
Next Steps
Read the Client Library Documentation for Google Cloud Vision API to see other available methods on the client.
Read the Product documentation to learn more about the product and see How-to Guides.