Processing of the image data for storage, transmission and representation for ... estimate of the actual blurring function and "undo" the blur to restore the original .... of Intel Pentium III,RAM of 1 GB, hard disk capacity of 80GB,15 inches monitor,.
AN IMPULSE NOISE DETECTION ALGORITHM FOR SWITCHING MEDIAN FILTER PROJECT REPORT PHASE I Submitted by
PRADEEP.A
(070107127067)
RIGIL RAJ.M
(070107127084)
SARAVANAKUMAR.M
(070107127092)
SATHISHKUMAR.P
(070107127094)
SIJO JOHN
(070107127100)
in partial fulfillment for the award of the degree of
BACHELOR OF ENGINEERING in ELECTRONICS AND COMMUNICATION ENGINEERING TAMIL NADU COLLEGE OF ENGINEERING, COIMBATORE-641 659 ANNA UNIVERSITY OF TECHNOLOGY COIMBATORE, COIMBATORE-641 047 OCTOBER 2010
ANNA UNIVERSITY OF TECHNOLOGY COIMBATORE, COIMBATORE-641 047
BONAFIDE CERTIFICATE Certified
that
this
project
report
“AN
IMPULSE
NOISE
DETECTION
ALGORITHM FOR SWITCHING MEDIAN FILTER” is the bonafide work of “PRADEEP.A, RIGIL RAJ.M, SARAVANAKUMAR.M, SATHISHKUMAR.P and SIJO JOHN” who carried out the project work under my supervision.
SIGNATURE
SIGNATURE
Dr.M.KARTHIKEYAN, Ph.D.,
Mrs.G.SANTHANAMARI, M.E., (Ph.D)
HEAD OF THE DEPARTMENT
SUPERVISOR LECTURER
Department of ECE,
Department of ECE,
Tamilnadu College of engineering,
Tamilnadu College of engineering,
Coimbatore-641 659.
Coimbatore-641 659.
Submitted for the Anna University Examination held on ……………………..
INTERNAL EXAMINER
EXTERNAL EXAMINER
ABSTRACT Under the framework of switching median filtering, a highly effective algorithm for impulse noise detection is proposed aiming at providing solid basis for subsequent filtering. Generally impulse noise reduction is one of the important processes in the preprocessing of the digital image. Most of the primitive approaches used neighbor pixel values to replacement of the noisy pixels. But these methods affected on all the pixels including corrupted noisy pixels and uncorrupted noisy pixels. So the images loosed their vital textures such as edges. Recently researchers have been proposing classification based methods and high accurate detection methods. In this case the algorithm consists of two iterations to make the decision as accurate as possible. Two robust and reliable decision criteria are proposed for each iteration. Extensive simulation results show that the false alarm rate and miss detection rate of the proposed algorithm are both very low and substantially outperform existing state-of-the-art algorithms. At the same time, the proposed algorithm is simple to realize and the proposed algorithm is simulated using MATLAB.
ii
TABLE OF CONTENTS CHAPTER NO.
1
2
TITLE
PAGE NO.
ABSTRACT
ii
LIST OF FIGURES
vi
LIST OF TABLES
vii
LIST OF ABBREVIATIONS
viii
INTRODUCTION
1
1.1 NEED FOR THE PROJECT
1
1.2 MOTIVATION
2
1.3 ORIGINAL CONTRIBUTIONS OF THE THESIS
2
1.4 ORGANIZATION OF THE PROJECT
3
SYSTEM ANALYSIS
5
2.1.EXISTING SYSTEM
5
2.1.1. Drawbacks
6
2.2 PROPOSED SYSTEM
7
2.3 FEASIBILITY STUDY
7
2.3.1 Economical feasibility
7
2.3.2 Operational feasibility
8
2.3.3 Technical feasibility
8
iii
3
4
SYSTEM SPECIFICATION
9
3.1.HARDWARE REQUIREMENTS
9
3.2.SOFTWARE REQUIREMENTS
9
SOFTWARE DESCRIPTION
10
4.1 MATLAB DESCRIPTION
10
4.2 FEATURES
11
4.3 IMAGE PROCESSING TOOL BOX
12
4.4 FEATURES OF IMAGE PROCESSING TOOL BOX
5
12
4.4.1 Displaying and Exploring Images
13
4.4.2 Pre-processing and Post-processing Images
14
4.4.3 Image Analysis
14
4.4.4 Image Enhancement
15
4.4.5 Image Deblurring
17
PROJECT DESCRIPTION
18
5.1 PROBLEM DEFINITION
18
5.2 OVERVIEW OF THE PROJECT
18
iv
5.3 DESCRIPTION OF THE ALGORITHM
6
5.3.1Detection of boundary and noisy pixels
20
5.3.2 Validation of detected noisy pixels
22
5.4 DATA FLOW DIAGRAM
23
5.5 DATA BASE DESIGN
25
RESULTS AND COMPARISON
28
6.1 SIMULATION RESULTS
28
6.1.1 Output Images
7
20
30
6.2 PERFORMANCE ANALYSIS
33
CONCLUSION
35
7.1 FUTURE ENHANCEMENT
35
REFERENCES
36
v
LIST OF FIGURES FIGURE NO.
TITLE
4.1
A TYPICAL INTERACTIVE SESSION USING IMAGE TOOL
4.2
13
PERFORMING CONNECTED COMPONENTS ANALYSIS
4.3
15
IMAGE OF THE SUN USING DEBLURRING ALGORITHMS
5.1
16
A BASIC MODEL OF THE IMAGE RESTORATION PROCESS
5.2
PAGE NO.
17
FUNDAMENTAL STEPS IN DIGITAL IMAGE PROCESSING
23
5.3
THE FLOW DIAGRAM OF PROPOSED ALGORITHM
24
5.4
STANDARD TESTING IMAGES USED IN EXISTING ALGORITHMS
5.5
25
STANDARD TESTING IMAGES USED IN PROPOSED ALGORITHM
5.6
26
FOUR DIRECTIONAL CONVOLUTIONARY KERNELS
27
6.1
ORIGINAL IMAGE
30
6.2
NOISY IMAGE
31
6.3
DENOISED IMAGE
32
vi
LIST OF TABLES TABLE NO. 5.1
TITLE NUMBERS OF MISS DETECTION AND FALSE ALARM FOR LENA & BABOON
5.2
PAGE NO.
33
NUMBERS OF MISS DETECTION AND FALSE ALARM FOR BRIDGE &PEPPERS
vii
34
LIST OF ABBREVIATIONS ACWM
Adaptive impulse detector with Center- Weighted Mean
ATMA
Alpha-Trimmed Mean-based Approach
BDND
Boundary Discriminative Noise Detection
BLAS
Basic Linear Algebra Subprograms
CWM
Center Weighted Median Filter
DBA
Decision Based Algorithm
DCT
Discrete Cosine Transform
DICOM
Digital Imaging and COmmunication in Medicine
DWM
Directional Weighted Median Filter
EDPA
Efficient Detail-Preserving Approach
EEPA
Efficient Edge-Preserving Approach
EISPACK
EIgen vector Solution PACKage
FFT
Fast Fourier Transform
GUI
Graphical User Interface
ICC
International Color Consortium
LINPACK
LINear algebra PACKage
MSE
Mean Square Error
OCS
Open Close Sequence
PSNR
Peak Signal to Noise Ratio
SAWM
Switching based Adapted Weighted Mean
SMF
Switching Median Filter
TSM
Tri-state Median Filter
viii
CHAPTER 1
INTRODUCTION 1.1 NEED FOR THE PROJECT: Pictures are the most common and convenient means of conveying or transmitting information. A picture is worth a thousand words. Pictures concisely convey information about positions, sizes and inter-relationship between objects. They portray spatial information that we can recognize as objects. Human beings are good at deriving information from such images, because of our innate visual and mental abilities. About 75% of the information received by human is in pictorial form. And hence processing of such images has become one of the most important aspects. With the fast computers and signal processors, digital image processing has become the most common form of image processing and generally, is used because it is not only the most versatile method, but also the cheapest and a most promising area of research in electronics. Interests in digital image processing methods stem from two principal applications areas: Improvement of pictorial information for human interpretation. Processing of the image data for storage, transmission and representation for autonomous machine perception. This paper deals with the image restoration which is a highly developing and gaining in importance because of the significant increase in the use of digital images over the internet and in enhancement of the images in various fields of research like. Medical applications and Defence applications. Science and engineering fields. The image processing is considered to be very important in these fields for the pre-processing and the post-processing processes.
1
1.2 MOTIVATION: The acquisition or transmission of digital images through sensors or communication channels is often interfered by impulse noise. It is imperative and even indispensable, to remove these corrupted pixels to facilitate subsequent image processing operations, such as edge detection, image segmentation and object recognition. In digital image processing, noise reduction is one of basic pre-processing steps usually include image enhancement methods. The aim of impulse noise reduction is to suppress the noise while preserving the important fine details and edges which are the two different boundary regions. The performance of some tasks in next levels such as segmentation/classification for various applications for example biometric recognition depends on the success of noise reduction in previous level. The purpose of image restoration is to "compensate for" or "undo" defects which degrade an image. Degradation comes in many forms such as motion blur, noise and camera misfocus. In cases like motion blur, it is possible to come up with a very good estimate of the actual blurring function and "undo" the blur to restore the original image. In cases where the image is corrupted by noise, the best we may hope to do is to compensate for the degradation it caused. In this project, a new algorithm for effective restoration of degraded images is introduced. 1.3 ORIGINAL CONTRIBUTIONS OF THE THESIS: The main parameters to be considered during restoration of a distorted image are as follows: Miss detection rate: The rate at which the noisy pixels in the corrupted image are missed during the process of detection of noisy pixels. False alarm rate: The rate at which the noise free pixels are indicated wrongly as noisy pixels.
2
Peak Signal to Noise Ratio (PSNR): The phrase peak signal-to-noise ratio, often abbreviated PSNR, is an engineering term for the ratio between the number of noise free pixels to the number of noisy pixels of a corrupted image maximum possible power of a signal and the power of corrupting noise that affects the fidelity of its representation. Noise density: The amount of noise added to the original image. Processing time: The time required for the complete execution of the program. The contributions of this thesis can be generalized as follows: The algorithm has high ability in identifying impulse noise thereby achieving zero miss detection rates while keeping the false alarm detection rate at a rather lower level and also achieving high PSNR. The paper proposes a new and improved impulse noise detection algorithm based on the BDND detector. Like BDND, the proposed algorithm also adopts the coarse-to-fine strategy. This algorithm is more powerful to discover impulse noise and corrupted pixels have little chance to be omitted 1.4 ORIGANIZATION OF THE PROJECT: The thesis is composed of seven chapters. The structure is as follows: Following the chapter 1, in chapter 2, we introduce the concept of system analysis. In addition, we introduce the some existing system and drawbacks. We also introduce the proposed system and feasibility study. In chapter 3, we describe the system specifications for both hardware and software requirements. In chapter 4, we describe the MATLAB software in basic applications in image processing and numerical calculations along with the Image Processing Toolbar and its features.
3
In chapter 5, we introduce the image degradation model and description of the problem. In addition we introduce the basic two stages of the proposed algorithm including the two steps followed in detection. We also discuss about the data flow diagrams and data base designs in details that are used in the project. In chapter 6, simulation results and the performance analysis comparisons between the existing and proposed algorithm are introduced.
4
CHAPTER 2
SYSTEM ANALYSIS 2.1 EXISTING SYSTEM: The main approach for removing impulse noise is to use median-based filters. Since filtering is applied to all the pixels in the images, they tend to modify both noise and noise-free pixels. Consequently, some desirable details can be removed. To overcome this problem, many modified forms of median filters were proposed among which are the weighted median filter and the Center Weighted Median (CWM) filter. Those filters tend to work well with low noise level, but poorly for highly corrupted images. To solve this problem, the SWitching Median (SWM) filter was introduced. The main idea of the SWM is to use an impulse detector before filtering. This detector is based on an a priori threshold value to decide if a median filter is to be applied or not. Next, many other approaches were proposed such as Tri-State Median (TSM) filter and more recently, Alpha-Trimmed Mean-based Approach (ATMA) , Directional Weighted Median (DWM) filter and Modified SWitching Median (MSWM) filter . All of these filters usually perform well in terms of Peak Signal-to-Noise Ratio (PSNR) and Mean Absolute Error (MAE). Recently, Luo proposed an Efficient Detail-Preserving Approach (EDPA) based on alpha-trimmed mean statistical estimator. Similarly, an Efficient Edge-Preserving Algorithm (EEPA) is introduced for the removal of salt-and-pepper noise without degrading image details. Then, Chen and Wu proposed the Adaptive impulse detector with Center-Weighted Median (ACWM) to effectively remove salt-and-pepper noise. These methods only perform well when an image is corrupted with 50% of saltand-pepper noise or lower. On the other hand, the Decision-Based Algorithm (DBA) and the Open-Close Sequence (OCS) based on mathematical morphology are shown to be 5
able to high-density of salt and pepper noise corruption, but at the expense of new image details or high computational time. 2.1.1 Drawbacks: The principle drawback is that they have limited performance in terms of false alarm and miss detections. Hence, they cannot preserve the image details and edges, especially when the noise is high. Median filter and other versions of median filters have a good ability, in the low noise ratios and on the other hands in case of the high noise ratio, these methods causes blurring image and actually destroys vital textures. In these cases, the relationship between noise reduction and preservation of important details of image is very important and needs proper algorithms for noise reduction. An adaptive order statistics filter is proposed for gamma corrupted image sequence. This technique estimates the weights of an adaptive order statistics estimator that adapts to the probability density function of the noise. This approach is quite successful in handling the signal dependent noise. Impulse noise can also be removed using higher order statistics. But this method involves computation of higher order statistical terms, which are computationally expensive. The EDPA, EEPA and ACWN methods only perform well when an image is corrupted with 50% of salt and pepper noise or lower. On the other hand, the DecisionBased Algorithm (DBA) and the Open-Close Sequence (OCS) based on mathematical morphology are shown to be able to high-density of salt and pepper noise corruption, but at the expense of new image details or high computational time.
6
2.2 PROPOSED SYSTEM: In this paper, we propose a new, two stage impulse noise detection algorithm based on the BDND detector. In the first stage like BDND, the proposed algorithm also adopts the coarse-to-fine strategy. In the second stage, we redefine the decision rule by utilizing the characteristics of the impulse noise model. And in the second stage, we propose a validation criterion based on a group of newly designed convolutionary kernels. Extensive simulation results show that the proposed detectors false alarm rate and miss detection rate are both amazingly low even when noise density is up to 90% and substantially outperforms existing state-of-the-art algorithms. At the same time, the proposed algorithm is simple in representation as it is intuitive and it is easy to implement and realize. And the proposed method has great superiority over the state-of-the-art methods and undoubtedly will provide solid basis for subsequent filtering stage. 2.3 FEASIBILITY STUDY: A feasibility study is an evaluation of a proposal designed to determine the difficulty in carrying out a designated task. Generally, a feasibility study precedes technical development and project implementation. In other words, a feasibility study is an evaluation or analysis of the potential impact of a proposed project. Feasibility analysis carried out for this project is as follows, 2.3.1 Economical feasibility: For any system if the expected benefits equal or exceed the expected costs, the system can be judged to be economically feasible. In economic feasibility, cost benefit analysis is done in which expected costs and benefits are evaluated. Economic analysis is used for evaluating the effectiveness of the proposed system. In economic feasibility, the most important is cost-benefit analysis. An impulse noise detection algorithm for switching median filters is computationally expensive, but it is simulated and implemented in a minimum hardware and software requirements and there by seems to 7
be an exceedingly effective and accurate algorithm for impulse noise detection methods and this proposed scheme provides better image restoration comparison with the other existing conventional methods. 2.3.2 Operational feasibility: Operational feasibility is a measure of how well a proposed system solves the problems and takes advantage of the opportunities identified during scope definition and how it satisfies the requirements identified in the requirements analysis phase of system development. The highly effective switching median filter behavior is in principle simpler and it is easy to implement and preserve image details by selecting only “noise pixels” for processing and will speed up the filtering process. In addition, the usage of the kernels shows amazing accurate results even when noise density is up to 90%. 2.3.3 Technical feasibility: This project is developed using MATLAB. It is executed in the minimum hardware of Intel Pentium III,RAM of 1 GB, hard disk capacity of 80GB,15 inches monitor, 104 keys and mouse, the software MATLAB, the windows XP or Linux operating systems and that has been used in this project are found to be technically feasible.
8
CHAPTER 3
SYSTEM SPECIFICATION 3.1 HARDWARE REQUIREMENTS: PROCESSOR
:
Pentium III (or higher)
SPEED
:
2.53 GHz (or higher)
RAM
:
1 GB (or higher)
HARD DISK DRIVE
:
40 GB (or higher)
MONITOR
:
15” Color (or higher)
KEYBOARD
:
Logitech 104 Keys (or higher)
:
Windows xp3 (or higher) or Linux
3.2 SOFTWARE REQUIREMENTS: OPERATING SYSTEM
(Red hat or Ubuntu) DEVELOPMENT TOOL
:
9
MATLAB version 7 (or higher)
CHAPTER 4
SOFTWARE DESCRIPTION 4.1 MAT LAB DESCRIPTION: MATLAB is a high-level technical computing language and interactive environment for algorithm development, data visualization, data analysis and numeric computation. Using the MATLAB product, we can solve technical computing problems faster than with traditional programming languages, such as C, C++ and FORTRAN. MATLAB is an integrated technical computing environment that combines numeric computation, advanced graphics and visualization and a high-level programming language. The MATLAB can be used in a wide range of applications, including signal and image processing, communications, control design, test and measurement, financial modeling and analysis and computational biology. Add-on toolboxes (collections of special-purpose MATLAB functions, available separately) extend the MATLAB environment to solve particular classes of problems in these application areas. MATLAB provides a number of features for documenting and sharing our work. We can integrate our MATLAB code with other languages and applications and distribute our MATLAB algorithms and applications. MATLAB is an interactive system whose basic data element is an array that does not require dimensioning. It allows us to solve many technical computing problems, especially those with matrix and vector formulations, in a fraction of the time it would take to write a program in a scalar non-interactive language such as C or FORTRAN. The name MATLAB stands for matrix laboratory. MATLAB was originally written to provide easy access to matrix software developed by the LINPACK and
10
EISPACK projects. Today, MATLAB engines incorporate the LAPACK and BLAS libraries, embedding the state of the art in software for matrix computation. The MATLAB language is a high-level matrix/array language with control flow statements, functions, data structures, input/output and object-oriented programming features. It allows both "programming in the small" to rapidly create quick programs we do not intend to reuse. We can also do "programming in the large" to create complex application programs intended for reuse. 4.2 FEATURES: The various features of MATLAB are as following High-level language for technical computing. Development environment for managing code, files and data. Interactive tools for iterative exploration, design and problem solving. Mathematical functions for linear algebra, statistics, Fourier analysis, filtering, optimization and numerical integration. 2-D and 3-D graphics functions for visualizing data. Tools for building custom graphical user interfaces. Functions for integrating MATLAB based algorithms with external applications and languages, such as C, C++, FORTRAN, Java, COM and Microsoft Excel. Packages MATLAB applications as executable and shared libraries. Allows distribution of standalone executable and software components royalty-free. Allows incorporation MATLAB based algorithms into applications developed using other languages and technologies. Encrypts MATLAB code so that it cannot be viewed or modified. 11
4.3 IMAGE PROCESSING TOOLBOX: The image processing tool box is normally used to perform image processing, analysis and algorithm development. Image Processing Toolbox software provides a comprehensive set of reference-standard algorithms and graphical tools for image processing, analysis, visualization and algorithm development. We can restore noisy or degraded images, enhance images for improved intelligibility, extract features, analyze shapes and textures and register two images. Most toolbox functions are written in the open MATLAB language, giving us the ability to inspect the algorithms, modify the source code and create our own custom functions. We can perform image enhancement, image deblurring, feature detection, noise reduction, image segmentation, spatial transformations and image registration. Many functions in the toolbox are multithreaded to take advantage of multicore and multiprocessor computers. Image Processing Toolbox supports a diverse set of image types, including high dynamic range, giga pixel resolution, ICC-compliant color and tomography images. Graphical tools let we explore an image, examine a region of pixels, adjust the contrast, create contours or histograms and manipulate regions of interest (ROIs). With the toolbox algorithms we can restore degraded images, detect and measure features, analyze shapes and Textures and adjust the color balance of images. 4.4 FEATURES OF IMAGE PROCESSING TOOLBOX: Image enhancement, filtering and deblurring. Image analysis, including segmentation, morphology, feature extraction and measurement. Spatial transformations and image registration. Image transforms, including FFT, DCT, Radon and fan-beam projection. Workflows for processing, displaying and navigating arbitrarily large images. 12
Modular interactive tools, including ROI selections, histograms and distance measurements. ICC colour management. Multidimensional image processing. Image-sequence and video display. DICOM import and export. 4.4.1 Displaying and Exploring Images: Image Processing Toolbox extends MATLAB graphics to provide image display capabilities that are highly customizable. We can create displays with multiple images in a single window, annotate displays with text and graphics and create specialized displays such as histograms, profiles and contour plots. In addition to display functions, the toolbox provides a suite of interactive tools for exploring images and building GUIs.
Figure.4.1. A Typical interactive session using image tool. 13
We can view image information, zoom and pan around the image and closely examine a region of pixels. We can interactively place and manipulate ROIs, including points, lines, rectangles, polygons, ellipses and freehand shapes. We can also interactively crop, adjust the contrast and measure distances. The suite of tools is available within Image Tool or from individual functions that can be used to create customized GUIs. The Overview window (left) is used to navigate when looking at magnified views in the Image Tool. The Pixel Region window (right) superimposes pixel values on a highly magnified view. 4.4.2 Pre-processing and Post-processing images: Image
Processing
Toolbox
provides
reference-standard
algorithms
for
preprocessing and post processing tasks that solve frequent system problems, such as interfering noise, low dynamic range, out-of-focus optics and the difference in color representation between input and output devices. 4.4.3 Image analysis: Image Processing Toolbox provides a comprehensive suite of reference-standard algorithms and graphical tools for image analysis tasks such as statistical analysis, feature extraction, and property measurement. Statistical functions let you analyze the general characteristics of an image by: Computing the mean or standard deviation. Determining the intensity values along a line segment. Displaying an image histogram. Plotting a profile of intensity values.
14
Edge-detection algorithms let you identify object boundaries in an image. These algorithms include the Sobel, Prewitt, Roberts, Canny, and Laplacian of Gaussian methods. The powerful canny method can detect true weak edges without being "fooled" by noise. Image segmentation algorithms determine region boundaries in an image. We can explore many different approaches to image segmentation, including automatic thresholding, edge-based methods, and morphology-based methods such as the watershed transform, often used to segment touching objects. Morphological operators enable you to detect edges, enhance contrast, remove noise, segment an image into regions, thin regions or perform skeletonization on regions. Morphological functions in Image Processing Toolbox include: Erosion and dilation. Opening and closing. Labeling of connected components. Watershed segmentation. Reconstruction. Distance transform. 4.4.4 Image enhancement: Image enhancement techniques in Image Processing Toolbox enable us to increase the signal-to-noise ratio and accentuate image features by modifying the colors or intensities of an image. The following processes can be done: Perform decorrelation stretching. Perform histogram equalization. Remap the dynamic range. Adjust the gamma value. Perform linear, median or adaptive filtering. 15
The toolbox includes specialized filtering routines and a generalized multidimensional filtering function that handles integer image types, offers multiple boundary-padding options and performs convolution and correlation. Predefined filters and functions for designing and implementing our own linear filters are also provided.
Figure.4.2. Performing connected components analysis on an image with non-uniform background intensity using MATLAB and image processing toolbox.
16
4.4.5 Image deblurring: Image deblurring algorithms in Image Processing Toolbox include blind, Lucy-Richardson, Wiener and regularized filter deconvolution, as well as conversions between point spread and optical transfer functions. These functions help correct blurring caused by out-of-focus optics, movement by the camera or the subject during image capture, atmospheric conditions, short exposure time and other factors. All deblurring functions work with multidimensional images.
Figure.4.3. Image of the sun using deblurring algorithms.
17
CHAPTER 5
PROJECT DESCRIPTION 5.1 PROBLEM DEFINITION: In the process of image acquisition and transmission, impulse noises often cause serious degradation of the image quality. Various filtering algorithms [4], [7] and [13] have been proposed. Among them, the family of median filters is the most popular and holds a dominant position in this area for its outstanding noise suppression ability. The most representative paradigm in this family is known as “Switching Median Filtering” (SMF) [11], which partitions the whole filtering process into two sequential steps - noise detection and filtering. By utilizing the a priori knowledge obtained from the noise detection step, the filtering step could be more targeted and does not need to touch those uncorrupted pixels. Obviously the accuracy of the noise detection is critical to the final result. 5.2 OVERVIEW OF THE PROJECT: As in image enhancement, the future ultimate goal of restoration techniques is to improve an image in some predefined sense. Although there are various areas of overlapping during image processing, image enhancement is vital process.
Figure.5.1. A basic model of the image restoration process. 18
Restoration attempts to reconstruct or recover an image that has been degraded by using a priori knowledge of the degradation phenomenon. Thus restoration techniques are oriented toward modeling the degradation and applying the inverse process in order to recover the original image. This paper mainly focuses on the impulse noise detection approaches using SMF. The following literature review only pays close attentions to the detection strategies of three representative algorithms among the state-of-art progresses [3], [8]. In [12], an impulse noise identification algorithm is proposed based on the minimum absolute values of four convolutions deduced from the 1-D Laplacian operator. Since this set of convolutionary values jointly encode the intensity difference between each pixel and its neighbors essentially, these useful information are not thoroughly exploited. Thus the performance degradation of this detector is very significant with the growth of the noise density. The Boundary Discriminative Noise Detection (BDND) algorithm [7] is probably the one who makes the most progress under the SMF framework in recent years. It uses the local histogram to adaptively determine the decision boundaries between noise-free and corrupted pixels. A pixel is first examined from its 21 X 21 neighborhood. If it is classified into the “corrupted” category, then a validation stage is conducted by narrowing its neighborhood to 7 X 7. Obviously, this algorithm hopes to examine the current pixel from coarse-to-fine. But in the refining stage, it is unlikely that the decision boundaries deduced from the local histogram of only 9 pixels are very reliable. In [13], the proposed Switching based Adaptive Weighted Mean (SAWM) algorithm adopts the strategy of comparing the minimum absolute value of four mean differences between the current pixel and its neighbors with a predefined threshold to determine whether current pixel is corrupted.
19
5.3 DESCRIPTION OF THE ALGORITHM: This algorithm consists of two iterations and robust, reliable decision criteria for the restoration of the corrupted images. This proposed algorithm in the first stage performs the process of determining the noisy pixels and preserve normal texture of image, then in the second stage of the proposed method using four convolutionary kernels the detected noisy pixels are restored thereby resulting in noise reduction process. 5.3.1 Detection of boundaries and noisy pixels: A concept of Boundary discriminative noise detection is used for the detection of the boundaries. “Noise model 3 ” is used for the uniform distribution of the impulse noises over two length-m intervals[3], which lie in the two ends of the intensity range. Like BDND, our proposed algorithm also consists of two iterations and all pixels in the noisy image are examined. To make the decisions in both the iterations more robust and reliable, we propose two new strategies of computing the decision boundaries for both the iterations separately. First we redefine the classification criterion as follows in view of the distinctive characteristics of the intensity distribution of the impulse noise we care about.
(5.1)
In (5.1), the strategy of computing b1 and b2 is similar to BDND. By encoding the prior knowledge of the noise characteristics into the classifier, the decision boundaries calculated from the local histogram get the chance to be rectified. And the noise-free pixels whose intensities do not lie in the “noise” intervals will not have the chance of entering the second iteration. Only when a pixel is judged as noise candidate, it will be 20
piped into the second validation stage. And only when a pixel is classified into the “Noise class” in both stages, it will be considered to be a “true” impulse noise pixel. Hence the boundary detection process can be summarized as follows For each pixel
in the image, impose a
window centres on
Sort the pixels lie in the window region to an ordered vector median
.
and find the
.
Compute the difference vector of
.
Find the pixels which corresponds to the maximum differences in the intervals of
and
decision boundaries
. And set these two pixels intensities as the and
respectively.
Classify the pixels in current window into three clusters according
to
(5.1). The basic concept of our paper is to find a way to accurately quantify the intensity differences between the current pixel and its neighbors in four representative directions. The idea is inspired by [12], but in considering both accuracy and efficiency, our strategy of using the four descriptors and the size of our kernels are different from [12]. The dimension of the neighborhood of each pixel we adopt is 7 x 7 and the directions we care about are 0, π/4, π/2, 3π/4.Thus four kernels can be constructed as shown in Figure 5.6. Then by convolving the group of kernels with the noise image, every pixel gets four convolutionary results. We take the absolute values of the convolutionary values as the metrics of the intensity homogeneity of the neighborhood of the current pixel. This computation strategy can be formulated as follows: (5.2)
Where I the noisy image
is the 21
kernel we designed,
represents the
absolute convolutionary value for pixel
and
denotes the convolution operator.
In [12], only the minimum of the four descriptors is used. Since the intensity homogeneity information is jointly encoded in the four descriptors, this strategy does not fully exploit the latent information. And more seriously, this rule only favors the detection of isolated impulse noises by only comparing the minimum with a given threshold to decide whether current pixel is corrupted. If the noise density is high, it is very common that several impulse noises of the same kind (“salt” or “pepper”) be adherent in certain direction or form clusters. In these cases, this rule will completely fail. In our algorithm, we utilize both the minimum and maximum of aforementioned four descriptors at the same time. These two values can be calculated according to (5). Our intuition is that only joint utilization of these descriptors which can provide reliable decisions. (5.3) And our classification rule is formulated as follows:
5.3.2 Validation of detected noisy pixels: We use such a logical rule as the classification criterion due to the following reasons. If the current pixel corresponds to an isolated impulse noise, then each of the four convolutionary values must be quite large. If there are only very few noises in the neighborhood of the current pixel, all the four convolutionary values must be quite small and the differences among these values are less significant. 22
If the current pixel is not corrupted but is classified into the corrupted category, then the difference among the four convolutionary values should be below a certain level since we assume these impulse noises are evenly distributed over the given image. Then the detected noisy pixels are replaced with the median value of that particular window region. 5.4 DATA FLOW DIAGRAM:
Figure.5.2. Fundamental steps in digital image processing
23
Figure .5.3. The flow diagram of proposed algorithm
24
5.5 DATABASE DESIGN: Standard testing images used in digital image processing are as follows
Figure.5.4. Standard testing images used in existing algorithms (a) Lena, (b) Baboon, (c) Bridge, (d) Peppers.
25
(a)
(b)
(b)
(d)
Figure.5.5. Standard testing images used in proposed algorithm. (a) Cameraman, (b) M83, (c) Eight, (d) Saturn.
26
The idea inspired by [12], but in considering both accuracy and efficiency our strategy of using the four descriptors and the size of our kernels are different from [5]. The dimension of the neighborhood of each pixel is taken as 7 X 7. The four kernels are constructed as shown below,
Figure.5.6. Four directional convolutionary kernels.
27
CHAPTER 6
RESULTS AND COMPARISION 6.1 SIMULATION RESULTS: To demonstrate the effectiveness of our algorithm on detecting impulse noises, we compare our results with two of the most representative state-of-art algorithms BDND and SAWM [13]. Extensive simulations are carried on four test images: Lena, Baboon, Peppers and Bridge, which are shown in Figure. 3. The bit depth of these images is 8 and the resolution of them is all 512 x 512. In comparison with other two algorithm’s “salt-and-pepper” noise model in which gray-level 0 represents “pepper” and 255 represents “salt”, these noises are evenly scattered over the whole image[4]. The noise density we considered ranges from 10% to 90% with incremental step 10%. To make our detection algorithm be able to implement on the whole image region, we extend each of the four boundaries of the testing image through mirror-reflecting by ten pixels and the two thresholds
and
are respectively set to 5/255 and 1/255
(assuming the intensity of the image has been normalized). The evaluation indices we considered are the number of miss detection that represents the number of noise being miss-detected and the number of false alarm that represents the number of noise-free pixels that are miss-classified as noise. These two indicators are computed by comparing the output of BDND’s and SAWM’s noise detection modules with the ground-truth binary decision map. To make the detection results more objective and more accurate, we repeat the noise adding and detection procedures 20 times independently for each noise density and take the average as the final results. Due to space limitation, only the results corresponding to noise densities of 20%, 40%, 60%, 80% and 90% are listed. From Table I we can see that our proposed detection algorithm achieves very amazing ZERO miss detection rates while maintaining a rather low false alarm rate. 28
In other words, our method is more powerful to discover impulse noise and corrupted pixels have little chance to be omitted. It is not difficult to infer that in the context of impulse noise suppression false detections are more harmful than miss detections. The reason resides in the fact that if the noise pixels are mis-detected, they will lose the chance of being restored. And by adopting proper filtering scheme, those false detected pixels would not be significantly affected. From this point of view, our proposed method has great superiority over the state-of-the-art methods and undoubtedly will provide solid basis for subsequent filtering stage. By analyzing the simulation results, we can also get another important conclusion. We notice that the detection results of “Bridge” and “Pepper” are significantly inferior to another two images. This can be simply explained with the principle of the classical Bayesian decision theory. We know that in the context of two-class classification problem, when the tails of the probability distribution function of certain class becomes heavier, the error classification probability will become larger, whereas the tails of the histograms of “Bridge” and “Pepper” happen to be more heavier than other two testing images.
29
6.1.1. Output Images:
Figure.6.1. Original Image 30
Figure.6.2. Noisy Image
31
Figure.6.3. Denoised Image
32
6.2 PERFORMANCE ANALYSIS:
Miss detection(MD)
False alarm(FA)
Noise %
BDND
SAWM
OURS
BDND
SAWM
OURS
20
0
0
0
2
0
0
40
0
0
0
5
0
0
60
0
0
0
6
0
0
80
21
0
0
10
0
0
90
190
0
0
5
0
0
(a) Miss detection(MD)
False alarm(FA)
Noise %
BDND
SAWM
OURS
BDND
SAWM
OURS
20
0
6
0
30
51
4
40
0
9
0
29
2
3
60
0
8
0
24
1
1
80
6
5
0
21
1
1
90
272
2
0
16
0
1
(b) Table.5.1 Numbers of miss detection and false alarm. (a) Lena, (b) Cameraman. 33
MISS DETECTION(MD)
FALSE ALARM(FA)
NOISE %
BDND
SAWM
OURS
BDND
SAWM
OURS
20
0
179
0
2433
95
366
40
0
288
0
1805
45
275
60
0
344
0
1419
37
184
80
0
293
0
1092
28
95
90
0
202
0
1244
18
46
(a) MISS DETECTION(MD)
FALSE ALARM(FA)
NOISE %
BDND
SAWM
OURS
BDND
SAWM
OURS
20
0
18
0
370
22
173
40
0
14
0
370
0
126
60
0
21
0
290
0
83
80
12
5
0
127
0
39
90
51
207
0
336
0
18
(b) Table.5.2 Numbers of miss detection and false alarm. (a) Bridge, (b) Peppers.
34
CHAPTER 7
CONCLUSION In this project, an exceedingly effective and accurate algorithm for impulse noise detection is proposed. Extensive simulation results show that our algorithm has extraordinary ability in identifying impulse noise—achieving zero miss detection rates while keeping false detection rate at a rather low level. Since the detection results will be used to supervise the conduction of filtering that is the most crucial stage under the switching median filtering framework, our algorithm is proven to be more superior to the state-of-the-art algorithms. Extensive simulation results show that the proposed detector’s false alarm rate and miss detection rate are both amazingly low even when noise density is up to 90% and substantially outperforms existing state-of-the-art algorithms. 7.1 FUTURE ENHANCEMENTS: In the future, we will consider combining various adaptive and iterative filtering mechanisms into current system. A hybrid method can be considered in the future to provide more accurate results in the preservation of the vital textures such as edges. The reduction of the computing and execution time more than the statistical methods can be done by using the fuzzy rules there by reducing the requirement of the calculation of the distribution functions. The second type of the image restoration-deblurring can also be considered with this method of denoising to provide effective image enhancement algorithm.
35
REFERENCES [1]
Anil.K.Jain.,(1989) “Fundamentals of digital image processing”, vol.17,no.3, pp.250-265
[2]
Bar.L, Sochen.N and Kiryati.N, (2006) “Image deblurring in the presence of impulsive noise,” Int.
[3]
J. Comput. Vis., vol. 70, no. 3, pp. 279–298.
Brownrigg. D. R. K,(1984) “The weighted median filter”, Commun. Assoc. Comput. pp. 807–818.
[4]
Chan R. H., Ho .C.-W. and Nikolova.M. (2005)“Salt-and-pepper noise removal by median-type
noise detectors and detail-preserving regularization,” IEEE
Trans. Image Process., vol. 14, no. [5]
10, pp. 1479–1485.
Civicioglu.P, (2007) “Using uncorrupted neighborhoods of the pixels for impulsive noise suppression with ANFIS,” IEEE Trans. Image Process., vol. 16, no. 3, pp. 759–773.
[6]
Ko. S.-J. and Lee .Y.-H, (1991) “Center weighted median filters and their applications to image enhancement,” IEEE Trans. Circuits Syst., vol. 38, pp. 341– 347.
[7]
Ng.P.-E. and M a . K.-K,( 2 0 0 6 ) “A switching median filter with boundary discriminative noise detection for extremely corrupted images,” IEEE Trans. Image Process., vol. 15, no. 6, pp.1506–1516.
[8]
Nikolova.M,(2004)
“A variational approach to remove outliers and impulse
noise,” J. Math. Imag. Vis., vol. 20, no. 1–2, pp. 99–120. [9]
Pitas.I. and Venetsanopoulos.A.N.,(1992) “Order statistics in digital image processing,” Proc. IEEE, vol. 80, no. 12, pp. 1893–1921.
[10] Rafael C. Gonzalez and Richard E. Woods.,(2003) “Digital image processing” Pearson edition, vol. 3, pp.220-275. [11] Sun.T. and Neuvo.Y,(1994) “Detail-preserving median based filters in image processing,” Pattern Recognit. Lett., vol. 15, no. 4, pp. 341–347. 36
[12] Zhang.S.Q and Karim.M.A,(2002) “A new impulse detector for switching median filters,” IEEE Signal Process. Lett., vol. 9, no. 11, pp. 360–363. [13] Zhang.X.-M and Xiong.Y.-L,(2009) “Impulse noise removal using directional difference based noise detector and adaptive weighted mean filter,” IEEE Signal Process. Lett, vol. 16, no. 4, pp.295–298.
37