Solved by Tomojit in post #4 
              
              
                @ptrblck - I also observe that when the stride is > 1 (say 2) the transpose Conv can’t reconstruct the original image size. But if I use unit stride then transpose Conv reconstructs the exact image size. See below: 
Code snippet for perfect reconstruction: 
In [1]: import torch 
In [2]: D=torch.rand…