1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/cloud/vision/v1/image_annotator.proto 3 4package vision // import "google.golang.org/genproto/googleapis/cloud/vision/v1" 5 6import proto "github.com/golang/protobuf/proto" 7import fmt "fmt" 8import math "math" 9import timestamp "github.com/golang/protobuf/ptypes/timestamp" 10import _ "google.golang.org/genproto/googleapis/api/annotations" 11import longrunning "google.golang.org/genproto/googleapis/longrunning" 12import status "google.golang.org/genproto/googleapis/rpc/status" 13import color "google.golang.org/genproto/googleapis/type/color" 14import latlng "google.golang.org/genproto/googleapis/type/latlng" 15 16import ( 17 context "golang.org/x/net/context" 18 grpc "google.golang.org/grpc" 19) 20 21// Reference imports to suppress errors if they are not otherwise used. 22var _ = proto.Marshal 23var _ = fmt.Errorf 24var _ = math.Inf 25 26// This is a compile-time assertion to ensure that this generated file 27// is compatible with the proto package it is being compiled against. 28// A compilation error at this line likely means your copy of the 29// proto package needs to be updated. 30const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package 31 32// A bucketized representation of likelihood, which is intended to give clients 33// highly stable results across model upgrades. 34type Likelihood int32 35 36const ( 37 // Unknown likelihood. 38 Likelihood_UNKNOWN Likelihood = 0 39 // It is very unlikely that the image belongs to the specified vertical. 40 Likelihood_VERY_UNLIKELY Likelihood = 1 41 // It is unlikely that the image belongs to the specified vertical. 42 Likelihood_UNLIKELY Likelihood = 2 43 // It is possible that the image belongs to the specified vertical. 44 Likelihood_POSSIBLE Likelihood = 3 45 // It is likely that the image belongs to the specified vertical. 46 Likelihood_LIKELY Likelihood = 4 47 // It is very likely that the image belongs to the specified vertical. 48 Likelihood_VERY_LIKELY Likelihood = 5 49) 50 51var Likelihood_name = map[int32]string{ 52 0: "UNKNOWN", 53 1: "VERY_UNLIKELY", 54 2: "UNLIKELY", 55 3: "POSSIBLE", 56 4: "LIKELY", 57 5: "VERY_LIKELY", 58} 59var Likelihood_value = map[string]int32{ 60 "UNKNOWN": 0, 61 "VERY_UNLIKELY": 1, 62 "UNLIKELY": 2, 63 "POSSIBLE": 3, 64 "LIKELY": 4, 65 "VERY_LIKELY": 5, 66} 67 68func (x Likelihood) String() string { 69 return proto.EnumName(Likelihood_name, int32(x)) 70} 71func (Likelihood) EnumDescriptor() ([]byte, []int) { 72 return fileDescriptor_image_annotator_f9154282c1c30734, []int{0} 73} 74 75// Type of Google Cloud Vision API feature to be extracted. 76type Feature_Type int32 77 78const ( 79 // Unspecified feature type. 80 Feature_TYPE_UNSPECIFIED Feature_Type = 0 81 // Run face detection. 82 Feature_FACE_DETECTION Feature_Type = 1 83 // Run landmark detection. 84 Feature_LANDMARK_DETECTION Feature_Type = 2 85 // Run logo detection. 86 Feature_LOGO_DETECTION Feature_Type = 3 87 // Run label detection. 88 Feature_LABEL_DETECTION Feature_Type = 4 89 // Run text detection / optical character recognition (OCR). Text detection 90 // is optimized for areas of text within a larger image; if the image is 91 // a document, use `DOCUMENT_TEXT_DETECTION` instead. 92 Feature_TEXT_DETECTION Feature_Type = 5 93 // Run dense text document OCR. Takes precedence when both 94 // `DOCUMENT_TEXT_DETECTION` and `TEXT_DETECTION` are present. 95 Feature_DOCUMENT_TEXT_DETECTION Feature_Type = 11 96 // Run Safe Search to detect potentially unsafe 97 // or undesirable content. 98 Feature_SAFE_SEARCH_DETECTION Feature_Type = 6 99 // Compute a set of image properties, such as the 100 // image's dominant colors. 101 Feature_IMAGE_PROPERTIES Feature_Type = 7 102 // Run crop hints. 103 Feature_CROP_HINTS Feature_Type = 9 104 // Run web detection. 105 Feature_WEB_DETECTION Feature_Type = 10 106) 107 108var Feature_Type_name = map[int32]string{ 109 0: "TYPE_UNSPECIFIED", 110 1: "FACE_DETECTION", 111 2: "LANDMARK_DETECTION", 112 3: "LOGO_DETECTION", 113 4: "LABEL_DETECTION", 114 5: "TEXT_DETECTION", 115 11: "DOCUMENT_TEXT_DETECTION", 116 6: "SAFE_SEARCH_DETECTION", 117 7: "IMAGE_PROPERTIES", 118 9: "CROP_HINTS", 119 10: "WEB_DETECTION", 120} 121var Feature_Type_value = map[string]int32{ 122 "TYPE_UNSPECIFIED": 0, 123 "FACE_DETECTION": 1, 124 "LANDMARK_DETECTION": 2, 125 "LOGO_DETECTION": 3, 126 "LABEL_DETECTION": 4, 127 "TEXT_DETECTION": 5, 128 "DOCUMENT_TEXT_DETECTION": 11, 129 "SAFE_SEARCH_DETECTION": 6, 130 "IMAGE_PROPERTIES": 7, 131 "CROP_HINTS": 9, 132 "WEB_DETECTION": 10, 133} 134 135func (x Feature_Type) String() string { 136 return proto.EnumName(Feature_Type_name, int32(x)) 137} 138func (Feature_Type) EnumDescriptor() ([]byte, []int) { 139 return fileDescriptor_image_annotator_f9154282c1c30734, []int{0, 0} 140} 141 142// Face landmark (feature) type. 143// Left and right are defined from the vantage of the viewer of the image 144// without considering mirror projections typical of photos. So, `LEFT_EYE`, 145// typically, is the person's right eye. 146type FaceAnnotation_Landmark_Type int32 147 148const ( 149 // Unknown face landmark detected. Should not be filled. 150 FaceAnnotation_Landmark_UNKNOWN_LANDMARK FaceAnnotation_Landmark_Type = 0 151 // Left eye. 152 FaceAnnotation_Landmark_LEFT_EYE FaceAnnotation_Landmark_Type = 1 153 // Right eye. 154 FaceAnnotation_Landmark_RIGHT_EYE FaceAnnotation_Landmark_Type = 2 155 // Left of left eyebrow. 156 FaceAnnotation_Landmark_LEFT_OF_LEFT_EYEBROW FaceAnnotation_Landmark_Type = 3 157 // Right of left eyebrow. 158 FaceAnnotation_Landmark_RIGHT_OF_LEFT_EYEBROW FaceAnnotation_Landmark_Type = 4 159 // Left of right eyebrow. 160 FaceAnnotation_Landmark_LEFT_OF_RIGHT_EYEBROW FaceAnnotation_Landmark_Type = 5 161 // Right of right eyebrow. 162 FaceAnnotation_Landmark_RIGHT_OF_RIGHT_EYEBROW FaceAnnotation_Landmark_Type = 6 163 // Midpoint between eyes. 164 FaceAnnotation_Landmark_MIDPOINT_BETWEEN_EYES FaceAnnotation_Landmark_Type = 7 165 // Nose tip. 166 FaceAnnotation_Landmark_NOSE_TIP FaceAnnotation_Landmark_Type = 8 167 // Upper lip. 168 FaceAnnotation_Landmark_UPPER_LIP FaceAnnotation_Landmark_Type = 9 169 // Lower lip. 170 FaceAnnotation_Landmark_LOWER_LIP FaceAnnotation_Landmark_Type = 10 171 // Mouth left. 172 FaceAnnotation_Landmark_MOUTH_LEFT FaceAnnotation_Landmark_Type = 11 173 // Mouth right. 174 FaceAnnotation_Landmark_MOUTH_RIGHT FaceAnnotation_Landmark_Type = 12 175 // Mouth center. 176 FaceAnnotation_Landmark_MOUTH_CENTER FaceAnnotation_Landmark_Type = 13 177 // Nose, bottom right. 178 FaceAnnotation_Landmark_NOSE_BOTTOM_RIGHT FaceAnnotation_Landmark_Type = 14 179 // Nose, bottom left. 180 FaceAnnotation_Landmark_NOSE_BOTTOM_LEFT FaceAnnotation_Landmark_Type = 15 181 // Nose, bottom center. 182 FaceAnnotation_Landmark_NOSE_BOTTOM_CENTER FaceAnnotation_Landmark_Type = 16 183 // Left eye, top boundary. 184 FaceAnnotation_Landmark_LEFT_EYE_TOP_BOUNDARY FaceAnnotation_Landmark_Type = 17 185 // Left eye, right corner. 186 FaceAnnotation_Landmark_LEFT_EYE_RIGHT_CORNER FaceAnnotation_Landmark_Type = 18 187 // Left eye, bottom boundary. 188 FaceAnnotation_Landmark_LEFT_EYE_BOTTOM_BOUNDARY FaceAnnotation_Landmark_Type = 19 189 // Left eye, left corner. 190 FaceAnnotation_Landmark_LEFT_EYE_LEFT_CORNER FaceAnnotation_Landmark_Type = 20 191 // Right eye, top boundary. 192 FaceAnnotation_Landmark_RIGHT_EYE_TOP_BOUNDARY FaceAnnotation_Landmark_Type = 21 193 // Right eye, right corner. 194 FaceAnnotation_Landmark_RIGHT_EYE_RIGHT_CORNER FaceAnnotation_Landmark_Type = 22 195 // Right eye, bottom boundary. 196 FaceAnnotation_Landmark_RIGHT_EYE_BOTTOM_BOUNDARY FaceAnnotation_Landmark_Type = 23 197 // Right eye, left corner. 198 FaceAnnotation_Landmark_RIGHT_EYE_LEFT_CORNER FaceAnnotation_Landmark_Type = 24 199 // Left eyebrow, upper midpoint. 200 FaceAnnotation_Landmark_LEFT_EYEBROW_UPPER_MIDPOINT FaceAnnotation_Landmark_Type = 25 201 // Right eyebrow, upper midpoint. 202 FaceAnnotation_Landmark_RIGHT_EYEBROW_UPPER_MIDPOINT FaceAnnotation_Landmark_Type = 26 203 // Left ear tragion. 204 FaceAnnotation_Landmark_LEFT_EAR_TRAGION FaceAnnotation_Landmark_Type = 27 205 // Right ear tragion. 206 FaceAnnotation_Landmark_RIGHT_EAR_TRAGION FaceAnnotation_Landmark_Type = 28 207 // Left eye pupil. 208 FaceAnnotation_Landmark_LEFT_EYE_PUPIL FaceAnnotation_Landmark_Type = 29 209 // Right eye pupil. 210 FaceAnnotation_Landmark_RIGHT_EYE_PUPIL FaceAnnotation_Landmark_Type = 30 211 // Forehead glabella. 212 FaceAnnotation_Landmark_FOREHEAD_GLABELLA FaceAnnotation_Landmark_Type = 31 213 // Chin gnathion. 214 FaceAnnotation_Landmark_CHIN_GNATHION FaceAnnotation_Landmark_Type = 32 215 // Chin left gonion. 216 FaceAnnotation_Landmark_CHIN_LEFT_GONION FaceAnnotation_Landmark_Type = 33 217 // Chin right gonion. 218 FaceAnnotation_Landmark_CHIN_RIGHT_GONION FaceAnnotation_Landmark_Type = 34 219) 220 221var FaceAnnotation_Landmark_Type_name = map[int32]string{ 222 0: "UNKNOWN_LANDMARK", 223 1: "LEFT_EYE", 224 2: "RIGHT_EYE", 225 3: "LEFT_OF_LEFT_EYEBROW", 226 4: "RIGHT_OF_LEFT_EYEBROW", 227 5: "LEFT_OF_RIGHT_EYEBROW", 228 6: "RIGHT_OF_RIGHT_EYEBROW", 229 7: "MIDPOINT_BETWEEN_EYES", 230 8: "NOSE_TIP", 231 9: "UPPER_LIP", 232 10: "LOWER_LIP", 233 11: "MOUTH_LEFT", 234 12: "MOUTH_RIGHT", 235 13: "MOUTH_CENTER", 236 14: "NOSE_BOTTOM_RIGHT", 237 15: "NOSE_BOTTOM_LEFT", 238 16: "NOSE_BOTTOM_CENTER", 239 17: "LEFT_EYE_TOP_BOUNDARY", 240 18: "LEFT_EYE_RIGHT_CORNER", 241 19: "LEFT_EYE_BOTTOM_BOUNDARY", 242 20: "LEFT_EYE_LEFT_CORNER", 243 21: "RIGHT_EYE_TOP_BOUNDARY", 244 22: "RIGHT_EYE_RIGHT_CORNER", 245 23: "RIGHT_EYE_BOTTOM_BOUNDARY", 246 24: "RIGHT_EYE_LEFT_CORNER", 247 25: "LEFT_EYEBROW_UPPER_MIDPOINT", 248 26: "RIGHT_EYEBROW_UPPER_MIDPOINT", 249 27: "LEFT_EAR_TRAGION", 250 28: "RIGHT_EAR_TRAGION", 251 29: "LEFT_EYE_PUPIL", 252 30: "RIGHT_EYE_PUPIL", 253 31: "FOREHEAD_GLABELLA", 254 32: "CHIN_GNATHION", 255 33: "CHIN_LEFT_GONION", 256 34: "CHIN_RIGHT_GONION", 257} 258var FaceAnnotation_Landmark_Type_value = map[string]int32{ 259 "UNKNOWN_LANDMARK": 0, 260 "LEFT_EYE": 1, 261 "RIGHT_EYE": 2, 262 "LEFT_OF_LEFT_EYEBROW": 3, 263 "RIGHT_OF_LEFT_EYEBROW": 4, 264 "LEFT_OF_RIGHT_EYEBROW": 5, 265 "RIGHT_OF_RIGHT_EYEBROW": 6, 266 "MIDPOINT_BETWEEN_EYES": 7, 267 "NOSE_TIP": 8, 268 "UPPER_LIP": 9, 269 "LOWER_LIP": 10, 270 "MOUTH_LEFT": 11, 271 "MOUTH_RIGHT": 12, 272 "MOUTH_CENTER": 13, 273 "NOSE_BOTTOM_RIGHT": 14, 274 "NOSE_BOTTOM_LEFT": 15, 275 "NOSE_BOTTOM_CENTER": 16, 276 "LEFT_EYE_TOP_BOUNDARY": 17, 277 "LEFT_EYE_RIGHT_CORNER": 18, 278 "LEFT_EYE_BOTTOM_BOUNDARY": 19, 279 "LEFT_EYE_LEFT_CORNER": 20, 280 "RIGHT_EYE_TOP_BOUNDARY": 21, 281 "RIGHT_EYE_RIGHT_CORNER": 22, 282 "RIGHT_EYE_BOTTOM_BOUNDARY": 23, 283 "RIGHT_EYE_LEFT_CORNER": 24, 284 "LEFT_EYEBROW_UPPER_MIDPOINT": 25, 285 "RIGHT_EYEBROW_UPPER_MIDPOINT": 26, 286 "LEFT_EAR_TRAGION": 27, 287 "RIGHT_EAR_TRAGION": 28, 288 "LEFT_EYE_PUPIL": 29, 289 "RIGHT_EYE_PUPIL": 30, 290 "FOREHEAD_GLABELLA": 31, 291 "CHIN_GNATHION": 32, 292 "CHIN_LEFT_GONION": 33, 293 "CHIN_RIGHT_GONION": 34, 294} 295 296func (x FaceAnnotation_Landmark_Type) String() string { 297 return proto.EnumName(FaceAnnotation_Landmark_Type_name, int32(x)) 298} 299func (FaceAnnotation_Landmark_Type) EnumDescriptor() ([]byte, []int) { 300 return fileDescriptor_image_annotator_f9154282c1c30734, []int{3, 0, 0} 301} 302 303// Batch operation states. 304type OperationMetadata_State int32 305 306const ( 307 // Invalid. 308 OperationMetadata_STATE_UNSPECIFIED OperationMetadata_State = 0 309 // Request is received. 310 OperationMetadata_CREATED OperationMetadata_State = 1 311 // Request is actively being processed. 312 OperationMetadata_RUNNING OperationMetadata_State = 2 313 // The batch processing is done. 314 OperationMetadata_DONE OperationMetadata_State = 3 315 // The batch processing was cancelled. 316 OperationMetadata_CANCELLED OperationMetadata_State = 4 317) 318 319var OperationMetadata_State_name = map[int32]string{ 320 0: "STATE_UNSPECIFIED", 321 1: "CREATED", 322 2: "RUNNING", 323 3: "DONE", 324 4: "CANCELLED", 325} 326var OperationMetadata_State_value = map[string]int32{ 327 "STATE_UNSPECIFIED": 0, 328 "CREATED": 1, 329 "RUNNING": 2, 330 "DONE": 3, 331 "CANCELLED": 4, 332} 333 334func (x OperationMetadata_State) String() string { 335 return proto.EnumName(OperationMetadata_State_name, int32(x)) 336} 337func (OperationMetadata_State) EnumDescriptor() ([]byte, []int) { 338 return fileDescriptor_image_annotator_f9154282c1c30734, []int{31, 0} 339} 340 341// The type of Google Cloud Vision API detection to perform, and the maximum 342// number of results to return for that type. Multiple `Feature` objects can 343// be specified in the `features` list. 344type Feature struct { 345 // The feature type. 346 Type Feature_Type `protobuf:"varint,1,opt,name=type,proto3,enum=google.cloud.vision.v1.Feature_Type" json:"type,omitempty"` 347 // Maximum number of results of this type. Does not apply to 348 // `TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`. 349 MaxResults int32 `protobuf:"varint,2,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"` 350 // Model to use for the feature. 351 // Supported values: "builtin/stable" (the default if unset) and 352 // "builtin/latest". 353 Model string `protobuf:"bytes,3,opt,name=model,proto3" json:"model,omitempty"` 354 XXX_NoUnkeyedLiteral struct{} `json:"-"` 355 XXX_unrecognized []byte `json:"-"` 356 XXX_sizecache int32 `json:"-"` 357} 358 359func (m *Feature) Reset() { *m = Feature{} } 360func (m *Feature) String() string { return proto.CompactTextString(m) } 361func (*Feature) ProtoMessage() {} 362func (*Feature) Descriptor() ([]byte, []int) { 363 return fileDescriptor_image_annotator_f9154282c1c30734, []int{0} 364} 365func (m *Feature) XXX_Unmarshal(b []byte) error { 366 return xxx_messageInfo_Feature.Unmarshal(m, b) 367} 368func (m *Feature) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 369 return xxx_messageInfo_Feature.Marshal(b, m, deterministic) 370} 371func (dst *Feature) XXX_Merge(src proto.Message) { 372 xxx_messageInfo_Feature.Merge(dst, src) 373} 374func (m *Feature) XXX_Size() int { 375 return xxx_messageInfo_Feature.Size(m) 376} 377func (m *Feature) XXX_DiscardUnknown() { 378 xxx_messageInfo_Feature.DiscardUnknown(m) 379} 380 381var xxx_messageInfo_Feature proto.InternalMessageInfo 382 383func (m *Feature) GetType() Feature_Type { 384 if m != nil { 385 return m.Type 386 } 387 return Feature_TYPE_UNSPECIFIED 388} 389 390func (m *Feature) GetMaxResults() int32 { 391 if m != nil { 392 return m.MaxResults 393 } 394 return 0 395} 396 397func (m *Feature) GetModel() string { 398 if m != nil { 399 return m.Model 400 } 401 return "" 402} 403 404// External image source (Google Cloud Storage or web URL image location). 405type ImageSource struct { 406 // **Use `image_uri` instead.** 407 // 408 // The Google Cloud Storage URI of the form 409 // `gs://bucket_name/object_name`. Object versioning is not supported. See 410 // [Google Cloud Storage Request 411 // URIs](https://cloud.google.com/storage/docs/reference-uris) for more info. 412 GcsImageUri string `protobuf:"bytes,1,opt,name=gcs_image_uri,json=gcsImageUri,proto3" json:"gcs_image_uri,omitempty"` 413 // The URI of the source image. Can be either: 414 // 415 // 1. A Google Cloud Storage URI of the form 416 // `gs://bucket_name/object_name`. Object versioning is not supported. See 417 // [Google Cloud Storage Request 418 // URIs](https://cloud.google.com/storage/docs/reference-uris) for more 419 // info. 420 // 421 // 2. A publicly-accessible image HTTP/HTTPS URL. When fetching images from 422 // HTTP/HTTPS URLs, Google cannot guarantee that the request will be 423 // completed. Your request may fail if the specified host denies the 424 // request (e.g. due to request throttling or DOS prevention), or if Google 425 // throttles requests to the site for abuse prevention. You should not 426 // depend on externally-hosted images for production applications. 427 // 428 // When both `gcs_image_uri` and `image_uri` are specified, `image_uri` takes 429 // precedence. 430 ImageUri string `protobuf:"bytes,2,opt,name=image_uri,json=imageUri,proto3" json:"image_uri,omitempty"` 431 XXX_NoUnkeyedLiteral struct{} `json:"-"` 432 XXX_unrecognized []byte `json:"-"` 433 XXX_sizecache int32 `json:"-"` 434} 435 436func (m *ImageSource) Reset() { *m = ImageSource{} } 437func (m *ImageSource) String() string { return proto.CompactTextString(m) } 438func (*ImageSource) ProtoMessage() {} 439func (*ImageSource) Descriptor() ([]byte, []int) { 440 return fileDescriptor_image_annotator_f9154282c1c30734, []int{1} 441} 442func (m *ImageSource) XXX_Unmarshal(b []byte) error { 443 return xxx_messageInfo_ImageSource.Unmarshal(m, b) 444} 445func (m *ImageSource) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 446 return xxx_messageInfo_ImageSource.Marshal(b, m, deterministic) 447} 448func (dst *ImageSource) XXX_Merge(src proto.Message) { 449 xxx_messageInfo_ImageSource.Merge(dst, src) 450} 451func (m *ImageSource) XXX_Size() int { 452 return xxx_messageInfo_ImageSource.Size(m) 453} 454func (m *ImageSource) XXX_DiscardUnknown() { 455 xxx_messageInfo_ImageSource.DiscardUnknown(m) 456} 457 458var xxx_messageInfo_ImageSource proto.InternalMessageInfo 459 460func (m *ImageSource) GetGcsImageUri() string { 461 if m != nil { 462 return m.GcsImageUri 463 } 464 return "" 465} 466 467func (m *ImageSource) GetImageUri() string { 468 if m != nil { 469 return m.ImageUri 470 } 471 return "" 472} 473 474// Client image to perform Google Cloud Vision API tasks over. 475type Image struct { 476 // Image content, represented as a stream of bytes. 477 // Note: As with all `bytes` fields, protobuffers use a pure binary 478 // representation, whereas JSON representations use base64. 479 Content []byte `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"` 480 // Google Cloud Storage image location, or publicly-accessible image 481 // URL. If both `content` and `source` are provided for an image, `content` 482 // takes precedence and is used to perform the image annotation request. 483 Source *ImageSource `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"` 484 XXX_NoUnkeyedLiteral struct{} `json:"-"` 485 XXX_unrecognized []byte `json:"-"` 486 XXX_sizecache int32 `json:"-"` 487} 488 489func (m *Image) Reset() { *m = Image{} } 490func (m *Image) String() string { return proto.CompactTextString(m) } 491func (*Image) ProtoMessage() {} 492func (*Image) Descriptor() ([]byte, []int) { 493 return fileDescriptor_image_annotator_f9154282c1c30734, []int{2} 494} 495func (m *Image) XXX_Unmarshal(b []byte) error { 496 return xxx_messageInfo_Image.Unmarshal(m, b) 497} 498func (m *Image) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 499 return xxx_messageInfo_Image.Marshal(b, m, deterministic) 500} 501func (dst *Image) XXX_Merge(src proto.Message) { 502 xxx_messageInfo_Image.Merge(dst, src) 503} 504func (m *Image) XXX_Size() int { 505 return xxx_messageInfo_Image.Size(m) 506} 507func (m *Image) XXX_DiscardUnknown() { 508 xxx_messageInfo_Image.DiscardUnknown(m) 509} 510 511var xxx_messageInfo_Image proto.InternalMessageInfo 512 513func (m *Image) GetContent() []byte { 514 if m != nil { 515 return m.Content 516 } 517 return nil 518} 519 520func (m *Image) GetSource() *ImageSource { 521 if m != nil { 522 return m.Source 523 } 524 return nil 525} 526 527// A face annotation object contains the results of face detection. 528type FaceAnnotation struct { 529 // The bounding polygon around the face. The coordinates of the bounding box 530 // are in the original image's scale, as returned in `ImageParams`. 531 // The bounding box is computed to "frame" the face in accordance with human 532 // expectations. It is based on the landmarker results. 533 // Note that one or more x and/or y coordinates may not be generated in the 534 // `BoundingPoly` (the polygon will be unbounded) if only a partial face 535 // appears in the image to be annotated. 536 BoundingPoly *BoundingPoly `protobuf:"bytes,1,opt,name=bounding_poly,json=boundingPoly,proto3" json:"bounding_poly,omitempty"` 537 // The `fd_bounding_poly` bounding polygon is tighter than the 538 // `boundingPoly`, and encloses only the skin part of the face. Typically, it 539 // is used to eliminate the face from any image analysis that detects the 540 // "amount of skin" visible in an image. It is not based on the 541 // landmarker results, only on the initial face detection, hence 542 // the <code>fd</code> (face detection) prefix. 543 FdBoundingPoly *BoundingPoly `protobuf:"bytes,2,opt,name=fd_bounding_poly,json=fdBoundingPoly,proto3" json:"fd_bounding_poly,omitempty"` 544 // Detected face landmarks. 545 Landmarks []*FaceAnnotation_Landmark `protobuf:"bytes,3,rep,name=landmarks,proto3" json:"landmarks,omitempty"` 546 // Roll angle, which indicates the amount of clockwise/anti-clockwise rotation 547 // of the face relative to the image vertical about the axis perpendicular to 548 // the face. Range [-180,180]. 549 RollAngle float32 `protobuf:"fixed32,4,opt,name=roll_angle,json=rollAngle,proto3" json:"roll_angle,omitempty"` 550 // Yaw angle, which indicates the leftward/rightward angle that the face is 551 // pointing relative to the vertical plane perpendicular to the image. Range 552 // [-180,180]. 553 PanAngle float32 `protobuf:"fixed32,5,opt,name=pan_angle,json=panAngle,proto3" json:"pan_angle,omitempty"` 554 // Pitch angle, which indicates the upwards/downwards angle that the face is 555 // pointing relative to the image's horizontal plane. Range [-180,180]. 556 TiltAngle float32 `protobuf:"fixed32,6,opt,name=tilt_angle,json=tiltAngle,proto3" json:"tilt_angle,omitempty"` 557 // Detection confidence. Range [0, 1]. 558 DetectionConfidence float32 `protobuf:"fixed32,7,opt,name=detection_confidence,json=detectionConfidence,proto3" json:"detection_confidence,omitempty"` 559 // Face landmarking confidence. Range [0, 1]. 560 LandmarkingConfidence float32 `protobuf:"fixed32,8,opt,name=landmarking_confidence,json=landmarkingConfidence,proto3" json:"landmarking_confidence,omitempty"` 561 // Joy likelihood. 562 JoyLikelihood Likelihood `protobuf:"varint,9,opt,name=joy_likelihood,json=joyLikelihood,proto3,enum=google.cloud.vision.v1.Likelihood" json:"joy_likelihood,omitempty"` 563 // Sorrow likelihood. 564 SorrowLikelihood Likelihood `protobuf:"varint,10,opt,name=sorrow_likelihood,json=sorrowLikelihood,proto3,enum=google.cloud.vision.v1.Likelihood" json:"sorrow_likelihood,omitempty"` 565 // Anger likelihood. 566 AngerLikelihood Likelihood `protobuf:"varint,11,opt,name=anger_likelihood,json=angerLikelihood,proto3,enum=google.cloud.vision.v1.Likelihood" json:"anger_likelihood,omitempty"` 567 // Surprise likelihood. 568 SurpriseLikelihood Likelihood `protobuf:"varint,12,opt,name=surprise_likelihood,json=surpriseLikelihood,proto3,enum=google.cloud.vision.v1.Likelihood" json:"surprise_likelihood,omitempty"` 569 // Under-exposed likelihood. 570 UnderExposedLikelihood Likelihood `protobuf:"varint,13,opt,name=under_exposed_likelihood,json=underExposedLikelihood,proto3,enum=google.cloud.vision.v1.Likelihood" json:"under_exposed_likelihood,omitempty"` 571 // Blurred likelihood. 572 BlurredLikelihood Likelihood `protobuf:"varint,14,opt,name=blurred_likelihood,json=blurredLikelihood,proto3,enum=google.cloud.vision.v1.Likelihood" json:"blurred_likelihood,omitempty"` 573 // Headwear likelihood. 574 HeadwearLikelihood Likelihood `protobuf:"varint,15,opt,name=headwear_likelihood,json=headwearLikelihood,proto3,enum=google.cloud.vision.v1.Likelihood" json:"headwear_likelihood,omitempty"` 575 XXX_NoUnkeyedLiteral struct{} `json:"-"` 576 XXX_unrecognized []byte `json:"-"` 577 XXX_sizecache int32 `json:"-"` 578} 579 580func (m *FaceAnnotation) Reset() { *m = FaceAnnotation{} } 581func (m *FaceAnnotation) String() string { return proto.CompactTextString(m) } 582func (*FaceAnnotation) ProtoMessage() {} 583func (*FaceAnnotation) Descriptor() ([]byte, []int) { 584 return fileDescriptor_image_annotator_f9154282c1c30734, []int{3} 585} 586func (m *FaceAnnotation) XXX_Unmarshal(b []byte) error { 587 return xxx_messageInfo_FaceAnnotation.Unmarshal(m, b) 588} 589func (m *FaceAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 590 return xxx_messageInfo_FaceAnnotation.Marshal(b, m, deterministic) 591} 592func (dst *FaceAnnotation) XXX_Merge(src proto.Message) { 593 xxx_messageInfo_FaceAnnotation.Merge(dst, src) 594} 595func (m *FaceAnnotation) XXX_Size() int { 596 return xxx_messageInfo_FaceAnnotation.Size(m) 597} 598func (m *FaceAnnotation) XXX_DiscardUnknown() { 599 xxx_messageInfo_FaceAnnotation.DiscardUnknown(m) 600} 601 602var xxx_messageInfo_FaceAnnotation proto.InternalMessageInfo 603 604func (m *FaceAnnotation) GetBoundingPoly() *BoundingPoly { 605 if m != nil { 606 return m.BoundingPoly 607 } 608 return nil 609} 610 611func (m *FaceAnnotation) GetFdBoundingPoly() *BoundingPoly { 612 if m != nil { 613 return m.FdBoundingPoly 614 } 615 return nil 616} 617 618func (m *FaceAnnotation) GetLandmarks() []*FaceAnnotation_Landmark { 619 if m != nil { 620 return m.Landmarks 621 } 622 return nil 623} 624 625func (m *FaceAnnotation) GetRollAngle() float32 { 626 if m != nil { 627 return m.RollAngle 628 } 629 return 0 630} 631 632func (m *FaceAnnotation) GetPanAngle() float32 { 633 if m != nil { 634 return m.PanAngle 635 } 636 return 0 637} 638 639func (m *FaceAnnotation) GetTiltAngle() float32 { 640 if m != nil { 641 return m.TiltAngle 642 } 643 return 0 644} 645 646func (m *FaceAnnotation) GetDetectionConfidence() float32 { 647 if m != nil { 648 return m.DetectionConfidence 649 } 650 return 0 651} 652 653func (m *FaceAnnotation) GetLandmarkingConfidence() float32 { 654 if m != nil { 655 return m.LandmarkingConfidence 656 } 657 return 0 658} 659 660func (m *FaceAnnotation) GetJoyLikelihood() Likelihood { 661 if m != nil { 662 return m.JoyLikelihood 663 } 664 return Likelihood_UNKNOWN 665} 666 667func (m *FaceAnnotation) GetSorrowLikelihood() Likelihood { 668 if m != nil { 669 return m.SorrowLikelihood 670 } 671 return Likelihood_UNKNOWN 672} 673 674func (m *FaceAnnotation) GetAngerLikelihood() Likelihood { 675 if m != nil { 676 return m.AngerLikelihood 677 } 678 return Likelihood_UNKNOWN 679} 680 681func (m *FaceAnnotation) GetSurpriseLikelihood() Likelihood { 682 if m != nil { 683 return m.SurpriseLikelihood 684 } 685 return Likelihood_UNKNOWN 686} 687 688func (m *FaceAnnotation) GetUnderExposedLikelihood() Likelihood { 689 if m != nil { 690 return m.UnderExposedLikelihood 691 } 692 return Likelihood_UNKNOWN 693} 694 695func (m *FaceAnnotation) GetBlurredLikelihood() Likelihood { 696 if m != nil { 697 return m.BlurredLikelihood 698 } 699 return Likelihood_UNKNOWN 700} 701 702func (m *FaceAnnotation) GetHeadwearLikelihood() Likelihood { 703 if m != nil { 704 return m.HeadwearLikelihood 705 } 706 return Likelihood_UNKNOWN 707} 708 709// A face-specific landmark (for example, a face feature). 710type FaceAnnotation_Landmark struct { 711 // Face landmark type. 712 Type FaceAnnotation_Landmark_Type `protobuf:"varint,3,opt,name=type,proto3,enum=google.cloud.vision.v1.FaceAnnotation_Landmark_Type" json:"type,omitempty"` 713 // Face landmark position. 714 Position *Position `protobuf:"bytes,4,opt,name=position,proto3" json:"position,omitempty"` 715 XXX_NoUnkeyedLiteral struct{} `json:"-"` 716 XXX_unrecognized []byte `json:"-"` 717 XXX_sizecache int32 `json:"-"` 718} 719 720func (m *FaceAnnotation_Landmark) Reset() { *m = FaceAnnotation_Landmark{} } 721func (m *FaceAnnotation_Landmark) String() string { return proto.CompactTextString(m) } 722func (*FaceAnnotation_Landmark) ProtoMessage() {} 723func (*FaceAnnotation_Landmark) Descriptor() ([]byte, []int) { 724 return fileDescriptor_image_annotator_f9154282c1c30734, []int{3, 0} 725} 726func (m *FaceAnnotation_Landmark) XXX_Unmarshal(b []byte) error { 727 return xxx_messageInfo_FaceAnnotation_Landmark.Unmarshal(m, b) 728} 729func (m *FaceAnnotation_Landmark) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 730 return xxx_messageInfo_FaceAnnotation_Landmark.Marshal(b, m, deterministic) 731} 732func (dst *FaceAnnotation_Landmark) XXX_Merge(src proto.Message) { 733 xxx_messageInfo_FaceAnnotation_Landmark.Merge(dst, src) 734} 735func (m *FaceAnnotation_Landmark) XXX_Size() int { 736 return xxx_messageInfo_FaceAnnotation_Landmark.Size(m) 737} 738func (m *FaceAnnotation_Landmark) XXX_DiscardUnknown() { 739 xxx_messageInfo_FaceAnnotation_Landmark.DiscardUnknown(m) 740} 741 742var xxx_messageInfo_FaceAnnotation_Landmark proto.InternalMessageInfo 743 744func (m *FaceAnnotation_Landmark) GetType() FaceAnnotation_Landmark_Type { 745 if m != nil { 746 return m.Type 747 } 748 return FaceAnnotation_Landmark_UNKNOWN_LANDMARK 749} 750 751func (m *FaceAnnotation_Landmark) GetPosition() *Position { 752 if m != nil { 753 return m.Position 754 } 755 return nil 756} 757 758// Detected entity location information. 759type LocationInfo struct { 760 // lat/long location coordinates. 761 LatLng *latlng.LatLng `protobuf:"bytes,1,opt,name=lat_lng,json=latLng,proto3" json:"lat_lng,omitempty"` 762 XXX_NoUnkeyedLiteral struct{} `json:"-"` 763 XXX_unrecognized []byte `json:"-"` 764 XXX_sizecache int32 `json:"-"` 765} 766 767func (m *LocationInfo) Reset() { *m = LocationInfo{} } 768func (m *LocationInfo) String() string { return proto.CompactTextString(m) } 769func (*LocationInfo) ProtoMessage() {} 770func (*LocationInfo) Descriptor() ([]byte, []int) { 771 return fileDescriptor_image_annotator_f9154282c1c30734, []int{4} 772} 773func (m *LocationInfo) XXX_Unmarshal(b []byte) error { 774 return xxx_messageInfo_LocationInfo.Unmarshal(m, b) 775} 776func (m *LocationInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 777 return xxx_messageInfo_LocationInfo.Marshal(b, m, deterministic) 778} 779func (dst *LocationInfo) XXX_Merge(src proto.Message) { 780 xxx_messageInfo_LocationInfo.Merge(dst, src) 781} 782func (m *LocationInfo) XXX_Size() int { 783 return xxx_messageInfo_LocationInfo.Size(m) 784} 785func (m *LocationInfo) XXX_DiscardUnknown() { 786 xxx_messageInfo_LocationInfo.DiscardUnknown(m) 787} 788 789var xxx_messageInfo_LocationInfo proto.InternalMessageInfo 790 791func (m *LocationInfo) GetLatLng() *latlng.LatLng { 792 if m != nil { 793 return m.LatLng 794 } 795 return nil 796} 797 798// A `Property` consists of a user-supplied name/value pair. 799type Property struct { 800 // Name of the property. 801 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 802 // Value of the property. 803 Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` 804 // Value of numeric properties. 805 Uint64Value uint64 `protobuf:"varint,3,opt,name=uint64_value,json=uint64Value,proto3" json:"uint64_value,omitempty"` 806 XXX_NoUnkeyedLiteral struct{} `json:"-"` 807 XXX_unrecognized []byte `json:"-"` 808 XXX_sizecache int32 `json:"-"` 809} 810 811func (m *Property) Reset() { *m = Property{} } 812func (m *Property) String() string { return proto.CompactTextString(m) } 813func (*Property) ProtoMessage() {} 814func (*Property) Descriptor() ([]byte, []int) { 815 return fileDescriptor_image_annotator_f9154282c1c30734, []int{5} 816} 817func (m *Property) XXX_Unmarshal(b []byte) error { 818 return xxx_messageInfo_Property.Unmarshal(m, b) 819} 820func (m *Property) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 821 return xxx_messageInfo_Property.Marshal(b, m, deterministic) 822} 823func (dst *Property) XXX_Merge(src proto.Message) { 824 xxx_messageInfo_Property.Merge(dst, src) 825} 826func (m *Property) XXX_Size() int { 827 return xxx_messageInfo_Property.Size(m) 828} 829func (m *Property) XXX_DiscardUnknown() { 830 xxx_messageInfo_Property.DiscardUnknown(m) 831} 832 833var xxx_messageInfo_Property proto.InternalMessageInfo 834 835func (m *Property) GetName() string { 836 if m != nil { 837 return m.Name 838 } 839 return "" 840} 841 842func (m *Property) GetValue() string { 843 if m != nil { 844 return m.Value 845 } 846 return "" 847} 848 849func (m *Property) GetUint64Value() uint64 { 850 if m != nil { 851 return m.Uint64Value 852 } 853 return 0 854} 855 856// Set of detected entity features. 857type EntityAnnotation struct { 858 // Opaque entity ID. Some IDs may be available in 859 // [Google Knowledge Graph Search 860 // API](https://developers.google.com/knowledge-graph/). 861 Mid string `protobuf:"bytes,1,opt,name=mid,proto3" json:"mid,omitempty"` 862 // The language code for the locale in which the entity textual 863 // `description` is expressed. 864 Locale string `protobuf:"bytes,2,opt,name=locale,proto3" json:"locale,omitempty"` 865 // Entity textual description, expressed in its `locale` language. 866 Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` 867 // Overall score of the result. Range [0, 1]. 868 Score float32 `protobuf:"fixed32,4,opt,name=score,proto3" json:"score,omitempty"` 869 // **Deprecated. Use `score` instead.** 870 // The accuracy of the entity detection in an image. 871 // For example, for an image in which the "Eiffel Tower" entity is detected, 872 // this field represents the confidence that there is a tower in the query 873 // image. Range [0, 1]. 874 Confidence float32 `protobuf:"fixed32,5,opt,name=confidence,proto3" json:"confidence,omitempty"` 875 // The relevancy of the ICA (Image Content Annotation) label to the 876 // image. For example, the relevancy of "tower" is likely higher to an image 877 // containing the detected "Eiffel Tower" than to an image containing a 878 // detected distant towering building, even though the confidence that 879 // there is a tower in each image may be the same. Range [0, 1]. 880 Topicality float32 `protobuf:"fixed32,6,opt,name=topicality,proto3" json:"topicality,omitempty"` 881 // Image region to which this entity belongs. Not produced 882 // for `LABEL_DETECTION` features. 883 BoundingPoly *BoundingPoly `protobuf:"bytes,7,opt,name=bounding_poly,json=boundingPoly,proto3" json:"bounding_poly,omitempty"` 884 // The location information for the detected entity. Multiple 885 // `LocationInfo` elements can be present because one location may 886 // indicate the location of the scene in the image, and another location 887 // may indicate the location of the place where the image was taken. 888 // Location information is usually present for landmarks. 889 Locations []*LocationInfo `protobuf:"bytes,8,rep,name=locations,proto3" json:"locations,omitempty"` 890 // Some entities may have optional user-supplied `Property` (name/value) 891 // fields, such a score or string that qualifies the entity. 892 Properties []*Property `protobuf:"bytes,9,rep,name=properties,proto3" json:"properties,omitempty"` 893 XXX_NoUnkeyedLiteral struct{} `json:"-"` 894 XXX_unrecognized []byte `json:"-"` 895 XXX_sizecache int32 `json:"-"` 896} 897 898func (m *EntityAnnotation) Reset() { *m = EntityAnnotation{} } 899func (m *EntityAnnotation) String() string { return proto.CompactTextString(m) } 900func (*EntityAnnotation) ProtoMessage() {} 901func (*EntityAnnotation) Descriptor() ([]byte, []int) { 902 return fileDescriptor_image_annotator_f9154282c1c30734, []int{6} 903} 904func (m *EntityAnnotation) XXX_Unmarshal(b []byte) error { 905 return xxx_messageInfo_EntityAnnotation.Unmarshal(m, b) 906} 907func (m *EntityAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 908 return xxx_messageInfo_EntityAnnotation.Marshal(b, m, deterministic) 909} 910func (dst *EntityAnnotation) XXX_Merge(src proto.Message) { 911 xxx_messageInfo_EntityAnnotation.Merge(dst, src) 912} 913func (m *EntityAnnotation) XXX_Size() int { 914 return xxx_messageInfo_EntityAnnotation.Size(m) 915} 916func (m *EntityAnnotation) XXX_DiscardUnknown() { 917 xxx_messageInfo_EntityAnnotation.DiscardUnknown(m) 918} 919 920var xxx_messageInfo_EntityAnnotation proto.InternalMessageInfo 921 922func (m *EntityAnnotation) GetMid() string { 923 if m != nil { 924 return m.Mid 925 } 926 return "" 927} 928 929func (m *EntityAnnotation) GetLocale() string { 930 if m != nil { 931 return m.Locale 932 } 933 return "" 934} 935 936func (m *EntityAnnotation) GetDescription() string { 937 if m != nil { 938 return m.Description 939 } 940 return "" 941} 942 943func (m *EntityAnnotation) GetScore() float32 { 944 if m != nil { 945 return m.Score 946 } 947 return 0 948} 949 950func (m *EntityAnnotation) GetConfidence() float32 { 951 if m != nil { 952 return m.Confidence 953 } 954 return 0 955} 956 957func (m *EntityAnnotation) GetTopicality() float32 { 958 if m != nil { 959 return m.Topicality 960 } 961 return 0 962} 963 964func (m *EntityAnnotation) GetBoundingPoly() *BoundingPoly { 965 if m != nil { 966 return m.BoundingPoly 967 } 968 return nil 969} 970 971func (m *EntityAnnotation) GetLocations() []*LocationInfo { 972 if m != nil { 973 return m.Locations 974 } 975 return nil 976} 977 978func (m *EntityAnnotation) GetProperties() []*Property { 979 if m != nil { 980 return m.Properties 981 } 982 return nil 983} 984 985// Set of features pertaining to the image, computed by computer vision 986// methods over safe-search verticals (for example, adult, spoof, medical, 987// violence). 988type SafeSearchAnnotation struct { 989 // Represents the adult content likelihood for the image. Adult content may 990 // contain elements such as nudity, pornographic images or cartoons, or 991 // sexual activities. 992 Adult Likelihood `protobuf:"varint,1,opt,name=adult,proto3,enum=google.cloud.vision.v1.Likelihood" json:"adult,omitempty"` 993 // Spoof likelihood. The likelihood that an modification 994 // was made to the image's canonical version to make it appear 995 // funny or offensive. 996 Spoof Likelihood `protobuf:"varint,2,opt,name=spoof,proto3,enum=google.cloud.vision.v1.Likelihood" json:"spoof,omitempty"` 997 // Likelihood that this is a medical image. 998 Medical Likelihood `protobuf:"varint,3,opt,name=medical,proto3,enum=google.cloud.vision.v1.Likelihood" json:"medical,omitempty"` 999 // Likelihood that this image contains violent content. 1000 Violence Likelihood `protobuf:"varint,4,opt,name=violence,proto3,enum=google.cloud.vision.v1.Likelihood" json:"violence,omitempty"` 1001 // Likelihood that the request image contains racy content. Racy content may 1002 // include (but is not limited to) skimpy or sheer clothing, strategically 1003 // covered nudity, lewd or provocative poses, or close-ups of sensitive 1004 // body areas. 1005 Racy Likelihood `protobuf:"varint,9,opt,name=racy,proto3,enum=google.cloud.vision.v1.Likelihood" json:"racy,omitempty"` 1006 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1007 XXX_unrecognized []byte `json:"-"` 1008 XXX_sizecache int32 `json:"-"` 1009} 1010 1011func (m *SafeSearchAnnotation) Reset() { *m = SafeSearchAnnotation{} } 1012func (m *SafeSearchAnnotation) String() string { return proto.CompactTextString(m) } 1013func (*SafeSearchAnnotation) ProtoMessage() {} 1014func (*SafeSearchAnnotation) Descriptor() ([]byte, []int) { 1015 return fileDescriptor_image_annotator_f9154282c1c30734, []int{7} 1016} 1017func (m *SafeSearchAnnotation) XXX_Unmarshal(b []byte) error { 1018 return xxx_messageInfo_SafeSearchAnnotation.Unmarshal(m, b) 1019} 1020func (m *SafeSearchAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1021 return xxx_messageInfo_SafeSearchAnnotation.Marshal(b, m, deterministic) 1022} 1023func (dst *SafeSearchAnnotation) XXX_Merge(src proto.Message) { 1024 xxx_messageInfo_SafeSearchAnnotation.Merge(dst, src) 1025} 1026func (m *SafeSearchAnnotation) XXX_Size() int { 1027 return xxx_messageInfo_SafeSearchAnnotation.Size(m) 1028} 1029func (m *SafeSearchAnnotation) XXX_DiscardUnknown() { 1030 xxx_messageInfo_SafeSearchAnnotation.DiscardUnknown(m) 1031} 1032 1033var xxx_messageInfo_SafeSearchAnnotation proto.InternalMessageInfo 1034 1035func (m *SafeSearchAnnotation) GetAdult() Likelihood { 1036 if m != nil { 1037 return m.Adult 1038 } 1039 return Likelihood_UNKNOWN 1040} 1041 1042func (m *SafeSearchAnnotation) GetSpoof() Likelihood { 1043 if m != nil { 1044 return m.Spoof 1045 } 1046 return Likelihood_UNKNOWN 1047} 1048 1049func (m *SafeSearchAnnotation) GetMedical() Likelihood { 1050 if m != nil { 1051 return m.Medical 1052 } 1053 return Likelihood_UNKNOWN 1054} 1055 1056func (m *SafeSearchAnnotation) GetViolence() Likelihood { 1057 if m != nil { 1058 return m.Violence 1059 } 1060 return Likelihood_UNKNOWN 1061} 1062 1063func (m *SafeSearchAnnotation) GetRacy() Likelihood { 1064 if m != nil { 1065 return m.Racy 1066 } 1067 return Likelihood_UNKNOWN 1068} 1069 1070// Rectangle determined by min and max `LatLng` pairs. 1071type LatLongRect struct { 1072 // Min lat/long pair. 1073 MinLatLng *latlng.LatLng `protobuf:"bytes,1,opt,name=min_lat_lng,json=minLatLng,proto3" json:"min_lat_lng,omitempty"` 1074 // Max lat/long pair. 1075 MaxLatLng *latlng.LatLng `protobuf:"bytes,2,opt,name=max_lat_lng,json=maxLatLng,proto3" json:"max_lat_lng,omitempty"` 1076 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1077 XXX_unrecognized []byte `json:"-"` 1078 XXX_sizecache int32 `json:"-"` 1079} 1080 1081func (m *LatLongRect) Reset() { *m = LatLongRect{} } 1082func (m *LatLongRect) String() string { return proto.CompactTextString(m) } 1083func (*LatLongRect) ProtoMessage() {} 1084func (*LatLongRect) Descriptor() ([]byte, []int) { 1085 return fileDescriptor_image_annotator_f9154282c1c30734, []int{8} 1086} 1087func (m *LatLongRect) XXX_Unmarshal(b []byte) error { 1088 return xxx_messageInfo_LatLongRect.Unmarshal(m, b) 1089} 1090func (m *LatLongRect) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1091 return xxx_messageInfo_LatLongRect.Marshal(b, m, deterministic) 1092} 1093func (dst *LatLongRect) XXX_Merge(src proto.Message) { 1094 xxx_messageInfo_LatLongRect.Merge(dst, src) 1095} 1096func (m *LatLongRect) XXX_Size() int { 1097 return xxx_messageInfo_LatLongRect.Size(m) 1098} 1099func (m *LatLongRect) XXX_DiscardUnknown() { 1100 xxx_messageInfo_LatLongRect.DiscardUnknown(m) 1101} 1102 1103var xxx_messageInfo_LatLongRect proto.InternalMessageInfo 1104 1105func (m *LatLongRect) GetMinLatLng() *latlng.LatLng { 1106 if m != nil { 1107 return m.MinLatLng 1108 } 1109 return nil 1110} 1111 1112func (m *LatLongRect) GetMaxLatLng() *latlng.LatLng { 1113 if m != nil { 1114 return m.MaxLatLng 1115 } 1116 return nil 1117} 1118 1119// Color information consists of RGB channels, score, and the fraction of 1120// the image that the color occupies in the image. 1121type ColorInfo struct { 1122 // RGB components of the color. 1123 Color *color.Color `protobuf:"bytes,1,opt,name=color,proto3" json:"color,omitempty"` 1124 // Image-specific score for this color. Value in range [0, 1]. 1125 Score float32 `protobuf:"fixed32,2,opt,name=score,proto3" json:"score,omitempty"` 1126 // The fraction of pixels the color occupies in the image. 1127 // Value in range [0, 1]. 1128 PixelFraction float32 `protobuf:"fixed32,3,opt,name=pixel_fraction,json=pixelFraction,proto3" json:"pixel_fraction,omitempty"` 1129 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1130 XXX_unrecognized []byte `json:"-"` 1131 XXX_sizecache int32 `json:"-"` 1132} 1133 1134func (m *ColorInfo) Reset() { *m = ColorInfo{} } 1135func (m *ColorInfo) String() string { return proto.CompactTextString(m) } 1136func (*ColorInfo) ProtoMessage() {} 1137func (*ColorInfo) Descriptor() ([]byte, []int) { 1138 return fileDescriptor_image_annotator_f9154282c1c30734, []int{9} 1139} 1140func (m *ColorInfo) XXX_Unmarshal(b []byte) error { 1141 return xxx_messageInfo_ColorInfo.Unmarshal(m, b) 1142} 1143func (m *ColorInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1144 return xxx_messageInfo_ColorInfo.Marshal(b, m, deterministic) 1145} 1146func (dst *ColorInfo) XXX_Merge(src proto.Message) { 1147 xxx_messageInfo_ColorInfo.Merge(dst, src) 1148} 1149func (m *ColorInfo) XXX_Size() int { 1150 return xxx_messageInfo_ColorInfo.Size(m) 1151} 1152func (m *ColorInfo) XXX_DiscardUnknown() { 1153 xxx_messageInfo_ColorInfo.DiscardUnknown(m) 1154} 1155 1156var xxx_messageInfo_ColorInfo proto.InternalMessageInfo 1157 1158func (m *ColorInfo) GetColor() *color.Color { 1159 if m != nil { 1160 return m.Color 1161 } 1162 return nil 1163} 1164 1165func (m *ColorInfo) GetScore() float32 { 1166 if m != nil { 1167 return m.Score 1168 } 1169 return 0 1170} 1171 1172func (m *ColorInfo) GetPixelFraction() float32 { 1173 if m != nil { 1174 return m.PixelFraction 1175 } 1176 return 0 1177} 1178 1179// Set of dominant colors and their corresponding scores. 1180type DominantColorsAnnotation struct { 1181 // RGB color values with their score and pixel fraction. 1182 Colors []*ColorInfo `protobuf:"bytes,1,rep,name=colors,proto3" json:"colors,omitempty"` 1183 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1184 XXX_unrecognized []byte `json:"-"` 1185 XXX_sizecache int32 `json:"-"` 1186} 1187 1188func (m *DominantColorsAnnotation) Reset() { *m = DominantColorsAnnotation{} } 1189func (m *DominantColorsAnnotation) String() string { return proto.CompactTextString(m) } 1190func (*DominantColorsAnnotation) ProtoMessage() {} 1191func (*DominantColorsAnnotation) Descriptor() ([]byte, []int) { 1192 return fileDescriptor_image_annotator_f9154282c1c30734, []int{10} 1193} 1194func (m *DominantColorsAnnotation) XXX_Unmarshal(b []byte) error { 1195 return xxx_messageInfo_DominantColorsAnnotation.Unmarshal(m, b) 1196} 1197func (m *DominantColorsAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1198 return xxx_messageInfo_DominantColorsAnnotation.Marshal(b, m, deterministic) 1199} 1200func (dst *DominantColorsAnnotation) XXX_Merge(src proto.Message) { 1201 xxx_messageInfo_DominantColorsAnnotation.Merge(dst, src) 1202} 1203func (m *DominantColorsAnnotation) XXX_Size() int { 1204 return xxx_messageInfo_DominantColorsAnnotation.Size(m) 1205} 1206func (m *DominantColorsAnnotation) XXX_DiscardUnknown() { 1207 xxx_messageInfo_DominantColorsAnnotation.DiscardUnknown(m) 1208} 1209 1210var xxx_messageInfo_DominantColorsAnnotation proto.InternalMessageInfo 1211 1212func (m *DominantColorsAnnotation) GetColors() []*ColorInfo { 1213 if m != nil { 1214 return m.Colors 1215 } 1216 return nil 1217} 1218 1219// Stores image properties, such as dominant colors. 1220type ImageProperties struct { 1221 // If present, dominant colors completed successfully. 1222 DominantColors *DominantColorsAnnotation `protobuf:"bytes,1,opt,name=dominant_colors,json=dominantColors,proto3" json:"dominant_colors,omitempty"` 1223 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1224 XXX_unrecognized []byte `json:"-"` 1225 XXX_sizecache int32 `json:"-"` 1226} 1227 1228func (m *ImageProperties) Reset() { *m = ImageProperties{} } 1229func (m *ImageProperties) String() string { return proto.CompactTextString(m) } 1230func (*ImageProperties) ProtoMessage() {} 1231func (*ImageProperties) Descriptor() ([]byte, []int) { 1232 return fileDescriptor_image_annotator_f9154282c1c30734, []int{11} 1233} 1234func (m *ImageProperties) XXX_Unmarshal(b []byte) error { 1235 return xxx_messageInfo_ImageProperties.Unmarshal(m, b) 1236} 1237func (m *ImageProperties) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1238 return xxx_messageInfo_ImageProperties.Marshal(b, m, deterministic) 1239} 1240func (dst *ImageProperties) XXX_Merge(src proto.Message) { 1241 xxx_messageInfo_ImageProperties.Merge(dst, src) 1242} 1243func (m *ImageProperties) XXX_Size() int { 1244 return xxx_messageInfo_ImageProperties.Size(m) 1245} 1246func (m *ImageProperties) XXX_DiscardUnknown() { 1247 xxx_messageInfo_ImageProperties.DiscardUnknown(m) 1248} 1249 1250var xxx_messageInfo_ImageProperties proto.InternalMessageInfo 1251 1252func (m *ImageProperties) GetDominantColors() *DominantColorsAnnotation { 1253 if m != nil { 1254 return m.DominantColors 1255 } 1256 return nil 1257} 1258 1259// Single crop hint that is used to generate a new crop when serving an image. 1260type CropHint struct { 1261 // The bounding polygon for the crop region. The coordinates of the bounding 1262 // box are in the original image's scale, as returned in `ImageParams`. 1263 BoundingPoly *BoundingPoly `protobuf:"bytes,1,opt,name=bounding_poly,json=boundingPoly,proto3" json:"bounding_poly,omitempty"` 1264 // Confidence of this being a salient region. Range [0, 1]. 1265 Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"` 1266 // Fraction of importance of this salient region with respect to the original 1267 // image. 1268 ImportanceFraction float32 `protobuf:"fixed32,3,opt,name=importance_fraction,json=importanceFraction,proto3" json:"importance_fraction,omitempty"` 1269 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1270 XXX_unrecognized []byte `json:"-"` 1271 XXX_sizecache int32 `json:"-"` 1272} 1273 1274func (m *CropHint) Reset() { *m = CropHint{} } 1275func (m *CropHint) String() string { return proto.CompactTextString(m) } 1276func (*CropHint) ProtoMessage() {} 1277func (*CropHint) Descriptor() ([]byte, []int) { 1278 return fileDescriptor_image_annotator_f9154282c1c30734, []int{12} 1279} 1280func (m *CropHint) XXX_Unmarshal(b []byte) error { 1281 return xxx_messageInfo_CropHint.Unmarshal(m, b) 1282} 1283func (m *CropHint) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1284 return xxx_messageInfo_CropHint.Marshal(b, m, deterministic) 1285} 1286func (dst *CropHint) XXX_Merge(src proto.Message) { 1287 xxx_messageInfo_CropHint.Merge(dst, src) 1288} 1289func (m *CropHint) XXX_Size() int { 1290 return xxx_messageInfo_CropHint.Size(m) 1291} 1292func (m *CropHint) XXX_DiscardUnknown() { 1293 xxx_messageInfo_CropHint.DiscardUnknown(m) 1294} 1295 1296var xxx_messageInfo_CropHint proto.InternalMessageInfo 1297 1298func (m *CropHint) GetBoundingPoly() *BoundingPoly { 1299 if m != nil { 1300 return m.BoundingPoly 1301 } 1302 return nil 1303} 1304 1305func (m *CropHint) GetConfidence() float32 { 1306 if m != nil { 1307 return m.Confidence 1308 } 1309 return 0 1310} 1311 1312func (m *CropHint) GetImportanceFraction() float32 { 1313 if m != nil { 1314 return m.ImportanceFraction 1315 } 1316 return 0 1317} 1318 1319// Set of crop hints that are used to generate new crops when serving images. 1320type CropHintsAnnotation struct { 1321 // Crop hint results. 1322 CropHints []*CropHint `protobuf:"bytes,1,rep,name=crop_hints,json=cropHints,proto3" json:"crop_hints,omitempty"` 1323 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1324 XXX_unrecognized []byte `json:"-"` 1325 XXX_sizecache int32 `json:"-"` 1326} 1327 1328func (m *CropHintsAnnotation) Reset() { *m = CropHintsAnnotation{} } 1329func (m *CropHintsAnnotation) String() string { return proto.CompactTextString(m) } 1330func (*CropHintsAnnotation) ProtoMessage() {} 1331func (*CropHintsAnnotation) Descriptor() ([]byte, []int) { 1332 return fileDescriptor_image_annotator_f9154282c1c30734, []int{13} 1333} 1334func (m *CropHintsAnnotation) XXX_Unmarshal(b []byte) error { 1335 return xxx_messageInfo_CropHintsAnnotation.Unmarshal(m, b) 1336} 1337func (m *CropHintsAnnotation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1338 return xxx_messageInfo_CropHintsAnnotation.Marshal(b, m, deterministic) 1339} 1340func (dst *CropHintsAnnotation) XXX_Merge(src proto.Message) { 1341 xxx_messageInfo_CropHintsAnnotation.Merge(dst, src) 1342} 1343func (m *CropHintsAnnotation) XXX_Size() int { 1344 return xxx_messageInfo_CropHintsAnnotation.Size(m) 1345} 1346func (m *CropHintsAnnotation) XXX_DiscardUnknown() { 1347 xxx_messageInfo_CropHintsAnnotation.DiscardUnknown(m) 1348} 1349 1350var xxx_messageInfo_CropHintsAnnotation proto.InternalMessageInfo 1351 1352func (m *CropHintsAnnotation) GetCropHints() []*CropHint { 1353 if m != nil { 1354 return m.CropHints 1355 } 1356 return nil 1357} 1358 1359// Parameters for crop hints annotation request. 1360type CropHintsParams struct { 1361 // Aspect ratios in floats, representing the ratio of the width to the height 1362 // of the image. For example, if the desired aspect ratio is 4/3, the 1363 // corresponding float value should be 1.33333. If not specified, the 1364 // best possible crop is returned. The number of provided aspect ratios is 1365 // limited to a maximum of 16; any aspect ratios provided after the 16th are 1366 // ignored. 1367 AspectRatios []float32 `protobuf:"fixed32,1,rep,packed,name=aspect_ratios,json=aspectRatios,proto3" json:"aspect_ratios,omitempty"` 1368 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1369 XXX_unrecognized []byte `json:"-"` 1370 XXX_sizecache int32 `json:"-"` 1371} 1372 1373func (m *CropHintsParams) Reset() { *m = CropHintsParams{} } 1374func (m *CropHintsParams) String() string { return proto.CompactTextString(m) } 1375func (*CropHintsParams) ProtoMessage() {} 1376func (*CropHintsParams) Descriptor() ([]byte, []int) { 1377 return fileDescriptor_image_annotator_f9154282c1c30734, []int{14} 1378} 1379func (m *CropHintsParams) XXX_Unmarshal(b []byte) error { 1380 return xxx_messageInfo_CropHintsParams.Unmarshal(m, b) 1381} 1382func (m *CropHintsParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1383 return xxx_messageInfo_CropHintsParams.Marshal(b, m, deterministic) 1384} 1385func (dst *CropHintsParams) XXX_Merge(src proto.Message) { 1386 xxx_messageInfo_CropHintsParams.Merge(dst, src) 1387} 1388func (m *CropHintsParams) XXX_Size() int { 1389 return xxx_messageInfo_CropHintsParams.Size(m) 1390} 1391func (m *CropHintsParams) XXX_DiscardUnknown() { 1392 xxx_messageInfo_CropHintsParams.DiscardUnknown(m) 1393} 1394 1395var xxx_messageInfo_CropHintsParams proto.InternalMessageInfo 1396 1397func (m *CropHintsParams) GetAspectRatios() []float32 { 1398 if m != nil { 1399 return m.AspectRatios 1400 } 1401 return nil 1402} 1403 1404// Parameters for web detection request. 1405type WebDetectionParams struct { 1406 // Whether to include results derived from the geo information in the image. 1407 IncludeGeoResults bool `protobuf:"varint,2,opt,name=include_geo_results,json=includeGeoResults,proto3" json:"include_geo_results,omitempty"` 1408 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1409 XXX_unrecognized []byte `json:"-"` 1410 XXX_sizecache int32 `json:"-"` 1411} 1412 1413func (m *WebDetectionParams) Reset() { *m = WebDetectionParams{} } 1414func (m *WebDetectionParams) String() string { return proto.CompactTextString(m) } 1415func (*WebDetectionParams) ProtoMessage() {} 1416func (*WebDetectionParams) Descriptor() ([]byte, []int) { 1417 return fileDescriptor_image_annotator_f9154282c1c30734, []int{15} 1418} 1419func (m *WebDetectionParams) XXX_Unmarshal(b []byte) error { 1420 return xxx_messageInfo_WebDetectionParams.Unmarshal(m, b) 1421} 1422func (m *WebDetectionParams) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1423 return xxx_messageInfo_WebDetectionParams.Marshal(b, m, deterministic) 1424} 1425func (dst *WebDetectionParams) XXX_Merge(src proto.Message) { 1426 xxx_messageInfo_WebDetectionParams.Merge(dst, src) 1427} 1428func (m *WebDetectionParams) XXX_Size() int { 1429 return xxx_messageInfo_WebDetectionParams.Size(m) 1430} 1431func (m *WebDetectionParams) XXX_DiscardUnknown() { 1432 xxx_messageInfo_WebDetectionParams.DiscardUnknown(m) 1433} 1434 1435var xxx_messageInfo_WebDetectionParams proto.InternalMessageInfo 1436 1437func (m *WebDetectionParams) GetIncludeGeoResults() bool { 1438 if m != nil { 1439 return m.IncludeGeoResults 1440 } 1441 return false 1442} 1443 1444// Image context and/or feature-specific parameters. 1445type ImageContext struct { 1446 // Not used. 1447 LatLongRect *LatLongRect `protobuf:"bytes,1,opt,name=lat_long_rect,json=latLongRect,proto3" json:"lat_long_rect,omitempty"` 1448 // List of languages to use for TEXT_DETECTION. In most cases, an empty value 1449 // yields the best results since it enables automatic language detection. For 1450 // languages based on the Latin alphabet, setting `language_hints` is not 1451 // needed. In rare cases, when the language of the text in the image is known, 1452 // setting a hint will help get better results (although it will be a 1453 // significant hindrance if the hint is wrong). Text detection returns an 1454 // error if one or more of the specified languages is not one of the 1455 // [supported languages](/vision/docs/languages). 1456 LanguageHints []string `protobuf:"bytes,2,rep,name=language_hints,json=languageHints,proto3" json:"language_hints,omitempty"` 1457 // Parameters for crop hints annotation request. 1458 CropHintsParams *CropHintsParams `protobuf:"bytes,4,opt,name=crop_hints_params,json=cropHintsParams,proto3" json:"crop_hints_params,omitempty"` 1459 // Parameters for web detection. 1460 WebDetectionParams *WebDetectionParams `protobuf:"bytes,6,opt,name=web_detection_params,json=webDetectionParams,proto3" json:"web_detection_params,omitempty"` 1461 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1462 XXX_unrecognized []byte `json:"-"` 1463 XXX_sizecache int32 `json:"-"` 1464} 1465 1466func (m *ImageContext) Reset() { *m = ImageContext{} } 1467func (m *ImageContext) String() string { return proto.CompactTextString(m) } 1468func (*ImageContext) ProtoMessage() {} 1469func (*ImageContext) Descriptor() ([]byte, []int) { 1470 return fileDescriptor_image_annotator_f9154282c1c30734, []int{16} 1471} 1472func (m *ImageContext) XXX_Unmarshal(b []byte) error { 1473 return xxx_messageInfo_ImageContext.Unmarshal(m, b) 1474} 1475func (m *ImageContext) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1476 return xxx_messageInfo_ImageContext.Marshal(b, m, deterministic) 1477} 1478func (dst *ImageContext) XXX_Merge(src proto.Message) { 1479 xxx_messageInfo_ImageContext.Merge(dst, src) 1480} 1481func (m *ImageContext) XXX_Size() int { 1482 return xxx_messageInfo_ImageContext.Size(m) 1483} 1484func (m *ImageContext) XXX_DiscardUnknown() { 1485 xxx_messageInfo_ImageContext.DiscardUnknown(m) 1486} 1487 1488var xxx_messageInfo_ImageContext proto.InternalMessageInfo 1489 1490func (m *ImageContext) GetLatLongRect() *LatLongRect { 1491 if m != nil { 1492 return m.LatLongRect 1493 } 1494 return nil 1495} 1496 1497func (m *ImageContext) GetLanguageHints() []string { 1498 if m != nil { 1499 return m.LanguageHints 1500 } 1501 return nil 1502} 1503 1504func (m *ImageContext) GetCropHintsParams() *CropHintsParams { 1505 if m != nil { 1506 return m.CropHintsParams 1507 } 1508 return nil 1509} 1510 1511func (m *ImageContext) GetWebDetectionParams() *WebDetectionParams { 1512 if m != nil { 1513 return m.WebDetectionParams 1514 } 1515 return nil 1516} 1517 1518// Request for performing Google Cloud Vision API tasks over a user-provided 1519// image, with user-requested features. 1520type AnnotateImageRequest struct { 1521 // The image to be processed. 1522 Image *Image `protobuf:"bytes,1,opt,name=image,proto3" json:"image,omitempty"` 1523 // Requested features. 1524 Features []*Feature `protobuf:"bytes,2,rep,name=features,proto3" json:"features,omitempty"` 1525 // Additional context that may accompany the image. 1526 ImageContext *ImageContext `protobuf:"bytes,3,opt,name=image_context,json=imageContext,proto3" json:"image_context,omitempty"` 1527 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1528 XXX_unrecognized []byte `json:"-"` 1529 XXX_sizecache int32 `json:"-"` 1530} 1531 1532func (m *AnnotateImageRequest) Reset() { *m = AnnotateImageRequest{} } 1533func (m *AnnotateImageRequest) String() string { return proto.CompactTextString(m) } 1534func (*AnnotateImageRequest) ProtoMessage() {} 1535func (*AnnotateImageRequest) Descriptor() ([]byte, []int) { 1536 return fileDescriptor_image_annotator_f9154282c1c30734, []int{17} 1537} 1538func (m *AnnotateImageRequest) XXX_Unmarshal(b []byte) error { 1539 return xxx_messageInfo_AnnotateImageRequest.Unmarshal(m, b) 1540} 1541func (m *AnnotateImageRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1542 return xxx_messageInfo_AnnotateImageRequest.Marshal(b, m, deterministic) 1543} 1544func (dst *AnnotateImageRequest) XXX_Merge(src proto.Message) { 1545 xxx_messageInfo_AnnotateImageRequest.Merge(dst, src) 1546} 1547func (m *AnnotateImageRequest) XXX_Size() int { 1548 return xxx_messageInfo_AnnotateImageRequest.Size(m) 1549} 1550func (m *AnnotateImageRequest) XXX_DiscardUnknown() { 1551 xxx_messageInfo_AnnotateImageRequest.DiscardUnknown(m) 1552} 1553 1554var xxx_messageInfo_AnnotateImageRequest proto.InternalMessageInfo 1555 1556func (m *AnnotateImageRequest) GetImage() *Image { 1557 if m != nil { 1558 return m.Image 1559 } 1560 return nil 1561} 1562 1563func (m *AnnotateImageRequest) GetFeatures() []*Feature { 1564 if m != nil { 1565 return m.Features 1566 } 1567 return nil 1568} 1569 1570func (m *AnnotateImageRequest) GetImageContext() *ImageContext { 1571 if m != nil { 1572 return m.ImageContext 1573 } 1574 return nil 1575} 1576 1577// If an image was produced from a file (e.g. a PDF), this message gives 1578// information about the source of that image. 1579type ImageAnnotationContext struct { 1580 // The URI of the file used to produce the image. 1581 Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"` 1582 // If the file was a PDF or TIFF, this field gives the page number within 1583 // the file used to produce the image. 1584 PageNumber int32 `protobuf:"varint,2,opt,name=page_number,json=pageNumber,proto3" json:"page_number,omitempty"` 1585 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1586 XXX_unrecognized []byte `json:"-"` 1587 XXX_sizecache int32 `json:"-"` 1588} 1589 1590func (m *ImageAnnotationContext) Reset() { *m = ImageAnnotationContext{} } 1591func (m *ImageAnnotationContext) String() string { return proto.CompactTextString(m) } 1592func (*ImageAnnotationContext) ProtoMessage() {} 1593func (*ImageAnnotationContext) Descriptor() ([]byte, []int) { 1594 return fileDescriptor_image_annotator_f9154282c1c30734, []int{18} 1595} 1596func (m *ImageAnnotationContext) XXX_Unmarshal(b []byte) error { 1597 return xxx_messageInfo_ImageAnnotationContext.Unmarshal(m, b) 1598} 1599func (m *ImageAnnotationContext) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1600 return xxx_messageInfo_ImageAnnotationContext.Marshal(b, m, deterministic) 1601} 1602func (dst *ImageAnnotationContext) XXX_Merge(src proto.Message) { 1603 xxx_messageInfo_ImageAnnotationContext.Merge(dst, src) 1604} 1605func (m *ImageAnnotationContext) XXX_Size() int { 1606 return xxx_messageInfo_ImageAnnotationContext.Size(m) 1607} 1608func (m *ImageAnnotationContext) XXX_DiscardUnknown() { 1609 xxx_messageInfo_ImageAnnotationContext.DiscardUnknown(m) 1610} 1611 1612var xxx_messageInfo_ImageAnnotationContext proto.InternalMessageInfo 1613 1614func (m *ImageAnnotationContext) GetUri() string { 1615 if m != nil { 1616 return m.Uri 1617 } 1618 return "" 1619} 1620 1621func (m *ImageAnnotationContext) GetPageNumber() int32 { 1622 if m != nil { 1623 return m.PageNumber 1624 } 1625 return 0 1626} 1627 1628// Response to an image annotation request. 1629type AnnotateImageResponse struct { 1630 // If present, face detection has completed successfully. 1631 FaceAnnotations []*FaceAnnotation `protobuf:"bytes,1,rep,name=face_annotations,json=faceAnnotations,proto3" json:"face_annotations,omitempty"` 1632 // If present, landmark detection has completed successfully. 1633 LandmarkAnnotations []*EntityAnnotation `protobuf:"bytes,2,rep,name=landmark_annotations,json=landmarkAnnotations,proto3" json:"landmark_annotations,omitempty"` 1634 // If present, logo detection has completed successfully. 1635 LogoAnnotations []*EntityAnnotation `protobuf:"bytes,3,rep,name=logo_annotations,json=logoAnnotations,proto3" json:"logo_annotations,omitempty"` 1636 // If present, label detection has completed successfully. 1637 LabelAnnotations []*EntityAnnotation `protobuf:"bytes,4,rep,name=label_annotations,json=labelAnnotations,proto3" json:"label_annotations,omitempty"` 1638 // If present, text (OCR) detection has completed successfully. 1639 TextAnnotations []*EntityAnnotation `protobuf:"bytes,5,rep,name=text_annotations,json=textAnnotations,proto3" json:"text_annotations,omitempty"` 1640 // If present, text (OCR) detection or document (OCR) text detection has 1641 // completed successfully. 1642 // This annotation provides the structural hierarchy for the OCR detected 1643 // text. 1644 FullTextAnnotation *TextAnnotation `protobuf:"bytes,12,opt,name=full_text_annotation,json=fullTextAnnotation,proto3" json:"full_text_annotation,omitempty"` 1645 // If present, safe-search annotation has completed successfully. 1646 SafeSearchAnnotation *SafeSearchAnnotation `protobuf:"bytes,6,opt,name=safe_search_annotation,json=safeSearchAnnotation,proto3" json:"safe_search_annotation,omitempty"` 1647 // If present, image properties were extracted successfully. 1648 ImagePropertiesAnnotation *ImageProperties `protobuf:"bytes,8,opt,name=image_properties_annotation,json=imagePropertiesAnnotation,proto3" json:"image_properties_annotation,omitempty"` 1649 // If present, crop hints have completed successfully. 1650 CropHintsAnnotation *CropHintsAnnotation `protobuf:"bytes,11,opt,name=crop_hints_annotation,json=cropHintsAnnotation,proto3" json:"crop_hints_annotation,omitempty"` 1651 // If present, web detection has completed successfully. 1652 WebDetection *WebDetection `protobuf:"bytes,13,opt,name=web_detection,json=webDetection,proto3" json:"web_detection,omitempty"` 1653 // If set, represents the error message for the operation. 1654 // Note that filled-in image annotations are guaranteed to be 1655 // correct, even when `error` is set. 1656 Error *status.Status `protobuf:"bytes,9,opt,name=error,proto3" json:"error,omitempty"` 1657 // If present, contextual information is needed to understand where this image 1658 // comes from. 1659 Context *ImageAnnotationContext `protobuf:"bytes,21,opt,name=context,proto3" json:"context,omitempty"` 1660 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1661 XXX_unrecognized []byte `json:"-"` 1662 XXX_sizecache int32 `json:"-"` 1663} 1664 1665func (m *AnnotateImageResponse) Reset() { *m = AnnotateImageResponse{} } 1666func (m *AnnotateImageResponse) String() string { return proto.CompactTextString(m) } 1667func (*AnnotateImageResponse) ProtoMessage() {} 1668func (*AnnotateImageResponse) Descriptor() ([]byte, []int) { 1669 return fileDescriptor_image_annotator_f9154282c1c30734, []int{19} 1670} 1671func (m *AnnotateImageResponse) XXX_Unmarshal(b []byte) error { 1672 return xxx_messageInfo_AnnotateImageResponse.Unmarshal(m, b) 1673} 1674func (m *AnnotateImageResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1675 return xxx_messageInfo_AnnotateImageResponse.Marshal(b, m, deterministic) 1676} 1677func (dst *AnnotateImageResponse) XXX_Merge(src proto.Message) { 1678 xxx_messageInfo_AnnotateImageResponse.Merge(dst, src) 1679} 1680func (m *AnnotateImageResponse) XXX_Size() int { 1681 return xxx_messageInfo_AnnotateImageResponse.Size(m) 1682} 1683func (m *AnnotateImageResponse) XXX_DiscardUnknown() { 1684 xxx_messageInfo_AnnotateImageResponse.DiscardUnknown(m) 1685} 1686 1687var xxx_messageInfo_AnnotateImageResponse proto.InternalMessageInfo 1688 1689func (m *AnnotateImageResponse) GetFaceAnnotations() []*FaceAnnotation { 1690 if m != nil { 1691 return m.FaceAnnotations 1692 } 1693 return nil 1694} 1695 1696func (m *AnnotateImageResponse) GetLandmarkAnnotations() []*EntityAnnotation { 1697 if m != nil { 1698 return m.LandmarkAnnotations 1699 } 1700 return nil 1701} 1702 1703func (m *AnnotateImageResponse) GetLogoAnnotations() []*EntityAnnotation { 1704 if m != nil { 1705 return m.LogoAnnotations 1706 } 1707 return nil 1708} 1709 1710func (m *AnnotateImageResponse) GetLabelAnnotations() []*EntityAnnotation { 1711 if m != nil { 1712 return m.LabelAnnotations 1713 } 1714 return nil 1715} 1716 1717func (m *AnnotateImageResponse) GetTextAnnotations() []*EntityAnnotation { 1718 if m != nil { 1719 return m.TextAnnotations 1720 } 1721 return nil 1722} 1723 1724func (m *AnnotateImageResponse) GetFullTextAnnotation() *TextAnnotation { 1725 if m != nil { 1726 return m.FullTextAnnotation 1727 } 1728 return nil 1729} 1730 1731func (m *AnnotateImageResponse) GetSafeSearchAnnotation() *SafeSearchAnnotation { 1732 if m != nil { 1733 return m.SafeSearchAnnotation 1734 } 1735 return nil 1736} 1737 1738func (m *AnnotateImageResponse) GetImagePropertiesAnnotation() *ImageProperties { 1739 if m != nil { 1740 return m.ImagePropertiesAnnotation 1741 } 1742 return nil 1743} 1744 1745func (m *AnnotateImageResponse) GetCropHintsAnnotation() *CropHintsAnnotation { 1746 if m != nil { 1747 return m.CropHintsAnnotation 1748 } 1749 return nil 1750} 1751 1752func (m *AnnotateImageResponse) GetWebDetection() *WebDetection { 1753 if m != nil { 1754 return m.WebDetection 1755 } 1756 return nil 1757} 1758 1759func (m *AnnotateImageResponse) GetError() *status.Status { 1760 if m != nil { 1761 return m.Error 1762 } 1763 return nil 1764} 1765 1766func (m *AnnotateImageResponse) GetContext() *ImageAnnotationContext { 1767 if m != nil { 1768 return m.Context 1769 } 1770 return nil 1771} 1772 1773// Response to a single file annotation request. A file may contain one or more 1774// images, which individually have their own responses. 1775type AnnotateFileResponse struct { 1776 // Information about the file for which this response is generated. 1777 InputConfig *InputConfig `protobuf:"bytes,1,opt,name=input_config,json=inputConfig,proto3" json:"input_config,omitempty"` 1778 // Individual responses to images found within the file. 1779 Responses []*AnnotateImageResponse `protobuf:"bytes,2,rep,name=responses,proto3" json:"responses,omitempty"` 1780 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1781 XXX_unrecognized []byte `json:"-"` 1782 XXX_sizecache int32 `json:"-"` 1783} 1784 1785func (m *AnnotateFileResponse) Reset() { *m = AnnotateFileResponse{} } 1786func (m *AnnotateFileResponse) String() string { return proto.CompactTextString(m) } 1787func (*AnnotateFileResponse) ProtoMessage() {} 1788func (*AnnotateFileResponse) Descriptor() ([]byte, []int) { 1789 return fileDescriptor_image_annotator_f9154282c1c30734, []int{20} 1790} 1791func (m *AnnotateFileResponse) XXX_Unmarshal(b []byte) error { 1792 return xxx_messageInfo_AnnotateFileResponse.Unmarshal(m, b) 1793} 1794func (m *AnnotateFileResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1795 return xxx_messageInfo_AnnotateFileResponse.Marshal(b, m, deterministic) 1796} 1797func (dst *AnnotateFileResponse) XXX_Merge(src proto.Message) { 1798 xxx_messageInfo_AnnotateFileResponse.Merge(dst, src) 1799} 1800func (m *AnnotateFileResponse) XXX_Size() int { 1801 return xxx_messageInfo_AnnotateFileResponse.Size(m) 1802} 1803func (m *AnnotateFileResponse) XXX_DiscardUnknown() { 1804 xxx_messageInfo_AnnotateFileResponse.DiscardUnknown(m) 1805} 1806 1807var xxx_messageInfo_AnnotateFileResponse proto.InternalMessageInfo 1808 1809func (m *AnnotateFileResponse) GetInputConfig() *InputConfig { 1810 if m != nil { 1811 return m.InputConfig 1812 } 1813 return nil 1814} 1815 1816func (m *AnnotateFileResponse) GetResponses() []*AnnotateImageResponse { 1817 if m != nil { 1818 return m.Responses 1819 } 1820 return nil 1821} 1822 1823// Multiple image annotation requests are batched into a single service call. 1824type BatchAnnotateImagesRequest struct { 1825 // Individual image annotation requests for this batch. 1826 Requests []*AnnotateImageRequest `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` 1827 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1828 XXX_unrecognized []byte `json:"-"` 1829 XXX_sizecache int32 `json:"-"` 1830} 1831 1832func (m *BatchAnnotateImagesRequest) Reset() { *m = BatchAnnotateImagesRequest{} } 1833func (m *BatchAnnotateImagesRequest) String() string { return proto.CompactTextString(m) } 1834func (*BatchAnnotateImagesRequest) ProtoMessage() {} 1835func (*BatchAnnotateImagesRequest) Descriptor() ([]byte, []int) { 1836 return fileDescriptor_image_annotator_f9154282c1c30734, []int{21} 1837} 1838func (m *BatchAnnotateImagesRequest) XXX_Unmarshal(b []byte) error { 1839 return xxx_messageInfo_BatchAnnotateImagesRequest.Unmarshal(m, b) 1840} 1841func (m *BatchAnnotateImagesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1842 return xxx_messageInfo_BatchAnnotateImagesRequest.Marshal(b, m, deterministic) 1843} 1844func (dst *BatchAnnotateImagesRequest) XXX_Merge(src proto.Message) { 1845 xxx_messageInfo_BatchAnnotateImagesRequest.Merge(dst, src) 1846} 1847func (m *BatchAnnotateImagesRequest) XXX_Size() int { 1848 return xxx_messageInfo_BatchAnnotateImagesRequest.Size(m) 1849} 1850func (m *BatchAnnotateImagesRequest) XXX_DiscardUnknown() { 1851 xxx_messageInfo_BatchAnnotateImagesRequest.DiscardUnknown(m) 1852} 1853 1854var xxx_messageInfo_BatchAnnotateImagesRequest proto.InternalMessageInfo 1855 1856func (m *BatchAnnotateImagesRequest) GetRequests() []*AnnotateImageRequest { 1857 if m != nil { 1858 return m.Requests 1859 } 1860 return nil 1861} 1862 1863// Response to a batch image annotation request. 1864type BatchAnnotateImagesResponse struct { 1865 // Individual responses to image annotation requests within the batch. 1866 Responses []*AnnotateImageResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` 1867 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1868 XXX_unrecognized []byte `json:"-"` 1869 XXX_sizecache int32 `json:"-"` 1870} 1871 1872func (m *BatchAnnotateImagesResponse) Reset() { *m = BatchAnnotateImagesResponse{} } 1873func (m *BatchAnnotateImagesResponse) String() string { return proto.CompactTextString(m) } 1874func (*BatchAnnotateImagesResponse) ProtoMessage() {} 1875func (*BatchAnnotateImagesResponse) Descriptor() ([]byte, []int) { 1876 return fileDescriptor_image_annotator_f9154282c1c30734, []int{22} 1877} 1878func (m *BatchAnnotateImagesResponse) XXX_Unmarshal(b []byte) error { 1879 return xxx_messageInfo_BatchAnnotateImagesResponse.Unmarshal(m, b) 1880} 1881func (m *BatchAnnotateImagesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1882 return xxx_messageInfo_BatchAnnotateImagesResponse.Marshal(b, m, deterministic) 1883} 1884func (dst *BatchAnnotateImagesResponse) XXX_Merge(src proto.Message) { 1885 xxx_messageInfo_BatchAnnotateImagesResponse.Merge(dst, src) 1886} 1887func (m *BatchAnnotateImagesResponse) XXX_Size() int { 1888 return xxx_messageInfo_BatchAnnotateImagesResponse.Size(m) 1889} 1890func (m *BatchAnnotateImagesResponse) XXX_DiscardUnknown() { 1891 xxx_messageInfo_BatchAnnotateImagesResponse.DiscardUnknown(m) 1892} 1893 1894var xxx_messageInfo_BatchAnnotateImagesResponse proto.InternalMessageInfo 1895 1896func (m *BatchAnnotateImagesResponse) GetResponses() []*AnnotateImageResponse { 1897 if m != nil { 1898 return m.Responses 1899 } 1900 return nil 1901} 1902 1903// An offline file annotation request. 1904type AsyncAnnotateFileRequest struct { 1905 // Required. Information about the input file. 1906 InputConfig *InputConfig `protobuf:"bytes,1,opt,name=input_config,json=inputConfig,proto3" json:"input_config,omitempty"` 1907 // Required. Requested features. 1908 Features []*Feature `protobuf:"bytes,2,rep,name=features,proto3" json:"features,omitempty"` 1909 // Additional context that may accompany the image(s) in the file. 1910 ImageContext *ImageContext `protobuf:"bytes,3,opt,name=image_context,json=imageContext,proto3" json:"image_context,omitempty"` 1911 // Required. The desired output location and metadata (e.g. format). 1912 OutputConfig *OutputConfig `protobuf:"bytes,4,opt,name=output_config,json=outputConfig,proto3" json:"output_config,omitempty"` 1913 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1914 XXX_unrecognized []byte `json:"-"` 1915 XXX_sizecache int32 `json:"-"` 1916} 1917 1918func (m *AsyncAnnotateFileRequest) Reset() { *m = AsyncAnnotateFileRequest{} } 1919func (m *AsyncAnnotateFileRequest) String() string { return proto.CompactTextString(m) } 1920func (*AsyncAnnotateFileRequest) ProtoMessage() {} 1921func (*AsyncAnnotateFileRequest) Descriptor() ([]byte, []int) { 1922 return fileDescriptor_image_annotator_f9154282c1c30734, []int{23} 1923} 1924func (m *AsyncAnnotateFileRequest) XXX_Unmarshal(b []byte) error { 1925 return xxx_messageInfo_AsyncAnnotateFileRequest.Unmarshal(m, b) 1926} 1927func (m *AsyncAnnotateFileRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1928 return xxx_messageInfo_AsyncAnnotateFileRequest.Marshal(b, m, deterministic) 1929} 1930func (dst *AsyncAnnotateFileRequest) XXX_Merge(src proto.Message) { 1931 xxx_messageInfo_AsyncAnnotateFileRequest.Merge(dst, src) 1932} 1933func (m *AsyncAnnotateFileRequest) XXX_Size() int { 1934 return xxx_messageInfo_AsyncAnnotateFileRequest.Size(m) 1935} 1936func (m *AsyncAnnotateFileRequest) XXX_DiscardUnknown() { 1937 xxx_messageInfo_AsyncAnnotateFileRequest.DiscardUnknown(m) 1938} 1939 1940var xxx_messageInfo_AsyncAnnotateFileRequest proto.InternalMessageInfo 1941 1942func (m *AsyncAnnotateFileRequest) GetInputConfig() *InputConfig { 1943 if m != nil { 1944 return m.InputConfig 1945 } 1946 return nil 1947} 1948 1949func (m *AsyncAnnotateFileRequest) GetFeatures() []*Feature { 1950 if m != nil { 1951 return m.Features 1952 } 1953 return nil 1954} 1955 1956func (m *AsyncAnnotateFileRequest) GetImageContext() *ImageContext { 1957 if m != nil { 1958 return m.ImageContext 1959 } 1960 return nil 1961} 1962 1963func (m *AsyncAnnotateFileRequest) GetOutputConfig() *OutputConfig { 1964 if m != nil { 1965 return m.OutputConfig 1966 } 1967 return nil 1968} 1969 1970// The response for a single offline file annotation request. 1971type AsyncAnnotateFileResponse struct { 1972 // The output location and metadata from AsyncAnnotateFileRequest. 1973 OutputConfig *OutputConfig `protobuf:"bytes,1,opt,name=output_config,json=outputConfig,proto3" json:"output_config,omitempty"` 1974 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1975 XXX_unrecognized []byte `json:"-"` 1976 XXX_sizecache int32 `json:"-"` 1977} 1978 1979func (m *AsyncAnnotateFileResponse) Reset() { *m = AsyncAnnotateFileResponse{} } 1980func (m *AsyncAnnotateFileResponse) String() string { return proto.CompactTextString(m) } 1981func (*AsyncAnnotateFileResponse) ProtoMessage() {} 1982func (*AsyncAnnotateFileResponse) Descriptor() ([]byte, []int) { 1983 return fileDescriptor_image_annotator_f9154282c1c30734, []int{24} 1984} 1985func (m *AsyncAnnotateFileResponse) XXX_Unmarshal(b []byte) error { 1986 return xxx_messageInfo_AsyncAnnotateFileResponse.Unmarshal(m, b) 1987} 1988func (m *AsyncAnnotateFileResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1989 return xxx_messageInfo_AsyncAnnotateFileResponse.Marshal(b, m, deterministic) 1990} 1991func (dst *AsyncAnnotateFileResponse) XXX_Merge(src proto.Message) { 1992 xxx_messageInfo_AsyncAnnotateFileResponse.Merge(dst, src) 1993} 1994func (m *AsyncAnnotateFileResponse) XXX_Size() int { 1995 return xxx_messageInfo_AsyncAnnotateFileResponse.Size(m) 1996} 1997func (m *AsyncAnnotateFileResponse) XXX_DiscardUnknown() { 1998 xxx_messageInfo_AsyncAnnotateFileResponse.DiscardUnknown(m) 1999} 2000 2001var xxx_messageInfo_AsyncAnnotateFileResponse proto.InternalMessageInfo 2002 2003func (m *AsyncAnnotateFileResponse) GetOutputConfig() *OutputConfig { 2004 if m != nil { 2005 return m.OutputConfig 2006 } 2007 return nil 2008} 2009 2010// Multiple async file annotation requests are batched into a single service 2011// call. 2012type AsyncBatchAnnotateFilesRequest struct { 2013 // Individual async file annotation requests for this batch. 2014 Requests []*AsyncAnnotateFileRequest `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` 2015 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2016 XXX_unrecognized []byte `json:"-"` 2017 XXX_sizecache int32 `json:"-"` 2018} 2019 2020func (m *AsyncBatchAnnotateFilesRequest) Reset() { *m = AsyncBatchAnnotateFilesRequest{} } 2021func (m *AsyncBatchAnnotateFilesRequest) String() string { return proto.CompactTextString(m) } 2022func (*AsyncBatchAnnotateFilesRequest) ProtoMessage() {} 2023func (*AsyncBatchAnnotateFilesRequest) Descriptor() ([]byte, []int) { 2024 return fileDescriptor_image_annotator_f9154282c1c30734, []int{25} 2025} 2026func (m *AsyncBatchAnnotateFilesRequest) XXX_Unmarshal(b []byte) error { 2027 return xxx_messageInfo_AsyncBatchAnnotateFilesRequest.Unmarshal(m, b) 2028} 2029func (m *AsyncBatchAnnotateFilesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2030 return xxx_messageInfo_AsyncBatchAnnotateFilesRequest.Marshal(b, m, deterministic) 2031} 2032func (dst *AsyncBatchAnnotateFilesRequest) XXX_Merge(src proto.Message) { 2033 xxx_messageInfo_AsyncBatchAnnotateFilesRequest.Merge(dst, src) 2034} 2035func (m *AsyncBatchAnnotateFilesRequest) XXX_Size() int { 2036 return xxx_messageInfo_AsyncBatchAnnotateFilesRequest.Size(m) 2037} 2038func (m *AsyncBatchAnnotateFilesRequest) XXX_DiscardUnknown() { 2039 xxx_messageInfo_AsyncBatchAnnotateFilesRequest.DiscardUnknown(m) 2040} 2041 2042var xxx_messageInfo_AsyncBatchAnnotateFilesRequest proto.InternalMessageInfo 2043 2044func (m *AsyncBatchAnnotateFilesRequest) GetRequests() []*AsyncAnnotateFileRequest { 2045 if m != nil { 2046 return m.Requests 2047 } 2048 return nil 2049} 2050 2051// Response to an async batch file annotation request. 2052type AsyncBatchAnnotateFilesResponse struct { 2053 // The list of file annotation responses, one for each request in 2054 // AsyncBatchAnnotateFilesRequest. 2055 Responses []*AsyncAnnotateFileResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` 2056 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2057 XXX_unrecognized []byte `json:"-"` 2058 XXX_sizecache int32 `json:"-"` 2059} 2060 2061func (m *AsyncBatchAnnotateFilesResponse) Reset() { *m = AsyncBatchAnnotateFilesResponse{} } 2062func (m *AsyncBatchAnnotateFilesResponse) String() string { return proto.CompactTextString(m) } 2063func (*AsyncBatchAnnotateFilesResponse) ProtoMessage() {} 2064func (*AsyncBatchAnnotateFilesResponse) Descriptor() ([]byte, []int) { 2065 return fileDescriptor_image_annotator_f9154282c1c30734, []int{26} 2066} 2067func (m *AsyncBatchAnnotateFilesResponse) XXX_Unmarshal(b []byte) error { 2068 return xxx_messageInfo_AsyncBatchAnnotateFilesResponse.Unmarshal(m, b) 2069} 2070func (m *AsyncBatchAnnotateFilesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2071 return xxx_messageInfo_AsyncBatchAnnotateFilesResponse.Marshal(b, m, deterministic) 2072} 2073func (dst *AsyncBatchAnnotateFilesResponse) XXX_Merge(src proto.Message) { 2074 xxx_messageInfo_AsyncBatchAnnotateFilesResponse.Merge(dst, src) 2075} 2076func (m *AsyncBatchAnnotateFilesResponse) XXX_Size() int { 2077 return xxx_messageInfo_AsyncBatchAnnotateFilesResponse.Size(m) 2078} 2079func (m *AsyncBatchAnnotateFilesResponse) XXX_DiscardUnknown() { 2080 xxx_messageInfo_AsyncBatchAnnotateFilesResponse.DiscardUnknown(m) 2081} 2082 2083var xxx_messageInfo_AsyncBatchAnnotateFilesResponse proto.InternalMessageInfo 2084 2085func (m *AsyncBatchAnnotateFilesResponse) GetResponses() []*AsyncAnnotateFileResponse { 2086 if m != nil { 2087 return m.Responses 2088 } 2089 return nil 2090} 2091 2092// The desired input location and metadata. 2093type InputConfig struct { 2094 // The Google Cloud Storage location to read the input from. 2095 GcsSource *GcsSource `protobuf:"bytes,1,opt,name=gcs_source,json=gcsSource,proto3" json:"gcs_source,omitempty"` 2096 // The type of the file. Currently only "application/pdf" and "image/tiff" 2097 // are supported. Wildcards are not supported. 2098 MimeType string `protobuf:"bytes,2,opt,name=mime_type,json=mimeType,proto3" json:"mime_type,omitempty"` 2099 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2100 XXX_unrecognized []byte `json:"-"` 2101 XXX_sizecache int32 `json:"-"` 2102} 2103 2104func (m *InputConfig) Reset() { *m = InputConfig{} } 2105func (m *InputConfig) String() string { return proto.CompactTextString(m) } 2106func (*InputConfig) ProtoMessage() {} 2107func (*InputConfig) Descriptor() ([]byte, []int) { 2108 return fileDescriptor_image_annotator_f9154282c1c30734, []int{27} 2109} 2110func (m *InputConfig) XXX_Unmarshal(b []byte) error { 2111 return xxx_messageInfo_InputConfig.Unmarshal(m, b) 2112} 2113func (m *InputConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2114 return xxx_messageInfo_InputConfig.Marshal(b, m, deterministic) 2115} 2116func (dst *InputConfig) XXX_Merge(src proto.Message) { 2117 xxx_messageInfo_InputConfig.Merge(dst, src) 2118} 2119func (m *InputConfig) XXX_Size() int { 2120 return xxx_messageInfo_InputConfig.Size(m) 2121} 2122func (m *InputConfig) XXX_DiscardUnknown() { 2123 xxx_messageInfo_InputConfig.DiscardUnknown(m) 2124} 2125 2126var xxx_messageInfo_InputConfig proto.InternalMessageInfo 2127 2128func (m *InputConfig) GetGcsSource() *GcsSource { 2129 if m != nil { 2130 return m.GcsSource 2131 } 2132 return nil 2133} 2134 2135func (m *InputConfig) GetMimeType() string { 2136 if m != nil { 2137 return m.MimeType 2138 } 2139 return "" 2140} 2141 2142// The desired output location and metadata. 2143type OutputConfig struct { 2144 // The Google Cloud Storage location to write the output(s) to. 2145 GcsDestination *GcsDestination `protobuf:"bytes,1,opt,name=gcs_destination,json=gcsDestination,proto3" json:"gcs_destination,omitempty"` 2146 // The max number of response protos to put into each output JSON file on 2147 // Google Cloud Storage. 2148 // The valid range is [1, 100]. If not specified, the default value is 20. 2149 // 2150 // For example, for one pdf file with 100 pages, 100 response protos will 2151 // be generated. If `batch_size` = 20, then 5 json files each 2152 // containing 20 response protos will be written under the prefix 2153 // `gcs_destination`.`uri`. 2154 // 2155 // Currently, batch_size only applies to GcsDestination, with potential future 2156 // support for other output configurations. 2157 BatchSize int32 `protobuf:"varint,2,opt,name=batch_size,json=batchSize,proto3" json:"batch_size,omitempty"` 2158 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2159 XXX_unrecognized []byte `json:"-"` 2160 XXX_sizecache int32 `json:"-"` 2161} 2162 2163func (m *OutputConfig) Reset() { *m = OutputConfig{} } 2164func (m *OutputConfig) String() string { return proto.CompactTextString(m) } 2165func (*OutputConfig) ProtoMessage() {} 2166func (*OutputConfig) Descriptor() ([]byte, []int) { 2167 return fileDescriptor_image_annotator_f9154282c1c30734, []int{28} 2168} 2169func (m *OutputConfig) XXX_Unmarshal(b []byte) error { 2170 return xxx_messageInfo_OutputConfig.Unmarshal(m, b) 2171} 2172func (m *OutputConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2173 return xxx_messageInfo_OutputConfig.Marshal(b, m, deterministic) 2174} 2175func (dst *OutputConfig) XXX_Merge(src proto.Message) { 2176 xxx_messageInfo_OutputConfig.Merge(dst, src) 2177} 2178func (m *OutputConfig) XXX_Size() int { 2179 return xxx_messageInfo_OutputConfig.Size(m) 2180} 2181func (m *OutputConfig) XXX_DiscardUnknown() { 2182 xxx_messageInfo_OutputConfig.DiscardUnknown(m) 2183} 2184 2185var xxx_messageInfo_OutputConfig proto.InternalMessageInfo 2186 2187func (m *OutputConfig) GetGcsDestination() *GcsDestination { 2188 if m != nil { 2189 return m.GcsDestination 2190 } 2191 return nil 2192} 2193 2194func (m *OutputConfig) GetBatchSize() int32 { 2195 if m != nil { 2196 return m.BatchSize 2197 } 2198 return 0 2199} 2200 2201// The Google Cloud Storage location where the input will be read from. 2202type GcsSource struct { 2203 // Google Cloud Storage URI for the input file. This must only be a 2204 // Google Cloud Storage object. Wildcards are not currently supported. 2205 Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"` 2206 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2207 XXX_unrecognized []byte `json:"-"` 2208 XXX_sizecache int32 `json:"-"` 2209} 2210 2211func (m *GcsSource) Reset() { *m = GcsSource{} } 2212func (m *GcsSource) String() string { return proto.CompactTextString(m) } 2213func (*GcsSource) ProtoMessage() {} 2214func (*GcsSource) Descriptor() ([]byte, []int) { 2215 return fileDescriptor_image_annotator_f9154282c1c30734, []int{29} 2216} 2217func (m *GcsSource) XXX_Unmarshal(b []byte) error { 2218 return xxx_messageInfo_GcsSource.Unmarshal(m, b) 2219} 2220func (m *GcsSource) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2221 return xxx_messageInfo_GcsSource.Marshal(b, m, deterministic) 2222} 2223func (dst *GcsSource) XXX_Merge(src proto.Message) { 2224 xxx_messageInfo_GcsSource.Merge(dst, src) 2225} 2226func (m *GcsSource) XXX_Size() int { 2227 return xxx_messageInfo_GcsSource.Size(m) 2228} 2229func (m *GcsSource) XXX_DiscardUnknown() { 2230 xxx_messageInfo_GcsSource.DiscardUnknown(m) 2231} 2232 2233var xxx_messageInfo_GcsSource proto.InternalMessageInfo 2234 2235func (m *GcsSource) GetUri() string { 2236 if m != nil { 2237 return m.Uri 2238 } 2239 return "" 2240} 2241 2242// The Google Cloud Storage location where the output will be written to. 2243type GcsDestination struct { 2244 // Google Cloud Storage URI where the results will be stored. Results will 2245 // be in JSON format and preceded by its corresponding input URI. This field 2246 // can either represent a single file, or a prefix for multiple outputs. 2247 // Prefixes must end in a `/`. 2248 // 2249 // Examples: 2250 // 2251 // * File: gs://bucket-name/filename.json 2252 // * Prefix: gs://bucket-name/prefix/here/ 2253 // * File: gs://bucket-name/prefix/here 2254 // 2255 // If multiple outputs, each response is still AnnotateFileResponse, each of 2256 // which contains some subset of the full list of AnnotateImageResponse. 2257 // Multiple outputs can happen if, for example, the output JSON is too large 2258 // and overflows into multiple sharded files. 2259 Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"` 2260 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2261 XXX_unrecognized []byte `json:"-"` 2262 XXX_sizecache int32 `json:"-"` 2263} 2264 2265func (m *GcsDestination) Reset() { *m = GcsDestination{} } 2266func (m *GcsDestination) String() string { return proto.CompactTextString(m) } 2267func (*GcsDestination) ProtoMessage() {} 2268func (*GcsDestination) Descriptor() ([]byte, []int) { 2269 return fileDescriptor_image_annotator_f9154282c1c30734, []int{30} 2270} 2271func (m *GcsDestination) XXX_Unmarshal(b []byte) error { 2272 return xxx_messageInfo_GcsDestination.Unmarshal(m, b) 2273} 2274func (m *GcsDestination) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2275 return xxx_messageInfo_GcsDestination.Marshal(b, m, deterministic) 2276} 2277func (dst *GcsDestination) XXX_Merge(src proto.Message) { 2278 xxx_messageInfo_GcsDestination.Merge(dst, src) 2279} 2280func (m *GcsDestination) XXX_Size() int { 2281 return xxx_messageInfo_GcsDestination.Size(m) 2282} 2283func (m *GcsDestination) XXX_DiscardUnknown() { 2284 xxx_messageInfo_GcsDestination.DiscardUnknown(m) 2285} 2286 2287var xxx_messageInfo_GcsDestination proto.InternalMessageInfo 2288 2289func (m *GcsDestination) GetUri() string { 2290 if m != nil { 2291 return m.Uri 2292 } 2293 return "" 2294} 2295 2296// Contains metadata for the BatchAnnotateImages operation. 2297type OperationMetadata struct { 2298 // Current state of the batch operation. 2299 State OperationMetadata_State `protobuf:"varint,1,opt,name=state,proto3,enum=google.cloud.vision.v1.OperationMetadata_State" json:"state,omitempty"` 2300 // The time when the batch request was received. 2301 CreateTime *timestamp.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` 2302 // The time when the operation result was last updated. 2303 UpdateTime *timestamp.Timestamp `protobuf:"bytes,6,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` 2304 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2305 XXX_unrecognized []byte `json:"-"` 2306 XXX_sizecache int32 `json:"-"` 2307} 2308 2309func (m *OperationMetadata) Reset() { *m = OperationMetadata{} } 2310func (m *OperationMetadata) String() string { return proto.CompactTextString(m) } 2311func (*OperationMetadata) ProtoMessage() {} 2312func (*OperationMetadata) Descriptor() ([]byte, []int) { 2313 return fileDescriptor_image_annotator_f9154282c1c30734, []int{31} 2314} 2315func (m *OperationMetadata) XXX_Unmarshal(b []byte) error { 2316 return xxx_messageInfo_OperationMetadata.Unmarshal(m, b) 2317} 2318func (m *OperationMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2319 return xxx_messageInfo_OperationMetadata.Marshal(b, m, deterministic) 2320} 2321func (dst *OperationMetadata) XXX_Merge(src proto.Message) { 2322 xxx_messageInfo_OperationMetadata.Merge(dst, src) 2323} 2324func (m *OperationMetadata) XXX_Size() int { 2325 return xxx_messageInfo_OperationMetadata.Size(m) 2326} 2327func (m *OperationMetadata) XXX_DiscardUnknown() { 2328 xxx_messageInfo_OperationMetadata.DiscardUnknown(m) 2329} 2330 2331var xxx_messageInfo_OperationMetadata proto.InternalMessageInfo 2332 2333func (m *OperationMetadata) GetState() OperationMetadata_State { 2334 if m != nil { 2335 return m.State 2336 } 2337 return OperationMetadata_STATE_UNSPECIFIED 2338} 2339 2340func (m *OperationMetadata) GetCreateTime() *timestamp.Timestamp { 2341 if m != nil { 2342 return m.CreateTime 2343 } 2344 return nil 2345} 2346 2347func (m *OperationMetadata) GetUpdateTime() *timestamp.Timestamp { 2348 if m != nil { 2349 return m.UpdateTime 2350 } 2351 return nil 2352} 2353 2354func init() { 2355 proto.RegisterType((*Feature)(nil), "google.cloud.vision.v1.Feature") 2356 proto.RegisterType((*ImageSource)(nil), "google.cloud.vision.v1.ImageSource") 2357 proto.RegisterType((*Image)(nil), "google.cloud.vision.v1.Image") 2358 proto.RegisterType((*FaceAnnotation)(nil), "google.cloud.vision.v1.FaceAnnotation") 2359 proto.RegisterType((*FaceAnnotation_Landmark)(nil), "google.cloud.vision.v1.FaceAnnotation.Landmark") 2360 proto.RegisterType((*LocationInfo)(nil), "google.cloud.vision.v1.LocationInfo") 2361 proto.RegisterType((*Property)(nil), "google.cloud.vision.v1.Property") 2362 proto.RegisterType((*EntityAnnotation)(nil), "google.cloud.vision.v1.EntityAnnotation") 2363 proto.RegisterType((*SafeSearchAnnotation)(nil), "google.cloud.vision.v1.SafeSearchAnnotation") 2364 proto.RegisterType((*LatLongRect)(nil), "google.cloud.vision.v1.LatLongRect") 2365 proto.RegisterType((*ColorInfo)(nil), "google.cloud.vision.v1.ColorInfo") 2366 proto.RegisterType((*DominantColorsAnnotation)(nil), "google.cloud.vision.v1.DominantColorsAnnotation") 2367 proto.RegisterType((*ImageProperties)(nil), "google.cloud.vision.v1.ImageProperties") 2368 proto.RegisterType((*CropHint)(nil), "google.cloud.vision.v1.CropHint") 2369 proto.RegisterType((*CropHintsAnnotation)(nil), "google.cloud.vision.v1.CropHintsAnnotation") 2370 proto.RegisterType((*CropHintsParams)(nil), "google.cloud.vision.v1.CropHintsParams") 2371 proto.RegisterType((*WebDetectionParams)(nil), "google.cloud.vision.v1.WebDetectionParams") 2372 proto.RegisterType((*ImageContext)(nil), "google.cloud.vision.v1.ImageContext") 2373 proto.RegisterType((*AnnotateImageRequest)(nil), "google.cloud.vision.v1.AnnotateImageRequest") 2374 proto.RegisterType((*ImageAnnotationContext)(nil), "google.cloud.vision.v1.ImageAnnotationContext") 2375 proto.RegisterType((*AnnotateImageResponse)(nil), "google.cloud.vision.v1.AnnotateImageResponse") 2376 proto.RegisterType((*AnnotateFileResponse)(nil), "google.cloud.vision.v1.AnnotateFileResponse") 2377 proto.RegisterType((*BatchAnnotateImagesRequest)(nil), "google.cloud.vision.v1.BatchAnnotateImagesRequest") 2378 proto.RegisterType((*BatchAnnotateImagesResponse)(nil), "google.cloud.vision.v1.BatchAnnotateImagesResponse") 2379 proto.RegisterType((*AsyncAnnotateFileRequest)(nil), "google.cloud.vision.v1.AsyncAnnotateFileRequest") 2380 proto.RegisterType((*AsyncAnnotateFileResponse)(nil), "google.cloud.vision.v1.AsyncAnnotateFileResponse") 2381 proto.RegisterType((*AsyncBatchAnnotateFilesRequest)(nil), "google.cloud.vision.v1.AsyncBatchAnnotateFilesRequest") 2382 proto.RegisterType((*AsyncBatchAnnotateFilesResponse)(nil), "google.cloud.vision.v1.AsyncBatchAnnotateFilesResponse") 2383 proto.RegisterType((*InputConfig)(nil), "google.cloud.vision.v1.InputConfig") 2384 proto.RegisterType((*OutputConfig)(nil), "google.cloud.vision.v1.OutputConfig") 2385 proto.RegisterType((*GcsSource)(nil), "google.cloud.vision.v1.GcsSource") 2386 proto.RegisterType((*GcsDestination)(nil), "google.cloud.vision.v1.GcsDestination") 2387 proto.RegisterType((*OperationMetadata)(nil), "google.cloud.vision.v1.OperationMetadata") 2388 proto.RegisterEnum("google.cloud.vision.v1.Likelihood", Likelihood_name, Likelihood_value) 2389 proto.RegisterEnum("google.cloud.vision.v1.Feature_Type", Feature_Type_name, Feature_Type_value) 2390 proto.RegisterEnum("google.cloud.vision.v1.FaceAnnotation_Landmark_Type", FaceAnnotation_Landmark_Type_name, FaceAnnotation_Landmark_Type_value) 2391 proto.RegisterEnum("google.cloud.vision.v1.OperationMetadata_State", OperationMetadata_State_name, OperationMetadata_State_value) 2392} 2393 2394// Reference imports to suppress errors if they are not otherwise used. 2395var _ context.Context 2396var _ grpc.ClientConn 2397 2398// This is a compile-time assertion to ensure that this generated file 2399// is compatible with the grpc package it is being compiled against. 2400const _ = grpc.SupportPackageIsVersion4 2401 2402// ImageAnnotatorClient is the client API for ImageAnnotator service. 2403// 2404// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 2405type ImageAnnotatorClient interface { 2406 // Run image detection and annotation for a batch of images. 2407 BatchAnnotateImages(ctx context.Context, in *BatchAnnotateImagesRequest, opts ...grpc.CallOption) (*BatchAnnotateImagesResponse, error) 2408 // Run asynchronous image detection and annotation for a list of generic 2409 // files, such as PDF files, which may contain multiple pages and multiple 2410 // images per page. Progress and results can be retrieved through the 2411 // `google.longrunning.Operations` interface. 2412 // `Operation.metadata` contains `OperationMetadata` (metadata). 2413 // `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results). 2414 AsyncBatchAnnotateFiles(ctx context.Context, in *AsyncBatchAnnotateFilesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) 2415} 2416 2417type imageAnnotatorClient struct { 2418 cc *grpc.ClientConn 2419} 2420 2421func NewImageAnnotatorClient(cc *grpc.ClientConn) ImageAnnotatorClient { 2422 return &imageAnnotatorClient{cc} 2423} 2424 2425func (c *imageAnnotatorClient) BatchAnnotateImages(ctx context.Context, in *BatchAnnotateImagesRequest, opts ...grpc.CallOption) (*BatchAnnotateImagesResponse, error) { 2426 out := new(BatchAnnotateImagesResponse) 2427 err := c.cc.Invoke(ctx, "/google.cloud.vision.v1.ImageAnnotator/BatchAnnotateImages", in, out, opts...) 2428 if err != nil { 2429 return nil, err 2430 } 2431 return out, nil 2432} 2433 2434func (c *imageAnnotatorClient) AsyncBatchAnnotateFiles(ctx context.Context, in *AsyncBatchAnnotateFilesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) { 2435 out := new(longrunning.Operation) 2436 err := c.cc.Invoke(ctx, "/google.cloud.vision.v1.ImageAnnotator/AsyncBatchAnnotateFiles", in, out, opts...) 2437 if err != nil { 2438 return nil, err 2439 } 2440 return out, nil 2441} 2442 2443// ImageAnnotatorServer is the server API for ImageAnnotator service. 2444type ImageAnnotatorServer interface { 2445 // Run image detection and annotation for a batch of images. 2446 BatchAnnotateImages(context.Context, *BatchAnnotateImagesRequest) (*BatchAnnotateImagesResponse, error) 2447 // Run asynchronous image detection and annotation for a list of generic 2448 // files, such as PDF files, which may contain multiple pages and multiple 2449 // images per page. Progress and results can be retrieved through the 2450 // `google.longrunning.Operations` interface. 2451 // `Operation.metadata` contains `OperationMetadata` (metadata). 2452 // `Operation.response` contains `AsyncBatchAnnotateFilesResponse` (results). 2453 AsyncBatchAnnotateFiles(context.Context, *AsyncBatchAnnotateFilesRequest) (*longrunning.Operation, error) 2454} 2455 2456func RegisterImageAnnotatorServer(s *grpc.Server, srv ImageAnnotatorServer) { 2457 s.RegisterService(&_ImageAnnotator_serviceDesc, srv) 2458} 2459 2460func _ImageAnnotator_BatchAnnotateImages_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2461 in := new(BatchAnnotateImagesRequest) 2462 if err := dec(in); err != nil { 2463 return nil, err 2464 } 2465 if interceptor == nil { 2466 return srv.(ImageAnnotatorServer).BatchAnnotateImages(ctx, in) 2467 } 2468 info := &grpc.UnaryServerInfo{ 2469 Server: srv, 2470 FullMethod: "/google.cloud.vision.v1.ImageAnnotator/BatchAnnotateImages", 2471 } 2472 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2473 return srv.(ImageAnnotatorServer).BatchAnnotateImages(ctx, req.(*BatchAnnotateImagesRequest)) 2474 } 2475 return interceptor(ctx, in, info, handler) 2476} 2477 2478func _ImageAnnotator_AsyncBatchAnnotateFiles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2479 in := new(AsyncBatchAnnotateFilesRequest) 2480 if err := dec(in); err != nil { 2481 return nil, err 2482 } 2483 if interceptor == nil { 2484 return srv.(ImageAnnotatorServer).AsyncBatchAnnotateFiles(ctx, in) 2485 } 2486 info := &grpc.UnaryServerInfo{ 2487 Server: srv, 2488 FullMethod: "/google.cloud.vision.v1.ImageAnnotator/AsyncBatchAnnotateFiles", 2489 } 2490 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2491 return srv.(ImageAnnotatorServer).AsyncBatchAnnotateFiles(ctx, req.(*AsyncBatchAnnotateFilesRequest)) 2492 } 2493 return interceptor(ctx, in, info, handler) 2494} 2495 2496var _ImageAnnotator_serviceDesc = grpc.ServiceDesc{ 2497 ServiceName: "google.cloud.vision.v1.ImageAnnotator", 2498 HandlerType: (*ImageAnnotatorServer)(nil), 2499 Methods: []grpc.MethodDesc{ 2500 { 2501 MethodName: "BatchAnnotateImages", 2502 Handler: _ImageAnnotator_BatchAnnotateImages_Handler, 2503 }, 2504 { 2505 MethodName: "AsyncBatchAnnotateFiles", 2506 Handler: _ImageAnnotator_AsyncBatchAnnotateFiles_Handler, 2507 }, 2508 }, 2509 Streams: []grpc.StreamDesc{}, 2510 Metadata: "google/cloud/vision/v1/image_annotator.proto", 2511} 2512 2513func init() { 2514 proto.RegisterFile("google/cloud/vision/v1/image_annotator.proto", fileDescriptor_image_annotator_f9154282c1c30734) 2515} 2516 2517var fileDescriptor_image_annotator_f9154282c1c30734 = []byte{ 2518 // 2892 bytes of a gzipped FileDescriptorProto 2519 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0xcd, 0x73, 0xe3, 0x48, 2520 0x15, 0x5f, 0x3b, 0x4e, 0x62, 0x3f, 0x3b, 0x89, 0xd2, 0xf9, 0x18, 0x4f, 0xe6, 0x2b, 0xa3, 0x65, 2521 0xd9, 0xd4, 0x30, 0x24, 0x4c, 0x76, 0x99, 0x5a, 0x66, 0xa6, 0x00, 0xc7, 0x51, 0x12, 0xd7, 0x38, 2522 0xb6, 0xb7, 0xed, 0xcc, 0x6c, 0x60, 0x0b, 0x95, 0x22, 0xb7, 0x35, 0xda, 0x95, 0x25, 0x21, 0xc9, 2523 0x33, 0xc9, 0x52, 0xc5, 0x81, 0x2a, 0xce, 0x1c, 0x38, 0x71, 0xe1, 0xc0, 0x01, 0x0e, 0x9c, 0xa8, 2524 0x82, 0x3b, 0x57, 0x0e, 0x1c, 0xa8, 0xfd, 0x17, 0xf8, 0x0f, 0xa8, 0xa2, 0x38, 0x52, 0xfd, 0x21, 2525 0xb9, 0xe5, 0x44, 0x99, 0x64, 0xd9, 0x03, 0xa7, 0xb8, 0xdf, 0x7b, 0xbf, 0xdf, 0xeb, 0x7e, 0xdd, 2526 0xaf, 0xfb, 0x75, 0x2b, 0xf0, 0xd0, 0xf2, 0x3c, 0xcb, 0x21, 0x5b, 0xa6, 0xe3, 0x8d, 0xfa, 0x5b, 2527 0xaf, 0xed, 0xd0, 0xf6, 0xdc, 0xad, 0xd7, 0x8f, 0xb6, 0xec, 0xa1, 0x61, 0x11, 0xdd, 0x70, 0x5d, 2528 0x2f, 0x32, 0x22, 0x2f, 0xd8, 0xf4, 0x03, 0x2f, 0xf2, 0xd0, 0x2a, 0xb7, 0xde, 0x64, 0xd6, 0x9b, 2529 0xdc, 0x7a, 0xf3, 0xf5, 0xa3, 0xb5, 0xdb, 0x82, 0xc5, 0xf0, 0xed, 0x2d, 0x81, 0xb1, 0x3d, 0x37, 2530 0xe4, 0xa8, 0xb5, 0xf7, 0x32, 0x7c, 0x58, 0xc4, 0x1b, 0x92, 0x28, 0x38, 0x13, 0x66, 0x59, 0x5d, 2531 0x89, 0xc8, 0x69, 0xa4, 0x8f, 0x59, 0x85, 0xf5, 0x83, 0x0c, 0xeb, 0x37, 0xe4, 0x44, 0xef, 0x93, 2532 0x88, 0x98, 0x92, 0xed, 0xbb, 0xc2, 0xd6, 0xf1, 0x5c, 0x2b, 0x18, 0xb9, 0xae, 0xed, 0x5a, 0x5b, 2533 0x9e, 0x4f, 0x82, 0x54, 0x2f, 0xef, 0x09, 0x23, 0xd6, 0x3a, 0x19, 0x0d, 0xb6, 0x22, 0x7b, 0x48, 2534 0xc2, 0xc8, 0x18, 0xfa, 0xc2, 0xe0, 0x86, 0x30, 0x08, 0x7c, 0x73, 0x2b, 0x8c, 0x8c, 0x68, 0x14, 2535 0x4e, 0x28, 0xa2, 0x33, 0x9f, 0x6c, 0x99, 0x9e, 0x13, 0x87, 0x6b, 0xad, 0x2a, 0x2b, 0x1c, 0x23, 2536 0x72, 0x5c, 0x8b, 0x6b, 0xd4, 0x7f, 0xe5, 0x61, 0x76, 0x8f, 0x18, 0xd1, 0x28, 0x20, 0xe8, 0x23, 2537 0x28, 0x50, 0x83, 0x6a, 0x6e, 0x3d, 0xb7, 0x31, 0xbf, 0xfd, 0x8d, 0xcd, 0x8b, 0x63, 0xbc, 0x29, 2538 0xcc, 0x37, 0x7b, 0x67, 0x3e, 0xc1, 0x0c, 0x81, 0xee, 0x41, 0x79, 0x68, 0x9c, 0xea, 0x01, 0x09, 2539 0x47, 0x4e, 0x14, 0x56, 0xf3, 0xeb, 0xb9, 0x8d, 0x69, 0x0c, 0x43, 0xe3, 0x14, 0x73, 0x09, 0x5a, 2540 0x86, 0xe9, 0xa1, 0xd7, 0x27, 0x4e, 0x75, 0x6a, 0x3d, 0xb7, 0x51, 0xc2, 0xbc, 0xa1, 0xfe, 0x3b, 2541 0x07, 0x05, 0xca, 0x82, 0x96, 0x41, 0xe9, 0x1d, 0x77, 0x34, 0xfd, 0xa8, 0xd5, 0xed, 0x68, 0xf5, 2542 0xc6, 0x5e, 0x43, 0xdb, 0x55, 0xde, 0x41, 0x08, 0xe6, 0xf7, 0x6a, 0x75, 0x4d, 0xdf, 0xd5, 0x7a, 2543 0x5a, 0xbd, 0xd7, 0x68, 0xb7, 0x94, 0x1c, 0x5a, 0x05, 0xd4, 0xac, 0xb5, 0x76, 0x0f, 0x6b, 0xf8, 2544 0xb9, 0x24, 0xcf, 0x53, 0xdb, 0x66, 0x7b, 0xbf, 0x2d, 0xc9, 0xa6, 0xd0, 0x12, 0x2c, 0x34, 0x6b, 2545 0x3b, 0x5a, 0x53, 0x12, 0x16, 0xa8, 0x61, 0x4f, 0xfb, 0xa4, 0x27, 0xc9, 0xa6, 0xd1, 0x2d, 0xb8, 2546 0xb1, 0xdb, 0xae, 0x1f, 0x1d, 0x6a, 0xad, 0x9e, 0x3e, 0xa1, 0x2c, 0xa3, 0x9b, 0xb0, 0xd2, 0xad, 2547 0xed, 0x69, 0x7a, 0x57, 0xab, 0xe1, 0xfa, 0x81, 0xa4, 0x9a, 0xa1, 0xdd, 0x6e, 0x1c, 0xd6, 0xf6, 2548 0x35, 0xbd, 0x83, 0xdb, 0x1d, 0x0d, 0xf7, 0x1a, 0x5a, 0x57, 0x99, 0x45, 0xf3, 0x00, 0x75, 0xdc, 2549 0xee, 0xe8, 0x07, 0x8d, 0x56, 0xaf, 0xab, 0x94, 0xd0, 0x22, 0xcc, 0xbd, 0xd4, 0x76, 0x24, 0x20, 2550 0xa8, 0x2d, 0x28, 0x37, 0xe8, 0xba, 0xee, 0x7a, 0xa3, 0xc0, 0x24, 0x48, 0x85, 0x39, 0xcb, 0x0c, 2551 0x75, 0xbe, 0xd4, 0x47, 0x81, 0xcd, 0x66, 0xa0, 0x84, 0xcb, 0x96, 0x19, 0x32, 0xb3, 0xa3, 0xc0, 2552 0x46, 0xb7, 0xa0, 0x34, 0xd6, 0xe7, 0x99, 0xbe, 0x68, 0x0b, 0xa5, 0xfa, 0x13, 0x98, 0x66, 0x86, 2553 0xa8, 0x0a, 0xb3, 0xa6, 0xe7, 0x46, 0xc4, 0x8d, 0x18, 0x47, 0x05, 0xc7, 0x4d, 0xf4, 0x14, 0x66, 2554 0x42, 0xe6, 0x8d, 0x81, 0xcb, 0xdb, 0xef, 0x66, 0x4d, 0xaf, 0xd4, 0x31, 0x2c, 0x20, 0xea, 0x3f, 2555 0x16, 0x60, 0x7e, 0xcf, 0x30, 0x49, 0x2d, 0x59, 0xfc, 0xa8, 0x01, 0x73, 0x27, 0xde, 0xc8, 0xed, 2556 0xdb, 0xae, 0xa5, 0xfb, 0x9e, 0x73, 0xc6, 0xfc, 0x95, 0xb3, 0x57, 0xcd, 0x8e, 0x30, 0xee, 0x78, 2557 0xce, 0x19, 0xae, 0x9c, 0x48, 0x2d, 0xd4, 0x02, 0x65, 0xd0, 0xd7, 0xd3, 0x6c, 0xf9, 0x6b, 0xb0, 2558 0xcd, 0x0f, 0xfa, 0x72, 0x1b, 0x1d, 0x42, 0xc9, 0x31, 0xdc, 0xfe, 0xd0, 0x08, 0x3e, 0x0f, 0xab, 2559 0x53, 0xeb, 0x53, 0x1b, 0xe5, 0xed, 0xad, 0xcc, 0xc5, 0x9c, 0x1a, 0xd5, 0x66, 0x53, 0xe0, 0xf0, 2560 0x98, 0x01, 0xdd, 0x01, 0x08, 0x3c, 0xc7, 0xd1, 0x0d, 0xd7, 0x72, 0x48, 0xb5, 0xb0, 0x9e, 0xdb, 2561 0xc8, 0xe3, 0x12, 0x95, 0xd4, 0xa8, 0x80, 0x4e, 0x8c, 0x6f, 0xb8, 0x42, 0x3b, 0xcd, 0xb4, 0x45, 2562 0xdf, 0x70, 0xb9, 0xf2, 0x0e, 0x40, 0x64, 0x3b, 0x91, 0xd0, 0xce, 0x70, 0x2c, 0x95, 0x70, 0xf5, 2563 0x23, 0x58, 0x4e, 0xb6, 0x08, 0xdd, 0xf4, 0xdc, 0x81, 0xdd, 0x27, 0xae, 0x49, 0xaa, 0xb3, 0xcc, 2564 0x70, 0x29, 0xd1, 0xd5, 0x13, 0x15, 0xfa, 0x2e, 0xac, 0xc6, 0x5d, 0xa3, 0xc1, 0x92, 0x40, 0x45, 2565 0x06, 0x5a, 0x91, 0xb4, 0x12, 0xac, 0x01, 0xf3, 0x9f, 0x79, 0x67, 0xba, 0x63, 0x7f, 0x4e, 0x1c, 2566 0xfb, 0x95, 0xe7, 0xf5, 0xab, 0x25, 0x96, 0xe5, 0x6a, 0x56, 0x60, 0x9a, 0x89, 0x25, 0x9e, 0xfb, 2567 0xcc, 0x3b, 0x1b, 0x37, 0x51, 0x1b, 0x16, 0x43, 0x2f, 0x08, 0xbc, 0x37, 0x32, 0x1b, 0x5c, 0x99, 2568 0x4d, 0xe1, 0x60, 0x89, 0xf0, 0x10, 0x14, 0xc3, 0xb5, 0x48, 0x20, 0xf3, 0x95, 0xaf, 0xcc, 0xb7, 2569 0xc0, 0xb0, 0x12, 0x5d, 0x17, 0x96, 0xc2, 0x51, 0xe0, 0x07, 0x76, 0x48, 0x64, 0xc6, 0xca, 0x95, 2570 0x19, 0x51, 0x0c, 0x97, 0x48, 0x3f, 0x85, 0xea, 0xc8, 0xed, 0x93, 0x40, 0x27, 0xa7, 0xbe, 0x17, 2571 0x92, 0xbe, 0xcc, 0x3c, 0x77, 0x65, 0xe6, 0x55, 0xc6, 0xa1, 0x71, 0x0a, 0x89, 0xfd, 0x63, 0x40, 2572 0x27, 0xce, 0x28, 0x08, 0xd2, 0xbc, 0xf3, 0x57, 0xe6, 0x5d, 0x14, 0xe8, 0x74, 0x14, 0x5e, 0x11, 2573 0xa3, 0xff, 0x86, 0x18, 0xa9, 0xb8, 0x2e, 0x5c, 0x3d, 0x0a, 0x31, 0x7c, 0x2c, 0x5b, 0xfb, 0xdb, 2574 0x2c, 0x14, 0xe3, 0x14, 0x41, 0x07, 0xe2, 0xb8, 0x98, 0x62, 0x94, 0x1f, 0x5e, 0x33, 0xc3, 0xe4, 2575 0xe3, 0xe3, 0x19, 0x14, 0x7d, 0x2f, 0xb4, 0xa9, 0x9e, 0xe5, 0x57, 0x79, 0x7b, 0x3d, 0x8b, 0xad, 2576 0x23, 0xec, 0x70, 0x82, 0x50, 0xff, 0x3c, 0x33, 0x3e, 0x45, 0x8e, 0x5a, 0xcf, 0x5b, 0xed, 0x97, 2577 0x2d, 0x3d, 0x3e, 0x23, 0x94, 0x77, 0x50, 0x05, 0x8a, 0x4d, 0x6d, 0xaf, 0xa7, 0x6b, 0xc7, 0x9a, 2578 0x92, 0x43, 0x73, 0x50, 0xc2, 0x8d, 0xfd, 0x03, 0xde, 0xcc, 0xa3, 0x2a, 0x2c, 0x33, 0x65, 0x7b, 2579 0x4f, 0x8f, 0x8d, 0x76, 0x70, 0xfb, 0xa5, 0x32, 0x45, 0xb7, 0x7d, 0x6e, 0x38, 0xa9, 0x2a, 0x50, 2580 0x55, 0x0c, 0x4a, 0xb8, 0x98, 0x6a, 0x1a, 0xad, 0xc1, 0x6a, 0x82, 0x4a, 0xeb, 0x66, 0x28, 0xec, 2581 0xb0, 0xb1, 0xdb, 0x69, 0x37, 0x5a, 0x3d, 0x7d, 0x47, 0xeb, 0xbd, 0xd4, 0xb4, 0x16, 0xd5, 0xd2, 2582 0x23, 0xa3, 0x02, 0xc5, 0x56, 0xbb, 0xab, 0xe9, 0xbd, 0x46, 0x47, 0x29, 0xd2, 0x3e, 0x1e, 0x75, 2583 0x3a, 0x1a, 0xd6, 0x9b, 0x8d, 0x8e, 0x52, 0xa2, 0xcd, 0x66, 0xfb, 0xa5, 0x68, 0x02, 0x3d, 0x5e, 2584 0x0e, 0xdb, 0x47, 0xbd, 0x03, 0xd6, 0x2b, 0xa5, 0x8c, 0x16, 0xa0, 0xcc, 0xdb, 0xcc, 0x9f, 0x52, 2585 0x41, 0x0a, 0x54, 0xb8, 0xa0, 0xae, 0xb5, 0x7a, 0x1a, 0x56, 0xe6, 0xd0, 0x0a, 0x2c, 0x32, 0xfa, 2586 0x9d, 0x76, 0xaf, 0xd7, 0x3e, 0x14, 0x86, 0xf3, 0x34, 0x5e, 0xb2, 0x98, 0xf1, 0x2d, 0xd0, 0x13, 2587 0x56, 0x96, 0x0a, 0x12, 0x25, 0x19, 0xb5, 0x76, 0xac, 0xe9, 0xbd, 0x76, 0x47, 0xdf, 0x69, 0x1f, 2588 0xb5, 0x76, 0x6b, 0xf8, 0x58, 0x59, 0x4c, 0xa9, 0xf8, 0xa8, 0xeb, 0x6d, 0xdc, 0xd2, 0xb0, 0x82, 2589 0xd0, 0x6d, 0xa8, 0x26, 0x2a, 0xc1, 0x98, 0x00, 0x97, 0x92, 0xf0, 0x53, 0x2d, 0xfb, 0x21, 0x70, 2590 0xcb, 0xe3, 0x40, 0x9e, 0x73, 0xb7, 0x92, 0xd6, 0xa5, 0xfc, 0xad, 0xa2, 0x3b, 0x70, 0x73, 0xac, 2591 0x9b, 0x74, 0x78, 0x63, 0x3c, 0xab, 0x93, 0x1e, 0xab, 0xe8, 0x1e, 0xdc, 0x92, 0xe7, 0x59, 0xe7, 2592 0x53, 0x10, 0xcf, 0x98, 0x72, 0x13, 0xad, 0xc3, 0xed, 0xd4, 0x94, 0x4e, 0x5a, 0xac, 0xd1, 0x80, 2593 0x72, 0x8a, 0x1a, 0xd6, 0x7b, 0xb8, 0xb6, 0x4f, 0x0f, 0xfb, 0x5b, 0x34, 0xfa, 0x02, 0x27, 0x89, 2594 0x6f, 0xb3, 0x8a, 0x25, 0x1e, 0x7b, 0xe7, 0xa8, 0xd3, 0x68, 0x2a, 0x77, 0x68, 0xc5, 0x32, 0xee, 2595 0x1e, 0x17, 0xde, 0xa5, 0xf8, 0xbd, 0x36, 0xd6, 0x0e, 0xb4, 0xda, 0xae, 0xbe, 0xcf, 0x0a, 0x9a, 2596 0x66, 0x4d, 0xb9, 0x47, 0xcb, 0x8a, 0xfa, 0x41, 0xa3, 0xa5, 0xef, 0xb7, 0x6a, 0xbd, 0x03, 0x4a, 2597 0xb9, 0x4e, 0xfd, 0x33, 0x11, 0xe3, 0xdd, 0x6f, 0xb7, 0xa8, 0xf4, 0x3e, 0xc5, 0x33, 0x29, 0x67, 2598 0x16, 0x62, 0x55, 0x7d, 0x06, 0x95, 0xa6, 0x67, 0xb2, 0xa4, 0x6c, 0xb8, 0x03, 0x0f, 0x3d, 0x84, 2599 0x59, 0xc7, 0x88, 0x74, 0xc7, 0xb5, 0xc4, 0x51, 0xbe, 0x14, 0xe7, 0x20, 0xcd, 0xd1, 0xcd, 0xa6, 2600 0x11, 0x35, 0x5d, 0x0b, 0xcf, 0x38, 0xec, 0xaf, 0xfa, 0x12, 0x8a, 0x9d, 0x80, 0x96, 0xae, 0xd1, 2601 0x19, 0x42, 0x50, 0x70, 0x8d, 0x21, 0x11, 0x55, 0x0b, 0xfb, 0x4d, 0x0b, 0xbe, 0xd7, 0x86, 0x33, 2602 0x22, 0xa2, 0x54, 0xe1, 0x0d, 0x74, 0x1f, 0x2a, 0x23, 0xdb, 0x8d, 0x1e, 0x7f, 0xa8, 0x73, 0x25, 2603 0xdd, 0x3a, 0x0a, 0xb8, 0xcc, 0x65, 0x2f, 0xa8, 0x48, 0xfd, 0xe5, 0x14, 0x28, 0x9a, 0x1b, 0xd9, 2604 0xd1, 0x99, 0x54, 0x6c, 0x28, 0x30, 0x35, 0xb4, 0xfb, 0xc2, 0x01, 0xfd, 0x89, 0x56, 0x61, 0xc6, 2605 0xf1, 0x4c, 0xc3, 0x89, 0x1d, 0x88, 0x16, 0x5a, 0x87, 0x72, 0x9f, 0x84, 0x66, 0x60, 0xfb, 0x6c, 2606 0x37, 0xe1, 0xe5, 0xa6, 0x2c, 0xa2, 0x3d, 0x0b, 0x4d, 0x2f, 0x88, 0x4f, 0x72, 0xde, 0x40, 0x77, 2607 0x01, 0xa4, 0xa3, 0x94, 0x1f, 0xe3, 0x92, 0x84, 0xea, 0x23, 0xcf, 0xb7, 0x4d, 0xc3, 0xb1, 0xa3, 2608 0x33, 0x71, 0x90, 0x4b, 0x92, 0xf3, 0xe5, 0xd0, 0xec, 0x57, 0x2e, 0x87, 0x76, 0xa0, 0xe4, 0x88, 2609 0x89, 0x09, 0xab, 0x45, 0x56, 0xbe, 0x64, 0xd2, 0xc8, 0x33, 0x88, 0xc7, 0x30, 0xf4, 0x43, 0x00, 2610 0x9f, 0x4f, 0x8f, 0x4d, 0xc2, 0x6a, 0x89, 0x91, 0x64, 0xef, 0xa9, 0x62, 0x22, 0xb1, 0x84, 0x51, 2611 0xff, 0x9a, 0x87, 0xe5, 0xae, 0x31, 0x20, 0x5d, 0x62, 0x04, 0xe6, 0x2b, 0x69, 0x2e, 0x3e, 0x82, 2612 0x69, 0xa3, 0x3f, 0x72, 0x22, 0x71, 0x4d, 0xb8, 0xca, 0x51, 0xc2, 0x01, 0x14, 0x19, 0xfa, 0x9e, 2613 0x37, 0x60, 0x53, 0x76, 0x45, 0x24, 0x03, 0xa0, 0x67, 0x30, 0x3b, 0x24, 0x7d, 0x1a, 0x6b, 0x71, 2614 0xda, 0x5c, 0x05, 0x1b, 0x43, 0xd0, 0xf7, 0xa1, 0xf8, 0xda, 0xf6, 0x1c, 0x36, 0xb3, 0x85, 0x2b, 2615 0xc3, 0x13, 0x0c, 0x7a, 0x0c, 0x85, 0xc0, 0x30, 0xcf, 0xae, 0x51, 0x31, 0x31, 0x7b, 0xf5, 0x0d, 2616 0x94, 0x69, 0xd6, 0x78, 0xae, 0x85, 0x89, 0x19, 0xa1, 0x0f, 0xa0, 0x3c, 0xb4, 0x5d, 0xfd, 0x0a, 2617 0x49, 0x56, 0x1a, 0xda, 0x2e, 0xff, 0xc9, 0x40, 0xc6, 0x69, 0x02, 0xca, 0x5f, 0x06, 0x32, 0x4e, 2618 0xf9, 0x4f, 0x35, 0x80, 0x52, 0x9d, 0xde, 0xfe, 0x58, 0x5e, 0x6f, 0xc0, 0x34, 0xbb, 0x0a, 0x0a, 2619 0x87, 0x28, 0x85, 0x65, 0x66, 0x98, 0x1b, 0x8c, 0x33, 0x23, 0x2f, 0x67, 0xc6, 0x7b, 0x30, 0xef, 2620 0xdb, 0xa7, 0xc4, 0xd1, 0x07, 0x81, 0x61, 0x26, 0x49, 0x95, 0xc7, 0x73, 0x4c, 0xba, 0x27, 0x84, 2621 0xea, 0x11, 0x54, 0x77, 0xbd, 0xa1, 0xed, 0x1a, 0x6e, 0xc4, 0x48, 0x43, 0x69, 0xc9, 0x7c, 0x0f, 2622 0x66, 0x98, 0x87, 0xb0, 0x9a, 0x63, 0x2b, 0xf1, 0x7e, 0x56, 0x08, 0x93, 0x5e, 0x63, 0x01, 0x50, 2623 0x1d, 0x58, 0x60, 0x17, 0x92, 0x4e, 0xb2, 0x32, 0xd1, 0x31, 0x2c, 0xf4, 0x85, 0x27, 0x3d, 0xa1, 2624 0xa5, 0x43, 0xfb, 0x4e, 0x16, 0x6d, 0x56, 0xc7, 0xf0, 0x7c, 0x3f, 0xa5, 0x51, 0x7f, 0x9f, 0x83, 2625 0x62, 0x3d, 0xf0, 0xfc, 0x03, 0xdb, 0x8d, 0xbe, 0xce, 0x1b, 0x4e, 0x7a, 0x77, 0xc9, 0x9f, 0xdb, 2626 0x5d, 0xb6, 0x60, 0xc9, 0x1e, 0xfa, 0x5e, 0x10, 0x19, 0xae, 0x49, 0x26, 0x03, 0x8d, 0xc6, 0xaa, 2627 0x24, 0xda, 0x2f, 0x60, 0x29, 0xee, 0xa7, 0x1c, 0xe8, 0x1f, 0x00, 0x98, 0x81, 0xe7, 0xeb, 0xaf, 2628 0xa8, 0x5c, 0x04, 0x3b, 0x33, 0xed, 0x63, 0x02, 0x5c, 0x32, 0x63, 0x2a, 0xf5, 0x31, 0x2c, 0x24, 2629 0xbc, 0x1d, 0x23, 0x30, 0x86, 0x21, 0x7a, 0x17, 0xe6, 0x8c, 0xd0, 0x27, 0x66, 0xa4, 0xb3, 0x67, 2630 0x0a, 0x4e, 0x9b, 0xc7, 0x15, 0x2e, 0xc4, 0x4c, 0xa6, 0xee, 0x02, 0x7a, 0x49, 0x4e, 0x76, 0xe3, 2631 0xfb, 0x8a, 0x80, 0x6e, 0xc2, 0x92, 0xed, 0x9a, 0xce, 0xa8, 0x4f, 0x74, 0x8b, 0x78, 0xa9, 0xe7, 2632 0x81, 0x22, 0x5e, 0x14, 0xaa, 0x7d, 0xe2, 0x89, 0x57, 0x02, 0xf5, 0x4f, 0x79, 0xa8, 0xb0, 0xd9, 2633 0xae, 0xd3, 0x4b, 0xeb, 0x69, 0x84, 0xf6, 0x61, 0x8e, 0xad, 0x7c, 0xcf, 0xb5, 0xf4, 0x80, 0x98, 2634 0x91, 0x98, 0x82, 0xcc, 0xbb, 0xab, 0x94, 0x6e, 0xb8, 0xec, 0x48, 0xb9, 0xf7, 0x1e, 0xcc, 0x3b, 2635 0x86, 0x6b, 0x8d, 0xe8, 0x05, 0x9a, 0x07, 0x27, 0xbf, 0x3e, 0xb5, 0x51, 0xc2, 0x73, 0xb1, 0x94, 2636 0x8d, 0x18, 0x75, 0x61, 0x71, 0x1c, 0x3f, 0xdd, 0x67, 0xa3, 0x10, 0x15, 0xe9, 0xfb, 0x6f, 0x0b, 2637 0xa3, 0x88, 0x17, 0x5e, 0x30, 0x27, 0x02, 0xf8, 0x29, 0x2c, 0xa7, 0xde, 0x82, 0x62, 0xde, 0x19, 2638 0xc6, 0xfb, 0x20, 0x8b, 0xf7, 0x7c, 0x3c, 0x31, 0x7a, 0x73, 0x4e, 0xa6, 0x7e, 0x99, 0x83, 0x65, 2639 0xb1, 0x02, 0x08, 0x8b, 0x1d, 0x26, 0x3f, 0x1d, 0x91, 0x90, 0x6e, 0x37, 0xd3, 0xec, 0x7d, 0x40, 2640 0xc4, 0xec, 0xce, 0xa5, 0xf7, 0x7d, 0xcc, 0x6d, 0xd1, 0x53, 0x28, 0x0e, 0xf8, 0xf3, 0x0e, 0x8f, 2641 0x50, 0x79, 0xfb, 0xde, 0x5b, 0x9e, 0x81, 0x70, 0x02, 0xa0, 0x09, 0xc3, 0x9f, 0x28, 0x4c, 0x3e, 2642 0x7d, 0x6c, 0xfd, 0x5e, 0x92, 0x30, 0xf2, 0x54, 0xe3, 0x8a, 0x2d, 0xb5, 0xd4, 0xe7, 0xb0, 0xca, 2643 0xb4, 0xe3, 0xb5, 0x1d, 0x2f, 0x09, 0x05, 0xa6, 0xc6, 0x2f, 0x24, 0xf4, 0x27, 0xba, 0x07, 0x65, 2644 0x9f, 0x7a, 0x75, 0x47, 0xc3, 0x13, 0x12, 0xc4, 0x8f, 0x4f, 0x54, 0xd4, 0x62, 0x12, 0xf5, 0x57, 2645 0x45, 0x58, 0x99, 0x08, 0x51, 0xe8, 0x7b, 0x6e, 0x48, 0xd0, 0xc7, 0xa0, 0x0c, 0x0c, 0x93, 0x48, 2646 0x8f, 0x7a, 0x71, 0xd6, 0x7c, 0xf3, 0x6a, 0xd7, 0x19, 0xbc, 0x30, 0x48, 0xb5, 0x43, 0xf4, 0x63, 2647 0x58, 0x8e, 0x6f, 0xe0, 0x29, 0x5a, 0x1e, 0xcd, 0x8d, 0x2c, 0xda, 0xc9, 0x92, 0x07, 0x2f, 0xc5, 2648 0x2c, 0x32, 0x79, 0x17, 0x14, 0xc7, 0xb3, 0xbc, 0x14, 0xf1, 0xd4, 0x35, 0x89, 0x17, 0x28, 0x83, 2649 0x4c, 0x7a, 0x04, 0x8b, 0x8e, 0x71, 0x42, 0x9c, 0x14, 0x6b, 0xe1, 0x9a, 0xac, 0x0a, 0xa3, 0x98, 2650 0xe8, 0xeb, 0xc4, 0x83, 0x69, 0x58, 0x9d, 0xbe, 0x6e, 0x5f, 0x29, 0x83, 0x4c, 0xfa, 0x09, 0x2c, 2651 0x0f, 0x46, 0x8e, 0xa3, 0x4f, 0x30, 0xb3, 0xcb, 0xfd, 0x25, 0x93, 0xd6, 0x4b, 0xd1, 0x60, 0x44, 2652 0x39, 0xd2, 0x32, 0x74, 0x02, 0xab, 0xa1, 0x31, 0x20, 0x7a, 0xc8, 0xea, 0x1d, 0x99, 0x9b, 0xe7, 2653 0xe9, 0xc3, 0x2c, 0xee, 0x8b, 0x8a, 0x24, 0xbc, 0x1c, 0x5e, 0x54, 0x3a, 0x59, 0x70, 0x8b, 0x27, 2654 0xc8, 0xb8, 0xce, 0x92, 0x1d, 0x15, 0x2f, 0xdf, 0x68, 0x26, 0xce, 0x41, 0x7c, 0xd3, 0x4e, 0x0b, 2655 0x24, 0x47, 0x3a, 0xac, 0x48, 0xfb, 0x98, 0xe4, 0xa2, 0xcc, 0x5c, 0x7c, 0xeb, 0xad, 0x7b, 0x99, 2656 0xbc, 0x10, 0xcd, 0x0b, 0x0e, 0x9a, 0x06, 0xcc, 0xa5, 0xf6, 0x34, 0xf6, 0x06, 0x72, 0x49, 0xaa, 2657 0xcb, 0x9b, 0x19, 0xae, 0xc8, 0xdb, 0x18, 0xad, 0x4f, 0x48, 0x10, 0x78, 0x01, 0x2b, 0xaf, 0xa4, 2658 0xfa, 0x24, 0xf0, 0xcd, 0xcd, 0x2e, 0x7b, 0xdd, 0xc6, 0xdc, 0x00, 0x1d, 0x88, 0xc7, 0xcd, 0xd3, 2659 0xa8, 0xba, 0xc2, 0x6c, 0x37, 0x2f, 0x0d, 0xd5, 0xb9, 0xbd, 0x03, 0xc7, 0x70, 0xf5, 0x8f, 0xd2, 2660 0xa6, 0xb9, 0x67, 0x3b, 0xe3, 0x0d, 0x61, 0x0f, 0x2a, 0xb6, 0xeb, 0x8f, 0x22, 0xfe, 0xae, 0x66, 2661 0xbd, 0xed, 0xbc, 0x69, 0x50, 0x5b, 0xf6, 0xca, 0x66, 0xe1, 0xb2, 0x3d, 0x6e, 0xa0, 0xe7, 0x50, 2662 0x0a, 0x04, 0x67, 0x9c, 0xfa, 0xdf, 0xce, 0x22, 0xb9, 0x70, 0x6b, 0xc2, 0x63, 0xbc, 0x3a, 0x80, 2663 0xb5, 0x1d, 0x23, 0x4a, 0x56, 0x12, 0x37, 0x0c, 0xe3, 0x7d, 0xfe, 0x00, 0x8a, 0x01, 0xff, 0x19, 2664 0xef, 0x5d, 0x0f, 0xaf, 0xe8, 0x89, 0x81, 0x70, 0x82, 0x56, 0x3f, 0x83, 0x5b, 0x17, 0xfa, 0x11, 2665 0xb1, 0x49, 0x8d, 0x29, 0xf7, 0x3f, 0x8e, 0xe9, 0x2f, 0x79, 0xa8, 0xd6, 0xc2, 0x33, 0xd7, 0x4c, 2666 0x4f, 0x03, 0x1f, 0xd2, 0xd7, 0x35, 0x0b, 0xff, 0x27, 0xa7, 0x19, 0xa5, 0xf2, 0x46, 0x91, 0x34, 2667 0xa0, 0xc2, 0xe5, 0x54, 0x6d, 0x66, 0x2c, 0x46, 0x54, 0xf1, 0xa4, 0x96, 0x3a, 0x80, 0x9b, 0x17, 2668 0x84, 0x4d, 0xcc, 0xd0, 0x39, 0x3f, 0xb9, 0xaf, 0xec, 0xc7, 0x85, 0xbb, 0xcc, 0x4f, 0x6a, 0x41, 2669 0x50, 0x67, 0xc9, 0xba, 0x6b, 0x9e, 0x5b, 0x77, 0x99, 0xf5, 0x77, 0xd6, 0x44, 0x4b, 0x6b, 0x2f, 2670 0x80, 0x7b, 0x99, 0xfe, 0xc4, 0xe8, 0xda, 0xe7, 0xd7, 0xdf, 0xa3, 0x6b, 0x78, 0x3c, 0xbf, 0x06, 2671 0x1d, 0x28, 0x4b, 0x4b, 0x87, 0xde, 0x99, 0x2d, 0x33, 0xd4, 0xc5, 0x57, 0x12, 0x1e, 0xba, 0xcc, 2672 0x9b, 0xca, 0xbe, 0x19, 0x8a, 0x6f, 0x24, 0x25, 0x2b, 0xfe, 0x89, 0x6e, 0x41, 0x69, 0x68, 0x0f, 2673 0x89, 0xce, 0x9e, 0x45, 0xc5, 0x37, 0x1a, 0x2a, 0xe8, 0x9d, 0xf9, 0x44, 0xfd, 0x39, 0x54, 0xe4, 2674 0x78, 0xa3, 0x36, 0x2c, 0x50, 0x77, 0x7d, 0x12, 0x46, 0xb6, 0xcb, 0x77, 0xe7, 0xdc, 0xe5, 0xa7, 2675 0xd8, 0xbe, 0x19, 0xee, 0x8e, 0xad, 0xf1, 0xbc, 0x95, 0x6a, 0xa3, 0x3b, 0x00, 0x27, 0x34, 0x7a, 2676 0x7a, 0x68, 0x7f, 0x41, 0x44, 0x19, 0x54, 0x62, 0x92, 0xae, 0xfd, 0x05, 0x51, 0xef, 0x40, 0x29, 2677 0xe9, 0xf4, 0xf9, 0x2a, 0x4a, 0x55, 0x61, 0x3e, 0xcd, 0x7f, 0x81, 0xcd, 0x1f, 0xf2, 0xb0, 0xd8, 2678 0x8e, 0x3f, 0x57, 0x1e, 0x92, 0xc8, 0xe8, 0x1b, 0x91, 0x81, 0x34, 0x98, 0x0e, 0x69, 0x98, 0xc5, 2679 0x83, 0x40, 0xe6, 0xa7, 0x96, 0x73, 0x48, 0xb6, 0xbd, 0x13, 0xcc, 0xd1, 0xe8, 0x29, 0x94, 0xcd, 2680 0x80, 0x18, 0x11, 0xd1, 0x23, 0x7b, 0xc8, 0x9f, 0x60, 0xca, 0xdb, 0x6b, 0x31, 0x59, 0xfc, 0x31, 2681 0x74, 0xb3, 0x17, 0x7f, 0x0c, 0xc5, 0xc0, 0xcd, 0xa9, 0x80, 0x82, 0x47, 0x7e, 0x3f, 0x01, 0xcf, 2682 0xbc, 0x1d, 0xcc, 0xcd, 0xa9, 0x40, 0xfd, 0x18, 0xa6, 0x59, 0x4f, 0xd0, 0x0a, 0x2c, 0x76, 0x7b, 2683 0xb5, 0xde, 0xe4, 0x77, 0xc8, 0x32, 0xcc, 0xd6, 0xb1, 0x56, 0xeb, 0x69, 0xbb, 0x4a, 0x8e, 0x36, 2684 0xf0, 0x51, 0xab, 0xd5, 0x68, 0xed, 0x2b, 0x79, 0x54, 0x84, 0xc2, 0x6e, 0xbb, 0xa5, 0x29, 0x53, 2685 0x68, 0x0e, 0x4a, 0xf5, 0x5a, 0xab, 0xae, 0x35, 0x9b, 0xda, 0xae, 0x52, 0x78, 0x40, 0x00, 0xa4, 2686 0xb7, 0xf8, 0x32, 0xcc, 0x8a, 0x87, 0x69, 0xe5, 0x1d, 0xb4, 0x08, 0x73, 0x2f, 0x34, 0x7c, 0xac, 2687 0x1f, 0xb5, 0x9a, 0x8d, 0xe7, 0x5a, 0xf3, 0x58, 0xc9, 0xa1, 0x0a, 0x14, 0x93, 0x56, 0x9e, 0xb6, 2688 0x3a, 0xed, 0x6e, 0xb7, 0xb1, 0xd3, 0xa4, 0xc4, 0x00, 0x33, 0x42, 0x53, 0x40, 0x0b, 0x50, 0x66, 2689 0x50, 0x21, 0x98, 0xde, 0xfe, 0x7b, 0x1e, 0xe6, 0xe5, 0xb3, 0xce, 0x0b, 0xd0, 0x6f, 0x73, 0xb0, 2690 0x74, 0xc1, 0x2e, 0x8e, 0xb6, 0x33, 0xaf, 0xad, 0x99, 0x47, 0xcb, 0xda, 0x07, 0xd7, 0xc2, 0xf0, 2691 0xb4, 0x52, 0xef, 0xfe, 0xe2, 0xcb, 0x7f, 0xfe, 0x3a, 0x5f, 0x55, 0x97, 0x92, 0xaf, 0xf7, 0xe1, 2692 0x13, 0x51, 0x81, 0x90, 0x27, 0xb9, 0x07, 0xe8, 0x37, 0x39, 0xb8, 0x91, 0x91, 0xea, 0xe8, 0xf1, 2693 0xa5, 0xf9, 0x9c, 0xb9, 0x17, 0xad, 0x25, 0x97, 0x1b, 0xe9, 0xc3, 0xfa, 0x78, 0xbd, 0xa9, 0xef, 2694 0xb3, 0x2e, 0xdd, 0x57, 0x6f, 0xd3, 0x2e, 0x0d, 0x28, 0xf0, 0x89, 0x71, 0x8e, 0xf0, 0x49, 0xee, 2695 0xc1, 0xce, 0xcf, 0x60, 0xcd, 0xf4, 0x86, 0x19, 0x9d, 0xd8, 0x59, 0x4a, 0x87, 0xba, 0x43, 0x57, 2696 0x55, 0x27, 0xf7, 0xa3, 0x67, 0xc2, 0xdc, 0xf2, 0xe8, 0x65, 0x72, 0xd3, 0x0b, 0xac, 0x2d, 0x8b, 2697 0xb8, 0x6c, 0xcd, 0x6d, 0x71, 0x95, 0xe1, 0xdb, 0xe1, 0xe4, 0xff, 0x07, 0x3c, 0xe5, 0xbf, 0xfe, 2698 0x93, 0xcb, 0xfd, 0x2e, 0x5f, 0xd8, 0xaf, 0xbf, 0x68, 0x9d, 0xcc, 0x30, 0xc8, 0x07, 0xff, 0x0d, 2699 0x00, 0x00, 0xff, 0xff, 0x7a, 0xea, 0x20, 0x54, 0x0a, 0x21, 0x00, 0x00, 2700} 2701