Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Noise Removal

Hello,

 

I have an image that I am trying to remove surrounding noise from. For example in below image, I want to keep only big black circle and remaining noise must be removed. I have tried thresholding but since every image I take will have a different noise level, the image does not have same black circle all the time because some time I will be left with some noise around it if I don't change the thresholding manually. Is there any way to use manual loops or low pass filter or particle analysis where the system keeps only center big circle and removes everything around it and convert it to white background? 

 

Thanks

 

 

0 Kudos
Message 1 of 5
(110 Views)

Do you know the size of the filled circle?

0 Kudos
Message 2 of 5
(80 Views)

If you are asking about the pixel count in the circle than I will say it can be anywhere between 900 to 1100 dark pixels. It changes a little in different images.

I was just thinking if there is a way to put a range, for example: keep the pixels with intensities <100 (only dark pixels because its an 8 bit image) and only if the pixels are grouped in the range of 900 to 1100 side by side. And convert all other pixels to white. This is just in my mind right now but not sure if it is possible to do something similar in LabVIEW.

0 Kudos
Message 3 of 5
(54 Views)

@VeMo wrote:

This is just in my mind right now but not sure if it is possible to do something similar in LabVIEW.


An algorithm will no depend on the programming language.

 

What are the problem parameters?

 

  • Guaranteed only one such dark spot or could there be more than one?
  • It is always almost black or could it be light grey over white background?
  • What parameters do you want to get out of his (center position, radius, etc.)
  • Do you want sub-pixel resolution (e.g. the center could be halfway between in both x and y)
  • Are you just looking for a cosmetically cleaner image?
  • Are there boundaries on the required processing speed?
  • It is always round or could it be elliptical?
  • etc.

 

0 Kudos
Message 4 of 5
(43 Views)

What are the problem parameters?

 

• Guaranteed only one such dark spot or could there be more than one? 

 

If you are talking about the main big black circle, then yes there can be one or more than one but the intention is to keep only big black/grey circles and remove noise around it. 

 

• It is always almost black or could it be light grey over white background?

 

No it can be grey too and that is why I was thinking if I can threshold and tell system take anything with certain pixel intensity or lower (for example keep <100) and convert everything else to white.

 

• What parameters do you want to get out of his (center position, radius, etc.)

 

Yes, center position of the main big circle.

 

• Do you want sub-pixel resolution (e.g. the center could be halfway between in both x and y)

 

Yes if possible

 

• Are you just looking for a cosmetically cleaner image?

 

Yes, the image with main circle in black/grey pixels and the rest of the noise removed or converted to white. I don't want to change pixel intensities of the pixels in the main circle. Keep the pixels in the circle as is just convert everything around it to white. 

 

• Are there boundaries on the required processing speed?

 

No speed issues.

 

• It is always round or could it be elliptical?

 

It can be elliptical that is why I was thinking to have a range of total number of pixels between 900 to 1100 and we don't have to worry about its little weird shape. 

 

• etc.

0 Kudos
Message 5 of 5
(32 Views)