/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the rekognition-2016-06-27.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.Rekognition.Model
{
///
/// Container for the parameters to the DetectCustomLabels operation.
/// Detects custom labels in a supplied image by using an Amazon Rekognition Custom Labels
/// model.
///
///
///
/// You specify which version of a model version to use by using the ProjectVersionArn
/// input parameter.
///
///
///
/// You pass the input image as base64-encoded image bytes or as a reference to an image
/// in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations,
/// passing image bytes is not supported. The image must be either a PNG or JPEG formatted
/// file.
///
///
///
/// For each object that the model version detects on an image, the API returns a (CustomLabel
)
/// object in an array (CustomLabels
). Each CustomLabel
object
/// provides the label name (Name
), the level of confidence that the image
/// contains the object (Confidence
), and object location information, if
/// it exists, for the label on the image (Geometry
).
///
///
///
/// To filter labels that are returned, specify a value for MinConfidence
.
/// DetectCustomLabelsLabels
only returns labels with a confidence that's
/// higher than the specified value. The value of MinConfidence
maps to the
/// assumed threshold values created during training. For more information, see Assumed
/// threshold in the Amazon Rekognition Custom Labels Developer Guide. Amazon Rekognition
/// Custom Labels metrics expresses an assumed threshold as a floating point value between
/// 0-1. The range of MinConfidence
normalizes the threshold value to a percentage
/// value (0-100). Confidence responses from DetectCustomLabels
are also
/// returned as a percentage. You can use MinConfidence
to change the precision
/// and recall or your model. For more information, see Analyzing an image in the
/// Amazon Rekognition Custom Labels Developer Guide.
///
///
///
/// If you don't specify a value for MinConfidence
, DetectCustomLabels
/// returns labels based on the assumed threshold of each label.
///
///
///
/// This is a stateless API operation. That is, the operation does not persist any data.
///
///
///
/// This operation requires permissions to perform the rekognition:DetectCustomLabels
/// action.
///
///
///
/// For more information, see Analyzing an image in the Amazon Rekognition Custom
/// Labels Developer Guide.
///
///
public partial class DetectCustomLabelsRequest : AmazonRekognitionRequest
{
private Image _image;
private int? _maxResults;
private float? _minConfidence;
private string _projectVersionArn;
///
/// Gets and sets the property Image.
///
[AWSProperty(Required=true)]
public Image Image
{
get { return this._image; }
set { this._image = value; }
}
// Check to see if Image property is set
internal bool IsSetImage()
{
return this._image != null;
}
///
/// Gets and sets the property MaxResults.
///
/// Maximum number of results you want the service to return in the response. The service
/// returns the specified number of highest confidence labels ranked from highest confidence
/// to lowest.
///
///
[AWSProperty(Min=0)]
public int MaxResults
{
get { return this._maxResults.GetValueOrDefault(); }
set { this._maxResults = value; }
}
// Check to see if MaxResults property is set
internal bool IsSetMaxResults()
{
return this._maxResults.HasValue;
}
///
/// Gets and sets the property MinConfidence.
///
/// Specifies the minimum confidence level for the labels to return. DetectCustomLabels
/// doesn't return any labels with a confidence value that's lower than this specified
/// value. If you specify a value of 0, DetectCustomLabels
returns all labels,
/// regardless of the assumed threshold applied to each label. If you don't specify a
/// value for MinConfidence
, DetectCustomLabels
returns labels
/// based on the assumed threshold of each label.
///
///
[AWSProperty(Min=0, Max=100)]
public float MinConfidence
{
get { return this._minConfidence.GetValueOrDefault(); }
set { this._minConfidence = value; }
}
// Check to see if MinConfidence property is set
internal bool IsSetMinConfidence()
{
return this._minConfidence.HasValue;
}
///
/// Gets and sets the property ProjectVersionArn.
///
/// The ARN of the model version that you want to use.
///
///
[AWSProperty(Required=true, Min=20, Max=2048)]
public string ProjectVersionArn
{
get { return this._projectVersionArn; }
set { this._projectVersionArn = value; }
}
// Check to see if ProjectVersionArn property is set
internal bool IsSetProjectVersionArn()
{
return this._projectVersionArn != null;
}
}
}