# tensorflow::ops::CropAndResizeGradImage

`#include <image_ops.h>`

Computes the gradient of the crop_and_resize op wrt the input image tensor.

## Summary

Arguments:

- scope: A [Scope](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object
- grads: A 4-D tensor of shape `[num_boxes, crop_height, crop_width, depth]`.
- boxes: 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 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.
- image_size: A 1-D tensor with value `[batch, image_height, image_width, depth]` containing the original image size. Both `image_height` and `image_width` need to be positive.

<br />

Optional attributes (see `https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/ops/crop-and-resize-grad-image/attrs#structtensorflow_1_1ops_1_1_crop_and_resize_grad_image_1_1_attrs`):

- method: A string specifying the interpolation method. Only 'bilinear' is supported for now.

<br />

Returns:

- `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output`: A 4-D tensor of shape `[batch, image_height, image_width, depth]`.

<br />

| ### Constructors and Destructors ||
|---|---|
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/crop-and-resize-grad-image#classtensorflow_1_1ops_1_1_crop_and_resize_grad_image_1a542871b76c83a2a8ae095c5ade81ab0e(const ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope & scope, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input grads, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input boxes, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input box_ind, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input image_size, DataType T)` ||
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/crop-and-resize-grad-image#classtensorflow_1_1ops_1_1_crop_and_resize_grad_image_1a5314c519439a0018be03ae0599c320d3(const ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope & scope, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input grads, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input boxes, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input box_ind, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input image_size, DataType T, const https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/ops/crop-and-resize-grad-image/attrs#structtensorflow_1_1ops_1_1_crop_and_resize_grad_image_1_1_attrs & attrs)` ||

| ### Public attributes ||
|---|---|
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/crop-and-resize-grad-image#classtensorflow_1_1ops_1_1_crop_and_resize_grad_image_1ad757af122f700a9ab5acbd38629f83fb` | `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/crop-and-resize-grad-image#classtensorflow_1_1ops_1_1_crop_and_resize_grad_image_1adc227b21eb0d9d4ca672f34f67b7943d` | `::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` |

| ### Public functions ||
|---|---|
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/crop-and-resize-grad-image#classtensorflow_1_1ops_1_1_crop_and_resize_grad_image_1a614b37524e5b31e34837f59518d54830() const ` | `::tensorflow::Node *` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/crop-and-resize-grad-image#classtensorflow_1_1ops_1_1_crop_and_resize_grad_image_1a561ea8804d44d30b5d50d84b6619a89c() const ` | ` `` ` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/crop-and-resize-grad-image#classtensorflow_1_1ops_1_1_crop_and_resize_grad_image_1a189d45da47ace193a132f998417286d2() const ` | ` `` ` |

| ### Public static functions ||
|---|---|
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/crop-and-resize-grad-image#classtensorflow_1_1ops_1_1_crop_and_resize_grad_image_1a10a7af8fef715e541d4c1c1472871fa5(StringPiece x)` | `https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/ops/crop-and-resize-grad-image/attrs#structtensorflow_1_1ops_1_1_crop_and_resize_grad_image_1_1_attrs` |

| ### Structs ||
|---|---|
| [tensorflow::ops::CropAndResizeGradImage::Attrs](https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/ops/crop-and-resize-grad-image/attrs) | Optional attribute setters for [CropAndResizeGradImage](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/crop-and-resize-grad-image#classtensorflow_1_1ops_1_1_crop_and_resize_grad_image). |

## Public attributes

### operation

```
Operation operation
```

### output

```
::tensorflow::Output output
```

## Public functions

### CropAndResizeGradImage

```
 CropAndResizeGradImage(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input grads,
  ::tensorflow::Input boxes,
  ::tensorflow::Input box_ind,
  ::tensorflow::Input image_size,
  DataType T
)
```

### CropAndResizeGradImage

```
 CropAndResizeGradImage(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input grads,
  ::tensorflow::Input boxes,
  ::tensorflow::Input box_ind,
  ::tensorflow::Input image_size,
  DataType T,
  const CropAndResizeGradImage::Attrs & attrs
)
```

### node

```
::tensorflow::Node * node() const 
```

### operator::tensorflow::Input

```
 operator::tensorflow::Input() const 
```

### operator::tensorflow::Output

```
 operator::tensorflow::Output() const 
```

## Public static functions

### Method

```
Attrs Method(
  StringPiece x
)
```