BoundingBox¶
-
class
BoundingBox
(start_x, start_y, end_x, end_y)¶ A rectangular bounding box.
Checking if two BoundingBox instances are equal checks the equivalence of their coordinates.
Multiplying a BoundingBox by a scalar scales the bounding box and position. This can be helpful when scaling an image up or down.
- Parameters
start_x (
int
) – The starting x value.start_y (
int
) – The starting y value.end_x (
int
) – The ending x value.end_y (
int
) – The ending y value.
-
classmethod
from_width_height_center
(width, height, center)¶
-
property
start_x
¶ The starting x value.
- Return type
int
-
property
start_y
¶ The starting y value.
- Return type
int
-
property
end_x
¶ The ending x value.
- Return type
int
-
property
end_y
¶ The ending y value.
- Return type
int
-
property
width
¶ The width of the bounding box.
-
property
height
¶ The height of the bounding box.
-
property
area
¶ The area of the bounding box.
-
property
center
¶ The center of the bounding box.
-
property
opencv_bbox
¶ Converts bounding box to OpenCV’s cv2.rectangle() format.
-
compute_distance
(other_box)¶ Compute the distance between the center of this and another bounding box.
- Parameters
other_box (
BoundingBox
) – The second bounding box for the distance computation.- Returns
The Euclidean distance between bounding box centers.
-
get_intersection
(other_box)¶ Get the intersection of this box and other_box represented as another bounding box.
- Parameters
other_box (
BoundingBox
) – The overlapping box.- Returns
The bounding box representing the intersection of this box and other_box.
-
compute_overlap
(other_box)¶ Compute the fraction of this box which is overlapped by other_box.
- Parameters
other_box (
BoundingBox
) – The overlapping box.- Returns
A value [0.0, 1.0] indicating the fraction of this box that is overlapped by other_box.
-
compute_iou
(other_box)¶ Compute the IOU between this and the other_box.
- Parameters
other_box (
BoundingBox
) – The other box to use for IOU computation.- Returns
A value [0.0, 1.0] indicating the IOU between this and the other_box.
-
scale_about_center
(scale_x=1.0, scale_y=1.0)¶ Scale the bounding box along the x and y axes about the center of the bounding box.
- Parameters
scale_x (
float
) – scaling factor along the x axisscale_y (
float
) – scaling factor along the y axis
-
scale_with_image
(scale_x=1.0, scale_y=1.0)¶ Scale the bounding box/boxes along with the image. This is useful to draw scaled bounding boxes on scaled images. The scaling factors are computed as a ratio of resized image dimensions to the prior image dimensions.
For ex: scale_x = new image width / old image width
- Parameters
scale_x (
float
) – scaling factor along the x axisscale_y (
float
) – scaling factor along the y axis