Now we will apply a strided convolution to our previously described padded example and calculate the convolution where `p = 1, s = 2`

Previously when we used `strides = 1`

, our slided window moved by 1 position, with `strides = s`

it moves by `s`

positions (you need to calculate `s^2`

elements less. But in our case we can take a shortcut and do not perform any computations at all. Because we already computed the values for `s = 1`

, in our case we can just grab each second element.

So if the solution is case of `s = 1`

was

in case of `s = 2`

it will be:

Check the positions of values 14, 2, 12, 6 in the previous matrix. The only change we need to perform in our code is to change the strides from 1 to 2 for width and height dimension (2-nd, 3-rd).

```
res = tf.squeeze(tf.nn.conv2d(image, kernel, [1, 2, 2, 1], "SAME"))
with tf.Session() as sess:
print sess.run(res)
```

By the way, there is nothing that stops us from using different strides for different dimensions.

if you want to reproduce, please indicate the source:

tensorflow – Math behind 2D convolution with advanced examples in TF – Padding and strides (the most general case) - CodeDay