# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/proto/vision/v1/image_annotator.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf.internal import enum_type_wrapper
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
from google.cloud.proto.vision.v1 import geometry_pb2 as google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_geometry__pb2
from google.cloud.proto.vision.v1 import text_annotation_pb2 as google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_text__annotation__pb2
from google.cloud.proto.vision.v1 import web_detection_pb2 as google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_web__detection__pb2
from google.rpc import status_pb2 as google_dot_rpc_dot_status__pb2
from google.type import color_pb2 as google_dot_type_dot_color__pb2
from google.type import latlng_pb2 as google_dot_type_dot_latlng__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='google/cloud/proto/vision/v1/image_annotator.proto',
  package='google.cloud.vision.v1',
  syntax='proto3',
  serialized_pb=_b('\n2google/cloud/proto/vision/v1/image_annotator.proto\x12\x16google.cloud.vision.v1\x1a\x1cgoogle/api/annotations.proto\x1a+google/cloud/proto/vision/v1/geometry.proto\x1a\x32google/cloud/proto/vision/v1/text_annotation.proto\x1a\x30google/cloud/proto/vision/v1/web_detection.proto\x1a\x17google/rpc/status.proto\x1a\x17google/type/color.proto\x1a\x18google/type/latlng.proto\"\xcb\x02\n\x07\x46\x65\x61ture\x12\x32\n\x04type\x18\x01 \x01(\x0e\x32$.google.cloud.vision.v1.Feature.Type\x12\x13\n\x0bmax_results\x18\x02 \x01(\x05\"\xf6\x01\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\x12\n\x0e\x46\x41\x43\x45_DETECTION\x10\x01\x12\x16\n\x12LANDMARK_DETECTION\x10\x02\x12\x12\n\x0eLOGO_DETECTION\x10\x03\x12\x13\n\x0fLABEL_DETECTION\x10\x04\x12\x12\n\x0eTEXT_DETECTION\x10\x05\x12\x1b\n\x17\x44OCUMENT_TEXT_DETECTION\x10\x0b\x12\x19\n\x15SAFE_SEARCH_DETECTION\x10\x06\x12\x14\n\x10IMAGE_PROPERTIES\x10\x07\x12\x0e\n\nCROP_HINTS\x10\t\x12\x11\n\rWEB_DETECTION\x10\n\"7\n\x0bImageSource\x12\x15\n\rgcs_image_uri\x18\x01 \x01(\t\x12\x11\n\timage_uri\x18\x02 \x01(\t\"M\n\x05Image\x12\x0f\n\x07\x63ontent\x18\x01 \x01(\x0c\x12\x33\n\x06source\x18\x02 \x01(\x0b\x32#.google.cloud.vision.v1.ImageSource\"\xc7\r\n\x0e\x46\x61\x63\x65\x41nnotation\x12;\n\rbounding_poly\x18\x01 \x01(\x0b\x32$.google.cloud.vision.v1.BoundingPoly\x12>\n\x10\x66\x64_bounding_poly\x18\x02 \x01(\x0b\x32$.google.cloud.vision.v1.BoundingPoly\x12\x42\n\tlandmarks\x18\x03 \x03(\x0b\x32/.google.cloud.vision.v1.FaceAnnotation.Landmark\x12\x12\n\nroll_angle\x18\x04 \x01(\x02\x12\x11\n\tpan_angle\x18\x05 \x01(\x02\x12\x12\n\ntilt_angle\x18\x06 \x01(\x02\x12\x1c\n\x14\x64\x65tection_confidence\x18\x07 \x01(\x02\x12\x1e\n\x16landmarking_confidence\x18\x08 \x01(\x02\x12:\n\x0ejoy_likelihood\x18\t \x01(\x0e\x32\".google.cloud.vision.v1.Likelihood\x12=\n\x11sorrow_likelihood\x18\n \x01(\x0e\x32\".google.cloud.vision.v1.Likelihood\x12<\n\x10\x61nger_likelihood\x18\x0b \x01(\x0e\x32\".google.cloud.vision.v1.Likelihood\x12?\n\x13surprise_likelihood\x18\x0c \x01(\x0e\x32\".google.cloud.vision.v1.Likelihood\x12\x44\n\x18under_exposed_likelihood\x18\r \x01(\x0e\x32\".google.cloud.vision.v1.Likelihood\x12>\n\x12\x62lurred_likelihood\x18\x0e \x01(\x0e\x32\".google.cloud.vision.v1.Likelihood\x12?\n\x13headwear_likelihood\x18\x0f \x01(\x0e\x32\".google.cloud.vision.v1.Likelihood\x1a\xb9\x07\n\x08Landmark\x12\x42\n\x04type\x18\x03 \x01(\x0e\x32\x34.google.cloud.vision.v1.FaceAnnotation.Landmark.Type\x12\x32\n\x08position\x18\x04 \x01(\x0b\x32 .google.cloud.vision.v1.Position\"\xb4\x06\n\x04Type\x12\x14\n\x10UNKNOWN_LANDMARK\x10\x00\x12\x0c\n\x08LEFT_EYE\x10\x01\x12\r\n\tRIGHT_EYE\x10\x02\x12\x18\n\x14LEFT_OF_LEFT_EYEBROW\x10\x03\x12\x19\n\x15RIGHT_OF_LEFT_EYEBROW\x10\x04\x12\x19\n\x15LEFT_OF_RIGHT_EYEBROW\x10\x05\x12\x1a\n\x16RIGHT_OF_RIGHT_EYEBROW\x10\x06\x12\x19\n\x15MIDPOINT_BETWEEN_EYES\x10\x07\x12\x0c\n\x08NOSE_TIP\x10\x08\x12\r\n\tUPPER_LIP\x10\t\x12\r\n\tLOWER_LIP\x10\n\x12\x0e\n\nMOUTH_LEFT\x10\x0b\x12\x0f\n\x0bMOUTH_RIGHT\x10\x0c\x12\x10\n\x0cMOUTH_CENTER\x10\r\x12\x15\n\x11NOSE_BOTTOM_RIGHT\x10\x0e\x12\x14\n\x10NOSE_BOTTOM_LEFT\x10\x0f\x12\x16\n\x12NOSE_BOTTOM_CENTER\x10\x10\x12\x19\n\x15LEFT_EYE_TOP_BOUNDARY\x10\x11\x12\x19\n\x15LEFT_EYE_RIGHT_CORNER\x10\x12\x12\x1c\n\x18LEFT_EYE_BOTTOM_BOUNDARY\x10\x13\x12\x18\n\x14LEFT_EYE_LEFT_CORNER\x10\x14\x12\x1a\n\x16RIGHT_EYE_TOP_BOUNDARY\x10\x15\x12\x1a\n\x16RIGHT_EYE_RIGHT_CORNER\x10\x16\x12\x1d\n\x19RIGHT_EYE_BOTTOM_BOUNDARY\x10\x17\x12\x19\n\x15RIGHT_EYE_LEFT_CORNER\x10\x18\x12\x1f\n\x1bLEFT_EYEBROW_UPPER_MIDPOINT\x10\x19\x12 \n\x1cRIGHT_EYEBROW_UPPER_MIDPOINT\x10\x1a\x12\x14\n\x10LEFT_EAR_TRAGION\x10\x1b\x12\x15\n\x11RIGHT_EAR_TRAGION\x10\x1c\x12\x12\n\x0eLEFT_EYE_PUPIL\x10\x1d\x12\x13\n\x0fRIGHT_EYE_PUPIL\x10\x1e\x12\x15\n\x11\x46OREHEAD_GLABELLA\x10\x1f\x12\x11\n\rCHIN_GNATHION\x10 \x12\x14\n\x10\x43HIN_LEFT_GONION\x10!\x12\x15\n\x11\x43HIN_RIGHT_GONION\x10\"\"4\n\x0cLocationInfo\x12$\n\x07lat_lng\x18\x01 \x01(\x0b\x32\x13.google.type.LatLng\"\'\n\x08Property\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"\xa7\x02\n\x10\x45ntityAnnotation\x12\x0b\n\x03mid\x18\x01 \x01(\t\x12\x0e\n\x06locale\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\r\n\x05score\x18\x04 \x01(\x02\x12\x12\n\nconfidence\x18\x05 \x01(\x02\x12\x12\n\ntopicality\x18\x06 \x01(\x02\x12;\n\rbounding_poly\x18\x07 \x01(\x0b\x32$.google.cloud.vision.v1.BoundingPoly\x12\x37\n\tlocations\x18\x08 \x03(\x0b\x32$.google.cloud.vision.v1.LocationInfo\x12\x34\n\nproperties\x18\t \x03(\x0b\x32 .google.cloud.vision.v1.Property\"\xe7\x01\n\x14SafeSearchAnnotation\x12\x31\n\x05\x61\x64ult\x18\x01 \x01(\x0e\x32\".google.cloud.vision.v1.Likelihood\x12\x31\n\x05spoof\x18\x02 \x01(\x0e\x32\".google.cloud.vision.v1.Likelihood\x12\x33\n\x07medical\x18\x03 \x01(\x0e\x32\".google.cloud.vision.v1.Likelihood\x12\x34\n\x08violence\x18\x04 \x01(\x0e\x32\".google.cloud.vision.v1.Likelihood\"a\n\x0bLatLongRect\x12(\n\x0bmin_lat_lng\x18\x01 \x01(\x0b\x32\x13.google.type.LatLng\x12(\n\x0bmax_lat_lng\x18\x02 \x01(\x0b\x32\x13.google.type.LatLng\"U\n\tColorInfo\x12!\n\x05\x63olor\x18\x01 \x01(\x0b\x32\x12.google.type.Color\x12\r\n\x05score\x18\x02 \x01(\x02\x12\x16\n\x0epixel_fraction\x18\x03 \x01(\x02\"M\n\x18\x44ominantColorsAnnotation\x12\x31\n\x06\x63olors\x18\x01 \x03(\x0b\x32!.google.cloud.vision.v1.ColorInfo\"\\\n\x0fImageProperties\x12I\n\x0f\x64ominant_colors\x18\x01 \x01(\x0b\x32\x30.google.cloud.vision.v1.DominantColorsAnnotation\"x\n\x08\x43ropHint\x12;\n\rbounding_poly\x18\x01 \x01(\x0b\x32$.google.cloud.vision.v1.BoundingPoly\x12\x12\n\nconfidence\x18\x02 \x01(\x02\x12\x1b\n\x13importance_fraction\x18\x03 \x01(\x02\"K\n\x13\x43ropHintsAnnotation\x12\x34\n\ncrop_hints\x18\x01 \x03(\x0b\x32 .google.cloud.vision.v1.CropHint\"(\n\x0f\x43ropHintsParams\x12\x15\n\raspect_ratios\x18\x01 \x03(\x02\"\xa6\x01\n\x0cImageContext\x12:\n\rlat_long_rect\x18\x01 \x01(\x0b\x32#.google.cloud.vision.v1.LatLongRect\x12\x16\n\x0elanguage_hints\x18\x02 \x03(\t\x12\x42\n\x11\x63rop_hints_params\x18\x04 \x01(\x0b\x32\'.google.cloud.vision.v1.CropHintsParams\"\xb4\x01\n\x14\x41nnotateImageRequest\x12,\n\x05image\x18\x01 \x01(\x0b\x32\x1d.google.cloud.vision.v1.Image\x12\x31\n\x08\x66\x65\x61tures\x18\x02 \x03(\x0b\x32\x1f.google.cloud.vision.v1.Feature\x12;\n\rimage_context\x18\x03 \x01(\x0b\x32$.google.cloud.vision.v1.ImageContext\"\xfc\x05\n\x15\x41nnotateImageResponse\x12@\n\x10\x66\x61\x63\x65_annotations\x18\x01 \x03(\x0b\x32&.google.cloud.vision.v1.FaceAnnotation\x12\x46\n\x14landmark_annotations\x18\x02 \x03(\x0b\x32(.google.cloud.vision.v1.EntityAnnotation\x12\x42\n\x10logo_annotations\x18\x03 \x03(\x0b\x32(.google.cloud.vision.v1.EntityAnnotation\x12\x43\n\x11label_annotations\x18\x04 \x03(\x0b\x32(.google.cloud.vision.v1.EntityAnnotation\x12\x42\n\x10text_annotations\x18\x05 \x03(\x0b\x32(.google.cloud.vision.v1.EntityAnnotation\x12\x44\n\x14\x66ull_text_annotation\x18\x0c \x01(\x0b\x32&.google.cloud.vision.v1.TextAnnotation\x12L\n\x16safe_search_annotation\x18\x06 \x01(\x0b\x32,.google.cloud.vision.v1.SafeSearchAnnotation\x12L\n\x1bimage_properties_annotation\x18\x08 \x01(\x0b\x32\'.google.cloud.vision.v1.ImageProperties\x12J\n\x15\x63rop_hints_annotation\x18\x0b \x01(\x0b\x32+.google.cloud.vision.v1.CropHintsAnnotation\x12;\n\rweb_detection\x18\r \x01(\x0b\x32$.google.cloud.vision.v1.WebDetection\x12!\n\x05\x65rror\x18\t \x01(\x0b\x32\x12.google.rpc.Status\"\\\n\x1a\x42\x61tchAnnotateImagesRequest\x12>\n\x08requests\x18\x01 \x03(\x0b\x32,.google.cloud.vision.v1.AnnotateImageRequest\"_\n\x1b\x42\x61tchAnnotateImagesResponse\x12@\n\tresponses\x18\x01 \x03(\x0b\x32-.google.cloud.vision.v1.AnnotateImageResponse*e\n\nLikelihood\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x11\n\rVERY_UNLIKELY\x10\x01\x12\x0c\n\x08UNLIKELY\x10\x02\x12\x0c\n\x08POSSIBLE\x10\x03\x12\n\n\x06LIKELY\x10\x04\x12\x0f\n\x0bVERY_LIKELY\x10\x05\x32\xb1\x01\n\x0eImageAnnotator\x12\x9e\x01\n\x13\x42\x61tchAnnotateImages\x12\x32.google.cloud.vision.v1.BatchAnnotateImagesRequest\x1a\x33.google.cloud.vision.v1.BatchAnnotateImagesResponse\"\x1e\x82\xd3\xe4\x93\x02\x18\"\x13/v1/images:annotate:\x01*Bt\n\x1a\x63om.google.cloud.vision.v1B\x13ImageAnnotatorProtoP\x01Z<google.golang.org/genproto/googleapis/cloud/vision/v1;vision\xf8\x01\x01\x62\x06proto3')
  ,
  dependencies=[google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_geometry__pb2.DESCRIPTOR,google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_text__annotation__pb2.DESCRIPTOR,google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_web__detection__pb2.DESCRIPTOR,google_dot_rpc_dot_status__pb2.DESCRIPTOR,google_dot_type_dot_color__pb2.DESCRIPTOR,google_dot_type_dot_latlng__pb2.DESCRIPTOR,])
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

