bboxB = bboxcrop(bboxA,window)
crops bounding boxes from a set of input bounding boxes, bboxA, located
in the cropping area, window.

[bboxB,indices] = bboxcrop(bboxA,window)
additionally returns a vector of indices that indicate which bounding boxes in
bboxA are within the cropping window,
window.

[___] = bboxcrop(___,'OverlapThreshold',threshold)
additionally sets an overlap threshold.

Bounding boxes, specified as an M-by-4,
M-by-5, or M-by-9 nonsparse numeric matrix.
M is the number of bounding boxes. Each row of the matrix defines a
bounding box as either an axis-aligned rectangle, a rotate rectangle, or a cuboid. This
table describes the format for each bounding box.

Bounding Box

Description

Axis-aligned rectangle

Defined in pixel
coordinates as an M-by-4 numeric matrix with rows of the form
[xywh], where:

M is the number of axis-aligned rectangles.

x and y specify the upper-left corner of the
rectangle.

w specifies the width of the rectangle, which is its length
along the x-axis.

h specifies the height of the rectangle, which is its length
along the y-axis.

Rotated rectangle

Defined in spatial
coordinates as an M-by-5 numeric matrix with rows of the form
[xctryctrxlenylenyaw], where:

M is the number of rotated rectangles.

xctr and yctr specify the center of the
rectangle.

xlen specifies the width of the rectangle, which is its length
along the x-axis before rotation.

ylen specifies the height of the rectangle, which is its length
along the y-axis before rotation.

yaw specifies the rotation angle in degrees. The rotation is
clockwise-positive around the center of the bounding box.

Cuboid

Defined in spatial
coordinates as an M-by-9 numeric matrix with rows of the form
[xctryctrzctrxlenylenzlenxrotyrotzrot], where:

M is the number of cuboids.

xctr, yctr, and zctr
specify the center of the cuboid.

xlen, ylen, and zlen
specify the length of the cuboid along the x-axis,
y-axis, and z-axis, respectively, before
rotation.

xrot, yrot, and zrot
specify the rotation angles of the cuboid around the x-axis,
y-axis, and z-axis, respectively. The
xrot, yrot, and zrot
rotation angles are in degrees about the cuboid center. Each rotation is
clockwise-positive with respect to the positive direction of the associated spatial
axis. The function computes rotation matrices assuming ZYX order
Euler angles [xrotyrotzrot].

The figure shows how these values determine the position of a cuboid.

When you specify bboxA as a rectangular input, the cropping
window must be a four-element vector in the format
[x,y,width,height].

When you specify bboxA as a cuboid, the cropping window must be
an images.spatialref.Cuboid object.

threshold — Overlap threshold 1 (default) | positive scalar less than or equal to 1

Overlap threshold, specified positive scalar less than or equal to
1. The amount of overlap between transformed boxes and the area
defined by the output view is defined as:

If the computed overlap value is greater than the value of the
threshold property, then the transformed boxes are clipped to the
bounding rectangle border. Otherwise, the boxes are discarded. Lowering the threshold
can result in parts of the object getting discarded.

Warped bounding boxes, returned as an M2-by-N
matrix of M2 bounding boxes. The number of bounding boxes returned is
less than the number of bounding boxes in the input. Each row, M2, of
the matrix defines one bounding box of the same type as the input
bboxA.

indices — Indices vector of integers

Indices, returned as a vector of integers. The indices indicate which bounding boxes
in the input, bboxA, are within the cropping window.

You can also select a web site from the following list:

How to Get Best Site Performance

Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.