Mathematica Stack Exchange is a question and answer site for users of Mathematica. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am wondering how to filter out bright dots in the picture, which are caused by background noise. I have used gradient filter in mathematica but it doesn't help. Is there anyway, that I can plot intensity versus background noise with threshold control or filter it in a better way. enter image description here

share|improve this question
Do you want to filter out the "worm" too? – Dr. belisarius Jan 24 '13 at 22:47
yes, it is dust – mathew Jan 24 '13 at 22:53
What about a median filter? – s0rce Jan 25 '13 at 5:53
Does MinFilter[img, 5] give something acceptable? – kglr Jan 25 '13 at 8:50
If you had an image without any interesting dots (like a test picture), you might be able to find the differences between the two images... – cormullion Jan 25 '13 at 10:11
up vote 3 down vote accepted

We could do with ground truth data to assess the result. Is this acceptable as a first step?

         result = Binarize[TopHatTransform[i, radius], thr]], 
    {{radius, 4}, 1, 10, 1}, {{thr, .015}, 0, .2}]

enter image description here

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.