_LIKELIHOOD = _descriptor.EnumDescriptor(
  name='Likelihood',
  full_name='google.cloud.vision.v1.Likelihood',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='VERY_UNLIKELY', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='UNLIKELY', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='POSSIBLE', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LIKELY', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='VERY_LIKELY', index=5, number=5,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=5076,
  serialized_end=5177,
)
_sym_db.RegisterEnumDescriptor(_LIKELIHOOD)

Likelihood = enum_type_wrapper.EnumTypeWrapper(_LIKELIHOOD)
UNKNOWN = 0
VERY_UNLIKELY = 1
UNLIKELY = 2
POSSIBLE = 3
LIKELY = 4
VERY_LIKELY = 5


_FEATURE_TYPE = _descriptor.EnumDescriptor(
  name='Type',
  full_name='google.cloud.vision.v1.Feature.Type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='TYPE_UNSPECIFIED', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='FACE_DETECTION', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LANDMARK_DETECTION', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LOGO_DETECTION', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LABEL_DETECTION', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='TEXT_DETECTION', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DOCUMENT_TEXT_DETECTION', index=6, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='SAFE_SEARCH_DETECTION', index=7, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='IMAGE_PROPERTIES', index=8, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='CROP_HINTS', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='WEB_DETECTION', index=10, number=10,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=417,
  serialized_end=663,
)
_sym_db.RegisterEnumDescriptor(_FEATURE_TYPE)

