in src/gcf/main.py [0:0]
def annotate_image_uri(image_uri: str, detect_features: Optional[list] = None) -> str:
"""Calculate annotations for the image referenced by the URI.
Args:
image_uri: URI pointing to the image
detect_features: a list of Vision Feature Types
Returns:
string: JSON with annotations built from vision.AnnotateImageResponse
"""
logging.info("Annotate image: %s", image_uri)
vision_client = vision.ImageAnnotatorClient()
logging.info("Building Vision Image object.")
vision_image = vision.Image()
vision_image.source.image_uri = image_uri
logging.info("Building Request")
request = vision.AnnotateImageRequest(image=vision_image, features=detect_features)
logging.info("Annotating image.")
response = vision_client.annotate_image(request, timeout=120.0)
json_string = type(response).to_json(response)
return json_string