def infer_shape(self, node, input_shapes): V, W, b, d = node.inputs V_shape, W_shape, b_shape, d_shape = input_shapes dr = d[0] dc = d[1] dt = d[2] batch_size = V_shape[0] output_channels = W_shape[0] vidHeight = V_shape[1] filterHeight = W_shape[1] vidWidth = V_shape[2] filterWidth = W_shape[2] vidDur = V_shape[3] filterDur = W_shape[3] output_height = T.floor((vidHeight - filterHeight) // dr) + 1 output_width = T.floor((vidWidth - filterWidth) // dc) + 1 output_dur = T.floor((vidDur - filterDur) // dt) + 1 rval = (batch_size, output_height, output_width, output_dur, output_channels ) return [rval]
def infer_shape(self, node, input_shapes): V,W,b,d = node.inputs V_shape, W_shape, b_shape, d_shape = input_shapes dr = d[0] dc = d[1] dt = d[2] batch_size = V_shape[0] output_channels = W_shape[0] vidHeight = V_shape[1] filterHeight = W_shape[1] vidWidth = V_shape[2] filterWidth = W_shape[2] vidDur = V_shape[3] filterDur = W_shape[3] output_height = T.floor((vidHeight - filterHeight) // dr) + 1 output_width = T.floor((vidWidth - filterWidth) // dc) + 1 output_dur = T.floor((vidDur - filterDur) // dt) + 1 rval = (batch_size, output_height, output_width, output_dur, output_channels ) return [rval]