I want to estimate noise level of an input image.
I have made some histogram of noisy and original images and compared them, and by looking at histogram in two different stage of an image one can tell which one is noisy and what type of noise is present. (by saying noise, i mean common types of noise like Gaussian, Poisson, Speckle and so on)
I want to know if there is a way to detect noise model and then estimate level of noise (base on specific noise model like std for Gaussian) from image histogram? like identify density function? or maybe this task needs input in other form than spatial domain, like it needs to transform image and then maybe perform the task.
I am using an image with very low changes in pixel values like a gradient and then i apply noises myself to compare histograms of noise-free and noisy images.
Edit: For clearance, i know you can detect noise based on looking at histogram. I am looking for a way that i don't do this "visually" myself. I want to detect noise and maybe density function, after that do something if it is Gaussian or Poisson or... .
I appreciate if anyone can give any hints about what is the right path to solve this problem.

