BatchToSpace for N-D tensors of type T.
tf.batch_to_space_nd(
    input, block_shape, crops, name=None
)
This operation reshapes the "batch" dimension 0 into M + 1 dimensions of shape
block_shape + [batch], interleaves these blocks back into the grid defined by
the spatial dimensions [1, ..., M], to obtain a result with the same rank as
the input.  The spatial dimensions of this intermediate result are then
optionally cropped according to crops to produce the output.  This is the
reverse of SpaceToBatch.  See below for a precise description.
| Args | |
|---|---|
| input | A Tensor.
N-D with shapeinput_shape = [batch] + spatial_shape + remaining_shape,
where spatial_shape has M dimensions. | 
| block_shape | A Tensor. Must be one of the following types:int32,int64.
1-D with shape[M], all values must be >= 1. | 
| crops | A Tensor. Must be one of the following types:int32,int64.
2-D with shape[M, 2], all values must be >= 0.crops[i] = [crop_start, crop_end]specifies the amount to crop from input
dimensioni + 1, which corresponds to spatial dimensioni.  It is
required thatcrop_start[i] + crop_end[i] <= block_shape[i] * input_shape[i + 1].This operation is equivalent to the following steps: 
 input_shape[1], block_shape[0], ..., input_shape[M], block_shape[M-1], input_shape[M+1], ..., input_shape[N-1]] 
 input_shape[1] * block_shape[0], ..., input_shape[M] * block_shape[M-1], input_shape[M+1], ..., input_shape[N-1]] 
 input_shape[1] * block_shape[0] - crops[0,0] - crops[0,1], ..., input_shape[M] * block_shape[M-1] - crops[M-1,0] - crops[M-1,1], input_shape[M+1], ..., input_shape[N-1]] Some examples: (1) For the following input of shape  The output tensor has shape  (2) For the following input of shape  The output tensor has shape  (3) For the following input of shape  The output tensor has shape  (4) For the following input of shape  The output tensor has shape   | 
| name | A name for the operation (optional). | 
| Returns | |
|---|---|
| A Tensor. Has the same type asinput. |