1. A computer-implemented method for denoising image data, the method comprising: receiving, a computer system, an input image comprising noisy image data; denoising, by the computer system, the input image using a deep multi-scale network comprising a plurality of multi-scale networks sequentially connected, wherein each respective multi-scale network performs a denoising process comprising: dividing the input image into a plurality of image patches, denoising the plurality of image patches over multiple levels of decomposition using a threshold-based denoising process, wherein the threshold-based denoising process denoises each respective image patch using a threshold which is scaled according to an estimation of noise present in the respective image patch; assembling a denoised image by averaging over the plurality of image patches.