tf.compat.v1.image.crop_and_resize
Stay organized with collections
Save and categorize content based on your preferences.
Extracts crops from the input image tensor and resizes them.
tf.compat.v1.image.crop_and_resize(
image,
boxes,
box_ind=None,
crop_size=None,
method='bilinear',
extrapolation_value=0,
name=None,
box_indices=None
)
Extracts crops from the input image tensor and resizes them using bilinear
sampling or nearest neighbor sampling (possibly with aspect ratio change) to a
common output size specified by crop_size
. This is more general than the
crop_to_bounding_box
op which extracts a fixed size slice from the input image
and does not allow resizing or aspect ratio change.
Returns a tensor with crops
from the input image
at positions defined at the
bounding box locations in boxes
. The cropped boxes are all resized (with
bilinear or nearest neighbor interpolation) to a fixed
size = [crop_height, crop_width]
. The result is a 4-D tensor
[num_boxes, crop_height, crop_width, depth]
. The resizing is corner aligned.
In particular, if boxes = [[0, 0, 1, 1]]
, the method will give identical
results to using tf.image.resize_bilinear()
or
tf.image.resize_nearest_neighbor()
(depends on the method
argument) with
align_corners=True
.
Args |
image
|
A Tensor . Must be one of the following types: uint8 , uint16 , int8 , int16 , int32 , int64 , half , float32 , float64 .
A 4-D tensor of shape [batch, image_height, image_width, depth] .
Both image_height and image_width need to be positive.
|
boxes
|
A Tensor of type float32 .
A 2-D tensor of shape [num_boxes, 4] . The i -th row of the tensor
specifies the coordinates of a box in the box_ind[i] image and is specified
in normalized coordinates [y1, x1, y2, x2] . A normalized coordinate value of
y is mapped to the image coordinate at y * (image_height - 1) , so as the
[0, 1] interval of normalized image height is mapped to
[0, image_height - 1] in image height coordinates. We do allow y1 > y2 , in
which case the sampled crop is an up-down flipped version of the original
image. The width dimension is treated similarly. Normalized coordinates
outside the [0, 1] range are allowed, in which case we use
extrapolation_value to extrapolate the input image values.
|
box_ind
|
A Tensor of type int32 .
A 1-D tensor of shape [num_boxes] with int32 values in [0, batch) .
The value of box_ind[i] specifies the image that the i -th box refers to.
|
crop_size
|
A Tensor of type int32 .
A 1-D tensor of 2 elements, size = [crop_height, crop_width] . All
cropped image patches are resized to this size. The aspect ratio of the image
content is not preserved. Both crop_height and crop_width need to be
positive.
|
method
|
An optional string from: "bilinear", "nearest" . Defaults to "bilinear" .
A string specifying the sampling method for resizing. It can be either
"bilinear" or "nearest" and default to "bilinear" . Currently two sampling
methods are supported: Bilinear and Nearest Neighbor.
|
extrapolation_value
|
An optional float . Defaults to 0 .
Value used for extrapolation, when applicable.
|
name
|
A name for the operation (optional).
|
Returns |
A Tensor of type float32 .
|
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. Some content is licensed under the numpy license.
Last updated 2023-10-06 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2023-10-06 UTC."],[],[]]