Salt and Pepper Noise Removal

Most scanned images contains noise in form of darker dots and disturbances caused by the scanning process.
If these are not removed before the feature extraction and classification, the image may mistakenly be interpreted wrong.
Salt and Pepper noise removal does just what we desire; it erases the black dots, called the Pepper, and it also fills in holes in the image, called Salt.
The method is based on two basic binary image morphological operations: Dilations and Erosions that are based on the Minkowski addition and subtraction.
Dilations: For a binary image ekvation, and ekvation the dilation of image A by B is defined as ekvation
Erosions: For a binary image ekvation, and ekvation the erosion of image A by B is defined as ekvation, where a+b are vector addition, ekvation and ekvation; i.e B* denotes the reflection of B across the origin ekvation and A' denotes the complement of A.
This may be a bit tricky to understand so here is an other way to describe it:
Dilation 2: ekvation
Erosion 2: ekvation
To simplify it even more we can from the first definitions define ekvation and obtain the relations:
ekvation :equation 1
ekvation :equation 2
Where ekvation
Suppose that B contains the origin 0, then the equation 1 says that A+B is the set of all points p such that the translate of B by the vector p intersects A. The figures below will perhaps clarify it:
Suppose that B contains the origin 0, then the equation 1 says that A+B is the set of all points p such that the translate of B by the vector p intersects A. The figures below will perhaps clarify it:
bild
bild
The set A-B consists of all points p such that the translate of B by the vector p is completely contained inside A. This is illustrated like this:
bild
With these two operations, the dilation and erosion, we can define two other operations, the open and close operation.
The open operation is an erosion followed by a dilation and as defined as follows:bild.
The close operation is a dilation followed by a erosion: bild.
Opening an image will eliminate small islands, sharp peaks and thin lines. Closing an image will fuse narrow breaks, close small holes and smooth contours.
If we then do this in the right order we will get great results. First perform an opening of A by B, this will remove all the black dots (the pepper), then perform a closing on A by B and all holes will be filled (the salt). For example, if we have a scanned image, A, that look like this:
bild
and a structuing element B:
bild
Then with the Salt and Pepper removing we will end up with something like this:
bild
Area:
Area is the total # of On pixels in the binary image. As we have discussed about the binary image and what the pixels and their intensity values. A pixel in the binary image has one of two values i.e., either 1 or 0 where 1 demonstrates a white pixel and 0 for the black one. Now area in an image is the total nomber of On pixels in the image. We browse through the whole image and calculate the total number of pixels in the image.
C# Sample Program:
Guidelines for Use
To illustrate Conversion of Color Image to Grayscale image, we start with a simple image containing some distinct artificial objects(specifically text)
Now we apply Grayscale conversion to the image to convert it to Grayscale image.
Now we apply Grayscale conversion to the image to convert it to Grayscale image.
Now we apply Binary conversion to the image to convert it to Binary image.
  • 0 Users Found This Useful
Was this answer helpful?

Related Articles

Basic Image Processing in Csharp

The C# provides a good support for processing on the image, and the purpose of this article...

Implementation Of Branch And Bound Algorithm

What is Branch and Bound Algorithm? These notes follow the discussion of branch and...

Implementation of Calculating the RTS Invariant Moments Of Area

Why Using Moments of Area? It is seen that the usage of moments of area highly...

Conversion of a Color Image to a Grayscale Image

What is a Color Image? It is possible to construct (almost) all visible colors by...

GrayLevel Image Contras Stretching in C#

Overview Contrast stretching (often called normalization) is a simple image...