Computes a 2-D convolution given 4-D `input`

and `filter`

tensors.

tf.raw_ops.Conv2D( input, filter, strides, padding, use_cudnn_on_gpu=True, explicit_paddings=[], data_format='NHWC', dilations=[1, 1, 1, 1], name=None )

Given an input tensor of shape `[batch, in_height, in_width, in_channels]`

and a filter / kernel tensor of shape `[filter_height, filter_width, in_channels, out_channels]`

, this op performs the following:

- Flattens the filter to a 2-D matrix with shape
`[filter_height * filter_width * in_channels, output_channels]`

. - Extracts image patches from the input tensor to form a
*virtual*tensor of shape`[batch, out_height, out_width, filter_height * filter_width * in_channels]`

. - For each patch, right-multiplies the filter matrix and the image patch vector.

In detail, with the default NHWC format,

output[b, i, j, k] = sum_{di, dj, q} input[b, strides[1] * i + di, strides[2] * j + dj, q] * filter[di, dj, q, k]

Must have `strides[0] = strides[3] = 1`

. For the most common case of the same horizontal and vertices strides, `strides = [1, stride, stride, 1]`

.

Args | |
---|---|

`input` | A `Tensor` . Must be one of the following types: `half` , `bfloat16` , `float32` , `float64` , `int32` . A 4-D tensor. The dimension order is interpreted according to the value of `data_format` , see below for details. |

`filter` | A `Tensor` . Must have the same type as `input` . A 4-D tensor of shape `[filter_height, filter_width, in_channels, out_channels]` |

`strides` | A list of `ints` . 1-D tensor of length 4. The stride of the sliding window for each dimension of `input` . The dimension order is determined by the value of `data_format` , see below for details. |

`padding` | A `string` from: `"SAME", "VALID", "EXPLICIT"` . The type of padding algorithm to use. |

`use_cudnn_on_gpu` | An optional `bool` . Defaults to `True` . |

`explicit_paddings` | An optional list of `ints` . Defaults to `[]` . If `padding` is `"EXPLICIT"` , the list of explicit padding amounts. For the ith dimension, the amount of padding inserted before and after the dimension is `explicit_paddings[2 * i]` and `explicit_paddings[2 * i + 1]` , respectively. If `padding` is not `"EXPLICIT"` , `explicit_paddings` must be empty. |

`data_format` | An optional `string` from: `"NHWC", "NCHW"` . Defaults to `"NHWC"` . Specify the data format of the input and output data. With the default format "NHWC", the data is stored in the order of: [batch, height, width, channels]. Alternatively, the format could be "NCHW", the data storage order of: [batch, channels, height, width]. |

`dilations` | An optional list of `ints` . Defaults to `[1, 1, 1, 1]` . 1-D tensor of length 4. The dilation factor for each dimension of `input` . If set to k > 1, there will be k-1 skipped cells between each filter element on that dimension. The dimension order is determined by the value of `data_format` , see above for details. Dilations in the batch and depth dimensions must be 1. |

`name` | A name for the operation (optional). |

Returns | |
---|---|

A `Tensor` . Has the same type as `input` . |

© 2020 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/versions/r2.4/api_docs/python/tf/raw_ops/Conv2D