_FACEANNOTATION_LANDMARK_TYPE = _descriptor.EnumDescriptor(
  name='Type',
  full_name='google.cloud.vision.v1.FaceAnnotation.Landmark.Type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN_LANDMARK', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LEFT_EYE', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='RIGHT_EYE', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LEFT_OF_LEFT_EYEBROW', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='RIGHT_OF_LEFT_EYEBROW', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LEFT_OF_RIGHT_EYEBROW', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='RIGHT_OF_RIGHT_EYEBROW', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MIDPOINT_BETWEEN_EYES', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='NOSE_TIP', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='UPPER_LIP', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LOWER_LIP', index=10, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MOUTH_LEFT', index=11, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MOUTH_RIGHT', index=12, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MOUTH_CENTER', index=13, number=13,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='NOSE_BOTTOM_RIGHT', index=14, number=14,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='NOSE_BOTTOM_LEFT', index=15, number=15,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='NOSE_BOTTOM_CENTER', index=16, number=16,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LEFT_EYE_TOP_BOUNDARY', index=17, number=17,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LEFT_EYE_RIGHT_CORNER', index=18, number=18,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LEFT_EYE_BOTTOM_BOUNDARY', index=19, number=19,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LEFT_EYE_LEFT_CORNER', index=20, number=20,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='RIGHT_EYE_TOP_BOUNDARY', index=21, number=21,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='RIGHT_EYE_RIGHT_CORNER', index=22, number=22,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='RIGHT_EYE_BOTTOM_BOUNDARY', index=23, number=23,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='RIGHT_EYE_LEFT_CORNER', index=24, number=24,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LEFT_EYEBROW_UPPER_MIDPOINT', index=25, number=25,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='RIGHT_EYEBROW_UPPER_MIDPOINT', index=26, number=26,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LEFT_EAR_TRAGION', index=27, number=27,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='RIGHT_EAR_TRAGION', index=28, number=28,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LEFT_EYE_PUPIL', index=29, number=29,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='RIGHT_EYE_PUPIL', index=30, number=30,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='FOREHEAD_GLABELLA', index=31, number=31,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='CHIN_GNATHION', index=32, number=32,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='CHIN_LEFT_GONION', index=33, number=33,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='CHIN_RIGHT_GONION', index=34, number=34,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=1717,
  serialized_end=2537,
)
_sym_db.RegisterEnumDescriptor(_FACEANNOTATION_LANDMARK_TYPE)


_FEATURE = _descriptor.Descriptor(
  name='Feature',
  full_name='google.cloud.vision.v1.Feature',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='google.cloud.vision.v1.Feature.type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='max_results', full_name='google.cloud.vision.v1.Feature.max_results', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _FEATURE_TYPE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=332,
  serialized_end=663,
)


_IMAGESOURCE = _descriptor.Descriptor(
  name='ImageSource',
  full_name='google.cloud.vision.v1.ImageSource',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='gcs_image_uri', full_name='google.cloud.vision.v1.ImageSource.gcs_image_uri', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='image_uri', full_name='google.cloud.vision.v1.ImageSource.image_uri', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=665,
  serialized_end=720,
)


_IMAGE = _descriptor.Descriptor(
  name='Image',
  full_name='google.cloud.vision.v1.Image',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='content', full_name='google.cloud.vision.v1.Image.content', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='source', full_name='google.cloud.vision.v1.Image.source', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=722,
  serialized_end=799,
)


_FACEANNOTATION_LANDMARK = _descriptor.Descriptor(
  name='Landmark',
  full_name='google.cloud.vision.v1.FaceAnnotation.Landmark',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='google.cloud.vision.v1.FaceAnnotation.Landmark.type', index=0,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='position', full_name='google.cloud.vision.v1.FaceAnnotation.Landmark.position', index=1,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _FACEANNOTATION_LANDMARK_TYPE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1584,
  serialized_end=2537,
)

_FACEANNOTATION = _descriptor.Descriptor(
  name='FaceAnnotation',
  full_name='google.cloud.vision.v1.FaceAnnotation',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='bounding_poly', full_name='google.cloud.vision.v1.FaceAnnotation.bounding_poly', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='fd_bounding_poly', full_name='google.cloud.vision.v1.FaceAnnotation.fd_bounding_poly', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='landmarks', full_name='google.cloud.vision.v1.FaceAnnotation.landmarks', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='roll_angle', full_name='google.cloud.vision.v1.FaceAnnotation.roll_angle', index=3,
      number=4, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='pan_angle', full_name='google.cloud.vision.v1.FaceAnnotation.pan_angle', index=4,
      number=5, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tilt_angle', full_name='google.cloud.vision.v1.FaceAnnotation.tilt_angle', index=5,
      number=6, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='detection_confidence', full_name='google.cloud.vision.v1.FaceAnnotation.detection_confidence', index=6,
      number=7, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='landmarking_confidence', full_name='google.cloud.vision.v1.FaceAnnotation.landmarking_confidence', index=7,
      number=8, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='joy_likelihood', full_name='google.cloud.vision.v1.FaceAnnotation.joy_likelihood', index=8,
      number=9, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='sorrow_likelihood', full_name='google.cloud.vision.v1.FaceAnnotation.sorrow_likelihood', index=9,
      number=10, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='anger_likelihood', full_name='google.cloud.vision.v1.FaceAnnotation.anger_likelihood', index=10,
      number=11, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='surprise_likelihood', full_name='google.cloud.vision.v1.FaceAnnotation.surprise_likelihood', index=11,
      number=12, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='under_exposed_likelihood', full_name='google.cloud.vision.v1.FaceAnnotation.under_exposed_likelihood', index=12,
      number=13, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='blurred_likelihood', full_name='google.cloud.vision.v1.FaceAnnotation.blurred_likelihood', index=13,
      number=14, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='headwear_likelihood', full_name='google.cloud.vision.v1.FaceAnnotation.headwear_likelihood', index=14,
      number=15, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_FACEANNOTATION_LANDMARK, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=802,
  serialized_end=2537,
)


