1. A method of denoising an image programmed in a memory of a device comprising: a. acquiring an image wherein the image contains noise; b. splitting the noise into a plurality of sub-bands of noise; c. determining a threshold for each sub-band of noise wherein the threshold is a multiple of a predicted noise amount, wherein the predicted noise amount is determined based on a computation comprising a conversion of a pixel value using a lookup table and interpolation; and d. filtering out the noise below the threshold for each sub-band of noise.