xxxxxxxxxx
import png
with open("<file_name>.png", 'wb') as fp:
writer = png.Writer(width=img.shape[1], height=img.shape[0], bitdepth=16, greyscale=False)
writer.write(fp, img.reshape(img.shape[0], -1))
xxxxxxxxxx
import png
pngdata = png.Reader("<file_name>.png").read_flat()
img = np.array(pngdata[2]).reshape((pngdata[1], pngdata[0], -1))