_LOCATIONINFO = _descriptor.Descriptor(
  name='LocationInfo',
  full_name='google.cloud.vision.v1.LocationInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='lat_lng', full_name='google.cloud.vision.v1.LocationInfo.lat_lng', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2539,
  serialized_end=2591,
)


_PROPERTY = _descriptor.Descriptor(
  name='Property',
  full_name='google.cloud.vision.v1.Property',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='google.cloud.vision.v1.Property.name', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='value', full_name='google.cloud.vision.v1.Property.value', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2593,
  serialized_end=2632,
)


_ENTITYANNOTATION = _descriptor.Descriptor(
  name='EntityAnnotation',
  full_name='google.cloud.vision.v1.EntityAnnotation',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='mid', full_name='google.cloud.vision.v1.EntityAnnotation.mid', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='locale', full_name='google.cloud.vision.v1.EntityAnnotation.locale', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='description', full_name='google.cloud.vision.v1.EntityAnnotation.description', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='score', full_name='google.cloud.vision.v1.EntityAnnotation.score', index=3,
      number=4, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='confidence', full_name='google.cloud.vision.v1.EntityAnnotation.confidence', index=4,
      number=5, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='topicality', full_name='google.cloud.vision.v1.EntityAnnotation.topicality', index=5,
      number=6, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bounding_poly', full_name='google.cloud.vision.v1.EntityAnnotation.bounding_poly', index=6,
      number=7, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='locations', full_name='google.cloud.vision.v1.EntityAnnotation.locations', index=7,
      number=8, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='properties', full_name='google.cloud.vision.v1.EntityAnnotation.properties', index=8,
      number=9, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2635,
  serialized_end=2930,
)


_SAFESEARCHANNOTATION = _descriptor.Descriptor(
  name='SafeSearchAnnotation',
  full_name='google.cloud.vision.v1.SafeSearchAnnotation',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='adult', full_name='google.cloud.vision.v1.SafeSearchAnnotation.adult', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='spoof', full_name='google.cloud.vision.v1.SafeSearchAnnotation.spoof', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='medical', full_name='google.cloud.vision.v1.SafeSearchAnnotation.medical', index=2,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='violence', full_name='google.cloud.vision.v1.SafeSearchAnnotation.violence', index=3,
      number=4, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2933,
  serialized_end=3164,
)


_LATLONGRECT = _descriptor.Descriptor(
  name='LatLongRect',
  full_name='google.cloud.vision.v1.LatLongRect',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='min_lat_lng', full_name='google.cloud.vision.v1.LatLongRect.min_lat_lng', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='max_lat_lng', full_name='google.cloud.vision.v1.LatLongRect.max_lat_lng', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3166,
  serialized_end=3263,
)


_COLORINFO = _descriptor.Descriptor(
  name='ColorInfo',
  full_name='google.cloud.vision.v1.ColorInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='color', full_name='google.cloud.vision.v1.ColorInfo.color', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='score', full_name='google.cloud.vision.v1.ColorInfo.score', index=1,
      number=2, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='pixel_fraction', full_name='google.cloud.vision.v1.ColorInfo.pixel_fraction', index=2,
      number=3, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3265,
  serialized_end=3350,
)


_DOMINANTCOLORSANNOTATION = _descriptor.Descriptor(
  name='DominantColorsAnnotation',
  full_name='google.cloud.vision.v1.DominantColorsAnnotation',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='colors', full_name='google.cloud.vision.v1.DominantColorsAnnotation.colors', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3352,
  serialized_end=3429,
)


_IMAGEPROPERTIES = _descriptor.Descriptor(
  name='ImageProperties',
  full_name='google.cloud.vision.v1.ImageProperties',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='dominant_colors', full_name='google.cloud.vision.v1.ImageProperties.dominant_colors', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3431,
  serialized_end=3523,
)


_CROPHINT = _descriptor.Descriptor(
  name='CropHint',
  full_name='google.cloud.vision.v1.CropHint',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='bounding_poly', full_name='google.cloud.vision.v1.CropHint.bounding_poly', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='confidence', full_name='google.cloud.vision.v1.CropHint.confidence', index=1,
      number=2, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='importance_fraction', full_name='google.cloud.vision.v1.CropHint.importance_fraction', index=2,
      number=3, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3525,
  serialized_end=3645,
)


_CROPHINTSANNOTATION = _descriptor.Descriptor(
  name='CropHintsAnnotation',
  full_name='google.cloud.vision.v1.CropHintsAnnotation',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='crop_hints', full_name='google.cloud.vision.v1.CropHintsAnnotation.crop_hints', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3647,
  serialized_end=3722,
)


_CROPHINTSPARAMS = _descriptor.Descriptor(
  name='CropHintsParams',
  full_name='google.cloud.vision.v1.CropHintsParams',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='aspect_ratios', full_name='google.cloud.vision.v1.CropHintsParams.aspect_ratios', index=0,
      number=1, type=2, cpp_type=6, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3724,
  serialized_end=3764,
)


_IMAGECONTEXT = _descriptor.Descriptor(
  name='ImageContext',
  full_name='google.cloud.vision.v1.ImageContext',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='lat_long_rect', full_name='google.cloud.vision.v1.ImageContext.lat_long_rect', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='language_hints', full_name='google.cloud.vision.v1.ImageContext.language_hints', index=1,
      number=2, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='crop_hints_params', full_name='google.cloud.vision.v1.ImageContext.crop_hints_params', index=2,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3767,
  serialized_end=3933,
)


_ANNOTATEIMAGEREQUEST = _descriptor.Descriptor(
  name='AnnotateImageRequest',
  full_name='google.cloud.vision.v1.AnnotateImageRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='image', full_name='google.cloud.vision.v1.AnnotateImageRequest.image', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='features', full_name='google.cloud.vision.v1.AnnotateImageRequest.features', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='image_context', full_name='google.cloud.vision.v1.AnnotateImageRequest.image_context', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3936,
  serialized_end=4116,
)


_ANNOTATEIMAGERESPONSE = _descriptor.Descriptor(
  name='AnnotateImageResponse',
  full_name='google.cloud.vision.v1.AnnotateImageResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='face_annotations', full_name='google.cloud.vision.v1.AnnotateImageResponse.face_annotations', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='landmark_annotations', full_name='google.cloud.vision.v1.AnnotateImageResponse.landmark_annotations', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='logo_annotations', full_name='google.cloud.vision.v1.AnnotateImageResponse.logo_annotations', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='label_annotations', full_name='google.cloud.vision.v1.AnnotateImageResponse.label_annotations', index=3,
      number=4, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='text_annotations', full_name='google.cloud.vision.v1.AnnotateImageResponse.text_annotations', index=4,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='full_text_annotation', full_name='google.cloud.vision.v1.AnnotateImageResponse.full_text_annotation', index=5,
      number=12, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='safe_search_annotation', full_name='google.cloud.vision.v1.AnnotateImageResponse.safe_search_annotation', index=6,
      number=6, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='image_properties_annotation', full_name='google.cloud.vision.v1.AnnotateImageResponse.image_properties_annotation', index=7,
      number=8, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='crop_hints_annotation', full_name='google.cloud.vision.v1.AnnotateImageResponse.crop_hints_annotation', index=8,
      number=11, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='web_detection', full_name='google.cloud.vision.v1.AnnotateImageResponse.web_detection', index=9,
      number=13, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='error', full_name='google.cloud.vision.v1.AnnotateImageResponse.error', index=10,
      number=9, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4119,
  serialized_end=4883,
)


