I have a question about tf.layers.conv3d. If I have understood correctly, it takes an input of shape
(Batch x depth x height x width x channels)
where channels should be only one; and given a filter (depth x height x width), it creates #filters different filters of the same shape to create #filters output channels and convolves them with the input to obtain an output of shape
(Batch x out_depth x out_height x out_width x num_filters)
First of all, am I right by now? The question is: it appears to me that this layer does not obey to the law binding input, output, filter and strides shapes of convolutional layers, that should be:
(W-F+2P)/S + 1
As described here. Instead, output depth width and height are always the same as inputs. What is happening? Thanks for the help!
padding='same'
– BlackBearconv3d
. The formula you posted is correct, but it may not be apparent what is the precise value of each of those parameters (also, it does not include dilation, if you are using that). Btw, you can have multiple channels on the input, it does not need to be fixed to one. – jdehesa