#include <image_ops.h>
Extracts crops from the input image tensor and bilinearly resizes them (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 interpolation) to a fixed size = [crop_height, crop_width]
. The result is a 4-D tensor [num_boxes, crop_height, crop_width, depth]
.
Arguments:
[batch, image_height, image_width, depth]
. Both image_height
and image_width
need to be positive.[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.[num_boxes]
with int32 values in [0, batch)
. The value of box_ind[i]
specifies the image that the i
-th box refers to.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.Optional attributes (see Attrs
):
Returns:
Output
: A 4-D tensor of shape [num_boxes, crop_height, crop_width, depth]
. Constructors and Destructors | |
---|---|
CropAndResize(const ::tensorflow::Scope & scope, ::tensorflow::Input image, ::tensorflow::Input boxes, ::tensorflow::Input box_ind, ::tensorflow::Input crop_size) | |
CropAndResize(const ::tensorflow::Scope & scope, ::tensorflow::Input image, ::tensorflow::Input boxes, ::tensorflow::Input box_ind, ::tensorflow::Input crop_size, const CropAndResize::Attrs & attrs) |
Public attributes | |
---|---|
crops |
Public functions | |
---|---|
node() const | ::tensorflow::Node * |
operator::tensorflow::Input() const | |
operator::tensorflow::Output() const |
Public static functions | |
---|---|
ExtrapolationValue(float x) | |
Method(StringPiece x) |
Structs | |
---|---|
tensorflow::ops::CropAndResize::Attrs | Optional attribute setters for CropAndResize. |
::tensorflow::Output crops
CropAndResize( const ::tensorflow::Scope & scope, ::tensorflow::Input image, ::tensorflow::Input boxes, ::tensorflow::Input box_ind, ::tensorflow::Input crop_size )
CropAndResize( const ::tensorflow::Scope & scope, ::tensorflow::Input image, ::tensorflow::Input boxes, ::tensorflow::Input box_ind, ::tensorflow::Input crop_size, const CropAndResize::Attrs & attrs )
::tensorflow::Node * node() const
operator::tensorflow::Input() const
operator::tensorflow::Output() const
Attrs ExtrapolationValue( float x )
Attrs Method( StringPiece x )
© 2017 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/cc/class/tensorflow/ops/crop-and-resize.html