Can a fully convolutional network always return an image of the same size as the original?
I ended up using a work around.
I set up the network so that an C x C (i.e. 320 x 320) input would output a C x C mask for some constant C (in my case it was 320).
I then resized the image I wanted to pass in to C x C, and then resized the output back to the original size of the Image.