# tensorflow::ops::FusedPadConv2D Class Reference

# tensorflow::ops::FusedPadConv2D

`#include <nn_ops.h>`

Performs a padding as a preprocess during a convolution.

## Summary

Similar to FusedResizeAndPadConv2d, this op allows for an optimized implementation where the spatial padding transformation stage is fused with the im2col lookup, but in this case without the bilinear filtering required for resizing. Fusing the padding prevents the need to write out the intermediate results as whole tensors, reducing memory pressure, and we can get some latency gains by merging the transformation calculations. The data_format attribute for [Conv2D](https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/ops/conv2-d#classtensorflow_1_1ops_1_1_conv2_d) isn't supported by this op, and 'NHWC' order is used instead. Internally this op uses a single per-graph scratch buffer, which means that it will block if multiple versions are being run in parallel. This is because this operator is primarily an optimization to minimize memory usage.

Arguments:

- scope: A [Scope](https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object
- input: 4-D with shape `[batch, in_height, in_width, in_channels]`.
- paddings: A two-column matrix specifying the padding sizes. The number of rows must be the same as the rank of `input`.
- filter: 4-D with shape `[filter_height, filter_width, in_channels, out_channels]`.
- strides: 1-D of length 4. The stride of the sliding window for each dimension of `input`. Must be in the same order as the dimension specified with format.
- padding: The type of padding algorithm to use.

<br />

Returns:

- `https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output`: The output tensor.

<br />

| ### Constructors and Destructors ||
|---|---|
| `https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/ops/fused-pad-conv2-d#classtensorflow_1_1ops_1_1_fused_pad_conv2_d_1a29433f179ebfe80f5713baf602db0fb2(const ::https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope & scope, ::https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input input, ::https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input paddings, ::https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input filter, StringPiece mode, const gtl::ArraySlice< int > & strides, StringPiece padding)` ||

| ### Public attributes ||
|---|---|
| `https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/ops/fused-pad-conv2-d#classtensorflow_1_1ops_1_1_fused_pad_conv2_d_1a74eadb05eed0b4ac42f88868b346c2c9` | `https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation` |
| `https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/ops/fused-pad-conv2-d#classtensorflow_1_1ops_1_1_fused_pad_conv2_d_1a9b745852fc93e6ac7cad86ed8d30355d` | `::https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` |

| ### Public functions ||
|---|---|
| `https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/ops/fused-pad-conv2-d#classtensorflow_1_1ops_1_1_fused_pad_conv2_d_1a834a7fdc26dccf20c023a8a8f52aa70c() const ` | `::tensorflow::Node *` |
| `https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/ops/fused-pad-conv2-d#classtensorflow_1_1ops_1_1_fused_pad_conv2_d_1a041ca6414035fd6c7c4526905e111b55() const ` | ` `` ` |
| `https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/ops/fused-pad-conv2-d#classtensorflow_1_1ops_1_1_fused_pad_conv2_d_1ab21cc1c1b746da897e2ee793cb9320a4() const ` | ` `` ` |

## Public attributes

### operation

```
Operation operation
```

### output

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

## Public functions

### FusedPadConv2D

```
 FusedPadConv2D(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input paddings,
  ::tensorflow::Input filter,
  StringPiece mode,
  const gtl::ArraySlice< int > & strides,
  StringPiece padding
)
```

### node

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

### operator::tensorflow::Input

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

### operator::tensorflow::Output

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