_BATCHANNOTATEIMAGESREQUEST = _descriptor.Descriptor(
  name='BatchAnnotateImagesRequest',
  full_name='google.cloud.vision.v1.BatchAnnotateImagesRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='requests', full_name='google.cloud.vision.v1.BatchAnnotateImagesRequest.requests', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4885,
  serialized_end=4977,
)


_BATCHANNOTATEIMAGESRESPONSE = _descriptor.Descriptor(
  name='BatchAnnotateImagesResponse',
  full_name='google.cloud.vision.v1.BatchAnnotateImagesResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='responses', full_name='google.cloud.vision.v1.BatchAnnotateImagesResponse.responses', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4979,
  serialized_end=5074,
)

_FEATURE.fields_by_name['type'].enum_type = _FEATURE_TYPE
_FEATURE_TYPE.containing_type = _FEATURE
_IMAGE.fields_by_name['source'].message_type = _IMAGESOURCE
_FACEANNOTATION_LANDMARK.fields_by_name['type'].enum_type = _FACEANNOTATION_LANDMARK_TYPE
_FACEANNOTATION_LANDMARK.fields_by_name['position'].message_type = google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_geometry__pb2._POSITION
_FACEANNOTATION_LANDMARK.containing_type = _FACEANNOTATION
_FACEANNOTATION_LANDMARK_TYPE.containing_type = _FACEANNOTATION_LANDMARK
_FACEANNOTATION.fields_by_name['bounding_poly'].message_type = google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_geometry__pb2._BOUNDINGPOLY
_FACEANNOTATION.fields_by_name['fd_bounding_poly'].message_type = google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_geometry__pb2._BOUNDINGPOLY
_FACEANNOTATION.fields_by_name['landmarks'].message_type = _FACEANNOTATION_LANDMARK
_FACEANNOTATION.fields_by_name['joy_likelihood'].enum_type = _LIKELIHOOD
_FACEANNOTATION.fields_by_name['sorrow_likelihood'].enum_type = _LIKELIHOOD
_FACEANNOTATION.fields_by_name['anger_likelihood'].enum_type = _LIKELIHOOD
_FACEANNOTATION.fields_by_name['surprise_likelihood'].enum_type = _LIKELIHOOD
_FACEANNOTATION.fields_by_name['under_exposed_likelihood'].enum_type = _LIKELIHOOD
_FACEANNOTATION.fields_by_name['blurred_likelihood'].enum_type = _LIKELIHOOD
_FACEANNOTATION.fields_by_name['headwear_likelihood'].enum_type = _LIKELIHOOD
_LOCATIONINFO.fields_by_name['lat_lng'].message_type = google_dot_type_dot_latlng__pb2._LATLNG
_ENTITYANNOTATION.fields_by_name['bounding_poly'].message_type = google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_geometry__pb2._BOUNDINGPOLY
_ENTITYANNOTATION.fields_by_name['locations'].message_type = _LOCATIONINFO
_ENTITYANNOTATION.fields_by_name['properties'].message_type = _PROPERTY
_SAFESEARCHANNOTATION.fields_by_name['adult'].enum_type = _LIKELIHOOD
_SAFESEARCHANNOTATION.fields_by_name['spoof'].enum_type = _LIKELIHOOD
_SAFESEARCHANNOTATION.fields_by_name['medical'].enum_type = _LIKELIHOOD
_SAFESEARCHANNOTATION.fields_by_name['violence'].enum_type = _LIKELIHOOD
_LATLONGRECT.fields_by_name['min_lat_lng'].message_type = google_dot_type_dot_latlng__pb2._LATLNG
_LATLONGRECT.fields_by_name['max_lat_lng'].message_type = google_dot_type_dot_latlng__pb2._LATLNG
_COLORINFO.fields_by_name['color'].message_type = google_dot_type_dot_color__pb2._COLOR
_DOMINANTCOLORSANNOTATION.fields_by_name['colors'].message_type = _COLORINFO
_IMAGEPROPERTIES.fields_by_name['dominant_colors'].message_type = _DOMINANTCOLORSANNOTATION
_CROPHINT.fields_by_name['bounding_poly'].message_type = google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_geometry__pb2._BOUNDINGPOLY
_CROPHINTSANNOTATION.fields_by_name['crop_hints'].message_type = _CROPHINT
_IMAGECONTEXT.fields_by_name['lat_long_rect'].message_type = _LATLONGRECT
_IMAGECONTEXT.fields_by_name['crop_hints_params'].message_type = _CROPHINTSPARAMS
_ANNOTATEIMAGEREQUEST.fields_by_name['image'].message_type = _IMAGE
_ANNOTATEIMAGEREQUEST.fields_by_name['features'].message_type = _FEATURE
_ANNOTATEIMAGEREQUEST.fields_by_name['image_context'].message_type = _IMAGECONTEXT
_ANNOTATEIMAGERESPONSE.fields_by_name['face_annotations'].message_type = _FACEANNOTATION
_ANNOTATEIMAGERESPONSE.fields_by_name['landmark_annotations'].message_type = _ENTITYANNOTATION
_ANNOTATEIMAGERESPONSE.fields_by_name['logo_annotations'].message_type = _ENTITYANNOTATION
_ANNOTATEIMAGERESPONSE.fields_by_name['label_annotations'].message_type = _ENTITYANNOTATION
_ANNOTATEIMAGERESPONSE.fields_by_name['text_annotations'].message_type = _ENTITYANNOTATION
_ANNOTATEIMAGERESPONSE.fields_by_name['full_text_annotation'].message_type = google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_text__annotation__pb2._TEXTANNOTATION
_ANNOTATEIMAGERESPONSE.fields_by_name['safe_search_annotation'].message_type = _SAFESEARCHANNOTATION
_ANNOTATEIMAGERESPONSE.fields_by_name['image_properties_annotation'].message_type = _IMAGEPROPERTIES
_ANNOTATEIMAGERESPONSE.fields_by_name['crop_hints_annotation'].message_type = _CROPHINTSANNOTATION
_ANNOTATEIMAGERESPONSE.fields_by_name['web_detection'].message_type = google_dot_cloud_dot_proto_dot_vision_dot_v1_dot_web__detection__pb2._WEBDETECTION
_ANNOTATEIMAGERESPONSE.fields_by_name['error'].message_type = google_dot_rpc_dot_status__pb2._STATUS
_BATCHANNOTATEIMAGESREQUEST.fields_by_name['requests'].message_type = _ANNOTATEIMAGEREQUEST
_BATCHANNOTATEIMAGESRESPONSE.fields_by_name['responses'].message_type = _ANNOTATEIMAGERESPONSE
DESCRIPTOR.message_types_by_name['Feature'] = _FEATURE
DESCRIPTOR.message_types_by_name['ImageSource'] = _IMAGESOURCE
DESCRIPTOR.message_types_by_name['Image'] = _IMAGE
DESCRIPTOR.message_types_by_name['FaceAnnotation'] = _FACEANNOTATION
DESCRIPTOR.message_types_by_name['LocationInfo'] = _LOCATIONINFO
DESCRIPTOR.message_types_by_name['Property'] = _PROPERTY
DESCRIPTOR.message_types_by_name['EntityAnnotation'] = _ENTITYANNOTATION
DESCRIPTOR.message_types_by_name['SafeSearchAnnotation'] = _SAFESEARCHANNOTATION
DESCRIPTOR.message_types_by_name['LatLongRect'] = _LATLONGRECT
DESCRIPTOR.message_types_by_name['ColorInfo'] = _COLORINFO
DESCRIPTOR.message_types_by_name['DominantColorsAnnotation'] = _DOMINANTCOLORSANNOTATION
DESCRIPTOR.message_types_by_name['ImageProperties'] = _IMAGEPROPERTIES
DESCRIPTOR.message_types_by_name['CropHint'] = _CROPHINT
DESCRIPTOR.message_types_by_name['CropHintsAnnotation'] = _CROPHINTSANNOTATION
DESCRIPTOR.message_types_by_name['CropHintsParams'] = _CROPHINTSPARAMS
DESCRIPTOR.message_types_by_name['ImageContext'] = _IMAGECONTEXT
DESCRIPTOR.message_types_by_name['AnnotateImageRequest'] = _ANNOTATEIMAGEREQUEST
DESCRIPTOR.message_types_by_name['AnnotateImageResponse'] = _ANNOTATEIMAGERESPONSE
DESCRIPTOR.message_types_by_name['BatchAnnotateImagesRequest'] = _BATCHANNOTATEIMAGESREQUEST
DESCRIPTOR.message_types_by_name['BatchAnnotateImagesResponse'] = _BATCHANNOTATEIMAGESRESPONSE
DESCRIPTOR.enum_types_by_name['Likelihood'] = _LIKELIHOOD

