/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Rekognition { namespace Model { /** *

Identifies the bounding box around the label, face, text, object of interest, * or personal protective equipment. The left (x-coordinate) and * top (y-coordinate) are coordinates representing the top and left * sides of the bounding box. Note that the upper-left corner of the image is the * origin (0,0).

The top and left values returned * are ratios of the overall image size. For example, if the input image is 700x200 * pixels, and the top-left coordinate of the bounding box is 350x50 pixels, the * API returns a left value of 0.5 (350/700) and a top * value of 0.25 (50/200).

The width and height * values represent the dimensions of the bounding box as a ratio of the overall * image dimension. For example, if the input image is 700x200 pixels, and the * bounding box width is 70 pixels, the width returned is 0.1.

The * bounding box coordinates can have negative values. For example, if Amazon * Rekognition is able to detect a face that is at the image edge and is only * partially visible, the service can return coordinates that are outside the image * bounds and, depending on the image edge, you might get negative values or values * greater than 1 for the left or top values.

*

See Also:

AWS * API Reference

*/ class BoundingBox { public: AWS_REKOGNITION_API BoundingBox(); AWS_REKOGNITION_API BoundingBox(Aws::Utils::Json::JsonView jsonValue); AWS_REKOGNITION_API BoundingBox& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_REKOGNITION_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Width of the bounding box as a ratio of the overall image width.

*/ inline double GetWidth() const{ return m_width; } /** *

Width of the bounding box as a ratio of the overall image width.

*/ inline bool WidthHasBeenSet() const { return m_widthHasBeenSet; } /** *

Width of the bounding box as a ratio of the overall image width.

*/ inline void SetWidth(double value) { m_widthHasBeenSet = true; m_width = value; } /** *

Width of the bounding box as a ratio of the overall image width.

*/ inline BoundingBox& WithWidth(double value) { SetWidth(value); return *this;} /** *

Height of the bounding box as a ratio of the overall image height.

*/ inline double GetHeight() const{ return m_height; } /** *

Height of the bounding box as a ratio of the overall image height.

*/ inline bool HeightHasBeenSet() const { return m_heightHasBeenSet; } /** *

Height of the bounding box as a ratio of the overall image height.

*/ inline void SetHeight(double value) { m_heightHasBeenSet = true; m_height = value; } /** *

Height of the bounding box as a ratio of the overall image height.

*/ inline BoundingBox& WithHeight(double value) { SetHeight(value); return *this;} /** *

Left coordinate of the bounding box as a ratio of overall image width.

*/ inline double GetLeft() const{ return m_left; } /** *

Left coordinate of the bounding box as a ratio of overall image width.

*/ inline bool LeftHasBeenSet() const { return m_leftHasBeenSet; } /** *

Left coordinate of the bounding box as a ratio of overall image width.

*/ inline void SetLeft(double value) { m_leftHasBeenSet = true; m_left = value; } /** *

Left coordinate of the bounding box as a ratio of overall image width.

*/ inline BoundingBox& WithLeft(double value) { SetLeft(value); return *this;} /** *

Top coordinate of the bounding box as a ratio of overall image height.

*/ inline double GetTop() const{ return m_top; } /** *

Top coordinate of the bounding box as a ratio of overall image height.

*/ inline bool TopHasBeenSet() const { return m_topHasBeenSet; } /** *

Top coordinate of the bounding box as a ratio of overall image height.

*/ inline void SetTop(double value) { m_topHasBeenSet = true; m_top = value; } /** *

Top coordinate of the bounding box as a ratio of overall image height.

*/ inline BoundingBox& WithTop(double value) { SetTop(value); return *this;} private: double m_width; bool m_widthHasBeenSet = false; double m_height; bool m_heightHasBeenSet = false; double m_left; bool m_leftHasBeenSet = false; double m_top; bool m_topHasBeenSet = false; }; } // namespace Model } // namespace Rekognition } // namespace Aws