aws-sdk-rekognition 1.0.0.rc2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module Rekognition
10
+ module Errors
11
+
12
+ extend Aws::Errors::DynamicErrors
13
+
14
+ # Raised when calling #load or #data on a resource class that can not be
15
+ # loaded. This can happen when:
16
+ #
17
+ # * A resource class has identifiers, but no data attributes.
18
+ # * Resource data is only available when making an API call that
19
+ # enumerates all resources of that type.
20
+ class ResourceNotLoadable < RuntimeError; end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,25 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module Rekognition
10
+ class Resource
11
+
12
+ # @param options ({})
13
+ # @option options [Client] :client
14
+ def initialize(options = {})
15
+ @client = options[:client] || Client.new(options)
16
+ end
17
+
18
+ # @return [Client]
19
+ def client
20
+ @client
21
+ end
22
+
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,1106 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module Rekognition
10
+ module Types
11
+
12
+ # Indicates whether or not the face has a beard, and the confidence
13
+ # level in the determination.
14
+ # @!attribute [rw] value
15
+ # Boolean value that indicates whether the face has beard or not.
16
+ # @return [Boolean]
17
+ #
18
+ # @!attribute [rw] confidence
19
+ # Level of confidence in the determination.
20
+ # @return [Float]
21
+ class Beard < Struct.new(
22
+ :value,
23
+ :confidence)
24
+ include Aws::Structure
25
+ end
26
+
27
+ # Identifies the bounding box around the object or face. The `left`
28
+ # (x-coordinate) and `top` (y-coordinate) are coordinates representing
29
+ # the top and left sides of the bounding box. Note that the upper-left
30
+ # corner of the image is the origin (0,0).
31
+ #
32
+ # The `top` and `left` values returned are ratios of the overall image
33
+ # size. For example, if the input image is 700x200 pixels, and the
34
+ # top-left coordinate of the bounding box is 350x50 pixels, the API
35
+ # returns a `left` value of 0.5 (350/700) and a `top` value of 0.25
36
+ # (50/200).
37
+ #
38
+ # The `width` and `height` values represent the dimensions of the
39
+ # bounding box as a ratio of the overall image dimension. For example,
40
+ # if the input image is 700x200 pixels, and the bounding box width is 70
41
+ # pixels, the width returned is 0.1.
42
+ #
43
+ # <note markdown="1"> The bounding box coordinates can have negative values. For example, if
44
+ # Amazon Rekognition is able to detect a face that is at the image edge
45
+ # and is only partially visible, the service can return coordinates that
46
+ # are outside the image bounds and, depending on the image edge, you
47
+ # might get negative values or values greater than 1 for the `left` or
48
+ # `top` values.
49
+ #
50
+ # </note>
51
+ # @!attribute [rw] width
52
+ # Width of the bounding box as a ratio of the overall image width.
53
+ # @return [Float]
54
+ #
55
+ # @!attribute [rw] height
56
+ # Height of the bounding box as a ratio of the overall image height.
57
+ # @return [Float]
58
+ #
59
+ # @!attribute [rw] left
60
+ # Left coordinate of the bounding box as a ratio of overall image
61
+ # width.
62
+ # @return [Float]
63
+ #
64
+ # @!attribute [rw] top
65
+ # Top coordinate of the bounding box as a ratio of overall image
66
+ # height.
67
+ # @return [Float]
68
+ class BoundingBox < Struct.new(
69
+ :width,
70
+ :height,
71
+ :left,
72
+ :top)
73
+ include Aws::Structure
74
+ end
75
+
76
+ # Provide the bounding box, confidence that the bounding box actually
77
+ # contains a face, and the similarity between the face in the bounding
78
+ # box and the face in the source image.
79
+ # @!attribute [rw] similarity
80
+ # Level of confidence that the faces match.
81
+ # @return [Float]
82
+ #
83
+ # @!attribute [rw] face
84
+ # Provides face metadata (bounding box and confidence that the
85
+ # bounding box actually contains a face).
86
+ # @return [Types::ComparedFace]
87
+ class CompareFacesMatch < Struct.new(
88
+ :similarity,
89
+ :face)
90
+ include Aws::Structure
91
+ end
92
+
93
+ # @note When making an API call, pass CompareFacesRequest
94
+ # data as a hash:
95
+ #
96
+ # {
97
+ # source_image: { # required
98
+ # bytes: "data",
99
+ # s3_object: {
100
+ # bucket: "S3Bucket",
101
+ # name: "S3ObjectName",
102
+ # version: "S3ObjectVersion",
103
+ # },
104
+ # },
105
+ # target_image: { # required
106
+ # bytes: "data",
107
+ # s3_object: {
108
+ # bucket: "S3Bucket",
109
+ # name: "S3ObjectName",
110
+ # version: "S3ObjectVersion",
111
+ # },
112
+ # },
113
+ # similarity_threshold: 1.0,
114
+ # }
115
+ # @!attribute [rw] source_image
116
+ # Source image either as bytes or an Amazon S3 object
117
+ # @return [Types::Image]
118
+ #
119
+ # @!attribute [rw] target_image
120
+ # Target image either as bytes or an Amazon S3 object
121
+ # @return [Types::Image]
122
+ #
123
+ # @!attribute [rw] similarity_threshold
124
+ # The minimum level of confidence in the match you want included in
125
+ # the result.
126
+ # @return [Float]
127
+ class CompareFacesRequest < Struct.new(
128
+ :source_image,
129
+ :target_image,
130
+ :similarity_threshold)
131
+ include Aws::Structure
132
+ end
133
+
134
+ # @!attribute [rw] source_image_face
135
+ # The face from the source image that was used for comparison.
136
+ # @return [Types::ComparedSourceImageFace]
137
+ #
138
+ # @!attribute [rw] face_matches
139
+ # Provides an array of `CompareFacesMatch ` objects. Each object
140
+ # provides the bounding box, confidence that the bounding box contains
141
+ # a face, and the similarity between the face in the bounding box and
142
+ # the face in the source image.
143
+ # @return [Array<Types::CompareFacesMatch>]
144
+ class CompareFacesResponse < Struct.new(
145
+ :source_image_face,
146
+ :face_matches)
147
+ include Aws::Structure
148
+ end
149
+
150
+ # Provides face metadata (bounding box and confidence that the bounding
151
+ # box actually contains a face).
152
+ # @!attribute [rw] bounding_box
153
+ # Identifies the bounding box around the object or face. The `left`
154
+ # (x-coordinate) and `top` (y-coordinate) are coordinates representing
155
+ # the top and left sides of the bounding box. Note that the upper-left
156
+ # corner of the image is the origin (0,0).
157
+ #
158
+ # The `top` and `left` values returned are ratios of the overall image
159
+ # size. For example, if the input image is 700x200 pixels, and the
160
+ # top-left coordinate of the bounding box is 350x50 pixels, the API
161
+ # returns a `left` value of 0.5 (350/700) and a `top` value of 0.25
162
+ # (50/200).
163
+ #
164
+ # The `width` and `height` values represent the dimensions of the
165
+ # bounding box as a ratio of the overall image dimension. For example,
166
+ # if the input image is 700x200 pixels, and the bounding box width is
167
+ # 70 pixels, the width returned is 0.1.
168
+ #
169
+ # <note markdown="1"> The bounding box coordinates can have negative values. For example,
170
+ # if Amazon Rekognition is able to detect a face that is at the image
171
+ # edge and is only partially visible, the service can return
172
+ # coordinates that are outside the image bounds and, depending on the
173
+ # image edge, you might get negative values or values greater than 1
174
+ # for the `left` or `top` values.
175
+ #
176
+ # </note>
177
+ # @return [Types::BoundingBox]
178
+ #
179
+ # @!attribute [rw] confidence
180
+ # Level of confidence that what the bounding box contains is a face.
181
+ # @return [Float]
182
+ class ComparedFace < Struct.new(
183
+ :bounding_box,
184
+ :confidence)
185
+ include Aws::Structure
186
+ end
187
+
188
+ # Type that describes the face Amazon Rekognition chose to compare with
189
+ # the faces in the target. This contains a bounding box for the selected
190
+ # face and confidence level that the bounding box contains a face. Note
191
+ # that Amazon Rekognition selects the largest face in the source image
192
+ # for this comparison.
193
+ # @!attribute [rw] bounding_box
194
+ # Identifies the bounding box around the object or face. The `left`
195
+ # (x-coordinate) and `top` (y-coordinate) are coordinates representing
196
+ # the top and left sides of the bounding box. Note that the upper-left
197
+ # corner of the image is the origin (0,0).
198
+ #
199
+ # The `top` and `left` values returned are ratios of the overall image
200
+ # size. For example, if the input image is 700x200 pixels, and the
201
+ # top-left coordinate of the bounding box is 350x50 pixels, the API
202
+ # returns a `left` value of 0.5 (350/700) and a `top` value of 0.25
203
+ # (50/200).
204
+ #
205
+ # The `width` and `height` values represent the dimensions of the
206
+ # bounding box as a ratio of the overall image dimension. For example,
207
+ # if the input image is 700x200 pixels, and the bounding box width is
208
+ # 70 pixels, the width returned is 0.1.
209
+ #
210
+ # <note markdown="1"> The bounding box coordinates can have negative values. For example,
211
+ # if Amazon Rekognition is able to detect a face that is at the image
212
+ # edge and is only partially visible, the service can return
213
+ # coordinates that are outside the image bounds and, depending on the
214
+ # image edge, you might get negative values or values greater than 1
215
+ # for the `left` or `top` values.
216
+ #
217
+ # </note>
218
+ # @return [Types::BoundingBox]
219
+ #
220
+ # @!attribute [rw] confidence
221
+ # Confidence that the selected bounding box contains a face.
222
+ # @return [Float]
223
+ class ComparedSourceImageFace < Struct.new(
224
+ :bounding_box,
225
+ :confidence)
226
+ include Aws::Structure
227
+ end
228
+
229
+ # @note When making an API call, pass CreateCollectionRequest
230
+ # data as a hash:
231
+ #
232
+ # {
233
+ # collection_id: "CollectionId", # required
234
+ # }
235
+ # @!attribute [rw] collection_id
236
+ # ID for the collection that you are creating.
237
+ # @return [String]
238
+ class CreateCollectionRequest < Struct.new(
239
+ :collection_id)
240
+ include Aws::Structure
241
+ end
242
+
243
+ # @!attribute [rw] status_code
244
+ # HTTP status code indicating the result of the operation.
245
+ # @return [Integer]
246
+ #
247
+ # @!attribute [rw] collection_arn
248
+ # Amazon Resource Name (ARN) of the collection. You can use this to
249
+ # manage permissions on your resources.
250
+ # @return [String]
251
+ class CreateCollectionResponse < Struct.new(
252
+ :status_code,
253
+ :collection_arn)
254
+ include Aws::Structure
255
+ end
256
+
257
+ # @note When making an API call, pass DeleteCollectionRequest
258
+ # data as a hash:
259
+ #
260
+ # {
261
+ # collection_id: "CollectionId", # required
262
+ # }
263
+ # @!attribute [rw] collection_id
264
+ # ID of the collection to delete.
265
+ # @return [String]
266
+ class DeleteCollectionRequest < Struct.new(
267
+ :collection_id)
268
+ include Aws::Structure
269
+ end
270
+
271
+ # @!attribute [rw] status_code
272
+ # HTTP status code that indicates the result of the operation.
273
+ # @return [Integer]
274
+ class DeleteCollectionResponse < Struct.new(
275
+ :status_code)
276
+ include Aws::Structure
277
+ end
278
+
279
+ # @note When making an API call, pass DeleteFacesRequest
280
+ # data as a hash:
281
+ #
282
+ # {
283
+ # collection_id: "CollectionId", # required
284
+ # face_ids: ["FaceId"], # required
285
+ # }
286
+ # @!attribute [rw] collection_id
287
+ # Collection from which to remove the specific faces.
288
+ # @return [String]
289
+ #
290
+ # @!attribute [rw] face_ids
291
+ # An array of face IDs to delete.
292
+ # @return [Array<String>]
293
+ class DeleteFacesRequest < Struct.new(
294
+ :collection_id,
295
+ :face_ids)
296
+ include Aws::Structure
297
+ end
298
+
299
+ # @!attribute [rw] deleted_faces
300
+ # An array of strings (face IDs) of the faces that were deleted.
301
+ # @return [Array<String>]
302
+ class DeleteFacesResponse < Struct.new(
303
+ :deleted_faces)
304
+ include Aws::Structure
305
+ end
306
+
307
+ # @note When making an API call, pass DetectFacesRequest
308
+ # data as a hash:
309
+ #
310
+ # {
311
+ # image: { # required
312
+ # bytes: "data",
313
+ # s3_object: {
314
+ # bucket: "S3Bucket",
315
+ # name: "S3ObjectName",
316
+ # version: "S3ObjectVersion",
317
+ # },
318
+ # },
319
+ # attributes: ["DEFAULT"], # accepts DEFAULT, ALL
320
+ # }
321
+ # @!attribute [rw] image
322
+ # The image in which you want to detect faces. You can specify a blob
323
+ # or an S3 object.
324
+ # @return [Types::Image]
325
+ #
326
+ # @!attribute [rw] attributes
327
+ # A list of facial attributes you would like to be returned. By
328
+ # default, the API returns subset of facial attributes.
329
+ #
330
+ # For example, you can specify the value as, \["ALL"\] or
331
+ # \["DEFAULT"\]. If you provide both, \["ALL", "DEFAULT"\], the
332
+ # service uses a logical AND operator to determine which attributes to
333
+ # return (in this case, it is all attributes). If you specify all
334
+ # attributes, Rekognition performs additional detection.
335
+ # @return [Array<String>]
336
+ class DetectFacesRequest < Struct.new(
337
+ :image,
338
+ :attributes)
339
+ include Aws::Structure
340
+ end
341
+
342
+ # @!attribute [rw] face_details
343
+ # Details of each face found in the image.
344
+ # @return [Array<Types::FaceDetail>]
345
+ #
346
+ # @!attribute [rw] orientation_correction
347
+ # The algorithm detects the image orientation. If it detects that the
348
+ # image was rotated, it returns the degrees of rotation. If your
349
+ # application is displaying the image, you can use this value to
350
+ # adjust the orientation.
351
+ #
352
+ # For example, if the service detects that the input image was rotated
353
+ # by 90 degrees, it corrects orientation, performs face detection, and
354
+ # then returns the faces. That is, the bounding box coordinates in the
355
+ # response are based on the corrected orientation.
356
+ # @return [String]
357
+ class DetectFacesResponse < Struct.new(
358
+ :face_details,
359
+ :orientation_correction)
360
+ include Aws::Structure
361
+ end
362
+
363
+ # @note When making an API call, pass DetectLabelsRequest
364
+ # data as a hash:
365
+ #
366
+ # {
367
+ # image: { # required
368
+ # bytes: "data",
369
+ # s3_object: {
370
+ # bucket: "S3Bucket",
371
+ # name: "S3ObjectName",
372
+ # version: "S3ObjectVersion",
373
+ # },
374
+ # },
375
+ # max_labels: 1,
376
+ # min_confidence: 1.0,
377
+ # }
378
+ # @!attribute [rw] image
379
+ # The input image. You can provide a blob of image bytes or an S3
380
+ # object.
381
+ # @return [Types::Image]
382
+ #
383
+ # @!attribute [rw] max_labels
384
+ # Maximum number of labels you want the service to return in the
385
+ # response. The service returns the specified number of highest
386
+ # confidence labels.
387
+ # @return [Integer]
388
+ #
389
+ # @!attribute [rw] min_confidence
390
+ # Specifies the minimum confidence level for the labels to return.
391
+ # Amazon Rekognition doesn't return any labels with confidence lower
392
+ # than this specified value.
393
+ #
394
+ # If `minConfidence` is not specified, the operation returns labels
395
+ # with a confidence values greater than or equal to 50 percent.
396
+ # @return [Float]
397
+ class DetectLabelsRequest < Struct.new(
398
+ :image,
399
+ :max_labels,
400
+ :min_confidence)
401
+ include Aws::Structure
402
+ end
403
+
404
+ # @!attribute [rw] labels
405
+ # An array of labels for the real-world objects detected.
406
+ # @return [Array<Types::Label>]
407
+ #
408
+ # @!attribute [rw] orientation_correction
409
+ # Amazon Rekognition returns the orientation of the input image that
410
+ # was detected (clockwise direction). If your application displays the
411
+ # image, you can use this value to correct the orientation. If
412
+ # Rekognition detects that the input image was rotated (for example,
413
+ # by 90 degrees), it first corrects the orientation before detecting
414
+ # the labels.
415
+ # @return [String]
416
+ class DetectLabelsResponse < Struct.new(
417
+ :labels,
418
+ :orientation_correction)
419
+ include Aws::Structure
420
+ end
421
+
422
+ # The emotions detected on the face, and the confidence level in the
423
+ # determination. For example, HAPPY, SAD, and ANGRY.
424
+ # @!attribute [rw] type
425
+ # Type of emotion detected.
426
+ # @return [String]
427
+ #
428
+ # @!attribute [rw] confidence
429
+ # Level of confidence in the determination.
430
+ # @return [Float]
431
+ class Emotion < Struct.new(
432
+ :type,
433
+ :confidence)
434
+ include Aws::Structure
435
+ end
436
+
437
+ # Indicates whether or not the eyes on the face are open, and the
438
+ # confidence level in the determination.
439
+ # @!attribute [rw] value
440
+ # Boolean value that indicates whether the eyes on the face are open.
441
+ # @return [Boolean]
442
+ #
443
+ # @!attribute [rw] confidence
444
+ # Level of confidence in the determination.
445
+ # @return [Float]
446
+ class EyeOpen < Struct.new(
447
+ :value,
448
+ :confidence)
449
+ include Aws::Structure
450
+ end
451
+
452
+ # Indicates whether or not the face is wearing eye glasses, and the
453
+ # confidence level in the determination.
454
+ # @!attribute [rw] value
455
+ # Boolean value that indicates whether the face is wearing eye glasses
456
+ # or not.
457
+ # @return [Boolean]
458
+ #
459
+ # @!attribute [rw] confidence
460
+ # Level of confidence in the determination.
461
+ # @return [Float]
462
+ class Eyeglasses < Struct.new(
463
+ :value,
464
+ :confidence)
465
+ include Aws::Structure
466
+ end
467
+
468
+ # Describes the face properties such as the bounding box, face ID, image
469
+ # ID of the source image, and external image ID that you assigned.
470
+ # @!attribute [rw] face_id
471
+ # Unique identifier that Amazon Rekognition assigns to the face.
472
+ # @return [String]
473
+ #
474
+ # @!attribute [rw] bounding_box
475
+ # Identifies the bounding box around the object or face. The `left`
476
+ # (x-coordinate) and `top` (y-coordinate) are coordinates representing
477
+ # the top and left sides of the bounding box. Note that the upper-left
478
+ # corner of the image is the origin (0,0).
479
+ #
480
+ # The `top` and `left` values returned are ratios of the overall image
481
+ # size. For example, if the input image is 700x200 pixels, and the
482
+ # top-left coordinate of the bounding box is 350x50 pixels, the API
483
+ # returns a `left` value of 0.5 (350/700) and a `top` value of 0.25
484
+ # (50/200).
485
+ #
486
+ # The `width` and `height` values represent the dimensions of the
487
+ # bounding box as a ratio of the overall image dimension. For example,
488
+ # if the input image is 700x200 pixels, and the bounding box width is
489
+ # 70 pixels, the width returned is 0.1.
490
+ #
491
+ # <note markdown="1"> The bounding box coordinates can have negative values. For example,
492
+ # if Amazon Rekognition is able to detect a face that is at the image
493
+ # edge and is only partially visible, the service can return
494
+ # coordinates that are outside the image bounds and, depending on the
495
+ # image edge, you might get negative values or values greater than 1
496
+ # for the `left` or `top` values.
497
+ #
498
+ # </note>
499
+ # @return [Types::BoundingBox]
500
+ #
501
+ # @!attribute [rw] image_id
502
+ # Unique identifier that Amazon Rekognition assigns to the source
503
+ # image.
504
+ # @return [String]
505
+ #
506
+ # @!attribute [rw] external_image_id
507
+ # Identifier that you assign to all the faces in the input image.
508
+ # @return [String]
509
+ #
510
+ # @!attribute [rw] confidence
511
+ # Confidence level that the bounding box contains a face (and not a
512
+ # different object such as a tree).
513
+ # @return [Float]
514
+ class Face < Struct.new(
515
+ :face_id,
516
+ :bounding_box,
517
+ :image_id,
518
+ :external_image_id,
519
+ :confidence)
520
+ include Aws::Structure
521
+ end
522
+
523
+ # Structure containing attributes of the face that the algorithm
524
+ # detected.
525
+ # @!attribute [rw] bounding_box
526
+ # Bounding box of the face.
527
+ # @return [Types::BoundingBox]
528
+ #
529
+ # @!attribute [rw] smile
530
+ # Indicates whether or not the face is smiling, and the confidence
531
+ # level in the determination.
532
+ # @return [Types::Smile]
533
+ #
534
+ # @!attribute [rw] eyeglasses
535
+ # Indicates whether or not the face is wearing eye glasses, and the
536
+ # confidence level in the determination.
537
+ # @return [Types::Eyeglasses]
538
+ #
539
+ # @!attribute [rw] sunglasses
540
+ # Indicates whether or not the face is wearing sunglasses, and the
541
+ # confidence level in the determination.
542
+ # @return [Types::Sunglasses]
543
+ #
544
+ # @!attribute [rw] gender
545
+ # Gender of the face and the confidence level in the determination.
546
+ # @return [Types::Gender]
547
+ #
548
+ # @!attribute [rw] beard
549
+ # Indicates whether or not the face has a beard, and the confidence
550
+ # level in the determination.
551
+ # @return [Types::Beard]
552
+ #
553
+ # @!attribute [rw] mustache
554
+ # Indicates whether or not the face has a mustache, and the confidence
555
+ # level in the determination.
556
+ # @return [Types::Mustache]
557
+ #
558
+ # @!attribute [rw] eyes_open
559
+ # Indicates whether or not the eyes on the face are open, and the
560
+ # confidence level in the determination.
561
+ # @return [Types::EyeOpen]
562
+ #
563
+ # @!attribute [rw] mouth_open
564
+ # Indicates whether or not the mouth on the face is open, and the
565
+ # confidence level in the determination.
566
+ # @return [Types::MouthOpen]
567
+ #
568
+ # @!attribute [rw] emotions
569
+ # The emotions detected on the face, and the confidence level in the
570
+ # determination. For example, HAPPY, SAD, and ANGRY.
571
+ # @return [Array<Types::Emotion>]
572
+ #
573
+ # @!attribute [rw] landmarks
574
+ # Indicates the location of the landmark on the face.
575
+ # @return [Array<Types::Landmark>]
576
+ #
577
+ # @!attribute [rw] pose
578
+ # Indicates the pose of the face as determined by pitch, roll, and the
579
+ # yaw.
580
+ # @return [Types::Pose]
581
+ #
582
+ # @!attribute [rw] quality
583
+ # Identifies image brightness and sharpness.
584
+ # @return [Types::ImageQuality]
585
+ #
586
+ # @!attribute [rw] confidence
587
+ # Confidence level that the bounding box contains a face (and not a
588
+ # different object such as a tree).
589
+ # @return [Float]
590
+ class FaceDetail < Struct.new(
591
+ :bounding_box,
592
+ :smile,
593
+ :eyeglasses,
594
+ :sunglasses,
595
+ :gender,
596
+ :beard,
597
+ :mustache,
598
+ :eyes_open,
599
+ :mouth_open,
600
+ :emotions,
601
+ :landmarks,
602
+ :pose,
603
+ :quality,
604
+ :confidence)
605
+ include Aws::Structure
606
+ end
607
+
608
+ # Provides face metadata. In addition, it also provides the confidence
609
+ # in the match of this face with the input face.
610
+ # @!attribute [rw] similarity
611
+ # Confidence in the match of this face with the input face.
612
+ # @return [Float]
613
+ #
614
+ # @!attribute [rw] face
615
+ # Describes the face properties such as the bounding box, face ID,
616
+ # image ID of the source image, and external image ID that you
617
+ # assigned.
618
+ # @return [Types::Face]
619
+ class FaceMatch < Struct.new(
620
+ :similarity,
621
+ :face)
622
+ include Aws::Structure
623
+ end
624
+
625
+ # Object containing both the face metadata (stored in the back-end
626
+ # database) and facial attributes that are detected but aren't stored
627
+ # in the database.
628
+ # @!attribute [rw] face
629
+ # Describes the face properties such as the bounding box, face ID,
630
+ # image ID of the source image, and external image ID that you
631
+ # assigned.
632
+ # @return [Types::Face]
633
+ #
634
+ # @!attribute [rw] face_detail
635
+ # Structure containing attributes of the face that the algorithm
636
+ # detected.
637
+ # @return [Types::FaceDetail]
638
+ class FaceRecord < Struct.new(
639
+ :face,
640
+ :face_detail)
641
+ include Aws::Structure
642
+ end
643
+
644
+ # Gender of the face and the confidence level in the determination.
645
+ # @!attribute [rw] value
646
+ # Gender of the face.
647
+ # @return [String]
648
+ #
649
+ # @!attribute [rw] confidence
650
+ # Level of confidence in the determination.
651
+ # @return [Float]
652
+ class Gender < Struct.new(
653
+ :value,
654
+ :confidence)
655
+ include Aws::Structure
656
+ end
657
+
658
+ # Provides the source image either as bytes or an S3 object.
659
+ # @note When making an API call, pass Image
660
+ # data as a hash:
661
+ #
662
+ # {
663
+ # bytes: "data",
664
+ # s3_object: {
665
+ # bucket: "S3Bucket",
666
+ # name: "S3ObjectName",
667
+ # version: "S3ObjectVersion",
668
+ # },
669
+ # }
670
+ # @!attribute [rw] bytes
671
+ # Blob of image bytes up to 5 MBs.
672
+ # @return [String]
673
+ #
674
+ # @!attribute [rw] s3_object
675
+ # Identifies an S3 object as the image source.
676
+ # @return [Types::S3Object]
677
+ class Image < Struct.new(
678
+ :bytes,
679
+ :s3_object)
680
+ include Aws::Structure
681
+ end
682
+
683
+ # Identifies image brightness and sharpness.
684
+ # @!attribute [rw] brightness
685
+ # Value representing brightness of the face. The service returns a
686
+ # value between 0 and 1 (inclusive).
687
+ # @return [Float]
688
+ #
689
+ # @!attribute [rw] sharpness
690
+ # Value representing sharpness of the face.
691
+ # @return [Float]
692
+ class ImageQuality < Struct.new(
693
+ :brightness,
694
+ :sharpness)
695
+ include Aws::Structure
696
+ end
697
+
698
+ # @note When making an API call, pass IndexFacesRequest
699
+ # data as a hash:
700
+ #
701
+ # {
702
+ # collection_id: "CollectionId", # required
703
+ # image: { # required
704
+ # bytes: "data",
705
+ # s3_object: {
706
+ # bucket: "S3Bucket",
707
+ # name: "S3ObjectName",
708
+ # version: "S3ObjectVersion",
709
+ # },
710
+ # },
711
+ # external_image_id: "ExternalImageId",
712
+ # detection_attributes: ["DEFAULT"], # accepts DEFAULT, ALL
713
+ # }
714
+ # @!attribute [rw] collection_id
715
+ # ID of an existing collection to which you want to add the faces that
716
+ # are detected in the input images.
717
+ # @return [String]
718
+ #
719
+ # @!attribute [rw] image
720
+ # Provides the source image either as bytes or an S3 object.
721
+ # @return [Types::Image]
722
+ #
723
+ # @!attribute [rw] external_image_id
724
+ # ID you want to assign to all the faces detected in the image.
725
+ # @return [String]
726
+ #
727
+ # @!attribute [rw] detection_attributes
728
+ # (Optional) Returns detailed attributes of indexed faces. By default,
729
+ # the operation returns a subset of the facial attributes.
730
+ #
731
+ # For example, you can specify the value as, \["ALL"\] or
732
+ # \["DEFAULT"\]. If you provide both, \["ALL", "DEFAULT"\],
733
+ # Rekognition uses the logical AND operator to determine which
734
+ # attributes to return (in this case, it is all attributes). If you
735
+ # specify all attributes, the service performs additional detection,
736
+ # in addition to the default.
737
+ # @return [Array<String>]
738
+ class IndexFacesRequest < Struct.new(
739
+ :collection_id,
740
+ :image,
741
+ :external_image_id,
742
+ :detection_attributes)
743
+ include Aws::Structure
744
+ end
745
+
746
+ # @!attribute [rw] face_records
747
+ # An array of faces detected and added to the collection. For more
748
+ # information, see howitworks-index-faces.
749
+ # @return [Array<Types::FaceRecord>]
750
+ #
751
+ # @!attribute [rw] orientation_correction
752
+ # The algorithm detects the image orientation. If it detects that the
753
+ # image was rotated, it returns the degree of rotation. You can use
754
+ # this value to correct the orientation and also appropriately analyze
755
+ # the bounding box coordinates that are returned.
756
+ # @return [String]
757
+ class IndexFacesResponse < Struct.new(
758
+ :face_records,
759
+ :orientation_correction)
760
+ include Aws::Structure
761
+ end
762
+
763
+ # Structure containing details about the detected label, including
764
+ # bounding box, name, and level of confidence.
765
+ # @!attribute [rw] name
766
+ # The name (label) of the object.
767
+ # @return [String]
768
+ #
769
+ # @!attribute [rw] confidence
770
+ # Level of confidence.
771
+ # @return [Float]
772
+ class Label < Struct.new(
773
+ :name,
774
+ :confidence)
775
+ include Aws::Structure
776
+ end
777
+
778
+ # Indicates the location of the landmark on the face.
779
+ # @!attribute [rw] type
780
+ # Type of the landmark.
781
+ # @return [String]
782
+ #
783
+ # @!attribute [rw] x
784
+ # x-coordinate from the top left of the landmark expressed as the
785
+ # ration of the width of the image. For example, if the images is
786
+ # 700x200 and the x-coordinate of the landmark is at 350 pixels, then
787
+ # this value is 0.5.
788
+ # @return [Float]
789
+ #
790
+ # @!attribute [rw] y
791
+ # y-coordinate from the top left of the landmark expressed as the
792
+ # ration of the height of the image. For example, if the images is
793
+ # 700x200 and the y-coordinate of the landmark is at 100 pixels, then
794
+ # this value is 0.5.
795
+ # @return [Float]
796
+ class Landmark < Struct.new(
797
+ :type,
798
+ :x,
799
+ :y)
800
+ include Aws::Structure
801
+ end
802
+
803
+ # @note When making an API call, pass ListCollectionsRequest
804
+ # data as a hash:
805
+ #
806
+ # {
807
+ # next_token: "PaginationToken",
808
+ # max_results: 1,
809
+ # }
810
+ # @!attribute [rw] next_token
811
+ # Pagination token from the previous response.
812
+ # @return [String]
813
+ #
814
+ # @!attribute [rw] max_results
815
+ # Maximum number of collection IDs to return.
816
+ # @return [Integer]
817
+ class ListCollectionsRequest < Struct.new(
818
+ :next_token,
819
+ :max_results)
820
+ include Aws::Structure
821
+ end
822
+
823
+ # @!attribute [rw] collection_ids
824
+ # An array of collection IDs.
825
+ # @return [Array<String>]
826
+ #
827
+ # @!attribute [rw] next_token
828
+ # If the result is truncated, the response provides a `NextToken` that
829
+ # you can use in the subsequent request to fetch the next set of
830
+ # collection IDs.
831
+ # @return [String]
832
+ class ListCollectionsResponse < Struct.new(
833
+ :collection_ids,
834
+ :next_token)
835
+ include Aws::Structure
836
+ end
837
+
838
+ # @note When making an API call, pass ListFacesRequest
839
+ # data as a hash:
840
+ #
841
+ # {
842
+ # collection_id: "CollectionId", # required
843
+ # next_token: "PaginationToken",
844
+ # max_results: 1,
845
+ # }
846
+ # @!attribute [rw] collection_id
847
+ # ID of the collection from which to list the faces.
848
+ # @return [String]
849
+ #
850
+ # @!attribute [rw] next_token
851
+ # If the previous response was incomplete (because there is more data
852
+ # to retrieve), Amazon Rekognition returns a pagination token in the
853
+ # response. You can use this pagination token to retrieve the next set
854
+ # of faces.
855
+ # @return [String]
856
+ #
857
+ # @!attribute [rw] max_results
858
+ # Maximum number of faces to return.
859
+ # @return [Integer]
860
+ class ListFacesRequest < Struct.new(
861
+ :collection_id,
862
+ :next_token,
863
+ :max_results)
864
+ include Aws::Structure
865
+ end
866
+
867
+ # @!attribute [rw] faces
868
+ # An array of `Face` objects.
869
+ # @return [Array<Types::Face>]
870
+ #
871
+ # @!attribute [rw] next_token
872
+ # If the response is truncated, Amazon Rekognition returns this token
873
+ # that you can use in the subsequent request to retrieve the next set
874
+ # of faces.
875
+ # @return [String]
876
+ class ListFacesResponse < Struct.new(
877
+ :faces,
878
+ :next_token)
879
+ include Aws::Structure
880
+ end
881
+
882
+ # Indicates whether or not the mouth on the face is open, and the
883
+ # confidence level in the determination.
884
+ # @!attribute [rw] value
885
+ # Boolean value that indicates whether the mouth on the face is open
886
+ # or not.
887
+ # @return [Boolean]
888
+ #
889
+ # @!attribute [rw] confidence
890
+ # Level of confidence in the determination.
891
+ # @return [Float]
892
+ class MouthOpen < Struct.new(
893
+ :value,
894
+ :confidence)
895
+ include Aws::Structure
896
+ end
897
+
898
+ # Indicates whether or not the face has a mustache, and the confidence
899
+ # level in the determination.
900
+ # @!attribute [rw] value
901
+ # Boolean value that indicates whether the face has mustache or not.
902
+ # @return [Boolean]
903
+ #
904
+ # @!attribute [rw] confidence
905
+ # Level of confidence in the determination.
906
+ # @return [Float]
907
+ class Mustache < Struct.new(
908
+ :value,
909
+ :confidence)
910
+ include Aws::Structure
911
+ end
912
+
913
+ # Indicates the pose of the face as determined by pitch, roll, and the
914
+ # yaw.
915
+ # @!attribute [rw] roll
916
+ # Value representing the face rotation on the roll axis.
917
+ # @return [Float]
918
+ #
919
+ # @!attribute [rw] yaw
920
+ # Value representing the face rotation on the yaw axis.
921
+ # @return [Float]
922
+ #
923
+ # @!attribute [rw] pitch
924
+ # Value representing the face rotation on the pitch axis.
925
+ # @return [Float]
926
+ class Pose < Struct.new(
927
+ :roll,
928
+ :yaw,
929
+ :pitch)
930
+ include Aws::Structure
931
+ end
932
+
933
+ # Provides the S3 bucket name and object name.
934
+ # @note When making an API call, pass S3Object
935
+ # data as a hash:
936
+ #
937
+ # {
938
+ # bucket: "S3Bucket",
939
+ # name: "S3ObjectName",
940
+ # version: "S3ObjectVersion",
941
+ # }
942
+ # @!attribute [rw] bucket
943
+ # Name of the S3 bucket.
944
+ # @return [String]
945
+ #
946
+ # @!attribute [rw] name
947
+ # S3 object key name.
948
+ # @return [String]
949
+ #
950
+ # @!attribute [rw] version
951
+ # If the bucket is versioning enabled, you can specify the object
952
+ # version.
953
+ # @return [String]
954
+ class S3Object < Struct.new(
955
+ :bucket,
956
+ :name,
957
+ :version)
958
+ include Aws::Structure
959
+ end
960
+
961
+ # @note When making an API call, pass SearchFacesByImageRequest
962
+ # data as a hash:
963
+ #
964
+ # {
965
+ # collection_id: "CollectionId", # required
966
+ # image: { # required
967
+ # bytes: "data",
968
+ # s3_object: {
969
+ # bucket: "S3Bucket",
970
+ # name: "S3ObjectName",
971
+ # version: "S3ObjectVersion",
972
+ # },
973
+ # },
974
+ # max_faces: 1,
975
+ # face_match_threshold: 1.0,
976
+ # }
977
+ # @!attribute [rw] collection_id
978
+ # ID of the collection to search.
979
+ # @return [String]
980
+ #
981
+ # @!attribute [rw] image
982
+ # Provides the source image either as bytes or an S3 object.
983
+ # @return [Types::Image]
984
+ #
985
+ # @!attribute [rw] max_faces
986
+ # Maximum number of faces to return. The operation returns the maximum
987
+ # number of faces with the highest confidence in the match.
988
+ # @return [Integer]
989
+ #
990
+ # @!attribute [rw] face_match_threshold
991
+ # (Optional) Specifies the minimum confidence in the face match to
992
+ # return. For example, don't return any matches where confidence in
993
+ # matches is less than 70%.
994
+ # @return [Float]
995
+ class SearchFacesByImageRequest < Struct.new(
996
+ :collection_id,
997
+ :image,
998
+ :max_faces,
999
+ :face_match_threshold)
1000
+ include Aws::Structure
1001
+ end
1002
+
1003
+ # @!attribute [rw] searched_face_bounding_box
1004
+ # The bounding box around the face in the input image that Rekognition
1005
+ # used for the search.
1006
+ # @return [Types::BoundingBox]
1007
+ #
1008
+ # @!attribute [rw] searched_face_confidence
1009
+ # The level of confidence that the `searchedFaceBoundingBox`, contains
1010
+ # a face.
1011
+ # @return [Float]
1012
+ #
1013
+ # @!attribute [rw] face_matches
1014
+ # An array of faces that match the input face, along with the
1015
+ # confidence in the match.
1016
+ # @return [Array<Types::FaceMatch>]
1017
+ class SearchFacesByImageResponse < Struct.new(
1018
+ :searched_face_bounding_box,
1019
+ :searched_face_confidence,
1020
+ :face_matches)
1021
+ include Aws::Structure
1022
+ end
1023
+
1024
+ # @note When making an API call, pass SearchFacesRequest
1025
+ # data as a hash:
1026
+ #
1027
+ # {
1028
+ # collection_id: "CollectionId", # required
1029
+ # face_id: "FaceId", # required
1030
+ # max_faces: 1,
1031
+ # face_match_threshold: 1.0,
1032
+ # }
1033
+ # @!attribute [rw] collection_id
1034
+ # ID of the collection to search.
1035
+ # @return [String]
1036
+ #
1037
+ # @!attribute [rw] face_id
1038
+ # ID of a face to find matches for in the collection.
1039
+ # @return [String]
1040
+ #
1041
+ # @!attribute [rw] max_faces
1042
+ # Maximum number of faces to return. The API will return the maximum
1043
+ # number of faces with the highest confidence in the match.
1044
+ # @return [Integer]
1045
+ #
1046
+ # @!attribute [rw] face_match_threshold
1047
+ # Optional value specifying the minimum confidence in the face match
1048
+ # to return. For example, don't return any matches where confidence
1049
+ # in matches is less than 70%.
1050
+ # @return [Float]
1051
+ class SearchFacesRequest < Struct.new(
1052
+ :collection_id,
1053
+ :face_id,
1054
+ :max_faces,
1055
+ :face_match_threshold)
1056
+ include Aws::Structure
1057
+ end
1058
+
1059
+ # @!attribute [rw] searched_face_id
1060
+ # ID of the face that was searched for matches in a collection.
1061
+ # @return [String]
1062
+ #
1063
+ # @!attribute [rw] face_matches
1064
+ # An array of faces that matched the input face, along with the
1065
+ # confidence in the match.
1066
+ # @return [Array<Types::FaceMatch>]
1067
+ class SearchFacesResponse < Struct.new(
1068
+ :searched_face_id,
1069
+ :face_matches)
1070
+ include Aws::Structure
1071
+ end
1072
+
1073
+ # Indicates whether or not the face is smiling, and the confidence level
1074
+ # in the determination.
1075
+ # @!attribute [rw] value
1076
+ # Boolean value that indicates whether the face is smiling or not.
1077
+ # @return [Boolean]
1078
+ #
1079
+ # @!attribute [rw] confidence
1080
+ # Level of confidence in the determination.
1081
+ # @return [Float]
1082
+ class Smile < Struct.new(
1083
+ :value,
1084
+ :confidence)
1085
+ include Aws::Structure
1086
+ end
1087
+
1088
+ # Indicates whether or not the face is wearing sunglasses, and the
1089
+ # confidence level in the determination.
1090
+ # @!attribute [rw] value
1091
+ # Boolean value that indicates whether the face is wearing sunglasses
1092
+ # or not.
1093
+ # @return [Boolean]
1094
+ #
1095
+ # @!attribute [rw] confidence
1096
+ # Level of confidence in the determination.
1097
+ # @return [Float]
1098
+ class Sunglasses < Struct.new(
1099
+ :value,
1100
+ :confidence)
1101
+ include Aws::Structure
1102
+ end
1103
+
1104
+ end
1105
+ end
1106
+ end