Feature = _reflection.GeneratedProtocolMessageType('Feature', (_message.Message,), dict(
  DESCRIPTOR = _FEATURE,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Users describe the type of Google Cloud Vision API tasks to perform over
  images by using *Feature*\ s. Each Feature indicates a type of image
  detection task to perform. Features encode the Cloud Vision API vertical
  to operate on and the number of top-scoring results to return.
  
  
  Attributes:
      type:
          The feature type.
      max_results:
          Maximum number of results of this type.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.Feature)
  ))
_sym_db.RegisterMessage(Feature)

ImageSource = _reflection.GeneratedProtocolMessageType('ImageSource', (_message.Message,), dict(
  DESCRIPTOR = _IMAGESOURCE,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """External image source (Google Cloud Storage image location).
  
  
  Attributes:
      gcs_image_uri:
          NOTE: For new code ``image_uri`` below is preferred. Google
          Cloud Storage image URI, which must be in the following form:
          ``gs://bucket_name/object_name`` (for details, see `Google
          Cloud Storage Request URIs
          <https://cloud.google.com/storage/docs/reference-uris>`__).
          NOTE: Cloud Storage object versioning is not supported.
      image_uri:
          Image URI which supports: 1) Google Cloud Storage image URI,
          which must be in the following form:
          ``gs://bucket_name/object_name`` (for details, see `Google
          Cloud Storage Request URIs
          <https://cloud.google.com/storage/docs/reference-uris>`__).
          NOTE: Cloud Storage object versioning is not supported. 2)
          Publicly accessible image HTTP/HTTPS URL. This is preferred
          over the legacy ``gcs_image_uri`` above. When both
          ``gcs_image_uri`` and ``image_uri`` are specified,
          ``image_uri`` takes precedence.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.ImageSource)
  ))
_sym_db.RegisterMessage(ImageSource)

Image = _reflection.GeneratedProtocolMessageType('Image', (_message.Message,), dict(
  DESCRIPTOR = _IMAGE,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Client image to perform Google Cloud Vision API tasks over.
  
  
  Attributes:
      content:
          Image content, represented as a stream of bytes. Note: as with
          all ``bytes`` fields, protobuffers use a pure binary
          representation, whereas JSON representations use base64.
      source:
          Google Cloud Storage image location. If both ``content`` and
          ``source`` are provided for an image, ``content`` takes
          precedence and is used to perform the image annotation
          request.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.Image)
  ))
_sym_db.RegisterMessage(Image)

FaceAnnotation = _reflection.GeneratedProtocolMessageType('FaceAnnotation', (_message.Message,), dict(

  Landmark = _reflection.GeneratedProtocolMessageType('Landmark', (_message.Message,), dict(
    DESCRIPTOR = _FACEANNOTATION_LANDMARK,
    __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
    ,
    __doc__ = """A face-specific landmark (for example, a face feature). Landmark
    positions may fall outside the bounds of the image if the face is near
    one or more edges of the image. Therefore it is NOT guaranteed that
    ``0 <= x < width`` or ``0 <= y < height``.
    """,
    # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.FaceAnnotation.Landmark)
    ))
  ,
  DESCRIPTOR = _FACEANNOTATION,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """A face annotation object contains the results of face detection.
  
  
  Attributes:
      type:
          Face landmark type.
      position:
          Face landmark position.
      bounding_poly:
          The bounding polygon around the face. The coordinates of the
          bounding box are in the original image's scale, as returned in
          ``ImageParams``. The bounding box is computed to "frame" the
          face in accordance with human expectations. It is based on the
          landmarker results. Note that one or more x and/or y
          coordinates may not be generated in the ``BoundingPoly`` (the
          polygon will be unbounded) if only a partial face appears in
          the image to be annotated.
      fd_bounding_poly:
          The ``fd_bounding_poly`` bounding polygon is tighter than the
          ``boundingPoly``, and encloses only the skin part of the face.
          Typically, it is used to eliminate the face from any image
          analysis that detects the "amount of skin" visible in an
          image. It is not based on the landmarker results, only on the
          initial face detection, hence the fd (face detection) prefix.
      landmarks:
          Detected face landmarks.
      roll_angle:
          Roll angle, which indicates the amount of clockwise/anti-
          clockwise rotation of the face relative to the image vertical
          about the axis perpendicular to the face. Range [-180,180].
      pan_angle:
          Yaw angle, which indicates the leftward/rightward angle that
          the face is pointing relative to the vertical plane
          perpendicular to the image. Range [-180,180].
      tilt_angle:
          Pitch angle, which indicates the upwards/downwards angle that
          the face is pointing relative to the image's horizontal plane.
          Range [-180,180].
      detection_confidence:
          Detection confidence. Range [0, 1].
      landmarking_confidence:
          Face landmarking confidence. Range [0, 1].
      joy_likelihood:
          Joy likelihood.
      sorrow_likelihood:
          Sorrow likelihood.
      anger_likelihood:
          Anger likelihood.
      surprise_likelihood:
          Surprise likelihood.
      under_exposed_likelihood:
          Under-exposed likelihood.
      blurred_likelihood:
          Blurred likelihood.
      headwear_likelihood:
          Headwear likelihood.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.FaceAnnotation)
  ))
_sym_db.RegisterMessage(FaceAnnotation)
_sym_db.RegisterMessage(FaceAnnotation.Landmark)

LocationInfo = _reflection.GeneratedProtocolMessageType('LocationInfo', (_message.Message,), dict(
  DESCRIPTOR = _LOCATIONINFO,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Detected entity location information.
  
  
  Attributes:
      lat_lng:
          lat/long location coordinates.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.LocationInfo)
  ))
_sym_db.RegisterMessage(LocationInfo)

