We describe a new method for noise suppression and edge enhancement in digital images based on the wavelet transform. At each resolution, the coefficients associated with noise are modeled by Gaussian random variables. Coefficients associated with edges are modeled by generalized Gaussian random variables, and a shrinkage function is assembled based on posterior probabilities. The shrinkage functions at consecutive scales are combined, and then applied to the wavelets coefficients. Finally, a diffusion equation is applied to the modified wavelet coefficients, to preserve edges that are not isolated. This method is adaptive to different amounts of noise in the image, and tends to be more robust to larger noise contamination than comparable techniques. Compared to a state of the art method that does not require the user to adjust parameters, as in our case, our method presents a superior performance.