Property = _reflection.GeneratedProtocolMessageType('Property', (_message.Message,), dict(
  DESCRIPTOR = _PROPERTY,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """A ``Property`` consists of a user-supplied name/value pair.
  
  
  Attributes:
      name:
          Name of the property.
      value:
          Value of the property.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.Property)
  ))
_sym_db.RegisterMessage(Property)

EntityAnnotation = _reflection.GeneratedProtocolMessageType('EntityAnnotation', (_message.Message,), dict(
  DESCRIPTOR = _ENTITYANNOTATION,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Set of detected entity features.
  
  
  Attributes:
      mid:
          Opaque entity ID. Some IDs may be available in `Google
          Knowledge Graph Search API
          <https://developers.google.com/knowledge-graph/>`__.
      locale:
          The language code for the locale in which the entity textual
          ``description`` is expressed.
      description:
          Entity textual description, expressed in its ``locale``
          language.
      score:
          Overall score of the result. Range [0, 1].
      confidence:
          The accuracy of the entity detection in an image. For example,
          for an image in which the "Eiffel Tower" entity is detected,
          this field represents the confidence that there is a tower in
          the query image. Range [0, 1].
      topicality:
          The relevancy of the ICA (Image Content Annotation) label to
          the image. For example, the relevancy of "tower" is likely
          higher to an image containing the detected "Eiffel Tower" than
          to an image containing a detected distant towering building,
          even though the confidence that there is a tower in each image
          may be the same. Range [0, 1].
      bounding_poly:
          Image region to which this entity belongs. Currently not
          produced for ``LABEL_DETECTION`` features. For
          ``TEXT_DETECTION`` (OCR), ``boundingPoly``\ s are produced for
          the entire text detected in an image region, followed by
          ``boundingPoly``\ s for each word within the detected text.
      locations:
          The location information for the detected entity. Multiple
          ``LocationInfo`` elements can be present because one location
          may indicate the location of the scene in the image, and
          another location may indicate the location of the place where
          the image was taken. Location information is usually present
          for landmarks.
      properties:
          Some entities may have optional user-supplied ``Property``
          (name/value) fields, such a score or string that qualifies the
          entity.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.EntityAnnotation)
  ))
_sym_db.RegisterMessage(EntityAnnotation)

SafeSearchAnnotation = _reflection.GeneratedProtocolMessageType('SafeSearchAnnotation', (_message.Message,), dict(
  DESCRIPTOR = _SAFESEARCHANNOTATION,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Set of features pertaining to the image, computed by computer vision
  methods over safe-search verticals (for example, adult, spoof, medical,
  violence).
  
  
  Attributes:
      adult:
          Represents the adult content likelihood for the image.
      spoof:
          Spoof likelihood. The likelihood that an modification was made
          to the image's canonical version to make it appear funny or
          offensive.
      medical:
          Likelihood that this is a medical image.
      violence:
          Violence likelihood.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.SafeSearchAnnotation)
  ))
_sym_db.RegisterMessage(SafeSearchAnnotation)

LatLongRect = _reflection.GeneratedProtocolMessageType('LatLongRect', (_message.Message,), dict(
  DESCRIPTOR = _LATLONGRECT,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Rectangle determined by min and max ``LatLng`` pairs.
  
  
  Attributes:
      min_lat_lng:
          Min lat/long pair.
      max_lat_lng:
          Max lat/long pair.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.LatLongRect)
  ))
_sym_db.RegisterMessage(LatLongRect)

ColorInfo = _reflection.GeneratedProtocolMessageType('ColorInfo', (_message.Message,), dict(
  DESCRIPTOR = _COLORINFO,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Color information consists of RGB channels, score, and the fraction of
  the image that the color occupies in the image.
  
  
  Attributes:
      color:
          RGB components of the color.
      score:
          Image-specific score for this color. Value in range [0, 1].
      pixel_fraction:
          The fraction of pixels the color occupies in the image. Value
          in range [0, 1].
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.ColorInfo)
  ))
_sym_db.RegisterMessage(ColorInfo)

DominantColorsAnnotation = _reflection.GeneratedProtocolMessageType('DominantColorsAnnotation', (_message.Message,), dict(
  DESCRIPTOR = _DOMINANTCOLORSANNOTATION,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Set of dominant colors and their corresponding scores.
  
  
  Attributes:
      colors:
          RGB color values with their score and pixel fraction.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.DominantColorsAnnotation)
  ))
_sym_db.RegisterMessage(DominantColorsAnnotation)

ImageProperties = _reflection.GeneratedProtocolMessageType('ImageProperties', (_message.Message,), dict(
  DESCRIPTOR = _IMAGEPROPERTIES,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Stores image properties, such as dominant colors.
  
  
  Attributes:
      dominant_colors:
          If present, dominant colors completed successfully.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.ImageProperties)
  ))
_sym_db.RegisterMessage(ImageProperties)

CropHint = _reflection.GeneratedProtocolMessageType('CropHint', (_message.Message,), dict(
  DESCRIPTOR = _CROPHINT,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Single crop hint that is used to generate a new crop when serving an
  image.
  
  
  Attributes:
      bounding_poly:
          The bounding polygon for the crop region. The coordinates of
          the bounding box are in the original image's scale, as
          returned in ``ImageParams``.
      confidence:
          Confidence of this being a salient region. Range [0, 1].
      importance_fraction:
          Fraction of importance of this salient region with respect to
          the original image.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.CropHint)
  ))
_sym_db.RegisterMessage(CropHint)

CropHintsAnnotation = _reflection.GeneratedProtocolMessageType('CropHintsAnnotation', (_message.Message,), dict(
  DESCRIPTOR = _CROPHINTSANNOTATION,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Set of crop hints that are used to generate new crops when serving
  images.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.CropHintsAnnotation)
  ))
_sym_db.RegisterMessage(CropHintsAnnotation)

CropHintsParams = _reflection.GeneratedProtocolMessageType('CropHintsParams', (_message.Message,), dict(
  DESCRIPTOR = _CROPHINTSPARAMS,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Parameters for crop hints annotation request.
  
  
  Attributes:
      aspect_ratios:
          Aspect ratios in floats, representing the ratio of the width
          to the height of the image. For example, if the desired aspect
          ratio is 4/3, the corresponding float value should be 1.33333.
          If not specified, the best possible crop is returned. The
          number of provided aspect ratios is limited to a maximum of
          16; any aspect ratios provided after the 16th are ignored.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.CropHintsParams)
  ))
_sym_db.RegisterMessage(CropHintsParams)

ImageContext = _reflection.GeneratedProtocolMessageType('ImageContext', (_message.Message,), dict(
  DESCRIPTOR = _IMAGECONTEXT,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Image context and/or feature-specific parameters.
  
  
  Attributes:
      lat_long_rect:
          lat/long rectangle that specifies the location of the image.
      language_hints:
          List of languages to use for TEXT\_DETECTION. In most cases,
          an empty value yields the best results since it enables
          automatic language detection. For languages based on the Latin
          alphabet, setting ``language_hints`` is not needed. In rare
          cases, when the language of the text in the image is known,
          setting a hint will help get better results (although it will
          be a significant hindrance if the hint is wrong). Text
          detection returns an error if one or more of the specified
          languages is not one of the `supported languages
          </vision/docs/languages>`__.
      crop_hints_params:
          Parameters for crop hints annotation request.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.ImageContext)
  ))
_sym_db.RegisterMessage(ImageContext)

AnnotateImageRequest = _reflection.GeneratedProtocolMessageType('AnnotateImageRequest', (_message.Message,), dict(
  DESCRIPTOR = _ANNOTATEIMAGEREQUEST,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Request for performing Google Cloud Vision API tasks over a
  user-provided image, with user-requested features.
  
  
  Attributes:
      image:
          The image to be processed.
      features:
          Requested features.
      image_context:
          Additional context that may accompany the image.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.AnnotateImageRequest)
  ))
_sym_db.RegisterMessage(AnnotateImageRequest)

AnnotateImageResponse = _reflection.GeneratedProtocolMessageType('AnnotateImageResponse', (_message.Message,), dict(
  DESCRIPTOR = _ANNOTATEIMAGERESPONSE,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Response to an image annotation request.
  
  
  Attributes:
      face_annotations:
          If present, face detection has completed successfully.
      landmark_annotations:
          If present, landmark detection has completed successfully.
      logo_annotations:
          If present, logo detection has completed successfully.
      label_annotations:
          If present, label detection has completed successfully.
      text_annotations:
          If present, text (OCR) detection or document (OCR) text
          detection has completed successfully.
      full_text_annotation:
          If present, text (OCR) detection or document (OCR) text
          detection has completed successfully. This annotation provides
          the structural hierarchy for the OCR detected text.
      safe_search_annotation:
          If present, safe-search annotation has completed successfully.
      image_properties_annotation:
          If present, image properties were extracted successfully.
      crop_hints_annotation:
          If present, crop hints have completed successfully.
      web_detection:
          If present, web detection has completed successfully.
      error:
          If set, represents the error message for the operation. Note
          that filled-in image annotations are guaranteed to be correct,
          even when ``error`` is set.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.AnnotateImageResponse)
  ))
_sym_db.RegisterMessage(AnnotateImageResponse)

BatchAnnotateImagesRequest = _reflection.GeneratedProtocolMessageType('BatchAnnotateImagesRequest', (_message.Message,), dict(
  DESCRIPTOR = _BATCHANNOTATEIMAGESREQUEST,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Multiple image annotation requests are batched into a single service
  call.
  
  
  Attributes:
      requests:
          Individual image annotation requests for this batch.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.BatchAnnotateImagesRequest)
  ))
_sym_db.RegisterMessage(BatchAnnotateImagesRequest)

BatchAnnotateImagesResponse = _reflection.GeneratedProtocolMessageType('BatchAnnotateImagesResponse', (_message.Message,), dict(
  DESCRIPTOR = _BATCHANNOTATEIMAGESRESPONSE,
  __module__ = 'google.cloud.proto.vision.v1.image_annotator_pb2'
  ,
  __doc__ = """Response to a batch image annotation request.
  
  
  Attributes:
      responses:
          Individual responses to image annotation requests within the
          batch.
  """,
  # @@protoc_insertion_point(class_scope:google.cloud.vision.v1.BatchAnnotateImagesResponse)
  ))
_sym_db.RegisterMessage(BatchAnnotateImagesResponse)


DESCRIPTOR.has_options = True
DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\032com.google.cloud.vision.v1B\023ImageAnnotatorProtoP\001Z<google.golang.org/genproto/googleapis/cloud/vision/v1;vision\370\001\001'))
try:
  # THESE ELEMENTS WILL BE DEPRECATED.
  # Please use the generated *_pb2_grpc.py files instead.
  import grpc
  from grpc.beta import implementations as beta_implementations
  from grpc.beta import interfaces as beta_interfaces
  from grpc.framework.common import cardinality
  from grpc.framework.interfaces.face import utilities as face_utilities


  class ImageAnnotatorStub(object):
    """Service that performs Google Cloud Vision API detection tasks over client
    images, such as face, landmark, logo, label, and text detection. The
    ImageAnnotator service returns detected entities from the images.
    """

    def __init__(self, channel):
      """Constructor.

      Args:
        channel: A grpc.Channel.
      """
      self.BatchAnnotateImages = channel.unary_unary(
          '/google.cloud.vision.v1.ImageAnnotator/BatchAnnotateImages',
          request_serializer=BatchAnnotateImagesRequest.SerializeToString,
          response_deserializer=BatchAnnotateImagesResponse.FromString,
          )


  class ImageAnnotatorServicer(object):
    """Service that performs Google Cloud Vision API detection tasks over client
    images, such as face, landmark, logo, label, and text detection. The
    ImageAnnotator service returns detected entities from the images.
    """

    def BatchAnnotateImages(self, request, context):
      """Run image detection and annotation for a batch of images.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')


  def add_ImageAnnotatorServicer_to_server(servicer, server):
    rpc_method_handlers = {
        'BatchAnnotateImages': grpc.unary_unary_rpc_method_handler(
            servicer.BatchAnnotateImages,
            request_deserializer=BatchAnnotateImagesRequest.FromString,
            response_serializer=BatchAnnotateImagesResponse.SerializeToString,
        ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
        'google.cloud.vision.v1.ImageAnnotator', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


  class BetaImageAnnotatorServicer(object):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This class was generated
    only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0."""
    """Service that performs Google Cloud Vision API detection tasks over client
    images, such as face, landmark, logo, label, and text detection. The
    ImageAnnotator service returns detected entities from the images.
    """
    def BatchAnnotateImages(self, request, context):
      """Run image detection and annotation for a batch of images.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)


  class BetaImageAnnotatorStub(object):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This class was generated
    only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0."""
    """Service that performs Google Cloud Vision API detection tasks over client
    images, such as face, landmark, logo, label, and text detection. The
    ImageAnnotator service returns detected entities from the images.
    """
    def BatchAnnotateImages(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Run image detection and annotation for a batch of images.
      """
      raise NotImplementedError()
    BatchAnnotateImages.future = None


  def beta_create_ImageAnnotator_server(servicer, pool=None, pool_size=None, default_timeout=None, maximum_timeout=None):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This function was
    generated only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0"""
    request_deserializers = {
      ('google.cloud.vision.v1.ImageAnnotator', 'BatchAnnotateImages'): BatchAnnotateImagesRequest.FromString,
    }
    response_serializers = {
      ('google.cloud.vision.v1.ImageAnnotator', 'BatchAnnotateImages'): BatchAnnotateImagesResponse.SerializeToString,
    }
    method_implementations = {
      ('google.cloud.vision.v1.ImageAnnotator', 'BatchAnnotateImages'): face_utilities.unary_unary_inline(servicer.BatchAnnotateImages),
    }
    server_options = beta_implementations.server_options(request_deserializers=request_deserializers, response_serializers=response_serializers, thread_pool=pool, thread_pool_size=pool_size, default_timeout=default_timeout, maximum_timeout=maximum_timeout)
    return beta_implementations.server(method_implementations, options=server_options)


  def beta_create_ImageAnnotator_stub(channel, host=None, metadata_transformer=None, pool=None, pool_size=None):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This function was
    generated only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0"""
    request_serializers = {
      ('google.cloud.vision.v1.ImageAnnotator', 'BatchAnnotateImages'): BatchAnnotateImagesRequest.SerializeToString,
    }
    response_deserializers = {
      ('google.cloud.vision.v1.ImageAnnotator', 'BatchAnnotateImages'): BatchAnnotateImagesResponse.FromString,
    }
    cardinalities = {
      'BatchAnnotateImages': cardinality.Cardinality.UNARY_UNARY,
    }
    stub_options = beta_implementations.stub_options(host=host, metadata_transformer=metadata_transformer, request_serializers=request_serializers, response_deserializers=response_deserializers, thread_pool=pool, thread_pool_size=pool_size)
    return beta_implementations.dynamic_stub(channel, 'google.cloud.vision.v1.ImageAnnotator', cardinalities, options=stub_options)
except ImportError:
  pass
# @@protoc_insertion_point(module_scope)
